Sérgio Gomes Gonçalves - Universidade do Minho...Sérgio Gomes Gonçalves Uma plataforma para...
Transcript of Sérgio Gomes Gonçalves - Universidade do Minho...Sérgio Gomes Gonçalves Uma plataforma para...
Sérgio Gomes Gonçalves
Uma plataforma para revisão automática de
literatura via técnicas de Text Mining
Projeto da Dissertação de Mestrado
Engenharia e Gestão de Sistemas de Informação
Trabalho efetuado sob a orientação do
Professor Doutor Paulo Alexandre Ribeiro Cortez
e coorientação do
Professor Doutor Sérgio Miguel Carneiro Moro
janeiro de 2018
iii
RESUMO
A revisão de literatura é parte integrante do trabalho científico, possibilitando a
compreensão dos conceitos abordados numa determinada área de investigação e servindo de
fundação para o trabalho a ser desenvolvido pelos investigadores. Hoje em dia, é relativamente
fácil encontrar uma quantidade considerável de artigos científicos para incluir no processo de
revisão de literatura, visto que a web tem sido um potenciador da divulgação deste tipo de
publicações em formato digital, promovendo o acesso a conteúdo de caráter científico. No entanto,
e independentemente desses fatores, efetuar uma revisão de literatura é um processo
maioritariamente manual e, por isso, demorado. Limitar o número de artigos utilizados na revisão
de literatura poderá ser uma solução para fazer face a restrições temporais que possam existir, no
entanto, os resultados obtidos na revisão poderão ser limitados por esse facto, comparativamente
a uma revisão que englobe um maior número de artigos. A quantidade de artigos científicos
publicados, nomeadamente online, também tem aumentando, dificultando a realização de
revisões de literatura abrangentes, em determinadas áreas científicas.
Para possibilitar a inclusão de quantidades consideráveis de artigos no processo de
revisão de literatura, a utilização de técnicas de Text Mining é uma abordagem possível,
permitindo a extração de conhecimento, padrões e tendências de dados textuais. Nesse sentido,
uma metodologia semiautomática foi já desenvolvida que permite, através da aplicação de
técnicas de Text Mining, efetuar uma revisão de literatura, utilizando um conjunto extenso de
artigos, dos quais são extraídos padrões, tendências e conhecimento. Contudo, a aplicação dessa
metodologia não é totalmente automática, exigindo conhecimentos técnicos do utilizador.
Nesta dissertação pretende-se automatizar e implementar a metodologia numa plataforma
web, abstraindo do utilizador a complexidade inerente às técnicas de Text Mining e, deste modo,
possibilitar a aplicação da metodologia por parte de utilizadores não especializados, sem existir a
necessidade de conhecimentos de programação. Também se pretende explorar e aplicar técnicas
de Text Mining para refinar a metodologia, utilizando para esse propósito, a abordagem
metodológica CRISP-DM.
Palavras-Chave: Text mining, Revisão automática de literatura, Plataforma web, Análise de
literatura
v
ABSTRACT
The literature review is an integral part of scientific work, allowing the understanding of
concepts addressed in a given research area and serving as a foundation for the work to be developed
by the researchers. Nowadays, it is relatively easy to find a considerable number of scientific articles to
include in the literature review process, since the web has been an enabler of the dissemination of
scientific publications in digital format, promoting access to scientific content. However, regardless of
these factors, the process of conducting a litearture is mostly manual and, therefore, time-consuming.
Limiting the number of articles used in the literature review may be a solution to address temporal
constraints, however, it might be a limiting factor to the results achieved in the review, compared to a
review that includes a larger number of articles. The number of published scientific papers, especially
online, has also increased, making it difficult to carry out comprehensive literature reviews in certain
scientific areas.
To enable the inclusion of considerable amounts of articles in the literature review process, the
use of Text Mining techniques is a possible approach, allowing the extraction of knowledge, patterns
and trends of textual data. In this sense, a semiautomatic methodology has already been developed
that allows, through the application of Text Mining techniques, to carry out a literature review, using an
extensive set of articles, from which patterns, knowledge and trends are extracted. However, the
application of this methodology is not totally automatic, requiring some technical knowledge on the part
of the user.
In this dissertation we intend to automate and implement the methodology on a web platform,
abstracting from the user the inherent complexity of Text Mining techniques and, therefore, enable the
application of the methodology by non-specialized users, without the need of programming knowledge.
We also intend to explore and apply Text Mining techniques to refine the methodology, using the
CRISP-DM methodological approach for that purpose.
Keywords: Text mining, Automatic literature review, Web platform, Literature analysis
vii
ÍNDICE
Resumo.............................................................................................................................................. iii
Abstract............................................................................................................................................... v
Lista de Figuras .................................................................................................................................. ix
Lista de Tabelas ................................................................................................................................. xi
Lista de Abreviaturas, Siglas e Acrónimos ......................................................................................... xiii
1. Introdução .................................................................................................................................. 1
1.1 Enquadramento e motivação ............................................................................................... 1
1.2 Objetivos e resultados esperados ......................................................................................... 2
1.3 Abordagem metodológica .................................................................................................... 3
1.3.1 Estratégia de pesquisa bibliográfica.............................................................................. 3
1.3.2 CRISP-DM ................................................................................................................... 3
1.4 Organização do documento ................................................................................................. 5
2. Enquadramento conceptual......................................................................................................... 7
2.1 Text mining ......................................................................................................................... 7
2.1.1 Pré-processamento de texto ......................................................................................... 8
2.1.2 Representação de texto ................................................................................................ 9
2.1.3 Similaridade de documentos ...................................................................................... 11
2.1.4 Named entity recognition ........................................................................................... 13
2.1.5 Extração de tópicos ................................................................................................... 14
2.1.6 Word2vec e representações distribuídas de palavras .................................................. 16
2.1.7 FastText .................................................................................................................... 20
2.2 Revisões de literatura ........................................................................................................ 22
2.2.1 Propósito das revisões de literatura ............................................................................ 22
2.2.2 Revisão sistemática ................................................................................................... 23
2.3 Domínio de aplicação ........................................................................................................ 26
2.3.1 Related Work ............................................................................................................. 27
2.3.2 A metodologia a ser automatizada ............................................................................. 28
2.3.3 Oportunidades existentes no domínio de aplicação ..................................................... 29
viii
2.3.4 Aplicação de text mining na etapa de seleção de estudos da revisão sistemática ........ 30
2.3.5 Aplicação de text mining na etapa de avaliar a qualidade dos estudos da revisão
sistemática ............................................................................................................................... 32
2.3.6 Aplicação de text mining na etapa de extração de dados da revisão sistemática .......... 33
2.3.7 Desafios na aplicação de text mining em revisões sistemáticas ................................... 34
2.3.8 Mapa de literatura ..................................................................................................... 36
3. Enquadramento tecnológico ...................................................................................................... 37
4. Gestão do projeto ...................................................................................................................... 39
Referências Bibliográficas ................................................................................................................. 43
ix
LISTA DE FIGURAS
Figura 1 - Ciclo de vida e fases da metodologia CRISP-DM (adaptado de Chapman et al., 2000) .......... 4
Figura 2 - Exemplo de frase para a qual foram identificadas e classificadas entidades. ....................... 13
Figura 3 - Resultados obtidos para distribuições de Dirichlet com diferentes valores do parâmetro 𝛼 . 16
Figura 4 - Representação visual do funcionamento da janela deslizante ............................................. 17
Figura 5 - Arquitetura do modelo Skip-gram (Mikolov, Chen, et al., 2013) .......................................... 18
Figura 6 - Arquitetura do modelo Continuous Bag of Words (Mikolov, Chen, et al., 2013) ................... 20
Figura 7 - Decomposição das palavras utilizando n-gram ................................................................... 21
Figura 8 - Arquitetura do modelo para classificação de texto (Joulin et al., 2017) ............................... 22
Figura 9 - Fases e etapas do processo de revisão sistemática (adaptado de Brereton, Kitchenham,
Budgen, Turner, & Khalil, 2007) ....................................................................................................... 25
Figura 10 - Mapa de literatura ........................................................................................................... 36
Figura 11 - Diagrama de Gantt .......................................................................................................... 41
xi
LISTA DE TABELAS
Tabela 1 - Número de vezes que cada termo ocorre em cada um dos documentos. ........................... 12
Tabela 2 - Palavras de contexto para cada uma das palavras centrais, utilizando uma janela de
tamanho 3 ....................................................................................................................................... 17
Tabela 3 - Principais distinções entre revisão narrativa e revisão sistemática (adaptado de Cook et al.,
1997) ............................................................................................................................................... 24
Tabela 4 - Resumo da literatura referente à aplicação de Text Mining para revisões de literatura ........ 27
xiii
LISTA DE ABREVIATURAS, SIGLAS E ACRÓNIMOS
API Application Programming Interface
CRISP-DM CRoss Industry Standard Process for Data Mining
LDA Latent Dirichlet Allocation
1
1. INTRODUÇÃO
1.1 Enquadramento e motivação
Através de texto o ser humano consegue expressar e transmitir os seu conhecimentos, ideias e
opiniões, seja num contexto formal ou informal, desempenhado uma função de destaque no processo
de comunicação e aprendizagem. No sistema educativo, aprender a ler a escrever são das primeiras
etapas no processo de ensino, sendo fundamental para a vida social e para o restante processo de
aprendizagem, designadamente através da leitura de livros. Nas áreas de investigação, o conteúdo
escrito, sobre a forma de publicações científicas, tem um papel de relevo no desenvolvimento das
mesmas, bem como na transmissão de conhecimento sobre essas áreas. Tal indica que, se
analisarmos o conteúdo presente nessas publicações, existirá a possibilidade de extrair padrões e
informação desses textos.
No entanto, a quantidade de conteúdo disponível, de caráter científico, tem vindo a aumentar,
dificultando um processo de análise e revisão do mesmo, de modo exclusivamente manual. No
PubMed, um motor de busca para artigos científicos na área da biomedicina, o número de artigos
científicos subiu 6,7% por ano, entre 2003 e 2013 (Ware & Mabe, 2015). No ArXiv, um repositório de
artigos científicos, o número de publicações submetidas por mês tem subido consideravelmente ao
longo dos anos, segundos os dados disponibilizados pela plataforma1. O número de publicações,
submetidas por mês no ArXiv, durante o ano de 2017, é aproximadamente o dobro do número de
publicações submetidas por mês, durante o ano de 2008. Deste modo, constata-se que existe um
crescimento do conteúdo científico disponibilizado sobre a forma de publicações científicas, existindo
uma necessidade de analisar esse conteúdo, computacionalmente, com o objetivo de extrair
conhecimento e identificar padrões presentes nas publicações.
Para esse fim, pode-se recorrer a técnicas de Text Mining que, segundo Tan (1999),
possibilitam a extração de padrões e conhecimento de dados textuais, como o caso das publicações
científicas disponibilizadas em formato digital.
Para possibilitar a análise de quantidades significativas de literatura, Moro, Cortez, & Rita
(2015) desenvolveram uma metodologia que permite, através de utilizações de técnicas de Text
1 https://arxiv.org/stats/monthly_submissions
2
Mining, extrair tendências numa determinada área (Business Intelligence, por exemplo), como os
tópicos abordados nas publicações, a evolução desses tópicos ao longo do tempo, bem como os
termos mais relevantes. No entanto, este processo é feito de modo semiautomático, pelo que se
pretende automatizar totalmente este processo durante o trabalho de dissertação, além da
implementação da metodologia numa plataforma web, possibilitando a sua aplicação por parte de
utilizadores não especializados, eliminando a necessidade de conhecimento técnicos.
1.2 Objetivos e resultados esperados
A definição dos objetivos e resultados esperados para a dissertação direciona o trabalho a ser
desenvolvido durante a dissertação, visto que este deverá estar alinhado com os objetivos definidos. O
principal objetivo desta dissertação é automatizar a metodologia de revisão de literatura, desenvolvida
por Moro et al. (2015). Para esse efeito, também se pretende complementar a metodologia, através da
introdução de funcionalidades que possibilitem efetuar uma análise de literatura de forma totalmente
automática, sem necessitar de intervenção humana, ou caso se pretenda, utilizar funcionalidades
específicas para auxiliar em determinadas etapas do processo de revisão sistemática.
A metodologia, com as respetivas melhorias introduzidas resultantes do trabalho de
dissertação, será implementada numa plataforma web, de modo a possibilitar a revisão automática de
literatura sem serem necessários conhecimentos a nível de programação por parte do utilizador,
abstraindo a complexidade técnica da metodologia.
Para tal é necessário efetuar um levantamento das várias técnicas de Text Mining existentes, e
posterior enquadramento dessas técnicas para o caso em concreto da aplicação dessas técnicas para
revisões de literatura. O levantamento das respetivas técnicas e respetivo enquadramento no domínio
de aplicação é realizado no presente projeto de dissertação. É também necessário definir as
ferramentas tecnológicas que irão ser utilizadas durante a dissertação, bem como o planeamento das
tarefas a realizar.
3
1.3 Abordagem metodológica
1.3.1 Estratégia de pesquisa bibliográfica
Para identificar os artigos relevantes, de modo a compreender os conceitos fundamentais para
o trabalho de dissertação, bem como o estado da arte, é necessário fazer uma pesquisa e seleção
criteriosa desses artigos. Nesse sentido, foi definido que seriam utilizadas, para encontrar as
publicações, as plataformas Google Scholar, Web of Science, Scropus, Semantic Scholar e
ScienceDirect.
Para a pesquisa dos artigos de cada uma das áreas foram utilizados os seguintes termos de
pesquisa:“text mining”, “text classification”, “named entity recognition”, “distributed representation of
words”, “literature review”, “systematic review”, “literature analysis”.
Com o intuito de encontrar artigos que englobassem as duas áreas, ou seja, que abordassem
a aplicação de técnicas de Text Mining para efetuar revisões de literatura, foi utilizada a seguinte query:
(“literature review” OR “systematic review” OR “systematic literature review” OR “literature analysis” )
AND (“text mining” OR “text classification” OR “machine learning” OR “text categorization”).
Dos artigos obtidos através das pesquisas, nem todos eram relevantes. Através da leitura dos
títulos e abstracts, tendo também em consideração o número de citações, foi possível fazer uma
triagem dos mesmos, mantendo apenas os artigos relevantes para as áreas abordadas na dissertação.
1.3.2 CRISP-DM
Para o desenvolvimento deste trabalho será utilizada a abordagem metodológica CRISP-DM
(Chapman et al., 2000). A decisão de utilizar esta abordagem, deve-se ao facto da mesma se
enquadrar com a finalidade do trabalho a ser desenvolvido durante a dissertação. Visto que, além de se
implementar a metodologia desenvolvida por Moro et al. (2015) numa plataforma, também se pretende
introduzir novas funcionalidades, e posterior implementação dessas funcionalidades na plataforma, é
necessário aplicar uma metodologia que possibilite abordar as várias fases inerentes a um projeto de
Text Mining, como o desenvolvimento de modelos de classificação de texto.
As várias fases que formam o processo descrito na metodologia CRISP-DM estão
representadas na Figura 1, formando o respetivo ciclo de vida, bem como algumas das relações entre
as fases da metodologia. No entanto, a metodologia CRISP-DM ressalva que não existe uma
obrigatoriedade das fases serem desempenhadas pela ordem exemplificada na Figura 1, podendo essa
4
ordem ser adaptada consoante as necessidades do negócio em causa, e respetivo propósito. Aplica-se
a mesma lógica para as relações existentes entre as fases.
Figura 1 - Ciclo de vida e fases da metodologia CRISP-DM (adaptado de Chapman et al., 2000)
Na fase de compreensão do negócio, deve-se entender o negócio para o qual se pretende
desenvolver o projeto em causa. Não é necessário que seja compreender um negócio, de forma literal,
mas sim entender o propósito pelo qual está a ser desenvolvido o projeto e a razão pela qual é
necessário, ou vantajoso, aplicar Data Mining ou Text Mining para esse propósito. A compreensão do
negócio possibilita a posterior ponderação sobre a forma como serão aplicadas técnicas de Text
Mining. Para esta dissertação, a fase de compreensão do negócio foca-se principalmente entender de
que modo podem ser exploradas e aplicadas as técnicas de Text Mining para revisões de literatura.
A fase de compreensão dos dados tem como finalidade analisar os dados, que neste caso,
pelo facto de ser um projeto relativo a Text Mining, são dados textuais. Caso estes ainda não tenham
sido recolhidos, é também necessário identificar como os dados textuais irão ser recolhidos, definindo
e descrevendo a estratégia a utilizar para tal.
Na fase de preparação dos dados e, no caso em concreto dos dados textuais, são realizadas
várias atividades necessárias para que os dados textuais possam ser utilizados em várias atividades
relacionadas com Text Mining, como treinar modelos de classificação de texto e respetiva validação.
Deste modo, esta fase envolve a sequência de etapas necessárias para possibilitar que os dados
textuais sejam estruturados, para permitir a utilização destes em várias atividades relacionadas com
Text Mining. Por vezes é necessário voltar à fase de preparação de dados, para introduzir modificações
5
ou alterar as técnicas utilizadas para a representação dos mesmos, por terem sido identificadas novas
necessidades a esse nível, na fase de modelação, por exemplo.
Na fase modelação são treinados os modelos e efetuadas decisões relativas aos modelos,
como a parametrização dos mesmos. Os modelos podem ter diferentes propósitos, como a descoberta
de tópicos ou a classificação de texto ou atribuição de classes a frases presentes no texto.
Durante a fase de avaliação, deverá ser analisado o desempenho dos modelos, através da
definição de uma estratégia que possibilite aferir, não só o desempenho de um modelo em concreto,
mas também possibilitar a comparação dos vários modelos, para determinar quais sãos os mais
apropriados para as necessidades identificadas na fase de compreensão do negócio.
Na fase de implementação, todo trabalho que foi desenvolvido nas etapas anteriores da
metodologia deve ser implementado que, no caso em concreto do trabalho de dissertação,
corresponde à implementação de uma plataforma web que possibilite automatizar a aplicação da
metodologia por parte de utilizadores não especializados.
1.4 Organização do documento
O presente documento é constituído por quatro capítulos. O primeiro capítulo corresponde à
Introdução, em que é descrito o enquadramento e motivação da dissertação, bem como os objetivos,
resultados esperados e abordagem metodológica.
O segundo capítulo corresponde ao Enquadramento conceptual, em que são explorados e
descritos os vários conceitos inerentes à dissertação, mais concretamente, os conceitos relativos às
áreas de Text Mining e de revisão de literatura. Na última secção deste capítulo, é analisado de que
modo as duas áreas, e respetivos conceitos, se relacionam, de forma a identificar o estado da arte
relativo à aplicação de técnicas Text Mining para revisões de literatura.
No terceiro capítulo, que corresponde ao Enquadramento tecnológico, são identificadas as
ferramentas tecnológicas necessárias para o desenvolvimento do trabalho de dissertação, bem como o
propósito de cada uma dessas ferramentas.
No quarto capítulo e último capítulo, são descritas as tarefas que já foram realizadas, bem
como as que irão ser realizadas. É também apresentado o planeamento das tarefas da dissertação.
7
2. ENQUADRAMENTO CONCEPTUAL
Neste capítulo são abordados os vários conceitos relacionados com a áreas de Text Mining e
de revisões de literatura, possibilitando a compreensão destas duas áreas de relevo para a dissertação,
obtendo-se uma perceção sobre os conceitos inerentes às mesmas. Por essa razão, neste capítulo, e
numa primeira instância, são identificados os conceitos-chave que existem nas áreas de Text Mining e
de revisões de literatura.
Neste capítulo são também identificadas as relações existentes entre os conceitos das duas
áreas, identificando desafios e oportunidades, permitindo determinar o estado da arte no que diz
respeito à aplicação de técnicas de Text Mining para revisões de literatura.
2.1 Text mining
Pelo facto da comunicação escrita ser de natureza humana, existem certas nuances que,
apesar de serem triviais para o ser humano, um algoritmo computacional apresentará algumas
dificuldades em interpretá-las corretamente (Gupta & Lehal, 2009), como o facto da mesma palavra
poder ter significados diferentes consoante o contexto em que está inserida. Porém, Gupta & Lehal
(2009) referem que, apesar dessas dificuldades, os computadores têm a vantagem de conseguirem
processar grandes volumes de texto, ao contrário dos humanos. Como resultado da necessidade de
extrair padrões e conhecimento de dados textuais, surgiu o conceito de Text Mining.
Segundo Tan (1999), Text Mining é um processo que permite extrair padrões e conhecimento
não trivial de documentos de texto, podendo ser visto como uma extensão de Data Mining aplicada ao
caso específico de texto. Porém, em Data Mining são utilizados dados estruturados, muitas das vezes
armazenados em bases de dados relacionais, ao invés de Text Mining, em que se utilizam dados não
estruturados ou semiestruturados (Gupta & Lehal, 2009).
De realçar que Text Mining é uma área interdisciplinar e utiliza os contributos de outras áreas,
como Information Retrieval, Information Extraction, Natural Language Processing e Machine Learning.
De acordo com Miner et al. (2012), a área de Machine Learning teve um contributo gradual no
desenvolvimento de Text Mining, particularmente através da aplicação de Machine Learning para a
classificação de texto, durante a década de 90. Um exemplo disso é o estudo efetuado por Moulinier &
Ganascia (1995), onde foi demonstrado de forma experimental que “os algoritmos de Machine
8
Learning podem ser aplicados com sucesso na categorização de texto”. Alguns dos algoritmos de
Machine Learning utilizados para a categorização de texto são as redes neuronais, árvores de decisão e
Support Vector Machines (Korde & Mahender, 2012).
São várias as possíveis aplicações de técnicas de Text Mining, tanto no contexto empresarial
como académico. No entanto, o conjunto de técnicas a utilizar nem sempre é o mesmo. Com o
desenvolvimento da web e, em concreto, o aparecimento das redes sociais, surgiram também casos
específicos para a aplicação de Text Mining. He, Zha, & Li (2013) realçam que, com a crescente
presença das empresas nas plataformas de social media, existe uma necessidade das empresas
recolherem os dados presentes nas suas redes socias para, através da aplicação de técnicas de Text
Mining, descobrir padrões presentes no texto. Oliveira, Cortez, & Areal (2017) também analisaram
dados textuais contidos em redes sociais, propondo uma metodologia capaz de prever vários
indicadores financeiros relacionados com o mercado bolsista, utilizando a polaridade dos sentimentos
de tweets. Num outro estudo, os autores utilizam dados extraídos da plataforma StockTwits para prever
as variáveis dos mercados financeiros (Oliveira, Cortez, & Areal, 2013).
Em áreas científicas, como biomedicina, por vezes é necessário analisar grandes quantidade
de literatura para descobrir relações entre genes ou proteínas. Contudo, o processo da análise de
literatura pode tornar-se demorado, caso este seja feito manualmente. Com o propósito de resolver
esses obstáculos, podem ser utilizadas diferentes estratégias, recorrendo-se a técnicas de Text Mining,
como named entity recognition, para identificar e extrair entidades relacionadas com a biomedicina,
como genes, proteínas ou nomes de medicamentos (Cohen & Hersh, 2005).
2.1.1 Pré-processamento de texto
O pré-processamento de texto envolve um conjunto de técnicas que são utilizadas para
uniformizar os dados textuais, como a substituição de letras maiúsculas por minúsculas, redução de
palavras à sua forma raiz, através de steeming, e remoção de stop words.
A aplicação de um algoritmo de stemming permite reduzir palavras à sua forma raiz. O
principal objetivo é possibilitar que diferentes variações da mesma palavra (como diferentes conjunções
verbais ou formas gramaticais) sejam reduzidas a uma só palavra, que corresponde à raiz dessas
palavras. A aplicação de stemming permite, por exemplo, reduzir a palavra stopped para stop, ou
started para start. A redução de uma palavra para a sua forma raiz pode ser alcançada de diferentes
modos, como a remoção de sufixos ou prefixos de palavras ou a utilização de dicionários, onde se
define a raiz de várias palavras.
9
O algoritmo proposto por Porter (1980) utiliza um conjunto de regras que permitem reduzir as
palavras através da remoção dos seus sufixos (caso aplicável). O algoritmo abrange principalmente as
palavras escritas em inglês. Pelo facto das palavras de diferentes línguas terem diferentes morfologias,
comparativamente ao inglês, por vezes é necessário criar algoritmos específicos para certas
linguagens. Posteriormente, o autor descreveu uma framework para a criação de algoritmos de
stemming, para que fosse possível a sua utilização noutras línguas (Porter, 2001).
Geralmente, a aplicação destes algoritmos acaba por se traduzir numa diminuição do número
de palavras originalmente presentes no vocabulário. Em alguns casos, o número de palavras reduzidas
para a sua forma raiz pode ser considerável. Num vocabulário composto por 10000 palavras,
Ramasubramanian & Ramya (2013) observaram que a maioria das palavras presentes no vocabulário
foram reduzidas à sua forma raiz, após a aplicação de stemming.
Nem sempre as palavras que são reduzidas ficam corretamente representadas, sendo que
algumas não são compreensíveis do ponto de vista humano, podendo as diferentes abordagens de
stemming ter níveis distintos de agressividade. Uma abordagem pouco agressiva, em casos dúbios,
não reduz a palavra, mantendo-a na sua forma original. Por outro lado, uma abordagem agressiva,
tende a reduzir a palavra, mesmo em casos dúbios (Singh & Gupta, 2017).
Biba & Gjati, (2014) observaram que a aplicação de técnicas de stemming melhorou os
resultados obtidos num caso específico de classificação de texto, quando comparados com os
resultados obtidos sem stemming. No entanto, nem sempre a aplicação de stemming tem um impacto
positivo nos resultados obtidos visto que, num estudo efetuado por Toman, Tesar, & Jezek (2006), a
utilização de stemming tem um impacto negativo nos resultados obtidos na tarefa de classificação de
texto.
2.1.2 Representação de texto
Diferentes técnicas podem ser utilizadas para representar o texto numa estrutura que possa
ser utilizada em atividades relacionadas com Text Mining, como classificação de texto. O conceito de
Bag of Words, originário da área de Information Retrieval, define que um documento pode ser
representado através da atribuição de pesos aos termos presente no documento, ignorando a ordem
das palavras. Outro conceito relevante para representação de texto, é o de Vector Space Model, que
tem o propósito de representar, através de um ponto no espaço, cada um dos documentos do conjunto
de documentos (Turney & Pantel, 2010). Uma estrutura que se enquadra neste conceito de Vector
Space Model é a document-term matrix. Turney & Pantel (2010) ressalvam que o conceito de Vector
10
Space Model aproveita outros conceitos, que lhe servem de base, como o de Bag of Words, visto que
cada documento é representado através de um vetor que não contém qualquer informação relativa à
ordem das palavras.
Numa document-term matrix cada linha da matriz corresponde a um documento do conjunto
de documentos, e cada coluna corresponde a um termo. Cada linha do documento é um vetor, vetor
esse que representa um documento em concreto. O vetor é preenchido com os valores dos pesos de
cada termo, que podem ser calculados utilizando diferentes abordagens.
Numa abordagem mais simples são atribuídos apenas pesos binários, com o propósito de
indicar se um termo está ou não presente em determinado documento: 0 se não estiver presente e 1
caso esteja presente. A principal limitação resultante da utilização de valores binários na matriz,
deve-se ao facto destes apenas indicarem se o termo está ou não presente num determinado
documento. Muitas das vezes, é necessário diferenciar a importância de vários termos, e tal não é
possível utilizando pesos que apenas podem ter o valor 0 ou 1 (Salton & Buckley, 1988).
Para distinguir a importância entre vários termos que ocorrem ao longo de um documento,
determinar a frequência com que um termo surge num documento e utilizar esses valores na
document-term matrix é uma das abordagens possíveis. Luhn (1957) sugere que um autor, ao utilizar
várias vezes o mesmo termo, está a conferir particular importância a esse termo para exprimir as suas
ideias. No entanto, nem sempre palavras com uma frequência elevada são importantes, pois algumas
dessas palavras apenas servem como elementos de ligação do idioma em que o documento foi escrito,
como por exemplo a conjunção coordenativa aditiva “e”, que serve para expressar uma relação de
adição, no caso da língua portuguesa.
Uma abordagem possível, que tem em consideração o facto dos termos mais frequentes nem
sempre serem os mais importantes, consiste em calcular o peso de cada termo através de um método
chamado Inverse Document Frequency, proposto por Sparck Jones (1972). Este método assume que a
importância de um termo é inversamente proporcional ao número de vezes que este ocorre no
conjunto de documentos, sendo calculados pesos maiores para os termos raros e pesos menores para
os termos frequentes, ou seja, se o mesmo termo aparecer num número elevado de documentos, o
peso calculado para esse termo será próximo de 0. Para calcular o peso dos termos através de Inverse
Document Frequency é utilizada a Equação 1:
𝑖𝑑𝑓𝑖 = log (𝑁
𝑑𝑓𝑖) (1)
onde 𝑁 é o número total de documentos e 𝑑𝑓𝑖 é o número de documentos que contêm o termo 𝑖.
11
Existe ainda a possibilidade de combinar a Inverse Document Frequency e a frequência dos
termos para calcular o peso que cada um dos termos tem, através do método Term Frequency Inverse
Document Frequency, que está representado na Equação 2:
𝑤𝑖𝑗 = 𝑡𝑓𝑖𝑗 ∗ log (𝑁
𝑑𝑓𝑖) (2)
onde 𝑡𝑓𝑖𝑗 corresponde ao número de vezes que o termo 𝑖 aparece no documento 𝑗, 𝑁 é o número
total de documentos e 𝑑𝑓𝑖 é o número de documentos que contêm o termo 𝑖.
Ressalva-se que, a escolha do método para cálculo do peso dos termos poderá ter impacto nos
resultados obtidos em algumas das tarefas de Text Mining, nomeadamente na classificação de texto
utilizando Support Vector Machines (Lan, Sung, Low, & Tan, 2005) e, por esse facto, a escolha do
método deverá ser ponderada, analisando o desempenho dos modelos com diferentes métodos para
cálculo do peso dos termos.
2.1.3 Similaridade de documentos
Existem técnicas que permitem quantificar o quão similar dois documentos são, aplicando
operações sobre vetores. Dado um conjunto de documentos, se for utilizada uma document-term
matrix para representar os documentos, pelo facto de cada documento ter um vetor associado, é
possível utilizar uma técnica denominada similaridade do cosseno. Esta técnica pode ser utilizada, por
exemplo, para agrupar documentos que sejam bastante similares (Huang, 2008).
A similaridade do cosseno é calculada utilizando o cosseno do ângulo entre dois vetores, com
o propósito de obter um valor que permita quantificar a similaridade entre dois vetores. Tipicamente, o
valor do cosseno pode assumir valores entre -1 e 1, inclusive. No entanto, como em Text Mining
geralmente os valores contidos numa document-term matrix não são negativos (um termo não pode
ocorrer num número negativo de vezes), o cosseno neste caso assume valores compreendidos entre 0
e 1, inclusive. Para dois documentos poucos similares, o cosseno do ângulo entre os dois vetores é
próximo de 0, enquanto que para dois documentos muito similares, o cosseno do ângulo entre esses
dois vetores será próximo de 1. Para dois vetores ortogonais, em que o ângulo formado pelos dois
vetores é reto, o cosseno será 0. Dados dois vetores, a similaridade do cosseno é calculada através do
produto escalar dos vetores, dividido pelo produto das normas de ambos os vetores, como
representado na Equação 3:
cos(𝑥, 𝑦) = 𝑥 𝑦
‖𝑥‖ ‖𝑦‖(3)
12
onde 𝑥 e 𝑦 são os vetores dos documentos para os quais se pretende calcular a similaridade do
cosseno.
Através de um exemplo é possível demonstrar como se pode utilizar a similaridade do cosseno
para calcular as similaridades entre os documentos de uma document-term matrix. Numa primeira
instância, é necessário construir a document-term matrix. A Tabela 1 representa uma document-term
matrix que contém um conjunto de 3 documentos, identificados por “doc1”, “doc2” e “doc3” em que
cada um dos valores contidos na matriz corresponde ao número de vezes que um determinado termo
aparece no documento.
Tabela 1 - Número de vezes que cada termo ocorre em cada um dos documentos.
contabilista emprego motorista trabalho universidade
doc1 1 1 1 1 1
doc2 0 1 0 2 2
doc3 0 0 0 1 1
Utilizando os valores contidos na document-term matrix, calcula-se a similaridade entre o
“doc1” e “doc2”, como exemplificado na Equação 4:
cos(𝑑𝑜𝑐1, 𝑑𝑜𝑐2) = 1 ∗ 0 + 1 ∗ 1 + 1 ∗ 0 + 1 ∗ 2 + 1 ∗ 2
√12 + 12 + 12 + 12 + 12 ∗ √02 + 12 + 02 + 22 + 22≈ 0.745356 (4)
É também possível calcular a similaridade do cosseno entre “doc1” e “doc3”, como
exemplificado na Equação 5:
cos(𝑑𝑜𝑐1, 𝑑𝑜𝑐3) = 1 ∗ 0 + 1 ∗ 0 + 1 ∗ 0 + 1 ∗ 1 + 1 ∗ 1
√12 + 12 + 12 + 12 + 12 ∗ √02 + 02 + 02 + 12 + 12≈ 0.6324555 (5)
Comparando os valores obtidos para as similaridades do cosseno, pode-se concluir que “doc1”
é mais similar a “doc2” do que a “doc3”.
Outra possibilidade para calcular a similaridade de dois documentos, é através da utilização do
coeficiente de Jaccard. O coeficiente de Jaccard permite obter a similaridade entre conjuntos, e é
obtido através da interseção dos elementos presentes em ambos os conjuntos, dividida pela união do
dos elementos presente nos dois conjuntos, para os quais o coeficiente de Jaccard se pretende
calcular. O coeficiente de Jaccard está definido na Equação 6:
𝐽(𝐴, 𝐵) = |𝐴 ∩ 𝐵|
|𝐴 ∪ 𝐵|(6)
13
2.1.4 Named entity recognition
A finalidade de named entity recognition é identificar e classificar corretamente, de forma
automática, as entidades que estão presentes num determinado texto. O conceito de named entity
recognition, numa primeira instância, foi abordado na área de extração de informação, na sexta edição
da Message Understanding Coference (Grishman & Sundheim, 1996). Contudo, a tarefa de named
entity recognition tem sido útil na atividade de Text Mining, sendo considerada uma parte importante
da aplicação de Text Mining com o propósito de analisar literatura, nomeadamente na área da
biomedicina (Tanabe, Xie, Thom, Matten, & Wilbur, 2005). As entidades identificadas no texto são
classificadas nas categorias apropriadas, tais como pessoas, organizações, locais, datas entre outras.
Na Figura 2 está exemplificado, para uma frase, as várias entidades que seriam identificas e
classificadas, através de named entity recognition.
Figura 2 - Exemplo de frase para a qual foram identificadas e classificadas entidades.
Um dos desafios de classificar corretamente as entidades, deve-se ao facto da mesma palavra
(ou grupo de palavras) poder ter classificações diferentes consoante o contexto em que está inserida.
Por exemplo, “Francisco Sá Carneiro”, tanto pode ser entendido como um nome pessoal, bem
como o nome do aeroporto do Porto, dependendo do contexto.
No que diz respeito às abordagens utilizadas na tarefa de named entity recognition, estas
podem ser agrupadas do seguinte modo: as que se baseiam em regras e as que utilizam Machine
Learning, recorrendo a modelos estatísticos.
Um dicionário de entidades pode ser utilizado na abordagem baseada em regras. Geralmente,
nesses dicionários, são definidos os mapeamentos entre termos e a respetiva classificação, ou seja, o
dicionário poderia conter o mapeamento entre “Portugal” e a classificação “Local”. Também é possível
definir no dicionário certas caraterísticas que poderão auxiliar na identificação de entidades que
estejam presentes no texto. Por exemplo, caso à esquerda de uma determinada se encontre o termo
“Sr.” ou “Sra.”, poderá classificar-se a palavra seguinte a esse termo como sendo o nome de uma
pessoa. Assim sendo, o princípio base da abordagem baseada em regras, consiste em definir um
14
conjunto de regras que possibilitem capturar determinadas caraterísticas que possam estar presentes
num texto, para identificar e classificar corretamente as entidades.
São vários os modelos que têm vindo a ser aplicados, tais como Support Vector Machines
(Ekbal & Bandyopadhyay, 2012), redes neuronais de várias arquiteturas (Lample, Ballesteros,
Subramanian, Kawakami, & Dyer, 2016) ou árvores de decisão (Szarvas, Farkas, & Kocsor, 2006).
Visto que a Wikipedia contém uma vasta quantidade de conteúdo sobre a forma de texto, escrito em
várias línguas, tal facto pode ser explorado para a criação os dados de treino, para treinar modelos
capazes de identificar entidades em idiomas distintos, como proposto por Nothman, Ringland, Radford,
Murphy, & Curran (2013).
No que diz respeito às abordagens que utilizam Machine Learning, as semi-supervisionadas
podem combinar dados previamente classificados, com dados que não tenham sido previamente
classificados, sendo uma solução possível para casos em que é necessário treinar um modelo, em que
o número de dados previamente classificados é reduzido (Liao & Veeramachaneni, 2009). Em
contrapartida, existem abordagens não supervisionadas, tais como a proposta por Zhang & Elhadad
(2013), em que não existe uma necessidade de utilizar dados previamente classificados como dados
de treino.
2.1.5 Extração de tópicos
Latent Dirichlet Allocation (Blei, Ng, & Jordan, 2003) é um modelo estatístico generativo que
permite extrair tópicos de documentos de texto. O LDA supõe que um autor, antes de escrever um
documento, especifica os tópicos sobre os quais quer escrever. Por sua vez, para cada um desses
tópicos, existe um conjunto de palavras, que o autor utilizará ao longo do texto. No entanto, há uma
diferença crucial entre palavras e tópicos: as palavras podem ser observadas diretamente no
documento, ao contrário dos tópicos, que não são diretamente observáveis, pelo que são latentes.
Contudo, o principal objetivo do LDA não é gerar o documento propriamente dito, mas sim
estimar corretamente de que modo um documento foi gerado. Tendo em conta que um documento é
formado por uma distribuição probabilística dos tópicos, e cada um desses tópicos tem uma
distribuição probabilística de palavras, tal implica estimar os parâmetros do modelo, de tal forma que a
distribuição de tópicos alocada para um determinado documento, bem como a distribuição de
palavras, sejam as mais corretas para o documento que está a ser analisado.
Um documento gerado através de LDA pode ser similar ao documento pelo qual se deseja
descobrir os tópicos, no sentido de que ambos têm constituições semelhantes, no que diz respeito às
15
palavras utilizadas. No entanto, não é capturada a semântica utilizada por humanos. Tal situação é
explicada pelo facto do LDA ser treinado utilizando representação de texto que não contêm informações
acerca da ordem das palavras.
O processo generativo do LDA pode ser sumarizado pela seguinte sequência de etapas:
• Para cada tópico 𝑘 ∈ {1, … , 𝐾}:
o Extrair uma distribuição de palavras 𝜑𝑘 ∼ Dir(𝛽)
• Para cada documento 𝑑 ∈ {1, … , 𝐷}:
o Extrair uma distribuição de tópicos 𝜃𝑑 ∼ Dir(𝛼)
• Para cada posição 𝑛 ∈ {1, … , 𝑁} no documento 𝑑:
o Extrair um tópico 𝑘 ∼ Multinomial(𝜃𝑑)
o Extrair uma palavra 𝑤𝑑,𝑛 ∼ Multinomial(𝜑𝑘)
Os parâmetros 𝛼 e 𝛽 são referentes às respetivas distribuições de Dirichlet sendo que,
geralmente, utilizam-se distribuições de Dirichlet simétricas no LDA, pelo que esses parâmetros podem
ser instanciados por um único número real. Caso a distribuição não seja simétrica, é necessário utilizar
um vetor, com vários números reais, como parâmetro. Segundo Cohen (2016), o motivo pelo qual se
costuma utilizar uma distribuição de Dirichlet simétrica, deve-se ao facto de simplificar
significativamente a aplicação da distribuição de Dirichlet, além de facilitar o processo de
aprendizagem do modelo. O autor refere ainda que, nestes casos, o parâmetro 𝛼 da distribuição de
Dirichlet tem o nome de parâmetro de concentração. Tendo em conta que, para cada documento, a
distribuição de tópicos é extraída de uma distribuição de Dirichlet parametrizada por 𝛼, esse parâmetro
influencia o número de tópicos pelos quais um documento é formado.
Para demonstrar de que forma o parâmetro 𝛼 influencia a distribuição de tópicos alocada a
um documento, simulou-se esse processo, na ferramenta R, para 25000 amostras, parametrizando a
distribuição com diferentes valores de 𝛼. Os resultados obtidos estão representados na Figura 3, onde
se recorreu a um simplex bidimensional, em que cada um dos vértices corresponde a um tópico. Cada
posição possível no simplex corresponde a uma distribuição multinominal, e cada amostra é
representada por um ponto azul, sendo que a distribuição multinominal de tópicos, para cada amostra,
depende da posição que o ponto correspondente a essa amostra ocupa no simplex. Se a amostra
estiver localizada junto dos vértices, significa que o documento correspondente a essa amostra é
bastante suscetível de conter apenas um tópico. Por outro lado, se a posição ocupada por essa
amostra for próxima do centro, significa que é provável que esse documento seja constituído por vários
16
tópicos. É possível constatar que, para 𝛼 = 0.2, existem várias amostrar concentradas nos vértices,
ou seja, formadas por um só tópico. Por outro lado, para 𝛼 > 1 verifica-se que valores elevados do
parâmetro aumentam a concentração no centro.
Figura 3 - Resultados obtidos para distribuições de Dirichlet com diferentes valores do parâmetro 𝛼
Deste modo, caso o utilizador preveja que os documentos são formados por poucos tópicos, o
valor atribuído ao parâmetro deverá ser próximo de 0. Por outro lado, caso se entenda que os
documentos devem ser formados por vários tópicos, o valor do parâmetro deverá ser maior. Aplica-se a
mesma lógica para o parâmetro 𝛽, que define a distribuição das palavras, por tópico.
2.1.6 Word2vec e representações distribuídas de palavras
O Word2vec foi formulado tendo como base o pressuposto de que, palavras com significados
idênticos, são acompanhadas por contextos idênticos. O pressuposto de que uma palavra pode ser
caraterizada pelas palavras que se encontram na sua vizinhança já tinha sido abordado por Firth
(1957), afirmando que “uma palavra deve ser conhecida pela sua companhia”.
O método Word2vec (Mikolov, Chen, Corrado, & Dean, 2013) foi desenvolvido com o propósito
de obter representações distribuídas de palavras, na forma de vetores, que consigam captar a
similaridade de diferentes palavras, tanto a nível sintático como semântico. Para obter a representação
de palavras, podem ser utilizados dois modelos distintos: Skip-gram e Continous Bag of Words.
17
Ambos utilizam uma técnica de janela deslizante para determinar as palavras de contexto de
cada palavra central. O tamanho da janela é um parâmetro do Word2vec que pode ser definido pelo
utilizador. Uma janela de tamanho 5, define que serão selecionadas as 5 palavras imediatamente à
esquerda, e imediatamente à direita, da palavra central. Caso não existam palavras imediatamente à
esquerda, apenas são consideradas as palavras que se encontram à direita, e vice-versa.
Dada a sequência de palavras “o jogador de futebol marcou um golo durante o jogo”,
aplicando uma janela de tamanho 3 para as palavras “futebol”, “marcou”, “um” e “golo”, para cada
uma dessas palavras centrais obtém-se as palavras de contexto representadas na Tabela 2.
Tabela 2 - Palavras de contexto para cada uma das palavras centrais, utilizando uma janela de tamanho 3
Palavra Central Palavras do Contexto
futebol o, jogador, de, marcou, um, golo
marcou jogador, de, futebol, um, golo, durante
um de, futebol, marcou, golo, durante, o
golo futebol, marcou, um, durante, o, jogo
Na Figura 4 é possível verificar que, para cada palavra central, o conjunto de palavras do
contexto abrangido pela janela é diferente. As palavras centrais estão delimitadas por retângulos com
fundo cinzento e as palavras do contexto estão delimitadas por retângulos com fundo branco.
Figura 4 - Representação visual do funcionamento da janela deslizante
Skip-gram
No modelo Skip-gram pretende-se prever as palavras do contexto associadas a uma
determinada palavra central. A arquitetura utilizada é relativamente simples, constituída por uma input
layer, projection layer e output layer. O tamanho da input layer é igual ao tamanho do vocabulário,
18
sendo que o tamanho do vocabulário é dado pelo número de palavras diferentes presentes no texto. O
mesmo se aplica para a output layer. A arquitetura utilizada pelo modelo Skip-gram está representada
na Figura 5.
Figura 5 - Arquitetura do modelo Skip-gram (Mikolov, Chen, et al., 2013)
Na input layer, a palavra é representada através de uma técnica de representação denominada
one hot encoding, que consiste em utilizar um vetor com o tamanho do vocabulário, em que cada
palavra do vocabulário tem um índice associado. Apenas o índice associado à palavra que se deseja
utilizar como input tem o valor 1, sendo todos os outros índices preenchidos com o valor 0.
Entre a input layer e projection layer, existe uma matriz de pesos, pela qual a input layer é
multiplicada, sendo assim aplicada uma transformação linear, ficando o resultado dessa multiplicação
contido na projection layer. Pelo facto da palavra para a qual se deseja prever o contexto ser
representada através de one hot encoding, o produto da input layer pela matriz de pesos resulta num
vetor que representa essa palavra.
Existe uma segunda matriz de pesos entre a projection layer e output layer, designada matriz
de contexto. O produto entre a projection layer e essa matriz permite obter um vetor com o tamanho do
vocabulário, onde cada um dos valores obtidos atribui um score a cada palavra do vocabulário. Como
se pretende prever a probabilidade de uma certa palavra do vocabulário pertencer ao contexto da
palavra que foi introduzida como input no modelo, é necessário converter esse score numa
probabilidade, sendo para tal necessário aplicar a função softmax. Desse modo, a probabilidade da
palavra 𝑠𝑘 pertencer ao contexto, dada a palavra central 𝑠𝑗, é definida pela Equação 7:
𝑃(𝑠𝑘|𝑠𝑗) =exp(𝑢𝑘
𝑇𝑣𝑗)
∑ exp(𝑢𝑖 𝑇𝑣𝑗)𝑖𝜖|𝑉|
(7)
onde |𝑉| é o tamanho do vocabulário, 𝑢𝑘 é o vetor coluna de índice 𝑘 da matriz de pesos do contexto
e 𝑣𝑗 é o vetor da palavra central para a qual se pretende prever a palavra do contexto.
19
Esta foi a abordagem inicialmente proposta pelos autores, no entanto, é computacionalmente
dispendioso aplicar a função softmax a todo o vocabulário. Para calcular a probabilidade de uma
palavra pertencer ao contexto de uma determinada palavra, é necessário calcular, como denominador,
o somatório dos exponenciais de todos os produtos escalares entre a palavra central e as outras
palavras do vocabulário. Como tal, utilizando essa abordagem, a complexidade computacional aumenta
linearmente com o tamanho do vocabulário. Para resolver essa questão, foram introduzidas algumas
modificações no Word2vec (Mikolov, Sutskever, Chen, Corrado, & Dean, 2013), sendo que os autores
sugerem a utilização de negative sampling, para tornar o Word2vec mais eficiente.
Negative sampling consiste em introduzir amostras negativas nos dados de treino, com o
intuito de tornar o modelo capaz de diferenciar amostras positivas de negativas. Deste modo, passa-se
a ter um problema de classificação binária, em que o principal objetivo é determinar se um par de
palavras é uma amostra positiva ou negativa. Uma amostra terá um par de formado por palavra central
e respetiva palavra de contexto. Neste caso, em vez de ser utilizada a função softmax, utiliza-se a
função sigmoid, que permite obter a probabilidade de um determinado par de palavras constituir uma
a uma amostra positiva. Dado um par de palavras, composto pelas palavras 𝑠𝑘 e 𝑠𝑗, a probabilidade
desse par de palavras pertencer à classe positiva, identificada por 𝐶1, é dada pela Equação 8:
𝑃(𝐶1|𝑠𝑘, 𝑠𝑗) =1
1 + exp(−𝑢𝑘 𝑇𝑣𝑗)
(8)
Continuous Bag of Words
À semelhança do que acontecia com o modelo Skip-gram, o modelo Continuos Bag of Words
utiliza uma input layer e output layer, ambas com um tamanho igual ao do vocabulário, assim como
uma projection layer. Ao contrário do que acontecia no modelo Skip-gram, neste modelo pretende-se,
dado um conjunto de palavras do contexto, prever corretamente a palavra central. A arquitetura
utilizada no modelo Continuous Bag of Words está representada na Figura 6.
20
Figura 6 - Arquitetura do modelo Continuous Bag of Words (Mikolov, Chen, et al., 2013)
As palavras pertencentes ao contexto, que no caso do Continuous Bag of Words são o input do
modelo, são representadas com recurso a one hot encoding. O input é multiplicado por uma matriz de
pesos, e efetuada a soma do resultado dessa multiplicação, que fica contido na projection layer. Existe
mais uma matriz de pesos, que conecta a projection layer à output layer, pela qual a projection layer é
multiplicada. Ao resultado dessa multiplicação é aplicada a função softmax para converter os valores
obtidos em probabilidades. Desse modo, como output, obtém-se a probabilidade de uma palavra ser a
palavra central das palavras de contexto que foram introduzidas como input no modelo. Tal como
mencionado para o modelo Skip-gram, pode-se utilizar negative sampling para reduzir a complexidade
computacional necessária para obter o output do modelo.
Tanto no modelo Skip-gram como Continous Bag of Words, o que é aproveitado após o
processo de aprendizagem é a matriz de pesos situada entre a input layer e projection layer, visto que
os autores do Word2vec chegaram à conclusão que esse subproduto, resultante do processo de treino,
consegue capturar caraterísticas de similaridade sintática e semântica das palavras do vocabulário.
Quando utilizado o método Word2vec para criar representações de palavras na forma de
vetores, os parâmetros referentes ao tamanho da janela, tamanho desejado para os vetores, bem
como a seleção do modelo a utilizar (Skip-gram ou Continous Bag of Words), têm influência nos
resultados obtidos (Mikolov, Sutskever, et al., 2013).
2.1.7 FastText
O FastText é um pacote de software que implementa dois modelos distintos e com propósitos
diferentes. Um dos modelos possibilita a obtenção de representações de palavras na forma de vetores
21
(Bojanowski, Grave, Joulin, & Mikolov, 2017), enquanto o outro modelo permite treinar um modelo
capaz de classificar texto (Joulin, Grave, Bojanowski, & Mikolov, 2017).
São algumas as semelhanças entre o FastText e os modelos propostos pelo Word2vec,
introduzido por Mikolov, Sutskever, et al. (2013). Similarmente ao que foi inicialmente proposto no
Word2vec, também é utilizado o modelo Skip-gram para obter as representações de palavras. O
FastText, para treinar o modelo, além de utilizar as palavras do contexto como input do modelo,
também utiliza os n-gram dessas palavras, sendo as palavras decompostas em subconjuntos. No caso
do FastText, essa decomposição é feita ao nível dos caracteres das palavras, sendo cada um desses
subconjuntos formado por uma sequência com n caracteres. Na Figura 7 demonstra-se, para duas
palavras diferentes, os respetivos resultados das decomposições das palavras, aplicando bigrams e
trigrams.
Figura 7 – Decomposição das palavras utilizando n-gram
De acordo com Bojanowski et al. (2017), a utilização de n-gram permite enriquecer os vetores
representativos das palavras com informação contida nas próprias palavras, à qual os autores
denominam de subword information, e assim capturar caraterísticas morfológicas das palavras.
Para classificação de texto, o modelo proposto por Joulin et al. (2017) e implementado no
FastText, utiliza uma arquitetura semelhante à utilizada no modelo Continuous Bag of Words do
Word2vec. Enquanto no modelo inicialmente proposto por Mikolov, Sutskever, et al. (2013) se
utilizavam as várias palavras do contexto para prever a palavra central, no FastText são utilizadas os
vários n-gram das diferentes palavras que constituem uma frase, como input do modelo, de forma a
conseguir a prever corretamente a classificação da frase, através da atribuição da respetiva categoria
ou classe. Na Figura 8 está representada a arquitetura do modelo, com o respetivo input, uma única
22
hidden layer e respetivo output, onde 𝑥1, … , 𝑥𝑁 são os 𝑁 ngram extraídos da frase para a qual se
deseja prever a classificação, e utilizados como input do modelo.
Figura 8 – Arquitetura do modelo para classificação de texto (Joulin et al., 2017)
Num estudo efetuado por Zhang & LeCun (2017), em que foram comparados vários modelos,
o FastText foi o que obteve melhores resultados, geralmente com tempos de treino inferiores aos de
outros modelos. O facto dos modelos treinados utilizando FastText não serem muito demorados,
comparativamente a outros modelos utilizados para classificação de texto, também permitiu aos
autores experimentar vários parâmetros, com o objetivo de tentar melhorar desempenho dos modelos.
2.2 Revisões de literatura
Nesta segunda secção do presente capítulo, é realizada uma análise dos conceitos
relacionados com revisões de literatura, sendo também identificadas as principais diferenças existentes
entre revisões narrativas e revisões sistemáticas.
2.2.1 Propósito das revisões de literatura
Quando é desenvolvido um artigo científico, muitas das vezes é necessário efetuar uma revisão
da literatura, que possibilite enquadrar e adquirir conhecimento sobre o que já foi feito no passado, no
que diz respeito ao tema ou tópico sobre o qual o trabalho de investigação incide. Esse enquadramento
é necessário pois um trabalho ou projeto de investigação não deverá ser visto como uma publicação
exclusiva e isolada, mas sim como algo que possa tirar partido dos estudos já desenvolvidos, para
tornar a publicação relevante e útil para a comunidade científica. Webster & Watson (2002) referem
que uma revisão do trabalho científico já efetuado numa área permite criar uma firme fundação,
facilitando o desenvolvimento teórico, bem como relacionar e descobrir áreas onde existe uma
23
necessidade de investigação. Por essa razão, a revisão de literatura deverá ser encarada como sendo
um elemento fundamental do trabalho de investigação e para o respetivo enquadramento do mesmo.
A primeira etapa da revisão de literatura consiste em identificar a literatura relevante o trabalho
de investigação a ser desenvolvido, e não deverá estar limitada a uma única metodologia, jornal
científico ou região geográfica (Webster & Watson, 2002), devendo apresentar alguma
heterogeneidade.
Após a identificação das publicações que serão utilizadas na revisão de literatura, é necessário
definir a estrutura da mesma que, segundo Webster & Watson (2002), deverá ser organizada em torno
dos conceitos que estão presentes na literatura a ser analisada. Segundo os mesmos autores, a etapa
subsequente à definição da estrutura da revisão, corresponde ao desenvolvimento teórico que
possibilita a identificação de eventuais oportunidades existentes na área científica sobre análise. Essas
oportunidades poderão surgir como resultado da necessidade de corrigir lacunas que foram
identificadas na literatura analisada.
Apesar de existir um conjunto de boas práticas para a elaboração de uma revisão de literatura,
como as definidas por Webster & Watson (2002), alguns autores, tais como Biolchini, Mian, Natali, &
Travassos (2005) realçam que, por vezes, tal não é suficiente. Os autores sugerem que, mesmo
utilizando essas boas práticas, “as revisões de literatura poderão sofrer da falta de rigor científico na
realização das diferentes etapas”. Além disso, Biolchini et al. (2005) ressalvam que a realização das
várias etapas do processo de revisão narrativa poderão ser algo tendenciosas.
2.2.2 Revisão sistemática
Segundo Biolchini et al. (2005), a revisão narrativa tem algumas limitações, nomeadamente o
facto de poder ser tendenciosa. Com o intuito de reduzir os erros sistemáticos nas revisões de
literatura, e reduzir a possibilidade de se obterem conclusões potencialmente tendenciosas, pode-se
optar por realizar uma revisão sistemática da literatura, utilizando um conjunto de métodos e etapas,
que devem ser seguidas durante o processo de realização da revisão (Cook, Mulrow, & Haynes, 1997).
Uma revisão sistemática utiliza uma abordagem sistemática e tem como objetivo delinear um
processo formal e controlado (Biolchini et al., 2005). Além disso, Biolchini et al. (2005) referem que a
revisão sistemática deverá ter um “ênfase na descoberta de princípios gerais, num alto nível de
abstração conceptual, revelando possíveis inconsistências através do processo comparativo de vários
estudos individuais”, devendo essas inconsistências servir, inclusive, como um “estimulante para
perceber a questão que está a ser investigada”.
24
Tanto a revisão sistemática como a revisão narrativa incidem sobre um conjunto itens. No
entanto, o modo como esses itens são abordados é distinto, apresentando diferenças que podem ser
identificadas. Por exemplo, na revisão narrativa e na revisão sistemática existem questões a responder,
contudo as questões definidas na revisão narrativa são mais amplas, ao contrário das definidas na
revisão sistemática, que devem ser mais específicas. Na Tabela 3 estão identificadas, de forma
sucinta, as principais diferenças entre as revisões narrativas e revisões sistemáticas, para alguns dos
itens que estão presentes em ambos os tipos de revisão.
Tabela 3 - Principais distinções entre revisão narrativa e revisão sistemática (adaptado de Cook et al., 1997)
Item Revisão Narrativa Revisão Sistemática
Questão De âmbito pouco restrito De âmbito restrito
Fontes utilizadas Potencialmente tendenciosas São especificadas
Estratégica de pesquisa Por vezes não é especificada Deve ser especificada
Seleção Critério indefinido Criteriosa
Síntese Qualitativa Qualitativa e quantitativa
A revisão sistemática pode ser aplicada em diferentes áreas científicas, sendo que Kitchenham
(2004) enunciou um conjunto de diretrizes para a aplicação de revisão sistemática na área de
engenharia de software. O processo de revisão sistemática é constituído por um conjunto de etapas,
realizadas de forma sequencial. As várias etapas do processo podem ser agrupadas em diferentes
fases: planeamento, execução e documentação. Na Figura 9 estão representadas as fases e etapas do
processo de revisão, estando do lado esquerdo representadas as várias fases do processo e, do lado
direito, as respetivas etapas para cada uma das fases. O conjunto de todas as etapas caracteriza o
processo de revisão sistemática.
25
Figura 9 – Fases e etapas do processo de revisão sistemática (adaptado de Brereton, Kitchenham, Budgen, Turner, & Khalil, 2007)
Cada uma das etapas tem um propósito específico:
• Especificar questões a serem respondidas: a primeira etapa da fase de planeamento
consiste em especificar as questões a serem respondidas durante o processo de revisão
sistemática, servindo de ponto de partida para o restante processo de revisão sistemática.
• Desenvolver protocolo da revisão sistemática: na definição do protocolo são
especificados alguns elementos, tais como a estratégia de pesquisa a ser utilizada e o critério
de seleção dos estudos, com o propósito de reduzir a possibilidade de obter resultados
tendenciosos (Kitchenham, 2004).
• Validação do protocolo da revisão: a validação do protocolo da revisão é realizada após o
desenvolvimento do protocolo estar concluído. Como o protocolo constitui uma parte relevante
de todo o processo de revisão, sendo consultado em diferentes etapas da mesma (como a
etapa de seleção de estudos, por exemplo) é necessário que o mesmo seja validado, devendo
o processo de validação ser considerado pelos investigadores (Kitchenham, 2004).
• Identificar estudos relevantes: etapa referentes à pesquisa dos estudos. Os estudos
devem ser obtidos através da definição de termos de pesquisa. Podem ser combinados vários
termos utilizado operadores booleanos, como AND e OR, sendo que o processo de pesquisa
deve ser documentado (Kitchenham, 2004).
26
• Seleção dos estudos: geralmente, esta seleção é feita tendo em conta os critérios
anteriormente definidos no protocolo. Essa análise pode ser feita analisado os títulos e
abstracts das publicações, num processo chamado screening.
• Avaliar qualidade dos estudos: a terceira etapa da fase de execução da revisão sistemática
consiste em avaliar a qualidade dos estudos. A avaliação da qualidade dos estudos permite
aferir determinadas caraterísticas que possam conferir uma fraca qualidade ao estudos, como
a presença de erros sistemáticos ou falta de validação dos resultados obtidos nos estudos que
estão a ser analisados (Kitchenham, 2004).
• Extração de dados: nesta etapa é definido que dados serão extraídos dos estudos, bem
como a forma como estes irão ser extraídos. É necessário extrair dados que possam auxiliar na
resposta às questões inicialmente definidas na fase de planeamento da revisão. Esses dados
permitirão, por exemplo, demonstrar tendências que sustentem as respostas às questões.
• Sintetizar dados: na etapa seguinte à extração de dados, é necessário efetuar uma síntese
dos dados extraídos. Essa síntese pode ser quantitativa e qualitativa, complementada por uma
síntese descritiva, tendo como propósito auxiliar na resposta às questões definidas.
• Escrita da revisão: a escrita da revisão pertence à fase de documentação da revisão, e
devem ser enunciados e descritos os resultados obtidos, de forma objetiva e rigorosa.
• Validação: é a última etapa do processo de revisão sistemática, e consiste na validação do
que foi escrito na etapa anterior. Caso a revisão seja publicada num jornal científico, é
necessário que a mesma seja validada por um conjunto de investigadores antes da sua
publicação.
2.3 Domínio de aplicação
Nesta secção, numa primeira instância, é abordada a metodologia que se pretende
automatizar e implementar, durante a dissertação, numa plataforma web.
É também elaborada uma análise do estado da arte sobre a aplicação de técnicas de Text
Mining para revisões de literatura, de forma a identificar o que tem vindo a ser feito na área, para
retirar ilações sobre como pode ser a metodologia utilizada, determinando possíveis oportunidades
para a utilização da metodologia, como a sua aplicação em etapas da revisão sistemática, e que
inicialmente não tinham sido consideradas.
27
2.3.1 Related Work
Alguns estudos têm abordado a aplicação de técnicas de Text Mining para revisões de
literatura. Na Tabela 4 é apresentado um resumo da literatura relativo a alguns desses estudos.
Tabela 4 - Resumo da literatura referente à aplicação de Text Mining para revisões de literatura
Autores Âmbito da revisão de
literatura
Principal informação
extraída utilizando Text
Mining
Total de
artigos
utilizados
Moro et al.
(2015)
Tendências relativas à aplicação
de Business Intelligence na
indústria bancária.
Tópicos e termos dos artigos, e
evolução ao longo dos anos.
Principais artigos para cada um
dos tópicos.
219
Moro, Rita, &
Cortez (2017)
Relações existentes entre áreas
de investigação, produtos
turísticos e localizações
geográficas.
Evolução dos tópicos dos
artigos e relações entre áreas
geográficas, áreas de
científicas e produtos turísticos.
811
Amado, Cortez,
Rita, & Moro
(2018)
Tendências na aplicação de Big
Data na área de Marketing.
Tópicos dos artigos e termos
relevantes, bem como a
respetiva evolução no tempo.
1560
Moro & Rita
(2017)
Redes sociais na indústria de
turismo e hospitalidade, para
brand building.
Tópicos e termos mais
relevantes dos artigos,
respetiva evolução no tempo.
479
Guerreiro, Rita,
& Trigueiros
(2016)
Descobrir os tópicos abordados
na área de Cause-related
marketing.
Popularidade dos tópicos dos
artigos, por ano, e termos mais
frequentes para cada tópico.
246
Moro, Cortez, &
Rita (2016)
Aplicação de técnicas de Data
Mining para determinar o risco
de crédito.
Tópicos e respetivos termos
relevante dos artigos, e
evolução ao longo dos anos.
100
Delen &
Crossland
(2008)
Tendências relativas às áreas de
investigação abordadas nos três
maiores jornais sobre Gestão de
Sistemas de Informação.
Tópicos mais relevantes e
termos descritos, de cada um
dos jornais, para determinados
períodos de tempo.
901
28
Constata-se que, dos estudos presentes no resumo de literatura, a descoberta dos tópicos
presentes nos artigos é um dos objetivos da aplicação de técnicas de Text Mining. Na maioria dos
estudos foi utilizado LDA para descobrir os tópicos, não tendo sido utilizado no estudo da autoria de
Guerreiro et al. (2016), em que foi utilizado o algoritmo Correlated Topic Model para esse propósito.
Percebe-se que o número de artigos utilizados em revisões que aplicam técnicas de Text
Mining também é considerável, destacando-se particularmente um dos estudos (Amado et al., 2018),
em que foi utilizado um total de 1560 artigos, que utiliza a mesma metodologia de revisão de literatura
abordada nesta dissertação, o que demonstra que é uma metodologia capaz de lidar com conjuntos
extensos de artigos. A mesma metodologia também foi aplicada para revelar as tendências relativas à
aplicação de Business Intelligence na indústria bancária (Moro et al., 2015).
Num outro estudo, a metodologia foi utilizada com o intuito de revelar as relações existentes
entre áreas de investigação, produtos turísticos e localizações geográficas (Moro et al., 2017). Além
disso, também foi aplicada a metodologia para revelar, de que forma as técnicas de Data Mining são
utilizadas para determinar o risco de crédito (Moro et al., 2016).
Deste modo, verifica-se a área à qual se pretende aplicar a metodologia não é um fator
limitante, podendo ser aplicada a áreas que envolvem conceitos tecnológicas, como Data Mining ou
Business Intelligence. Do mesmo modo, a metodologia pode ser aplicada para efetuar uma revisão de
literatura em áreas completamente distintas a Data Mining ou Business Intelligence, como é o caso da
área de turismo. Além disso, a metodologia também permite identificar relações existentes entre
conceitos de áreas distintas, como no caso em que se pretendeu determinar de que forma se utiliza
Business Intelligence na indústria bancária.
2.3.2 A metodologia a ser automatizada
Moro et al. (2015) desenvolveram uma metodologia que possibilita efetuar revisões de
literatura, em que são extraídos os vários tópicos presentes num conjunto de publicações,
recorrendo-se a técnicas de Text Mining como LDA. A metodologia também possibilita a revelação de
padrões e tendências presentes na literatura. No caso concreto do estudo elaborado por Moro et al.
(2015) foram analisados artigos que se enquadram no espaço temporal entre o ano de 2002 e 2013,
para revelar as tendências existentes na aplicação de Business Intelligence na indústria bancária,
analisando um total de 219 publicações.
A mesma metodologia foi também utilizada num outro estudo, com a finalidade de analisar um
conjunto de vários artigos que contivessem os termos “credit risk” e “data mining”, para identificar de
29
que forma as técnicas de Data Mining têm sido utilizadas para determinar o risco de crédito na área
financeira (Moro et al., 2016).
Para revelar as tendências existentes na aplicação de Big Data na área de Marketing, a
metodologia foi aplicada num outro estudo, tendo sido efetuada uma análise incidente sobre um total
de 1560 publicações (Amado et al., 2018).
A metodologia proposta por Moro et al. (2015) pode ser utilizada como uma abordagem para
revisões de literatura, sendo possível a sua aplicação em qualquer área científica. Um conjunto de
perguntas para o qual a metodologia pode ser utilizada para obtenção de respostas, são as perguntas
especificadas por Kuhrmann, Fernández, & Daneva (2017), que sugerem utilizar um conjunto de
perguntas que podem ser aplicadas na construção de qualquer revisão sistemática,
independentemente da área científica, tais como: “Quantas publicações existem, no total, sobre o
tópico a ser analisado na revisão sistemática?” ou “Quantas publicações existem, por ano, sobre o
tópico a ser analisado na revisão sistemática?”. As respostas a estas perguntas poderão dar uma visão
geral sobre a evolução de um tópico em específico, ao longo do tempo, revelando possíveis tendências,
e podem ser obtidas utilizando a metodologia proposta por Moro et al. (2015), utilizando um processo
semiautomático. De referir que estas perguntas são apropriadas tanto para revisões sistemáticas,
como narrativas. No caso concreto da revisão sistemática, perguntas desta tipologia poderão até
auxiliar numa fase preliminar da mesma, ajudando na definição de outras questões.
2.3.3 Oportunidades existentes no domínio de aplicação
Para determinar as oportunidades relativas à utilização de Text Mining para revisões de
literatura, é relevante perceber a opinião e perspetiva que os possíveis utilizadores têm sobre este
assunto. Recentemente, foi efetuado um estudo pelas organizações Maralte BV & Publishing Research
Consortium (2016), em que foram questionados vários investigadores, com objetivo de determinar os
seus “conhecimentos, perspetivas e experiências” na aplicação Text Mining a jornais científicos. Um
total de 520 investigadores, dispersos por várias regiões geográficas, responderam ao questionário.
No estudo, as respostas dadas pelos investigadores foram analisadas, possibilitando a
constatação de alguns factos interessantes sobre a aplicação de técnicas de Text Mining a jornais
científicos. Apresentam-se algumas das constatações enunciadas no estudo (Maralte BV & Publishing
Research Consortium, 2016):
• 76% dos investigadores que responderam ao questionário nunca aplicaram técnicas de Text
Mining a jornais científicos;
30
• A maioria dos investigadores que nunca utilizaram essas técnicas, manifestaram interesse em
utilizar essas técnicas no futuro;
• Dos investigadores que nunca utilizaram as referidas técnicas, a maioria gostaria de utilizar as
técnicas para automatizar algumas das etapas que integram o processo de revisão sistemática
de literatura;
• Aproximadamente 45% dos investigadores responderam que gostariam de utilizar as técnicas
para a finalidade de extrair informação dos jornais científicos;
• É reduzida a percentagem de investigadores (24%) que manifestou um interesse em
desenvolver uma ferramenta que possibilite aplicar as técnicas. Por outro lado, grande parte
dos investigadores (76%) deseja utilizar uma ferramenta já desenvolvida, que possibilite aplicar
as técnicas sem ser necessário despender tempo no desenvolvimento de uma ferramenta;
• 69% dos investigadores acham que a utilização da técnica lhes possibilitaria reduzir o tempo
despendido na revisão de literatura;
• Os investigadores que já utilizam as referidas técnicas de Text Mining, aplicando-as a jornais
científicos, considera-as difíceis de utilizar, principalmente pelo facto de serem necessárias
capacidades de programação;
• Grande parte dos investigadores que já utilizaram as técnicas de Text Mining para revisões de
literatura, efetua trabalho científico em áreas relacionadas com medicina.
As constatações enunciadas no estudo possibilitam deduzir que as técnicas de Text Mining
ainda não são abundantemente aplicadas a conteúdo textual de caráter científico, como o caso de
jornais científicos. Contudo, tal não significa que não exista um interesse nessas técnicas, tendo até
sido observado no estudo, que a maioria dos que nunca as utilizaram, teriam interesse em utilizar tais
técnicas (Maralte BV & Publishing Research Consortium, 2016). Coloca-se a hipótese de que, o
número reduzido de investigadores que utilizam estas técnicas, poderá estar relacionado com o facto
de não existirem muitas soluções que possibilitem a aplicação de técnicas de Text Mining sem que
sejam exigidos conhecimentos técnicos, tanto no que diz respeito aos algoritmos passíveis de serem
aplicados e adaptados para automatizar o processo de revisão de literatura, bem como as linguagens
de programação utilizadas regularmente para a aplicação de técnicas de Text Mining.
2.3.4 Aplicação de text mining na etapa de seleção de estudos da revisão sistemática
Por vezes, as revisões sistemáticas de literatura poderão incidir sobre uma um número elevado
de publicações, como no caso demonstrado por Dias et al. (2011), em que a revisão incide sobre um
31
total de 7659 publicações. Para determinar os estudos que devem ser incluídos na revisão sistemática,
é necessária a utilização de uma estratégia definida que, geralmente, consistem em analisar os
abstracts e títulos das várias publicações com o objetivo de determinar a inclusão e exclusão de
publicações. A esta análise de abstracts e títulos das publicações como forma de seleção, dá-se o
nome de screening (Ng et al., 2014). Tendo em conta que esse processo de screening, de um modo
geral, incide sobre todas as publicações obtidas durante a pesquisa, uma grande quantidade de
publicações irá causar uma carga de trabalho substancial, em que o tempo despendido pelos
investigadores nesta etapa da revisão sistemática de literatura é considerável.
Uma solução possível para melhorar a etapa de screening do processo de revisão sistemática,
reduzindo a quantidade de tempos despendido nessa etapa, consiste em utilizar um modelo que
possibilite classificar corretamente se um artigo deverá ser incluído ou excluído do processo. Uma das
abordagens possíveis, consiste em treinar um modelo de Machine Learning, com o intuito de
automatizar a etapa de screening, utilizando classificação de texto. Foi essa a abordagem utilizada por
Shemilt, Khan, Park, & Thomas (2016), num estudo comparativo que visa identificar as diferenças de
eficácia na utilização de Text Mining para revisões sistemáticas de literatura, comparativamente à
eficácia de um processo de revisão em que todas as etapas são feitas de modo exclusivamente
manual.
O modelo proposto por Shemilt et al. (2016), utilizado para determinar se uma publicação
deverá ser excluída ou não, é treinado utilizando aprendizagem ativa. Inicialmente, na etapa de
screening, um investigador analisa os títulos e abstracts de um pequeno subconjunto de publicações, e
decide se o artigo deverá ser incluído, ou não, nas etapas consequentes da revisão sistemática.
Conforme o investigador vai tomando as suas decisões, essas decisões são introduzidas como dados
de treino do modelo. Nesta abordagem, geralmente, o algoritmo de Machine Learning é treinado com
recurso a um pequeno número de dados de treino e, de forma cíclica, são utilizados novos dados para
melhorar o desempenho do modelo (Hashimoto, Kontonatsios, Miwa, & Ananiadou, 2016). Este
processo de aprendizagem é denominado de aprendizagem ativa. A utilização de aprendizagem ativa
para a etapa de screening, e a sua utilidade para reduzir o tempo despendido nesta etapa da revisão
sistemática de literatura, tem sido uma abordagem sugerida por alguns autores (Miwa, Thomas,
O’Mara-Eves, & Ananiadou, 2014; Wallace, Small, Brodley, & Trikalinos, 2010).
Segundo os autores, um dos principais problemas da utilização de um modelo que determina
automaticamente as publicações a serem excluídas, deve-se ao facto de existir a possibilidade de
serem excluídas publicações de forma errada, pelo facto de existirem falsos negativos resultantes da
32
classificação feita pelo modelo. Tendo em consideração que as etapas subsequentes à etapa de
screening utilizam apenas as publicações que não foram excluídas, o impacto da existência de falsos
negativos é significativo, devido à exclusão de publicações que poderiam conter informação
potencialmente relevante para revisão sistemática. Shemilt et al. (2016) observaram que existe um
trade-off entre o número de dados utilizado para treinar o modelo e a capacidade do modelo classificar
corretamente as publicações a serem mantidas na revisão sistemática. Um maior número de dados de
treino implica um aumento do esforço exigido aos investigadores, visto que os dados de treino resultam
das classificações manuais desempenhadas por estes. Os autores determinaram que é necessário, em
média, utilizar um subconjunto que contenha 36% do total de publicações para treinar um modelo que
capaz de classificar corretamente 95% das publicações relevantes.
A utilização de Text Mining na etapa de screening possibilitou reduzir em 64% a carga de
trabalho, reduzindo o tempo necessário, bem como os custos monetários, comparativamente com a
realização da etapa de screening de modo exclusivamente manual (Shemilt et al., 2016). Deste modo,
verifica-se que existe potencial na utilização de técnicas de Text Mining para reduzir a carga de trabalho
no processo de revisão sistemática de literatura, mais precisamente na etapa de screening. Shemilt et
al. (2016) referem que, tendo em conta os resultados obtidos, a utilização de Text Mining poderá
“representar uma abordagem pragmática e eficiente para identificar as publicações a serem incluídas
em revisões sistemáticas de grande escala”.
Importa, no entanto, referir que na abordagem exclusivamente manual foi determinado que
169 das publicações deviam ser mantidas no processo de revisão, um número maior do que o obtido
através de Text Mining. Em contrapartida, na abordagem em que se utilizou Text Mining, foram
identificadas 161 publicações como sendo passíveis de serem incluídas no processo de revisão
sistemática, o que significa houve uma exclusão, de forma errada, de um total de 8 artigos. Tendo em
conta estes resultados, cabe ao investigador, ou grupo de investigadores, ponderar e identificar os
riscos em função da área de estudo e do propósito concreto da revisão sistemática que irão realizar.
Riscos esses, que poderão incorrer devido à possibilidade de cerca de 5% dos artigos serem excluídos,
erradamente, do processo de revisão sistemática.
2.3.5 Aplicação de text mining na etapa de avaliar a qualidade dos estudos da revisão sistemática
Determinar se um estudo é tendencioso constitui uma das finalidades da etapa de avaliação da
qualidade dos estudos do processo de revisão sistemática (Kitchenham, 2004). Para auxiliar nesta
etapa, recentemente alguns estudos (Marshall, Kuiper, & Wallace, 2014; Millard, Flach, & Higgins,
33
2015) têm vindo a aplicar técnicas de Text Mining para determinar o risco de um estudo ser
tendencioso.
Millard et al. (2015) utilizaram um modelo de classificação de texto, baseado em regressão
logística, para determinar o risco dos estudos serem tendenciosos, permitindo ordená-los consoante o
risco. Os autores compararam o desempenho do modelo, para verificar o que seria mais vantajoso,
utilizar apenas o abstract e título das publicações para treinar o modelo, ou todo o texto presente nas
publicações. Verificou-se que os melhores resultados eram obtidos utilizando todo o texto presenta na
publicação, não ficando restrito apenas ao conteúdo presente no abstract e título da publicação. No
entanto, os autores ressalvam que existem algumas limitações, nomeadamente o tamanho reduzido do
dataset utilizado, tendo menos de um milhar de dados por cada classe.
Num outro estudo com o propósito de estimar o riso de um estudo ser tendencioso, Marshall
et al. (2014) utilizaram um modelo baseado em Support Vector Machines. Os dados utilizados para
treinar o modelo são constituídos por vários artigos, identificados com diferentes classes de risco: alto,
baixo e desconhecido. O modelo desenvolvido por Marshall et al. (2014), foca-se maioritariamente em
estudos relativos a ensaios clínicos. O trabalho desenvolvido por Marshall et al. (2014) foi
implementado numa plataforma web, chamada RobotReviewer 2.
2.3.6 Aplicação de text mining na etapa de extração de dados da revisão sistemática
É possível aplicar técnicas de Text Mining na etapa de extração de dados do processo de
revisão sistemática. Mas, enquanto na etapa de seleção dos estudos, nomeadamente através de
screening, a aplicação de técnicas de Text Mining incide principalmente sobre o abstract, por outro
lado, na etapa de extração de dados, por vezes é necessário aplicar as respetivas técnicas a todo o
texto da publicação.
A aplicação de técnicas de Text Mining e Machine Learning, com o intuito de extrair dados
relativos de publicações relacionadas com estudos clínicos tem sido alvo de interesse em diversos
estudos (Boudin et al., 2010; Wallace, Kuiper, Sharma, Zhu, & Marshall, 2016). Os autores tentam
extrair as seguintes entidades de publicações clínicas: população, intervenção, comparação e
resultado. Através da extração destas entidades é possível obter alguma informação sobre o estudo
clínico.
2 http://www.robotreviewer.net/
34
Boudin et al. (2010) combinaram vários algoritmos, como Support Vector Machines e árvores
de decisão, para construir um modelo capaz de extrair dados de artigos clínicos. Os modelos são
treinados utilizando dados de treino em que estão presentes amostras das várias classes, que neste
caso são entidades, como “população”, por exemplo. Contudo, verificou-se que os dados não eram
balanceados, sendo que algumas entidades tinham uma presença mais significativa nos dados de
treino, comparativamente a outras entidades. Por exemplo, o número de dados correspondentes à
classe “resultado” era menos de metade, quando comparado com o número de dados correspondente
à classe “população”.
O estudo efetuado por Wallace et al. (2016) é um exemplo de um estudo que utiliza dados
balanceados, que também tem o propósito de identificar as mesmas entidades do estudo realizado por
Boudin et al. (2010). No entanto, não é possível comparar diretamente o desempenho dos modelos
obtidos em ambos os estudos, visto que utilizam algoritmos distintos e estratégias diferentes para
avaliar os modelos e, por essa razão, é difícil atribuir como causa da diferença de desempenho, o facto
de um estudo utilizar dados balanceados (Wallace et al., 2016), e outro não (Boudin et al., 2010).
Outros autores, como é o caso de Kiritchenko, de Bruijn, Carini, Martin, & Sim (2010),
focam-se em identificar e extrair informação adicional da publicações relacionadas com ensaios
clínicos, como o tamanho da amostra da população, identificando o número de pessoas que
participaram num ensaio clínico, duração de tratamentos, modo de administração do tratamento, entre
outras informações relacionadas diretamente com ensaios clínicos. Adicionalmente, Kiritchenko et al.
(2010) também se focaram na extração de informação que não está diretamente relacionada com o
ensaio clínico, como o nome dos autores, data de publicação ou o nome da entidade financiadora do
ensaio clínico (caso exista). A estratégia utilizada pelos autores consistiu em treinar um modelo de
classificação de texto capaz de identificar as frases que contenham as entidades que se pretende
extrair e, após essas frases estarem identificadas, são extraídos excertos dessas frases através de
regras, excertos esses que correspondem a entidades.
2.3.7 Desafios na aplicação de text mining em revisões sistemáticas
O aparecimento de estudos que abordam a aplicação de técnicas de Text Mining em revisões
sistemáticas é relativamente recente e, por essa razão, é importante analisar a literatura disponível
sobre o assunto, para perceber como poderão ser aplicadas estas técnicas no processo de revisão
sistemática. Apesar disso, se os algoritmos ou técnicas utilizadas não estiverem devidamente
35
detalhados e especificados, a aplicação de técnicas de Text Mining torna-se desafiante, até pela
dificuldade de utilizar os estudos previamente elaborados como um ponto de partida.
Um obstáculo inerente ao estudo realizado por Shemilt et al. (2016), deve-se ao facto dos
autores não terem mencionado o algoritmo utilizado. Existem vários modelos baseados em diferentes
algoritmos, que podem ser utilizados para classificação de texto, como árvores de decisão, redes
neuronais de diversas arquiteturas, Support Vector Machines, entre outros. Por essa razão, a
dificuldade em replicar os resultados obtidos no estudo desenvolvido por Shemilt et al. (2016) é
considerável.
A falta de especificação dos algoritmos utilizados, bem como dos dados utilizados para treinar
o modelo, não é um problema isolado ou pontual no contexto de utilização de Text Mining para
automatizar ou auxiliar o processo de revisão sistemática de literatura. Numa análise crítica que incide
sobre vários estudos relativos à utilização de Text Mining para revisão sistemática, Olorisade, de
Quincey, Brereton, & Andras (2016) identificaram que “menos de 20% dos estudos explicaram os
algoritmos utilizados, bem com a justificação que levou à decisão de utilizar esse algoritmo”. Os
autores que efetuaram a análise, concluem que existe uma “necessidade de melhorar a explicação dos
algoritmos utilizados, bem como os detalhes do processo utilizado, para facilitar a replicação dos
estudos”.
Saha, Ouzzani, Hammady, & Elmagarmid (2016) determinaram um conjunto de fatores como
sendo desafiantes para a construção de um modelo com que consiga obter resultados satisfatórios na
etapa de seleção de estudos da revisão sistemática deverá apresentar um conjunto de caraterísticas,
tais como:
• A extração de features deve ser rápida;
• O algoritmo de aprendizagem e previsão deve ser rápido;
• O algoritmo deverá ser capaz de lidar com dados não balanceados.
36
2.3.8 Mapa de literatura
No mapa de literatura, representado na Figura 10, são identificadas algumas das principais
referências, bem como os relacionamentos existentes entre vários conceitos.
Figura 10 – Mapa de literatura
37
3. ENQUADRAMENTO TECNOLÓGICO
Durante o desenvolvimento da dissertação, a nível tecnológico, será utilizada a ferramenta R.
Para esta ferramenta, existem vários pacotes que permitem expandir as suas funcionalidades sendo
que, para o desenvolvimento da dissertação, identificou-se os seguintes pacotes da ferramenta R como
sendo necessários para a dissertação:
• rminer (Cortez, 2010) possibilita a utilização modelos de classificação, tais como Support
Vector Machines, redes neuronais, entre outros, que serão utilizados para propósito de
classificação de texto.
• tm (Meyer, Hornik, & Feinerer, 2008) é um pacote que possibilita a aplicação de várias
técnicas necessárias para pré-processamento e representação de texto que;
• topicmodels (Hornik & Grün, 2011) para utilizar algoritmos necessários para a metodologia,
como LDA.
• shiny (Chang, Cheng, Allaire, Xie, & McPherson, 2017) será utilizado para desenvolver a
plataforma web, pois é um pacote do R que permite desenvolver páginas web reativas.
• fulltext (Chamberlain, 2016) um pacote que possibilita pesquisar e aceder, diretamente no R,
publicações científicas de várias plataformas, como ArXiv, PubMed, Public Library of Science,
entre outras.
• keras (Allaire & Chollet, 2017) que possibilita utilizar Deep Learning, implementando
arquiteturas de redes neuronais mais complexas permitindo, inclusivamente, a utilização de
representações distribuídas de palavras, através da utilização de representações pré-treinadas
com Word2vec, por exemplo.
• fasttext (Joulin et al., 2017) utilizado para treinar modelos de classificação de texto utilizando
a arquitetura proposta no FastText.
Para acelerar o processo de treino dos modelos de classificação de texto que possam tirar
partido da utilização de uma unidade de processamento gráfico, será utilizado um serviço de cloud,
mais especificamente o serviço Amazon Elastic Compute Cloud 3. Será utilizada uma instância que
tenha uma unidade de computação gráfica e, para configurar a instância, será utilizada uma Amazon
Machine Image, que funciona como uma imagem de um sistema operativo que disponibiliza,
3 https://aws.amazon.com/pt/ec2/
38
pré-instalado, um conjunto de ferramentas. Neste caso, será utilizada uma imagem4 que já contém o R
pré-instalado com os pacotes do R necessários para treinar os modelos, como keras, bem como as
respetivas librarias gráficas (CUDA) necessárias para a unidade de computação gráfica. A decisão de
utilizar esta tipologia possibilita aplicar na dissertação modelos de redes neuronais algo sofisticados,
com caraterísticas de Deep Learning, sem aumentar em demasia a configuração da infraestrutura
necessária para tal.
4 http://www.louisaslett.com/RStudio_AMI/
39
4. GESTÃO DO PROJETO
Como já foi referido nos objetivos da dissertação, um dos objetivos é tornar a metodologia
desenvolvida por Moro et al. (2015) totalmente automática e proceder à sua implementação numa
plataforma web. Na metodologia, uma das etapas que envolve intervenção humana, é a pesquisa e
recolha das publicações científicas em formato digital e posterior seleção desses estudos, para serem
incluídos no processo de revisão. Tal envolve averiguar se as publicações pertencem, efetivamente, à
área que se pretende analisar.
Moro et al. (2015) recolheram 240 publicações com a finalidade de analisar a aplicação de
Business Intelligence na área bancária, no entanto, após uma análise manual, verificaram que algumas
publicações inicialmente obtidas na pesquisa não pertenciam à área de estudo, excluindo 21
publicações. Este é um processo que pode ser automatizado. Para automatizar essa etapa, durante a
dissertação pretende-se treinar um modelo de classificação de texto que possibilite, através dos títulos
e abstracts das publicações, classificar as publicações científicas em categorias, consoante a área
científica à qual pertencem, de forma a automatizar o processo de seleção das publicações científicas
que foram obtidas na pesquisa de literatura. Existe assim a necessidade de utilizar um dataset que
tenha um conjunto de publicações, com os respetivos abstracts e títulos, e que essas publicações
estejam classificadas em categorias, consoante a área científica a que pertencem. No entanto, não foi
possível encontrar um dataset com estas caraterísticas. Para fazer face essa situação, é necessário
obter estes dados de outra forma. Na plataforma ArXiv existe uma quantidade considerável de
publicações, publicações essas que estão classificadas por área científica e, utilizando a API
disponibilizada pelo ArXiv, é possível obter vários dados sobre as publicações, entre os quais o título,
abastract e área científica da publicação, entre outros. Assim sendo, os dados disponibilizados pela API
do ArXiv reúnem as caraterísticas necessárias para treinar os modelos, pelo que irão ser recolhidos,
através da API disponibilizada para esse efeito, e utilizados para treinar os modelos.
Para testar se esta estratégia é viável, foram recolhidos alguns dados de treino. Verificou-se
que existem, no ArXiv, categorias principais, como Ciências de Computação, e que englobam as
respetivas subcategorias. Por exemplo, Inteligência Artificial é uma subcategoria de Ciências de
Computação, assim como Criptografia e Segurança. Para ter uma ideia sobre os possíveis resultados
desta abordagem, foi treinado um modelo de classificação de texto, utilizando FastText (Joulin et al.,
2017). O que se constatou foi que, para as categorias principais, o modelo consegue obter métricas
bastantes satisfatórias, com acuidade superior a 90%. No entanto, o desempenho dos modelos em
40
categorizar as publicações em subcategorias bastante específicas é inferior. Contudo, os resultados são
promissores, visto que em muitos casos prever as categorias principais é suficiente. Existe assim um
trade-off entre o nível de detalhe e o desempenho do modelo.
O modelo a ser desenvolvido para a categorização das publicações pode ser utilizado segundo
diferentes estratégias. O utilizador pode definir na plataforma web, no início do processo de revisão, as
áreas científicas às quais quer limitar a revisão e, de acordo com essa decisão, é utilizado o modelo
para fazer a respetiva triagem. A alternativa, é utilizar o modelo para detetar qual a área à qual a
maioria das publicações pertencem, e excluir as publicações que não pertencem a essa área, pelo que
é uma hipótese a explorar durante a dissertação.
Coloca-se a hipótese que este modelo possa ser, inclusivamente, utilizado para auxiliar na
etapa de seleção de estudos na revisão de sistemática, pelo que também será uma hipótese a ser
explorada durante a dissertação.
Além disso, durante a dissertação, pretende-se complementar a metodologia de revisão de
literatura com uma nova funcionalidade que possibilite, através do abstract, identificar as frases que
pertencem a cada categoria, do seguinte conjunto de categorias: objetivo, background, método,
conclusões e resultados. O objetivo é complementar a informação já extraída na metodologia, como
tópicos e termos mais frequentes, com esta informação adicional. Para tal, pretende-se exibir na
plataforma web a ser implementada, informação relativa a estas categorias extraídas dos abstracts,
como conclusões, objetivo, método, entre outras. Pesquisou-se um dataset que pudesse ser utilizado
para treinar um modelo para essa finalidade. Encontrou-se um dataset (Dernoncourt & Lee, 2017) com
200000 abstracts de publicações da área de medicina, em que várias frases desses abstracts estão
classificadas com as categorias apropriadas: objetivo, background, método, conclusões e resultados.
Coloca-se também a hipótese de que esta informação poderá ser utilizada para facilitar o processo
manual da etapa de revisão sistemática, eliminando a necessidade de ser lido o abstract, mas sim
apenas excertos do mesmo (como as conclusões ou métodos, por exemplo), pelo que é uma hipótese
que será considerada durante a realização da dissertação. Uma limitação do dataset, é que apenas
contém publicações da área de medicina, onde é utilizado um vocabulário bastante específico, pelo
que terá de ser avaliado se o modelo também se adapta a outras áreas científicas. Para tentar mitigar
essa limitação, pretende-se verificar se os modelos de redes neuronais a serem desenvolvidos no
keras para esse efeito, poderão ter um melhor desempenho utilizando word vectors pré-treinados em
dados da Wikipedia, através do Word2vec, e disponibilizados por Levy & Goldberg (2014), englobando
41
um vocabulário de 175000 palavras. Deste modo, tenciona-se capturar um vocabulário mais amplo
que não está presente no dataset e assim, verificar se o desempenho dos modelos melhora.
Tendo em consideração que para a dissertação é utilizada a metodologia CRISP-DM, a
dissertação, desde a sua iniciação, é constituída pelas seguintes tarefas:
• Tarefa 1: Elaboração do plano de trabalhos;
• Tarefa 2: Escrita do projeto de dissertação;
• Tarefa 3: Desenvolvimento dos modelos necessários, como modelos de classificação de
texto, e respetiva implementação da metodologia numa plataforma web. Para tal, é aplicada a
metodologia CRISP-DM, pelo que são definidas as seguintes tarefas:
o Tarefa 3.1: Compreensão do negócio;
o Tarefa 3.2: Compreensão dos dados;
o Tarefa 3.3: Preparação dos dados;
o Tarefa 3.4: Modelação;
o Tarefa 3.5: Avaliação;
o Tarefa 3.6: Implementação;
• Tarefa 4: Configuração da infraestrutura que possibilite assegurar que a plataforma seja
acessível por quem pretender utilizá-la;
• Tarefa 5: Escrita da dissertação.
Na Figura 11 é possível observar a disposição temporal das tarefas, servindo de planeamento
para a dissertação.
Figura 11 - Diagrama de Gantt
43
REFERÊNCIAS BIBLIOGRÁFICAS
Allaire, J. J., & Chollet, F. (2017). keras: R Interface to “Keras.” Retrieved from https://cran.r-project.org/package=keras
Amado, A., Cortez, P., Rita, P., & Moro, S. (2018). Research trends on Big Data in Marketing: A text mining and topic modeling based literature analysis. European Research on Management and Business Economics, 24(1), 1–7. https://doi.org/https://doi.org/10.1016/j.iedeen.2017.06.002
Biba, M., & Gjati, E. (2014). Boosting text classification through stemming of composite words. In Recent Advances in Intelligent Informatics (pp. 185–194). Springer.
Biolchini, J., Mian, P. G., Natali, A. C. C., & Travassos, G. H. (2005). Systematic review in software engineering. System Engineering and Computer Science Department COPPE/UFRJ, Technical Report ES, 679(5), 45.
Blei, D. M., Ng, A. Y., & Jordan, M. I. (2003). Latent Dirichlet Allocation. Journal of Machine Learning Research, 3, 993–1022.
Bojanowski, P., Grave, E., Joulin, A., & Mikolov, T. (2017). Enriching Word Vectors with Subword Information. Transactions of the Association for Computational Linguistics, 5, 135–146.
Boudin, F., Nie, J.-Y., Bartlett, J. C., Grad, R., Pluye, P., & Dawes, M. (2010). Combining classifiers for robust PICO element detection. BMC Medical Informatics and Decision Making, 10(1), 29.
Brereton, P., Kitchenham, B. A., Budgen, D., Turner, M., & Khalil, M. (2007). Lessons from applying the systematic literature review process within the software engineering domain. Journal of Systems and Software, 80(4), 571–583.
Chamberlain, S. (2016). fulltext: Full Text of “Scholarly” Articles Across Many Data Sources. Retrieved from https://cran.r-project.org/package=fulltext
Chang, W., Cheng, J., Allaire, J. J., Xie, Y., & McPherson, J. (2017). shiny: Web Application Framework for R. Retrieved from https://cran.r-project.org/package=shiny
Chapman, P., Clinton, J., Kerber, R., Khabaza, T., Reinartz, T., Shearer, C., & Wirth, R. (2000). CRISP-DM 1.0 Step-by-step data mining guide.
Cohen, A. M., & Hersh, W. R. (2005). A survey of current work in biomedical text mining. Briefings in Bioinformatics, 6(1), 57–71. Retrieved from http://dx.doi.org/10.1093/bib/6.1.57
Cohen, S. (2016). Bayesian Analysis in Natural Language Processing. Morgan & Claypool Publishers. Cook, D. J., Mulrow, C. D., & Haynes, R. B. (1997). Systematic reviews: synthesis of best evidence for
clinical decisions. Annals of Internal Medicine, 126(5), 376–380. Cortez, P. (2010). Data mining with neural networks and support vector machines using the R/rminer
tool. Advances in Data Mining. Applications and Theoretical Aspects, 572–583. Delen, D., & Crossland, M. D. (2008). Seeding the survey and analysis of research literature with text
mining. Expert Systems with Applications, 34(3), 1707–1720. Dernoncourt, F., & Lee, J. Y. (2017). PubMed 200k RCT: a Dataset for Sequential Sentence
Classification in Medical Abstracts. In Proceedings of the Eighth International Joint Conference on Natural Language Processing (Volume 2: Short Papers) (pp. 308–313). Asian Federation of Natural Language Processing. Retrieved from http://aclweb.org/anthology/I17-2052
Dias, Á. M., Mansur, C. G., Myczkowski, M., & Marcolin, M. (2011). Whole field tendencies in transcranial magnetic stimulation: A systematic review with data and text mining. Asian Journal of Psychiatry, 4(2), 107–112. https://doi.org/https://doi.org/10.1016/j.ajp.2011.03.003
Ekbal, A., & Bandyopadhyay, S. (2012). Named Entity Recognition using Support Vector Machine: A Language Independent Approach.
44
Firth, J. R. (1957). A synopsis of linguistic theory, 1930-1955. Studies in Linguistic Analysis. Grishman, R., & Sundheim, B. (1996). Message understanding conference-6: A brief history. In COLING
1996 Volume 1: The 16th International Conference on Computational Linguistics (Vol. 1). Guerreiro, J., Rita, P., & Trigueiros, D. (2016). A text mining-based review of cause-related marketing
literature. Journal of Business Ethics, 139(1), 111–128. Gupta, V., & Lehal, G. S. (2009). A survey of text mining techniques and applications. Journal of
Emerging Technologies in Web Intelligence, 1(1), 60–76. Hashimoto, K., Kontonatsios, G., Miwa, M., & Ananiadou, S. (2016). Topic detection using paragraph
vectors to support active learning in systematic reviews. Journal of Biomedical Informatics, 62(Supplement C), 59–65. https://doi.org/https://doi.org/10.1016/j.jbi.2016.06.001
He, W., Zha, S., & Li, L. (2013). Social media competitive analysis and text mining: A case study in the pizza industry. International Journal of Information Management, 33(3), 464–472.
Hornik, K., & Grün, B. (2011). topicmodels: An R package for fitting topic models. Journal of Statistical Software, 40(13), 1–30.
Huang, A. (2008). Similarity measures for text document clustering. In Proceedings of the sixth new zealand computer science research student conference (NZCSRSC2008), Christchurch, New Zealand (pp. 49–56).
Joulin, A., Grave, E., Bojanowski, P., & Mikolov, T. (2017). Bag of Tricks for Efficient Text Classification. In EACL.
Kiritchenko, S., de Bruijn, B., Carini, S., Martin, J., & Sim, I. (2010). ExaCT: automatic extraction of clinical trial characteristics from journal publications. BMC Medical Informatics and Decision Making, 10(1), 56.
Kitchenham, B. (2004). Procedures for performing systematic reviews. Keele, UK, Keele University, 33(2004), 1–26.
Korde, V., & Mahender, C. N. (2012). Text classification and classifiers: A survey. International Journal of Artificial Intelligence & Applications, 3(2), 85.
Kuhrmann, M., Fernández, D. M., & Daneva, M. (2017). On the pragmatic design of literature studies in software engineering: an experience-based guideline. Empirical Software Engineering, 22(6), 2852–2891.
Lample, G., Ballesteros, M., Subramanian, S., Kawakami, K., & Dyer, C. (2016). Neural Architectures for Named Entity Recognition. In HLT-NAACL.
Lan, M., Sung, S.-Y., Low, H.-B., & Tan, C.-L. (2005). A comparative study on term weighting schemes for text categorization. In Neural Networks, 2005. IJCNN’05. Proceedings. 2005 IEEE International Joint Conference on (Vol. 1, pp. 546–551). IEEE.
Levy, O., & Goldberg, Y. (2014). Dependency-Based Word Embeddings. In Proceedings of the 52nd Annual Meeting of the Association for Computational Linguistics (Volume 2: Short Papers) (pp. 302–308). Association for Computational Linguistics. https://doi.org/10.3115/v1/P14-2050
Liao, W., & Veeramachaneni, S. (2009). A Simple Semi-supervised Algorithm For Named Entity Recognition.
Luhn, H. P. (1957). A statistical approach to mechanized encoding and searching of literary information. IBM Journal of Research and Development, 1(4), 309–317.
Maralte BV, & Publishing Research Consortium. (2016). Text Mining of Journal Literature 2016. Retrieved from http://publishingresearchconsortium.com/index.php/prc-documents/prc-research-projects/54-prc-text-mining-of-journal-literature-2016
Marshall, I. J., Kuiper, J., & Wallace, B. C. (2014). Automating risk of bias assessment for clinical trials. In Proceedings of the 5th ACM conference on Bioinformatics, computational biology, and health informatics (pp. 88–95). ACM.
Meyer, D., Hornik, K., & Feinerer, I. (2008). Text mining infrastructure in R. Journal of Statistical
45
Software, 25(5), 1–54. Mikolov, T., Chen, K., Corrado, G., & Dean, J. (2013). Efficient estimation of word representations in
vector space. arXiv Preprint arXiv:1301.3781. Mikolov, T., Sutskever, I., Chen, K., Corrado, G. S., & Dean, J. (2013). Distributed representations of
words and phrases and their compositionality. In Advances in neural information processing systems (pp. 3111–3119).
Millard, L. A. C., Flach, P. A., & Higgins, J. P. T. (2015). Machine learning to assist risk-of-bias assessments in systematic reviews. International Journal of Epidemiology, 45(1), 266–277.
Miner, G., Elder, J., Fast, A., Hill, T., Nisbet, R., & Delen, D. (2012). Practical Text Mining and Statistical Analysis for Non-structured Text Data Applications. Academic Press.
Miwa, M., Thomas, J., O’Mara-Eves, A., & Ananiadou, S. (2014). Reducing systematic review workload through certainty-based screening. Journal of Biomedical Informatics, 51, 242–253.
Moro, S., Cortez, P., & Rita, P. (2015). Business intelligence in banking: A literature analysis from 2002 to 2013 using text mining and latent Dirichlet allocation. Expert Systems with Applications, 42(3), 1314–1324.
Moro, S., Cortez, P., & Rita, P. (2016). An automated literature analysis on data mining applications to credit risk assessment. In In Artificial Intelligence in Financial Markets (pp. 161–177). London: Palgrave Macmillan UK. https://doi.org/10.1057/978-1-137-48880-0_6
Moro, S., & Rita, P. (2017). Brand strategies in social media in hospitality and tourism. International Journal of Contemporary Hospitality Management.
Moro, S., Rita, P., & Cortez, P. (2017). A text mining approach to analyzing Annals literature. Annals of Tourism Research, 66, 208–210. https://doi.org/https://doi.org/10.1016/j.annals.2017.07.011
Moulinier, I., & Ganascia, J.-G. (1995). Applying an existing machine learning algorithm to text categorization. In International Joint Conference on Artificial Intelligence (pp. 343–354). Springer.
Ng, L., Pitt, V., Huckvale, K., Clavisi, O., Turner, T., Gruen, R., & Elliott, J. H. (2014). and Abstract Screening and Evaluation in Systematic Reviews (TASER): a pilot randomised controlled trial of title and abstract screening by medical students. Systematic Reviews, 3(1), 121.
Nothman, J., Ringland, N., Radford, W., Murphy, T., & Curran, J. R. (2013). Learning multilingual named entity recognition from Wikipedia. Artificial Intelligence, 194, 151–175.
Oliveira, N., Cortez, P., & Areal, N. (2013). On the predictability of stock market behavior using StockTwits sentiment and posting volume. In Progress in artificial intelligence: 16th Portuguese Conference on Artificial Intelligence, EPIA 2013: proceedings (pp. 355–365). Springer.
Oliveira, N., Cortez, P., & Areal, N. (2017). The impact of microblogging data for stock market prediction: Using Twitter to predict returns, volatility, trading volume and survey sentiment indices. Expert Systems with Applications, 73, 125–144. https://doi.org/https://doi.org/10.1016/j.eswa.2016.12.036
Olorisade, B. K., de Quincey, E., Brereton, P., & Andras, P. (2016). A Critical Analysis of Studies That Address the Use of Text Mining for Citation Screening in Systematic Reviews. In Proceedings of the 20th International Conference on Evaluation and Assessment in Software Engineering (p. 14:1--14:11). New York, NY, USA: ACM. https://doi.org/10.1145/2915970.2915982
Porter, M. F. (1980). An algorithm for suffix stripping. Program, 14(3), 130–137. https://doi.org/10.1108/eb046814
Porter, M. F. (2001). Snowball: A language for stemming algorithms. Retrieved from http://snowball.tartarus.org/texts/introduction.html
Ramasubramanian, C., & Ramya, R. (2013). Effective pre-processing activities in text mining using improved porter’s stemming algorithm. International Journal of Advanced Research in Computer and Communication Engineering, 2(12).
46
Saha, T. K., Ouzzani, M., Hammady, H. M., & Elmagarmid, A. K. (2016). A large scale study of SVM based methods for abstract screening in systematic reviews. arXiv Preprint arXiv:1610.00192.
Salton, G., & Buckley, C. (1988). Term-weighting approaches in automatic text retrieval. Information Processing & Management, 24(5), 513–523.
Shemilt, I., Khan, N., Park, S., & Thomas, J. (2016). Use of cost-effectiveness analysis to compare the efficiency of study identification methods in systematic reviews. Systematic Reviews, 5(1), 140.
Singh, J., & Gupta, V. (2017). A systematic review of text stemming techniques. Artificial Intelligence Review, 48(2), 157–217. https://doi.org/10.1007/s10462-016-9498-2
Sparck Jones, K. (1972). A statistical interpretation of term specificity and its application in retrieval. Journal of Documentation, 28(1), 11–21.
Szarvas, G., Farkas, R., & Kocsor, A. (2006). A Multilingual Named Entity Recognition System Using Boosting and C4. 5 Decision Tree Learning Algorithms.
Tan, A.-H. (1999). Text mining: The state of the art and the challenges. In Proceedings of the PAKDD 1999 Workshop on Knowledge Disocovery from Advanced Databases (Vol. 8, pp. 65–70). sn.
Tanabe, L., Xie, N., Thom, L. H., Matten, W., & Wilbur, W. J. (2005). GENETAG: a tagged corpus for gene/protein named entity recognition. BMC Bioinformatics, 6(1), S3.
Toman, M., Tesar, R., & Jezek, K. (2006). Influence of word normalization on text classification. Proceedings of InSciT, 4, 354–358.
Turney, P. D., & Pantel, P. (2010). From frequency to meaning: Vector space models of semantics. Journal of Artificial Intelligence Research, 37, 141–188.
Wallace, B. C., Kuiper, J., Sharma, A., Zhu, M. B., & Marshall, I. J. (2016). Extracting PICO sentences from clinical trial reports using supervised distant supervision. Journal of Machine Learning Research, 17(132), 1–25.
Wallace, B. C., Small, K., Brodley, C. E., & Trikalinos, T. A. (2010). Active learning for biomedical citation screening. In Proceedings of the 16th ACM SIGKDD international conference on Knowledge discovery and data mining (pp. 173–182). ACM.
Ware, M., & Mabe, M. (2015). The STM report: An overview of scientific and scholarly journal publishing.
Webster, J., & Watson, R. T. (2002). Analyzing the past to prepare for the future: Writing a literature review. MIS Quarterly, xiii–xxiii.
Zhang, S., & Elhadad, N. (2013). Unsupervised biomedical named entity recognition: Experiments with clinical and biological textsq. Journal of Biomedical Informatics, 46, 1088–1098.
Zhang, X., & LeCun, Y. (2017). Which Encoding is the Best for Text Classification in Chinese, English, Japanese and Korean? CoRR, abs/1708.0.