Universidade Federal do Estado do Rio de Janeiro
Centro de Ciências Exatas e Tecnologia
Escola de Informática Aplicada
Análise do perfil de uma comunidade científica através de mineração de texto.
Brunno Athayde Silveira
Thiago Yusuke Muramatsu
Orientador
Kate Cerqueira Revoredo
i
Rio de Janeiro, RJ – Brasil
Dezembro de 2011
Análise do perfil de uma comunidade científica através de mineração de texto.
Brunno Athayde Silveira e Thiago Yusuke Muramatsu
Aprovada por:
__________________________________________________
Prof. Kate Cerqueira Revoredo, DSc. (UNIRIO)
__________________________________________________
Prof. Fernanda Araujo Baião, DSc. (UNIRIO)
______________________________________________
Prof. Renata Mendes de Araujo, DSc. (UNIRIO)
ii
Rio de Janeiro, RJ – Brasil.
Dezembro
de
2011
iii
Agradecimentos
Agradecemos ao corpo docente da UNIRIO, em especial à professora Kate, pela
paciência e diálogo franco.
Agradecemos nossas famílias e amigos, que nos tornaram quem somos.
1
RESUMO
O trabalho apresenta uma forma de análise de uma comunidade científica através
de suas publicações, possibilitando traçar o perfil da mesma, ao gerar indicadores que
auxiliam no entendimento dos diferentes tópicos abordados pelos pesquisadores.
Os indicadores são gerados de forma automática, sendo: uma rede de
colaboração, uma rede com as instituições envolvidas e o contexto (classificação)
dessas publicações.
Um sistema foi desenvolvido para auxílio da análise, sendo dividido em dois
módulos principais: geração de grafos e classificação automática de texto.
Realizou-se um estudo de caso com uma comunidade de Sistemas de Informação.
Este trabalho está inserido no escopo do projeto “Redes Sociais de Pesquisa em
Sistemas de Informação” o qual tem apoio da FAPERJ (processo número E26/111484/2010)
Palavras-chave: Descoberta de conhecimento, mineração de texto, classificação
automática de texto, categorização, redes sociais, grafos.
2
ABSTRACT
This works presents an analysis of a scientific community through its publications,
enabling the design of its profile, generating indicators that assist in the understanding
of the different topics covered by the researchers.
These indicators are generated automatically, as follows: a collaborative network,
a network of institutions involved and the context (classification) of the publications.
A system was developed to support the analysis and was divided into two main
modules: generating graphs and document classification.
A case study with a community of Information Systems was conducted.
This work is inserted into the scope of the project "Social Networks Research in
Information Systems" which is supported by FAPERJ (process number E26/111484/2010)
Keywords: Knowledge-discovery in databases - KDD, text mining, Document
classification/categorization, social network, graphs.
3
Índice
1
Introdução ......................................................................................................... 7
2
Conhecimento preliminar ............................................................................... 11
2.1
Análise de redes sociais................................................................................ 11
2.1.1
2.2
Grafos ................................................................................................ 12
Mineração de texto ....................................................................................... 14
2.2.1
Classificação automática de texto ..................................................... 15
2.2.2
Pré-processamento ............................................................................ 18
2.2.2.1
Identificação de termos: o conceito de dicionário ......................... 20
2.2.2.2
Stopwords e termos de pouco valor preditivo ............................... 21
2.2.2.3
Stemming e Lemmatisation ........................................................... 22
2.2.2.4
N-gram ........................................................................................... 23
2.2.3
Seleção das características ................................................................ 24
2.2.3.1
Representação dos documentos ..................................................... 24
2.2.3.2
Redução ......................................................................................... 25
2.2.3.3
Determinação do peso dos termos ................................................. 26
2.2.3.3.1
Frequência relativa do termo ................................................. 26
2.2.3.3.2
TF-IDF................................................................................... 27
2.2.3.3.3
Escore de relevância .............................................................. 28
2.2.3.4
Truncagem ..................................................................................... 30
2.2.3.5
Normalização ................................................................................. 31
2.2.4
Métodos de categorização ................................................................. 31
4
3
3.1
4
2.2.4.1
Modelos difusos ............................................................................ 32
2.2.4.2
Algoritmo de categorização - Calculando o grau de similaridade 34
Proposta .......................................................................................................... 36
Proposta de classificação automática de artigos .......................................... 38
Estudo de caso ................................................................................................ 39
4.1
Extração das informações............................................................................. 39
4.2
Geração de grafos de colaboração da comunidade do SBSI ........................ 39
4.3
4.2.1
Pajek .................................................................................................. 39
4.2.2
Preparação dos dados ........................................................................ 41
Classificação automática de artigos do SBSI ............................................... 43
4.3.1
5
Escolha dos algoritmos...................................................................... 45
4.3.1.1
Escore de relevância ...................................................................... 45
4.3.1.2
Algoritmo de categorização ........................................................... 46
4.3.2
Pré-processamento realizado ............................................................. 47
4.3.3
Seleção das características realizada ................................................. 48
4.3.4
Método de categorização utilizado.................................................... 48
Análise dos resultados .................................................................................... 49
5.1
Resultado da geração de grafos .................................................................... 49
5.2
Resultados da classificação automática........................................................ 52
5.2.1.1
Outro experimento- Melhorando o resultado ................................ 54
5.3
Análise da classificação automática ............................................................. 56
5.4
Dificuldades encontradas e limitações ......................................................... 58
5
5.4.1
Problemas na extração das informações............................................ 58
5.4.2
Problemas na definição das categorias .............................................. 58
5.5
Trabalhos Relacionados ............................................................................... 59
5.6
Trabalhos Futuros ......................................................................................... 60
6
Anexo A - Stoplist .......................................................................................... 61
7
Referencias ..................................................................................................... 62
Índice de Tabelas
Tabela 1 - Matriz de similaridade entre objetos (Fonte: Wives, 1999) ................... 33
Tabela 2 - Primeiro resultado gerado ...................................................................... 52
Tabela 3 - Resultado do classificador levando em consideração uma categoria por
artigo para geração da lista de termos ............................................................................ 55
6
1 Introdução
Mineração de texto, como é conhecido o processo de descoberta de informação a
partir de dados não estruturados, inspira-se na mineração de dados, utilizando
técnicas lingüísticas para tratamento de informações a partir de texto em línguas
naturais, produzindo informação textual de alta qualidade.
Comumente, através da mineração, busca-se a classificação automática de texto e
agrupamento por semelhança. A classificação ou agrupamento podem sempre ser
feitos de maneira manual, mas com a grande quantidade de informação disponível a
ser tratada, demandariam muito tempo.
A divisão de documentos em categorias, realizada de modo manual por um
especialista, é algo muito comum em diversos sistemas. Dessa maneira, a tarefa de
recuperação de informação é facilitada, pois possibilita a busca em domínios
específicos em uma base mais concisa de documentos. Podemos imaginar esta
aplicação em diversos cenários: bibliotecas, sites web, entre outros. Com o grande
volume de dados, tornam-se necessárias as técnicas de classificação e agrupamento de
textos de forma automática, tornando possível, por exemplo, a correta distribuição das
informações dentro de uma empresa.
Este cenário, de muita informação necessitando de tratamento, influenciou
estudos que possibilitam a classificação automática de textos com bons resultados,
7
diminuindo a necessidade de especialistas, que, por exemplo, participariam do
processo de validação do resultado. (Schiminovich, 1971) afirma que a classificação
automática de textos pode ser tão ou mais precisa que a classificação manual, com um
custo potencialmente menor. Um sistema de classificação automática de documentos
deve então ser capaz de associar um documento a uma ou mais categorias prédefinidas.
O processamento de linguagem natural estuda a compreensão automática de
linguagens humanas naturais, convertendo-as, por exemplo, em representações
manipuláveis por programas de computador, envolvendo campos da lingüística,
inteligência artificial, ciência da computação e lexicografia (Bates, 1995).
A classificação de documentos de texto (document classification/categorization)
como problema da ciência da informação estuda todo o processo de transformação da
informação em dados e conhecimento, com o objetivo de classificar o documento em
uma ou mais categorias. Uma técnica não supervisionada mais específica é a de
agrupamento de documentos (document clustering), intimamente relacionada ao
agrupamento de dados (data clustering), utilizando-se das técnicas de processamento
de linguagem natural para o tratamento dos dados não estruturados.
Técnicas de determinação do peso dos termos medem a importância de uma
determinada palavra em um documento de texto. TF-IDF (Sparck Jones, 1972) é uma
das medidas de importância mais utilizadas na recuperação da informação em
mineração de texto. Basicamente, baseando-se na freqüência da palavra no
documento e na coleção, é atribuído um peso indicando sua representatividade.
Toda esta tecnologia permitiria a classificação automática de artigos científicos. A
classificação destes artigos em categorias pré-definidas facilitaria não só a recuperação
8
de informação, por estarem em domínios específicos, mas também a percepção de
trabalhos associados, a classificação por parte dos autores e os possíveis erros de
classificação e a análise dos tópicos e seus relacionamentos para possíveis sugestões
de temas para os simpósios. De maneira mais macro, geraria indicadores que seriam
utilizados para análise do simpósio, bem como da comunidade como um todo.
Outra forma de analisar uma determinada comunidade é através de sua rede
social de colaboração. Redes sociais são estruturas sociais compostas por pessoas e/ou
organizações que se conectam através de relações e compartilham interesses comuns
– informação, conhecimento e esforços em busca do mesmo objetivo. A intensificação
das redes sociais reflete um processo de maior participação democrática e mobilização
social (Barnes, 1954).
A análise de redes sociais facilita o acompanhamento das discussões, permitindo a
percepção de tendências de opiniões e apoiando o processo colaborativo.
Este trabalho tem por objetivo analisar uma comunidade científica através de suas
publicações científicas. Esta análise é feita utilizando técnicas de mineração de textos
para identificação do contexto da publicação e geração da rede de colaboração. A
proposta foi avaliada considerando publicações feitas no Simpósio Brasileiro de
Sistemas de Informação (SBSI).
O presente trabalho está estruturado em capítulos e será desenvolvido da
seguinte forma:
Capítulo II: Apresenta o conhecimento preliminar referente à classificação
automática de texto através da mineração de texto e a análise de rede sociais através
da geração de grafos.
Capítulo III: Apresenta a proposta de maneira generalizada.
9
Capítulo IV: Descreve o estudo de caso realizado para a classificação automática
dos artigos científicos e a geração dos grafos da rede de colaboração do simpósio.
Capítulo V: Resultados finais e conclusões – Reúne as considerações finais, assinala
as contribuições da pesquisa e sugere possibilidades de aprofundamento posterior.
Capítulo VI: Anexos.
10
2 Conhecimento
preliminar
Este capítulo visa apresentar e descrever todo o conhecimento preliminar
relevante para o trabalho: a análise de redes sociais e sua relação com a teoria dos
grafos e a classificação automática de texto através de técnicas de mineração de texto.
2.1 Análise de redes sociais
Análise de redes sociais pode ser caracterizada como uma abordagem composta
de quatro propriedades básicas (Freeman, 2011):
1. Envolve a intuição de que as ligações entre os atores sociais são
importantes;
2. É baseada na coleção e análise de dados que registram as relações sociais
que ligam os atores;
3. Baseia-se fortemente em imagens gráficas que revelam e mostram os
padrões das ligações;
4. Desenvolve modelos computacionais e matemáticos para descrever e
explicar os padrões.
11
Até a década de 1930, nenhum autor havia produzido um trabalho com as quatro
propriedades listadas acima. O moderno campo da análise de redes sociais surgiu
então na década de 1930 (Freeman, 2011).
Na análise das redes sociais, muitos conceitos e terminologias são originários da
teoria dos grafos. A linguagem dos grafos pode ser utilizada para modelar idéias que
eram conhecidas antes da teoria dos grafos. Por exemplo, diagramas genealógicos são
grafos onde nós representam indivíduos ligados por relações de parentesco ou
afinidade. Diagramas deste tipo são utilizados de maneira prática há muito tempo,
então, desde que se percebeu a relevância dos grafos para a análise de redes sociais,
surgiu um campo vasto para a aplicação desta teoria (Barnes and Harary, 1983).
2.1.1 Grafos
O uso de imagens visuais é comum em vários campos da ciência sendo importante
para o desenvolvimento dos mesmos (Freeman, 2000). São identificadas duas
maneiras distintas de exibição usadas na construção de imagens de redes sociais, uma
baseada em pontos e linhas, outra em matrizes. Nas representações por linhas e
pontos, os pontos representam os atores e as linhas as conexões. Na representação
por matrizes, linhas e colunas, ambas, representam os atores, e números ou símbolos
nas células representam as relações sociais que ligam os atores.
A grande maioria das imagens representando redes sociais envolve o uso dos
pontos e linhas, assim como neste trabalho.
No estudo da estrutura das redes sociais é necessário incluir as relações entre os
atores, têm-se então três elementos básicos:
1. Atores (nós)
12
2. Relações (arestas)
3. Fluxos de informação (unidirecionais ou bidirecionais)
Figura 1 - Imagem de um padrão de vínculos (Moreno apud Freeman, 2000)
A Figura 1 mostra um grafo, conjunto de pontos e um conjunto de linhas
conectando pares de pontos, que sugere que os indivíduos do topo e da base seriam
os “dominantes”, pois se conectam aos demais pontos, e teriam uma ligação “direta” e
“indireta”.
(Moreno, 1934) sugere a utilização de setas para representar as ligações entre os
atores. Numa ligação entre os atores A e B, se A responde B e B não responde A, a seta
apontaria do ator A para o B. Caso cada um deles responda para o outro, a linha não
seria uma seta, mas teria uma pequena linha cruzando sua metade, são os chamados
grafos direcionados. Isso pode ser visto na Figura 2.
Figura 2 - Quem reconheceu quem em uma coleção de bebês (Moreno apud
Freeman, 2000)
13
Na Figura 2, o bebê A, por exemplo, está aparentemente na base de uma possível
hierarquia de reconhecimento, pois não foi reconhecido por nenhum dos outros. Por
outro lado, B, D G e H estão no topo, sendo reconhecido cada um por outros dois. C, E,
F e I estão no meio: sendo cada um reconhecido por outro. Porém a hierarquia está
longe de ser estrita; C e E reconheceram um ao outro, já G, H e I formaram um círculo,
onde G reconheceu I, I reconheceu H e H reconheceu G (Moreno apud Freeman,
2000).
A análise visual de redes sociais tem dois objetivos principais (Freeman, 2001):
1. Revelar clusters de atores fortemente ligados, os chamados grupos sociais;
2. Revelar o conjunto de atores que interpreta papéis especiais na rede social
(como exemplo, um ou mais atores proeminentes que ligam dois distintos
grupos sociais);
2.2 Mineração de texto
A Figura 3 ilustra as etapas operacionais executadas em processos de Descoberta
de conhecimento (Knowledge-discovery in databases - KDD). O processo de KDD é um
processo iterativo onde as três primeiras etapas podem ser interpretadas como a
análise exploratória dos dados. As etapas de seleção, pré–processamento e
transformação compreendem as funções relacionadas à captação, à organização e ao
tratamento dos dados, com os objetivos de encontrar as características mais
relevantes, reduzir a dimensionalidade e criar o conjunto de dados de entrada,
preparando os dados para os algoritmos da etapa seguinte, a mineração de dados.
14
Figura 3 - Etapas operacionais do processo KDD (Fonte: FAYYAD ET AL.,
1996)
A mineração de dados é considerada a etapa mais importante do processo de
KDD, pois é nela que é realizada a busca efetiva por conhecimentos úteis através da
extração de padrões. A última etapa é a de pós-processamento e interpretação,
abrangendo a apresentação e o tratamento do conhecimento obtido na mineração de
dados, viabilizando a avaliação dos padrões e a utilidade do conhecimento.
Baseada na mineração de dados, a mineração de texto busca obter informação útil
(conhecimento) a partir de dados não estruturados. Para isso, utiliza técnicas
lingüísticas para tratamento de informações a partir de texto em línguas naturais.
Sendo assim, as fases anteriores à aplicação da técnica de mineração em si ganham
destaque.
2.2.1 Classificação automática de texto
Segundo (Moens apud Galho and Moraes, 2003), “o homem executa a
categorização de texto lendo o texto e deduzindo as classes de expressões específicas
e seus padrões de contexto. A classificação automática de texto simula este processo e
reconhece os padrões de classificação como uma combinação de características de
texto. Estes padrões devem ser gerais o bastante para ter grande aplicabilidade, mas
15
específicos o suficiente para serem seguros quanto à categorização de uma grande
quantidade de textos”.
(Rizzi apud Galho and Moraes, 2003) afirma que “a categorização de textos é uma
técnica utilizada para classificar um conjunto de documentos em uma ou mais
categorias existentes. Ela é geralmente utilizada para classificar mensagens, notícias,
resumos e publicações. A categorização também pode ser utilizada para organizar e
filtrar informações. Essa capacidade faz com que esta técnica possa ser aplicada em
empresas, contribuindo no processo de coleta, análise e distribuição de informações e,
conseqüentemente, na gestão e na estratégia competitiva de uma empresa”.
A classificação automática de texto utiliza o processamento de linguagem natural
para associar um documento de texto a um conjunto de documentos conhecido como
categoria, além de permitir a definição automática destas categorias. Assim, organiza
os documentos para armazenagem e recuperação, limitando o espaço de busca e
facilitando o acesso à informação. Ao invés de selecionar um documento de texto
entre milhares disponíveis, analisa-se somente a categoria de interesse.
Basicamente, classificação de texto pode ser dividida em dois tipos:
supervisionada, onde um mecanismo externo (interação humana, por exemplo)
fornece informação para a correta classificação dos documentos (Document
classification/categorization),
e
não
supervisionada
(também
chamada
de
agrupamento (Document clustering)), onde a classificação deve ser realizada sem
nenhuma referência de informação externa (Fabrizio Sebastiani, 2002).
Quando não se conhece previamente as categorias nas quais os textos devem ser
classificados, utiliza-se então a técnica de agrupamento (Document clustering). Assim,
como possíveis aplicações para o agrupamento de texto, surgem cenários onde não se
16
dispõe de nenhuma informação sobre os textos e o volume de dados é muito grande,
tornando inviável a classificação manual (Solange ET AL, 2011).
Quando as categorias são previamente conhecidas, utiliza-se a classificação de
texto (Document classification/categorization). Este é o tipo de classificação que será
tratada a partir de agora e utilizada neste trabalho.
Um sistema de classificação automática de texto através de métodos
supervisionados compreende duas fases: definição das categorias e classificação dos
novos documentos de texto (Galho and Moraes, 2003).
A fase de definição das categorias é normalmente realizada em três etapas:
preparação dos textos, seleção de características e definição da lista de termos
relevantes das categorias.
Figura 4 - Esquema de definição de categorias (Adaptado de Galho and
Moraes, 2003)
Sobre uma coleção de documentos de texto conhecidos e pertencentes a uma
mesma categoria, aplica-se a etapa de preparação do texto. Nessa etapa, cada
documento dessa coleção é analisado. São aplicadas algumas técnicas que facilitam o
processo de seleção de características dos textos, tais como: retirada de todas as
palavras que não influenciam para a definição da categoria do texto, retirada de
símbolos (ex: #,#,$,%,¨,&,*,(,), etc.), conversão de termos em radicais, entre outras.
17
Logo após, são localizadas (através de medidas que determinam os pesos dos
termos), nos textos, todas as palavras que expressam melhor suas características, ou
seja, as palavras ou conceitos que podem definir sua categoria.
A partir destes conceitos, é gerada uma lista de termos comuns a todos os
documentos de cada categoria. Um termo comum aos documentos de uma mesma
categoria e incomum aos documentos das outras categorias seria um bom preditor
desta categoria. Essa lista de termos compõe o índice que representa a categoria.
Figura 5 - Esquema de categorização de novos documentos (Adaptado de
Galho and Moraes, 2003)
Na fase de categorização, o novo texto a ser classificado também passa pela etapa
de preparação já mencionada. Após essa etapa também é necessário descobrir as
características desse documento para definir a sua lista de termos. A categorização
ocorre através de uma comparação entre a lista de termos das categorias e a lista de
termos do novo documento (através da utilização de um método de categorização). A
categoria que possuir a lista de termos mais similar à lista do documento novo será
escolhida como sua classe. A Figura 5 apresenta o esquema de categorização de novos
documentos.
2.2.2 Pré-processamento
18
Os sistemas de classificação automática de texto identificam padrões através de
exemplos de treinamento que serão utilizados para classificar novos documentos em
relação à coleção.
Diferente dos dados armazenados em bancos de dados relacionais, onde estão
organizados em forma de linhas e colunas, e cada linha representa uma tupla e cada
coluna um atributo (característica), ou seja, estão estruturados, os dados em textos
estão dispostos de maneira não estruturada. Neste caso, os documentos são as
instâncias e as palavras os atributos.
Então, a etapa de preparação do texto ou etapa de pré-processamento é uma das
mais importantes da mineração de texto, pois determina os valores das características
(atributos) que representarão os documentos dentro da base a ser considerada. Os
dados precisam ser analisados, selecionados, uniformizados e formatados através de
técnicas de preparação do texto.
Retirar o que não é significativo para a classificação torna o texto mais enxuto e a
lista de palavras das categorias mais sucinta. Isto reduz expressivamente o trabalho a
ser realizado nas etapas de seleção das características e categorização, e,
conseqüentemente, diminui significativamente o tempo de processamento. Apesar
das vantagens, a possível eliminação de termos relevantes comprometeria o resultado
final.
As iniciais dificuldades em tratar os dados não estruturados motivaram estudos
para o desenvolvimento de técnicas de análise de texto para transformação dos
documentos. As técnicas de processamento de linguagem natural são úteis no campo
da mineração de texto para “entender o texto”, extraindo a sintaxe e semântica, o
19
texto deixa de ser tratado como “uma grande bolsa de seqüência de caracteres”
(Harris, 1954).
2.2.2.1 Identificação de termos: o conceito de dicionário
Como supracitado, os documentos são representados por palavras, que são os
atributos utilizados pelos sistemas de classificação automática de texto. Estes sistemas
buscam e identificam padrões que associem os documentos as categorias, que são
conceitos definidos pelo usuário. Acontece que, nem sempre, palavras são conceitos.
Algumas representam mais de um conceito, enquanto certos conceitos necessitam de
mais de uma palavra para a sua representação. Por exemplo, a palavra “banco”
representa mais de um conceito, enquanto o conceito de “banco de areia” precisa de
mais de uma palavra para ser representado. Ainda assim, (Salton e Buckley, 1988)
concluíram que muitas vezes a definição de termos simples pode ter os melhores
resultados. Outras palavras não possuem valor semântico, como as preposições e
artigos.
Enquanto as pessoas são capazes de identificar facilmente os conceitos
relacionados às palavras em um documento, por percepção do mundo e conhecimento
da linguagem, os sistemas de classificação automática de texto não possuem esta
capacidade, ou seja, o conhecimento dos conceitos. Para que um sistema destes possa
inferir um conceito de maneira correta, tendo como base apenas os documentos da
coleção, é necessário realizar uma seleção para obtenção de um conjunto de palavras
que minimizaria o erro. Este conjunto de palavras é conhecido como dicionário,
abordagem convencional neste tipo de trabalho. Produz-se uma lista de palavras
através da varredura da coleção de documentos, sendo as palavras qualquer seqüência
20
de caracteres separados por espaço em branco ou sinais de pontuação. É comum,
durante o momento de criação desta lista, realizar a conversão de todos os caracteres
para maiúsculas ou minúsculas. Assim, a mesma seqüência de caracteres sempre seria
reconhecida pelo algoritmo como sendo o mesmo termo.
Duas possíveis abordagens para a criação do dicionário são:
1. Dicionário local
a. Formado por termos de documentos de uma mesma categoria.
Deve possuir uma quantidade fixa de termos simples, selecionados
de acordo com suas freqüências de ocorrência.
2. Dicionário geral ou universal
a. Formado a partir de todos os documentos da coleção.
Durante o processo de criação do dicionário entram as técnicas de análise de
texto, que visam justamente retirar o que não é significativo para a tarefa de
classificação dos documentos de texto.
As técnicas podem alterar dependendo da abordagem, mas algumas são
consideradas convencionais. A ordem de aplicação das mesmas também pode ser
diferente. Para identificação individual das palavras, costuma-se aplicar a retirada de
pontuação, algarismos e caracteres inválidos ou inconsistentes. Outras técnicas de
processamento de linguagem natural serão vistas a seguir.
2.2.2.2 Stopwords e termos de pouco valor preditivo
Palavras que pertençam a uma lista de stopwords são retiradas. Representam
palavras que não possuem valor semântico (geralmente artigos, advérbios,
21
preposições e conjunções), ou seja, não possuem valor preditivo para a tarefa de
classificação e, portanto, devem ser descartadas (Luhn, 1958).
São definidas de maneira manual e não existe uma lista definitiva de stopwords.
Cada ferramenta pode utilizar uma determinada lista de stopwords e qualquer grupo
de palavras pode ser escolhido para um determinado propósito. Por exemplo, the é
uma das mais comuns function word da língua inglesa e no caso particular de nomes
como The Who, sua remoção causaria problemas.
Palavras que ocorrem muito ou pouco freqüentemente em determinado texto,
também podem ser retiradas. São termos incapazes de distinguir este documento
perante os outros documentos da base, assim como palavras que ocorrem em grande
quantidade de documentos (se uma palavra aparece em diversos textos da coleção,
não é ela que será capaz de diferenciá-los entre si).
A escolha do número para palavras que ocorrem menos de um determinado
número de vezes é resultado de testes empíricos, mas estudos sugerem que varia
entre três (Mladenic apud, Castro, P. F., 2000) e cinco (Apté apud Castro, P. F., 2000),
(Lewis apud Castro, P. F., 2000).
O descarte destas palavras já gera uma considerável diminuição dos termos a
serem considerados, estes termos restantes por sua vez ganham em relevância.
2.2.2.3 Stemming e Lemmatisation
Geralmente, variantes do mesmo termo podem ser consideradas com um único
item, tratando implicações lingüísticas (Luhn, 1958). “Diferença”, “diferente”,
“diferentemente” e “diferencial” teriam o mesmo significado.
22
Lemmatisation é um conceito da lingüística que representa o processo de agrupar
diferentes formas da mesma palavra para que sejam considerados com único item. Na
lingüística computacional, representa a determinação do lema, forma canônica, de
uma palavra. Verbos, então, são transformados no infinitivo e substantivos vão para o
masculino singular.
Stemming é o processo de redução de uma palavra suprimindo seu sufixo, assim
as diferentes formas da mesma palavra seriam agrupadas e analisadas como um único
item (Weiss apud Castro, P. F., 2000). Não é necessário que o stem seja o radical da
palavra, bastando que as palavras relacionadas estejam associadas ao mesmo stem.
A diferença entre o as duas técnicas é que o stemming analisa as palavras
individualmente, sendo incapaz de diferenciar o significado do termo de acordo com o
contexto. Por sua vez, é mais fácil de implementar e exige menos processamento
computacional, sendo utilizado quando sua menor precisão não influencia
negativamente o resultado. Um exemplo é a palavra inglesa “better” que possui como
lema “good”. Um algoritmo stemming seria incapaz de perceber a relação.
2.2.2.4 N-gram
N-gram é uma subseqüência de itens de uma dada seqüência. Os itens podem ser
fonemas, sílabas, palavras, entre outros, de acordo com a aplicação. Um n-gram de
tamanho um é conhecido como “unigram”; tamanho dois como “bigram”; três como
“trigram”; quatro como “fourgram” e cinco ou mais como “n-gram”.
Um modelo n-gram é um modelo probabilístico de predição utilizado no
processamento de linguagem natural. Na preparação do texto, os termos são definidos
para que cada n-gram seja composto de n palavras.
23
A utilização de modelos n-gram possibilita a obtenção de conceitos mais
concretos, através do reconhecimento de tuplas de palavras conhecidas. De maneira
concisa, um modelo n-gram prediz o termo seguinte baseado no anterior. O objetivo
principal da aplicação da técnica seria a obtenção de seqüências de palavras que
formem termos únicos com grande valor preditivo. No contexto analisado, “text
mining” teria maior relevância que os termos “text” e “mining” analisados
individualmente.
2.2.3 Seleção das características
Nesta etapa, os termos pré-processados são escolhidos para representar os
documentos. Para isso, segue-se um critério previamente estabelecido que deva ser
capaz de determinar a relevância de cada termo quanto a sua expressividade
semântica. Em outras palavras, termos que devam ser capaz de expressar o conteúdo
dos documentos. Estes critérios são lingüísticos, estatísticos ou uma combinação de
ambos. Nos critérios lingüísticos, o significado do conteúdo do documento é
representado através de processamento de linguagem natural. Já a abordagem
estatística é feita através de cálculos matemáticos aplicados as palavras do documento
ou da coleção. Basicamente, atribui-se peso às palavras definindo sua importância. Os
atributos de melhor pontuação formam a lista de palavras.
2.2.3.1 Representação dos documentos
Os documentos de texto são representados como vetores de termos denominados
bag-of-words.
24
Figura 6 - Exemplo da representação como bag-of-words usando um vetor de
frequências (Castro, P. F., 2000)
A Figura 6 mostra um exemplo de bag-of-words. As palavras são mantidas sem
qualquer ordem pré-estabelecida e, neste exemplo, possuem sua correspondente
frequência no documento de texto.
A partir do dicionário, vetores representando documentos de texto ou conjuntos
de documentos podem conter valores binários, onde 1 representa a presença da
palavra e 0 indica a ausência, ou números indicando a quantidade de ocorrências (ou
frequência) de cada palavra no texto.
2.2.3.2 Redução
O processo de criação do dicionário pode não ser suficiente para a produção de
dados tratáveis pelo método de aprendizado.
O conjunto de características
resultantes pode, em muitos casos, ser enumerada em centenas de milhares (Yang
apud Castro, P. F., 2000) (Pazzani apud, Castro, P. F., 2000). Poucos métodos de
aprendizado são capazes de lidar com esta quantidade de dados e, mais ainda, o
desempenho de alguns é muito prejudicado quando este número é muito elevado.
25
Sendo assim, uma segunda etapa de seleção das características é indispensável.
Esta consiste na redução do conjunto de palavras originais, conhecida como redução
de dimensionalidade na área de reconhecimento de padrões.
Apresentaremos na seção 2.2.3.4 a técnica de truncagem, uma das mais simples e
mais utilizadas visando diminuir o número de termos relevantes considerados.
2.2.3.3 Determinação do peso dos termos
A principal função de um term-weighting system é o aumento da recuperação da
informação desejada. Isto depende basicamente de dois fatores:
1. Os itens que o usuário deseja recuperar precisam ser recuperados;
2. Os itens estranhos devem ser rejeitados.
A princípio, um bom sistema deve produzir ambas as recuperações, conseguindo
alta precisão na recuperação de itens desejáveis e a mesma alta precisão na
recuperação de itens indesejáveis. O estudo de (Salton e Buckley, 1988) apresenta
diferentes abordagens na determinação automática de peso de termos (automatic
term weight-ing).
2.2.3.3.1 Frequência relativa do termo
Após a fase de pré-processamento do texto e aplicação das técnicas como a
eliminação de stopwords, algumas palavras comuns em determinado assunto
costumam se repetir com frequência.
A técnica de frequência relativa é uma das mais comuns no processo de seleção de
características em mineração de texto. Partindo do princípio de que quanto mais vezes
uma palavra aparece em um determinado texto, mais importante ela é, a técnica
define a importância do termo encontrado no texto. O número de vezes em que um
26
termo aparece em um texto é chamado de frequência do termo (term frequency) e
esta pode ser uma maneira direta de calcular a frequência relativa. No entanto, a
fórmula apresentada na Equação 1 permite a normalização do resultado, diminuindo a
influência dos tamanhos dos textos no resultado (um texto grande poderia ter um
maior valor de ocorrência de determinado termo que não necessariamente reflita sua
importância para o mesmo) (Salton, 1983).
Frel X =
Fabs X
N
Equação 1 - Frequência relativa do termo
Onde:
Frel X = frequência relativa de X;
Fabs X = a frequência absoluta de X, quantidade de vezes que X aparece no
documento;
Ν = o número total de termos do texto.
Outra maneira de calcular a frequência do termo dentro de um documento é
apresentada na fórmula a seguir (Salton and Buckley, 1988):
0 .5 +
0.5tf
Maxtf
Chamada de frequência do termo normalizada aumentada, a frequência do termo
é normalizada pela frequência máxima encontrada no documento e normalizada
novamente para que o valor fique entre 0.5 e 1.
2.2.3.3.2 TF-IDF
A técnica de seleção TF-IDF (Term Frequency–Inverse Document Frequency) é
outra técnica de seleção de características frequentemente usada na mineração de
27
texto. É uma abordagem estatística utilizada para definir o quão relevante é um termo
em relação a uma coleção. A relevância do termo discriminatório sobe à medida que a
palavra aparece mais vezes no texto e diminui à medida que aparece nos outros
documentos da coleção (Sparck Jones, 1972).
A partir da frequência relativa do termo, importância do termo d em um texto t, e
da frequência inversa de documentos, medida de importância geral do termo obtida
dividindo-se o número total de documentos pelo número de documentos em que o
termo aparece (Equação 1), chega-se a fórmula apresentada na Equação 2:
N
log 
 ni 
Equação 2 - Frequência inversa dos documentos
Onde:
Ν = Número de documentos na coleção de referência;
ni = número de documentos na coleção de referência que tem o termo de índice i.
N
ft i × log 
 ni 
Equação 3 - TF-IDF: frequência relativa do termo X frequência inversa de
documentos
Onde:
ft i = frequência relativa do termo i;
Ν = número de documentos na coleção de referência;
ni = número de documentos na coleção de referência que tem o termo de índice i.
2.2.3.3.3 Escore de relevância
28
A técnica do escore de relevância foi apresentada e aplicada no estudo de (Wiener
ET AL, 1995). A seleção dos termos deve ter como objetivo encontrar um subconjunto
de termos que se mostre o mais eficiente para a tarefa de classificação. Os termos,
então, devem ser adequadamente discriminativos entre as categorias. Cada categoria
é analisada individualmente, através de seus documentos de texto, criando-se tarefas
de classificação independentes para a seleção dos subconjuntos de termos que melhor
discriminam documentos sobre aquele tópico.
Para a seleção dos termos representantes de uma categoria, todos os termos
recebem um valor de quão bem servem como preditores individuais do assunto. Este
valor é chamado de escore de relevância em relação ao que (Salton and Buckley, 1988)
chamaram de peso de relevância. O cálculo é apresentado na Equação 4.
wtk 1
+
dt 6
rk = log
wt k 1
+
dt
6
Equação 4 - Escore de relevância
Onde:
rk = o escore de relevância do t ermo k;
wtk = número de documentos pertencentes a uma dada categoria t que contém o
termo k;
wt k = número de documentos de outras categorias que contém o termo k;
d t = o número total de documentos de outras categorias;
d t = o número total de documentos da categoria t;
29
wt k
é o número de documentos da categoria contendo o termo,
dt
é o total de
documentos da categoria, etc. Valores altamente positivos e altamente negativos
indicam termos úteis para a discriminação.
2.2.3.4 Truncagem
A técnica de truncagem visa diminuir o número de termos relevantes a serem
considerados. Também chamada de seleção por peso do termo, após o calculo do peso
termo, são escolhidos apenas os que possuem os maiores valores calculados. Palavras
com pouca frequência não caracterizam um documento ou categoria, sendo
irrelevantes para a classificação.
A princípio, a técnica pode ser necessariamente utilizada para, ao reduzir o
escopo, tornar o conjunto de características tratável pela máquina. Isso ocorre, pois o
tempo necessário para obtenção da classificação ou agrupamento é diretamente
proporcional ao número de características analisadas. Porém, o estudo de (Wiener ET
AL, 1995) mostra que passar de uma determinada faixa de termos considerados,
analisando um número maior, pode piorar a precisão do classificador automático. Ao
analisar 20 termos, a melhor precisão foi encontrada, piorando o resultado ao se
incluir mais termos. Isso mostra que identificar adequadamente os termos mais
relevantes é uma tarefa crucial para a classificação automática. A explicação para o
resultado é a ocorrência de overfitting, quando a alimentação da base de treinamento
começa a gerar peculiaridades.
É importante ressaltar que o número mínimo ou máximo de características
relevantes a serem analisados para um resultado satisfatório varia de coleção para
coleção, bem como não é trivial estabelecê-lo.
30
A truncagem, bem como a fase de pré-processamento, é desencorajada por alguns
autores. Wives (1999) afirma que quanto maior o número de características utilizadas
no processo de calculo da similaridade, mais confiável é o grau de similaridade, quanto
menos se abstrai do mundo real, mais condizente com o mundo real consegue-se ser.
Por sua vez, a identificação das características e definição da relevância dos
termos para o calculo de similaridade é considerada parte chave nos estudos
analisados (Salton, 1988), (Wiener ET AL, 1995), (Wives, 1999), (Castro, P. F., 2000),
(Galho and Moraes, 2003).
2.2.3.5 Normalização
Como citado na seção 2.2.3.3.1, a técnica de normalização do resultado visa tratar
as diferenças de tamanho entre os diversos documentos de texto considerados.
Basicamente, os valores representando as frequências dos termos são normalizados
para ficarem entre zero e um, dividindo-se a frequência relativa do termo pela sua
frequência máxima.
Existem variações para o cálculo da normalização. As funções apresentadas e
utilizadas neste trabalho utilizam a técnica de normalização.
2.2.4 Métodos de categorização
Nesta fase, são utilizados métodos que identificam os conceitos no texto e
efetuam a categorização de fato. Esses métodos podem classificar os documentos em
nenhuma, uma ou mais categorias existentes. Quando um método efetua a
categorização de textos em apenas uma categoria, diz-se que este método é de
classificação binária. E, quando os textos podem ser classificados em mais de uma
categoria, diz-se que foi aplicado um método de categorização graduada, podendo
31
definir o grau de pertinência do documento a cada uma das categorias para as quais
ele foi classificado (Lewis apud Galho and Moraes, 2003).
Existem vários métodos de categorização, mas basicamente o processo é
comparar a lista de termos do texto e da categoria, definir se eles são semelhantes e a
partir deste resultado decidir se o texto pertence à categoria.
Algumas funções utilizam valores indicando a presença ou não da palavra, 1 para
presente e 0 para ausente. Estes valores são atribuídos independentemente do termo
aparecer mais de uma vez no documento de texto.
Outras funções são capazes de utilizar valores informando o quanto um termo é
discriminativo em relação ao documento de texto, baseando-se na frequência da
palavra no mesmo (outros podem levar em consideração a coleção inteira ou assuntos
(categorias)).
2.2.4.1 Modelos difusos
A lógica difusa, ou lógica fuzzy, diferente da lógica tradicional, permite valores
lógicos intermediários entre o “falso” (0) e o “verdadeiro” (1). Assim, um valor como
0,5 poderia ser considerado médio, como um “talvez”. Ou seja, um valor lógico difuso
poderia ser qualquer valor entre 0 e 1. Pode-se dizer que a lógica fuzzy está para o
raciocínio aproximado assim como a lógica tradicional está para o raciocínio preciso
(Oliveira apud Wives, 1999).
Um modelo fuzzy simples é o de inclusão simples (Valerie Cross apud Wives,
1999), que avalia a presença da mesma palavra em dois objetos comparados. Caso o
termo apareça nos dois, soma-se o valor 1 ao contador, do contrário soma-se 0. Ao
final, o valor encontrado é divido pelo número total de termos não repetidos
32
encontrados nos dois documentos, resultando em um valor entre 0 e 1. O problema
deste modelo é que, ao analisar e considerar somente o fato da palavra aparecer em
ambos os objetos, não considerar a relevância maior que uma palavra pode ter um dos
deles.
Outras funções, que consideram a frequência da palavra no documento, utilizam
pesos para o cálculo do valor fuzzy, contornando o fato de termos possuírem
importâncias diferentes nos dois objetos comparados. Neste caso, os termos possuem
um peso que pode ser a frequência relativa ou outro valor de discriminação. O valor de
similaridade é calculado pela média entre os pesos médios dos termos comuns, ou
seja, para cada termo comum a ambos os objetos, soma-se a média dos pesos e ao
final a média é calculada sobre o total de termos não repetidos em ambos os objetos.
Apesar de considerar a frequência da palavra nos objetos comparados, esta ultima
função pode trazer distorções. Ao contar a média dos termos, dois pesos extremos
terão o mesmo resultado que dois pesos médios, quando na verdade indicam que os
termos possuem níveis de relevância diferentes nos dois objetos.
A Tabela 1 apresenta uma matriz de similaridade entre objetos.
Tabela 1 - Matriz de similaridade entre objetos (Fonte: Wives, 1999)
Obj1
Obj2
Obj3
Obj4
Obj5
Obj1
1.0
0.3
0.2
0.7
0.6
Obj2
0.3
1.0
0.5
0.3
0.9
Obj3
0.2
0.5
1.0
0.3
0.4
Obj4
0.7
0.3
0.3
1.0
0.8
Obj5
0.6
0.9
0.4
0.8
1.0
33
Normalmente, quando adotadas as medidas de similaridade fuzzy, os valores
apresentados na tabela possuem as seguintes peculiaridades:
1. Os graus variam entre 0 (sem similaridade) e 1 (totalmente similar);
2. Um objeto é totalmente similar a ele mesmo;
3. Se o objeto X é 20% similar a Y, então Y também é 20% similar a X.
Com isso, tem se uma matriz triangular, onde os elementos acima da diagonal
principal devem ser armazenados.
As situações ambíguas enfrentadas na definição da relevância dos termos
encorajam o uso da lógica fuzzy, pois a mesma se propõe a tratar situações imprecisas,
oferecendo melhores resultados através do cálculo de pertinência de um elemento a
um conjunto, tendo sua aplicação resultados satisfatórios em diversos estudos (Wives,
1999) (Loh, 2001) (Galho and Moraes, 2003).
2.2.4.2 Algoritmo de categorização - Calculando o grau de
similaridade
Para a categorização, o processo consiste em determinar o grau de semelhança da
lista de termos de um novo documento de texto com a lista de termos de uma
categoria. Para cada termo comum à lista de termos do novo texto e de uma
determinada categoria, calcula-se o grau de igualdade de seu escore de relevância com
sua frequência relativa. As funções utilizadas no cálculo são apresentadas na Equação
5, sendo as variáveis “ a ” o escore de relevância do termo na categoria e “ b ” a
frequência relativa no novo documento, por exemplo.
gi (a, b) =
[
]
1
(a → b ) ∧ (b → a ) + (a → b ) ∧ (b → a )
2
Equação 5 - Algoritmo de categorização
34
Onde:
a→b=
b
; a , b = 1 − a ou 1 − b ;
a
O grau de similaridade do texto em relação à categoria é calculado após o cálculo
do grau de igualdade de todos os termos comuns entre os dois. A fórmula apresentada
na Equação 6 mostra que o grau de igualdade do texto em relação à categoria é o
somatório de todos os graus de igualdades dos termos comuns a ambos, dividindo-se
este valor pelo total de termos distintos em relação às duas listas.
k
gs ( X , Y ) =
∑ gi (a, b)
h =1
h
N
Equação 6 - Cálculo do grau de similaridade do texto em relação à categoria
Onde:
gs = o grau de similaridade entre os documentos X e Y ;
gi = o grau de igualdade entre os pesos do termo h (peso a no documento X e
peso b no documento Y );
h = índice para os termos comuns aos dois documentos;
k = número total de termos comuns aos dois documentos;
N = número total de termos nos dois documentos sem contagem repetida.
O processo deve ser repetido para cada categoria. Os maiores valores obtidos são
as categorias mais pertinentes ao texto, os menores valores representam as menos
pertinentes (Galho and Moraes, 2003), (Wives, 1999), (Loh, 2001).
35
3 Proposta
Neste trabalho, pretendemos aplicar a mineração de texto para ajudar na análise
de uma comunidade cientifica seguindo duas vertentes sendo a primeira a geração de
uma rede social de colaboração e a segunda a classificação automática de artigos
científicos. As informações de entrada relevantes são os artigos científicos da
comunidade que se deseja avaliar. Estes artigos são estruturados em titulo, autores,
instituições envolvidas, abstract, resumo e o texto do artigo.
Figura 7 - Modelo do sistema para módulo de geração de grafos.
Para o módulo de geração de grafos, foram identificados como essenciais os
nomes dos autores e das instituições envolvidas. Já para o módulo de classificação, o
resumo.
O resumo tem como característica ser conciso, expressando em poucas palavras o
objetivo dos trabalhos. Sendo assim, é natural pensar que as palavras apresentadas no
36
resumo de um artigo sejam de importância para o entendimento do mesmo, o que
viria a facilitar a identificação dos termos relevantes.
Figura 8 - Modelo do sistema para o módulo de classificação.
Para o módulo de classificação, também é necessário entrar com as respectivas
categorias às quais cada artigo, que serão utilizadas na definição das listas de termos
relevantes de cada categoria, está associado. A proposta é se possível, utilizar a mesma
classificação dada pelos autores dos artigos. Isso evitaria a necessidade de uma
classificação manual de um grande conjunto de artigos e possibilitaria a descoberta de
possíveis erros de classificação por parte dos autores.
Em muitos casos, um artigo pode estar relacionado a uma, nenhuma, ou mais
categorias, fazendo com que algumas vezes o mesmo artigo seja analisado para
definição dos termos de duas ou mais categorias diferentes.
Além disso, pode ser necessário realizar um tratamento dos tópicos abordados
pelas categorias, relacionando os que forem exatamente o mesmo assunto ou muito
próximos para que sejam tratados como uma única categoria. Pode ser realizada uma
37
validação com o usuário indicando sinônimos ou fornecendo uma lista de sinônimos
previamente.
Com estas informações, já seria possível gerar grafos de colaboração da
comunidade, bem como extrair a lista de termos das categorias. Para finalizar a
classificação, seriam então necessários os artigos que se deseja classificar.
3.1 Proposta de classificação automática de artigos
Após a formação da lista de termos de cada categoria, através da utilização da
técnica de escore de relevância, seção 2.2.3.3.3, e da formação das listas de termos
dos novos textos a serem classificados, através da técnica de frequência relativa do
termo, seção 2.2.3.3.1, é aplicada a técnica de similaridade difusa apresentada na
seção 2.2.4.1.
Classificadores automáticos de artigos científicos são descritos em (Schiminovich,
1971) e (Bichteler and Parsons, 1974) – numa modificação do algoritmo original,
utilizando o conteúdo de citação dos mesmos para identificação dos padrões e artigos
relacionados. (Garfield, Malin and Small, 1975) também descrevem um sistema
computacional para classificação automática de artigos científicos através dos padrões
das citações, para isso utilizam uma base de dados de 13 anos de arquivos com 3,4
milhões de artigos e 40 milhões de citações.
Ao final do processo de classificação dos novos documentos, teríamos uma lista de
categorias mais semelhantes a cada artigo.
38
4 Estudo de caso
Nesta seção é apresentada a fase de extração das informações, feita de uma única
maneira para os dois módulos do sistema implementado, e o estudo de caso realizado.
4.1 Extração das informações
A primeira etapa do sistema a ser implementada é a de extração das informações,
também chamada de coleta. As informações de entrada são os artigos científicos das
edições 2008, 2009, 2010 e 2011 do SBSI, armazenadas em formato PDF, dos quais são
extraídos os nomes dos autores e das instituições envolvidas e o abstract.
A escolha de trabalhar apenas com o abstract tem como objetivos diminuir a
quantidade de informação relevante a ser considerada e facilitar a etapa de préprocessamento. A aplicação das técnicas de processamento de linguagem natural
(como, por exemplo, a técnica “stemming”) se mostrou facilitada ao tratar da língua
inglesa.
4.2 Geração de grafos de colaboração da comunidade do SBSI
4.2.1 Pajek
39
Existem diversas ferramentas disponíveis para geração de grafos de redes sociais.
A ferramenta Pajek1 foi desenvolvida para análise e visualização de grandes redes, com
milhares ou milhões de vértices, motivada pela observação de que existem várias
fontes de grandes redes possíveis de serem lidas por máquina (V. Batagelj, A. Mrvar,
2011).
Os principais objetivos da ferramenta Pajek são:
•
Suportar abstração por decomposição recursiva de uma grande rede em
diversas redes menores que, então, podem ser tratadas por métodos mais
sofisticados;
•
Prover ao usuário ferramentas poderosas de visualização;
•
Implementar uma seleção de algoritmos eficientes para análise de grandes
redes.
Torna-se possível a identificação de clusters (vizinhos “importantes”), extração de
vértices pertencentes ao mesmo cluster para análise individual, visualizar conjuntos de
vértices como clusters (visualização global), entre outras abordagens.
1
http://pajek.imfm.si/doku.php?id=start
40
Figura 9 - Abordagens para lidar com grandes redes (V. Batagelj, A. Mrvar,
2011)
4.2.2 Preparação dos dados
A ferramenta Pajek aceita como entrada um arquivo do tipo texto formatado.
Alterações simples na formatação permitem a manipulação dos nós e arestas, como
alteração de cor, tamanho e posição dos nós no espaço. A Figura 10 mostra um
exemplo de arquivo de entrada aceito pela ferramenta pajek.
41
Figura 10 - Arquivo exemplo da ferramenta Pajek
A Figura 11 mostra o grafo gerado pelo arquivo de exemplo.
Figura 11 - Rede gerada pelo arquivo de exemplo
A Figura 12 mostra uma rede de notícias sobre terrorismo.
42
Figura 12 - Parte da rede Reuters Terror News (V. Batagelj, A. Mrvar, 2011)
O sistema então gera um arquivo de saída em formato de texto, formatado de
maneira a ser reconhecido pelo Pajek.
4.3 Classificação automática de artigos do SBSI
Os artigos de 2008, 2009 e 2010 são analisados para a formação das listas de
termos relevantes das categorias (base de treinamento), enquanto os artigos da edição
2011 serão os classificados automaticamente (base de teste).
Também é entrada do sistema uma planilha em formato XLS. Esta planilha é uma
adaptação da planilha gerada como relatório da ferramenta de controle de submissão
JEMS, com a identificação dos artigos que serviram como treinamento para o
algoritmo de classificação e seus respectivos tópicos de interesse, associados pelos
autores no momento da submissão. A planilha foi utilizada, pois os artigos em formato
43
PDF não possuem seus tópicos de interesse, utilizados para a definição das categorias.
A planilha teve que ser adaptada basicamente por dois motivos:
Os títulos dos artigos nos arquivos PDF podem não ser os mesmos da planilha de
relatório gerada pelo JEMS;
Foi necessário realizar um tratamento dos tópicos, considerando os que fossem
exatamente o mesmo assunto ou muito próximos como uma única categoria, por
exemplo: “Estudos de caso de aplicação de SI” e “Estudos de caso de Sistemas de
Informação”. Este tratamento foi realizado de maneira empírica e alterado várias vezes
até a versão final.
Definição e busca por palavras chave foram utilizadas para extração das
informações, sendo o respeito ao padrão da Sociedade Brasileira de Computação (SBC)
considerado crucial. Alguns artigos então tiveram de ser descartados por, ao estarem
fora do padrão, dificultarem a definição dos critérios de parada e, conseqüentemente,
a extração automática das informações.
Figura 13 - Tela principal
44
4.3.1 Escolha dos algoritmos
O presente trabalho utiliza na etapa de seleção de características as técnicas de
escore de relevância e truncagem para a criação das listas de termos representativos
das categorias e a técnica de frequência relativa do termo para a criação da lista de
termos representativos dos novos textos a serem classificados. Para a classificação dos
novos documentos de texto, o método de categorização é o de similaridade difusa.
4.3.1.1 Escore de relevância
O algoritmo escolhido para a seleção das características, chamado de escore de
relevância (Wiener ET AL, 1995), visa encontrar o subconjunto de termos originais que
seja o mais útil possível no processo de classificação. Para selecionar um conjunto de
termos de uma categoria, os termos recebem um valor determinando o quão
relevantes são como preditores individuais desta categoria, selecionando-se os mais
relevantes. O escore de relevância mede quanto o termo é “desbalanceado” entre os
documentos das diferentes categorias. A aplicação da técnica é essencial para a análise
da similaridade, pois diferentes categorias podem possuir os mesmos termos como
relevantes e o escore de relevância permitira a percepção de graus de importância
diferentes.
O escore de relevância é tratado na seção 2.2.3.3.3 e sua fórmula apresentada na
Equação 4.
Para a criação das listas de termos é utilizada a técnica de truncagem, ou seleção
por peso do termo, os termos do texto são ordenados por valor e apenas os mais
relevantes são selecionados, sendo o resto eliminado. É uma técnica bastante
utilizada, pois otimiza a performance do classificador ao reduzir a dimensionalidade
45
dos termos considerados para classificação. Os dados devem estar normalizados,
removendo o efeito de variação no tamanho dos documentos tratados. A lista com os
termos representantes de cada categoria foi definida com 50 termos, o que na grande
maioria dos casos é suficiente (Shütze apud Wives, 1999).
4.3.1.2 Algoritmo de categorização
Como apresentado na seção 2.2.4.1, a lógica difusa, ou lógica fuzzy, diferente da
lógica tradicional, permite valores lógicos intermediários entre o “falso” (0) e o
“verdadeiro” (1). Assim, um valor como 0,5 poderia ser considerado médio, como um
“talvez”. Ou seja, um valor lógico difuso poderia ser qualquer valor entre 0 e 1.
Uma técnica difusa, então, permitiria a categorização graduada de um texto em
mais categorias. Isto motivou a escolha de uma técnica de lógica difusa, pois os artigos
podem estar associados a mais de um tópico de interesse.
A fórmula do algoritmo de categorização utilizado é apresentada na Equação 5.
Supondo que o termo comum em análise seja “modelagem” e que sua frequência
relativa em um novo texto seja 0.4331 e seu escore de relevância na categoria, 0.1857.
Aplicando-se a fórmula dada e considerando-se a = 0.4331 e b = 0.1857, tem-se:
a → b = 0.4288 e b → a = 2.3323 .
Como dito, os valores devem estar normalizados, ou seja, devem pertencer ao
intervalo [0,1]. Para isso, caso o valor encontrado seja maior que 1, assume-se 1.
Quando for menor que 0, assume-se 0. Portanto, neste caso b → a é definido como 1.
Realizando-se os demais cálculos da mesma forma, tem-se:
a = 1 − a = 0,5669
b = 1 − b = 0.8143
46
b →a =
a
= 0,6962 para b ≠ 0 ;
b
a →b =
b
= 1,4364 para a ≠ 0 ;
a
A partir desses resultados, pode-se calcular, então, o grau de igualdade do termo:
gi (0.4331, 0.1857 ) =
[min(0.4288, 1) + min(1, 0.6962)] = [0.4288 + 0.6962] = 0.5625
2
2
Assim, o termo “modelagem” do novo texto obteve como grau de igualdade
0.5625 em relação à categoria analisada. O grau de similaridade do texto em relação à
categoria é calculado após o calculo do grau de igualdade de todos os termos comuns
entre os dois. A formula utilizada é apresentada na Equação 6.
4.3.2 Pré-processamento realizado
Na etapa de pré-processamento do texto são realizadas as atividades de
identificação dos termos (descrita na seção 2.2.2.1), onde foram definidos termos
simples (unigram), remoção de stopwords (a stoplist encontra-se no Anexo A - Stoplist)
e remoção de pontuação (numéricos pontos e acentos). Também foram removidas
palavras com menos de dois caracteres. Uma prática comum na mineração de texto é
a remoção de palavras consideradas pequenas antes da indexação dos termos (Hill and
Lewicki, 2011).
Todo este tratamento resolveu problemas como a remoção de apóstrofes e
termos antes identificados como “s” ou “’s”, comuns na língua inglesa.
A técnica de stemming, remoção de sufixo, seção 2.2.2.3, foi escolhida pela
facilidade de implementação em relação à lemmatisation, pois não foi encontrada uma
biblioteca para processamento de linguagem natural na linguagem de programação
desejada.
47
Após a aplicação das técnicas citadas acima, os termos estavam prontos para a
etapa de seleção das características e geração dos dicionários.
4.3.3 Seleção das características realizada
Após o pré-processamento, é realizada a etapa de seleção das características para
a criação das categorias
Nesta fase, através da aplicação do escore de relevância, são geradas as listas de
termos significativos a partir dos abstracts.
A seção 5.4.2 trata das dificuldades encontradas na definição prévia das
categorias. Possíveis problemas nesta definição podem gerar listas de termos
indesejáveis, afinal o domínio deve ser explicitado o mais corretamente possível, para
que se determine que tipo de informação é relevante (Castro, P. F., 2000). Uma
informação relevante para a definição de uma categoria é justamente a que a
distingue de outra categoria. Ou seja, erros gerados ainda na fase extração de
informações afetam negativamente a fase de seleção de termos e assim
sucessivamente.
4.3.4 Método de categorização utilizado
Após a formação da lista de termos de cada categoria, através da utilização da
técnica de escore de relevância, seção 2.2.3.3.3, e da formação das listas de termos
dos novos textos a serem classificados, através da técnica de frequência relativa do
termo, seção 2.2.3.3.1, é aplicada a técnica de similaridade difusa apresentada na
seção 2.2.4.1.
Os resultados serão apresentados na seção abaixo.
48
5 Análise dos
resultados
Esta seção visa apresentar e discutir os resultados encontrados, tanto para a
geração dos grafos, quanto para a classificação automática de artigos científicos. Os
problemas encontrados, suas possíveis soluções e propostas de trabalhos futuros
também se encontram nesta seção.
5.1 Resultado da geração de grafos
Foram gerados dois tipos de grafos, grafos de colaboração entre os autores e
grafos de colaboração entre as instituições.
Foi necessário realizar um pequeno tratamento antes da geração dos arquivos em
formato aceito pela ferramenta Pajek. Alguns nomes de autores não apresentavam a
mesma grafia em diferentes artigos e o sistema não conseguia associá-los. Após o
tratamento realizado, o sistema passou a associar os que puderam ser identificados
manualmente como um único autor. O grafo apresentado na Figura 14 mostra a
colaboração entre os autores do SBSI 2008, onde 21 artigos foram considerados. O
peso da aresta representa o número de vezes em que os autores colaboraram entre si
nestas edições do SBSI.
49
Figura 14 - Grafo de colaboração entre autores do SBSI 2008
O grafo apresentado na figura faz a separação dos componentes. Os nomes dos
autores foram omitidos. Podemos perceber pela análise do grafo que, nos 21 artigos
analisados, nenhum autor foi responsável por mais de um. Isso porque nenhuma das
arestas assume o valor dois, ou seja, nenhum dos autores colaborou duas vezes com o
mesmo autor. Além disso, os clusters apresentados são redes totalmente distribuídas
(Franco, 2009), nenhum dos nós é descentralizador, separando outros clusters, ou seja,
nenhum dos nós é ligado a outros dois nós que não se ligam entre si. Isso significa que
nenhum dos nós, ou seja, nenhum dos autores tem uma posição centralizadora, de
poder, sobre os outros. Em relação ao número de publicações, nenhum dos autores
obteve destaque sobre os outros.
A Figura 15 a seguir apresenta o grafo de colaboração de instituições para as
edições 2008, 2009 e 2010 do SBSI.
50
Figura 15 - Grafo de colaboração de instituições SBSI
O grafo de colaboração de instituições exigiu um tratamento muito maior se
comparado ao grafo de autores. Isso porque os nomes das instituições costumam
aparecer das mais variadas maneiras, muitas vezes contendo o departamento, por
exemplo, enquanto os nomes dos autores costumam seguir o padrão escolhido por
eles para publicação. Apesar da geração de um arquivo no formato aceito pelo Pajek, o
tratamento foi realizado de forma manual, dada a dificuldade. Foram descartadas
informações como:
A empresa onde o autor trabalha, a não ser que esta seja a única referência;
O artigo possui um único autor, mas são identificadas mais de uma instituição;
O autor trabalhando sozinho não caracteriza uma colaboração;
Duas pessoas da mesma instituição colaborando entre si não caracteriza uma
colaboração entre instituições;
UNIRIO não colabora com UNIRIO.
Neste grafo, já podemos perceber a existência de clusters ligados entre si, com nós
possuindo um papel de maior destaque, por exemplo, a UFMA colabora com a UFBA,
51
esta última por sua vez colabora com outras três instituições, sendo o elo entre estas e
a UFMA.
5.2 Resultados da classificação automática
A seguir é apresentada a Tabela 2, com o primeiro resultado gerado, mostrando
uma análise macro do classificador. A segunda coluna mostra o total de artigos em que
o classificar encontrou semelhança (ou seja, valor maior que 0 para o resultado do
algoritmo de categorização mostrado na seção 2.2.4.1) entre o artigo e pelo menos um
dos tópicos de interesses cadastrados pelo autor. Este resultado não significa que o
algoritmo sugeriu como categoria mais semelhante uma das referentes ao tópico de
interesse cadastrado pelo autor. Na verdade, este resultado aconteceu duas vezes,
sendo que em outras três vezes a segunda ou terceira categoria mais semelhante
segundo o classificador fazia referência a um dos tópicos de interesse. Ao todo, foram
levadas em consideração 30 categorias, que são as categorias criadas a partir da
análise da base formada pelos artigos de 2008, 2009 e 2010.
Tabela 2 - Primeiro resultado gerado
Total
analisados
de
artigos
Total de artigos em que
Porcentagem
o classificador sugeriu um
dos temas do autor
27
22
81%
A partir do resultado apresentado, foram analisados os tópicos de interesse que o
classificador não conseguiu relacionar aos artigos, ou seja, os tópicos cadastrados
pelos autores e que não apareceram como semelhante (valor maior que 0 para o
52
resultado do algoritmo de categorização) no resultado. Por exemplo, a categoria
formada pelos tópicos “E-Business, E-Commerce e E-Government” e “Tecnologia da
Informação no Governo Federal” foi citada quatro vezes pelos autores, porém
somente em um dos casos o classificador citou o artigo como relevante à categoria.
A mesma dificuldade ocorreu, por exemplo, com a categoria "Modelagem
conceitual de Sistemas de Informação" (citada seis vezes pelos autores e em três
destes casos pelo classificador), com a categoria "Gerência de dados e metadados /
Representação e gerência informação, dados e metadados" (citada três vezes pelos
autores e em nenhum destes casos pelo classificador), com a categoria "Sistemas de
apoio à decisão" (citada sete vezes pelos autores e em somente um destes casos pelo
classificador) e finalmente com a categoria "Planejamento estratégico de Sistemas e
Tecnologia da Informação" (citada quatro vezes pelos autores e em nenhum destes
casos pelo classificador).
A explicação pode estar no tamanho reduzido da base de treinamento para
formação da lista de termos de cada categoria. Por exemplo, a categoria formada
pelos tópicos “E-Business, E-Commerce e E-Government” e “Tecnologia da Informação
no Governo Federal” teve sua lista de termos formada apenas por três artigos (ou seja,
apenas três dos artigos do SBSI (edições 2008, 2009 e 2010) foram cadastrados pelos
autores como referentes a estes tópicos. A seção 5.5 trata de trabalhos relacionados,
citando diferenças de abordagem deste trabalho a uma das abordagens mais
comumente encontrada na literatura, tratando inclusive o tamanho indesejável da
base de treinamento disponível.
Das outras categorias citadas em que o classificador mostrou dificuldade para
assinalar artigos como semelhantes, a que obteve o melhor desempenho foi
53
"Modelagem conceitual de Sistemas de Informação” (sendo citada pelo classificador
50% das vezes em que foi citada pelo autor). Esta categoria foi formada após a análise
de sete artigos, sendo destas citadas a que possuiu o maior número de artigos para a
formação de sua lista de termos relevantes. Relaciona-se o desempenho superior ao
maior número de artigos de entrada, possibilitando a criação de um dicionário mais
relevante para diferenciação da categoria em relação às demais.
Já uma categoria que teve sua lista de termos formada por um grande número de
artigos obteve um comportamento diferente do classificador. A categoria
"Metodologias e abordagens para engenharia de Sistemas de Informação" foi formada
pelos termos de 17 artigos, sendo a categoria mais relacionada pelos autores no
período. Citada oito vezes pelos autores de 2011, em todas estas vezes o classificador
citou a categoria como uma das mais semelhantes, sendo duas vezes como a mais
semelhante. Outro comportamento notado foi que, mesmo quando o autor não
classificava seu artigo como pertencente ao tópico "Metodologias e abordagens para
engenharia de Sistemas de Informação", o classificador tendia a apresentá-lo como
semelhante.
Um número baixo de artigos para a formação de uma categoria se mostrou
extremamente insatisfatório, enquanto o classificador mostrou tendência a encontrar
semelhanças com as categorias que possuíram mais artigos para treinamento.
5.2.1.1 Outro experimento- Melhorando o resultado
Para melhorar o resultado, houve uma mudança na abordagem. Isso ocorreu
porque, como citado na seção 4.3.3, as categorias são formadas de acordo com os
tópicos de interesses cadastrados pelos autores no momento da submissão, sendo que
54
cada artigo pode estar associado a mais de um tópico, portanto a mais de uma
categoria. Como citado na seção 2.2.4.1, a técnica de similaridade difusa considera
relevante para diferenciação da categoria um termo que seja, não só relevante para a
categoria em si, mas não ocorra com frequência nas outras categorias. Esta
sobreposição de termos comuns causa a diminuição da relevância ou até mesmo a
exclusão da lista de termos importantes.
Partindo do pressuposto que, ao marcar o tópico de interesse ao qual seu artigo é
relevante, o autor sempre escolhe primeiro aquele com o qual o artigo possui mais
semelhança, as categorias então passaram a ser formadas por artigos exclusivos. Isso
quer dizer que cada artigo passa a ser relacionado a uma única categoria para
formação da lista dos termos relevantes. Nesta situação, o número de categorias
levadas em consideração (ou seja, o número de categorias utilizadas no treinamento,
portanto o número de categorias às quais o classificador pode relacionar) diminuiu
para 24, isso porque, se antes podiam ser consideradas quatro categorias por artigo e
agora apenas uma, algumas foram descartadas.
Tabela 3 - Resultado do classificador levando em consideração uma categoria
por artigo para geração da lista de termos
Total
analisados
de
artigos
Total de artigos em que
Porcentagem
o classificador sugeriu um
dos temas do autor
27
24
89%
O resultado apresentado na Tabela 3 não é necessariamente melhor. O que
aconteceu é que, ao mudar a abordagem, considerando que cada artigo de
55
treinamento é único a uma categoria, o classificador teve maior facilidade para
diferenciar uma categoria em relação à outra. Ao mesmo tempo, a dificuldade inicial
citada na seção acima se acentuou, passando o classificador a ter mais dificuldade de
identificar as categorias pouco citadas durante o treinamento.
Ao conseguir diferenciar mais as categorias entre si, o total de artigos em que o
classificador sugeriu um dos temas do autor aumentou, à medida que o classificador
passou a conseguir relacionar mais facilmente o artigo a uma de suas categorias mais
semelhantes. Porém, apresentou mais dificuldade em citar como mais semelhante um
dos tópicos citados pelo autor. Na primeira abordagem foram duas vezes (sendo em
outras três oportunidades a segunda ou terceira), nesta segunda abordagem, isso
ocorreu apenas uma vez para a categoria mais semelhante (sendo cinco para a
segunda ou terceira).
Uma maior diferença entre as listas de termos tornou mais fácil a diferenciação
das categorias para o classificador, em compensação o menor número de artigos para
formação de cada categoria individualmente dificultou a identificação exata da
categoria referente ao artigo.
5.3 Análise da classificação automática
Os resultados mostrados na seção 5.2 mostram que o sistema classificador
automático implementado poderia ser utilizado para sugestão de tópicos aos autores
no momento da classificação, tendo a possibilidade de sugerir em quase 90% das vezes
um tópico de interesse relevante ao autor, que muitas vezes em um primeiro
momento poderia não associar aquele tópico ao artigo. Isso facilitaria a classificação
do artigo pelo autor e poderia diminuir possíveis erros de classificação. Mesmo que um
56
tópico de interesse não possua grande similaridade com outro, a ocorrência de termos
parecidos nos nomes dos tópicos pode confundir o autor, gerando um erro durante a
classificação manual. Estes erros influenciariam negativamente no desempenho do
classificador.
O sistema, no entanto, se mostrou ineficiente para uma classificação definitiva do
artigo, ou seja, ao analisar o artigo, conseguir retornar uma classificação relevante com
alto índice de acerto.
Neste último caso, acredita-se, no entanto, que a pequena base utilizada tenha
sido a principal razão. Classificadores são implementados e testados geralmente
utilizando como base o corpus de notícia Reuters, com mais de 20000 notícias
disponíveis (Weiss apud Castro, P. F., 2000).
Visando aumentar o número de artigos possivelmente considerados para a
formação de uma categoria, poderia ser necessário exigir que o autor sempre
classifique o artigo em mais de um tópico de interesse, afinal é normal imaginar que
um artigo cubra mais de um tópico de interesse, por mais restrito que seja o assunto
do tópico. Também é normal pensar que o artigo, apesar de fazer referência a mais de
um tópico, faz mais referência a um específico, sendo assim o autor no momento da
classificação indicaria um grau de relevância do artigo em relação ao tópico. Depois,
seria necessário mudar a abordagem, utilizando esse grau de relevância como peso do
artigo em relação à categoria.
Ainda seguindo esta visão de sugestão do tópico de interesse pelo classificador
automático, a partir de cada artigo submetido, as listas de termos das categorias
seriam atualizadas automaticamente, aumentando a base e melhorando, portanto, a
capacidade de categorização do classificador automático.
57
5.4 Dificuldades encontradas e limitações
5.4.1 Problemas na extração das informações
A primeira grande dificuldade apresentada foi na etapa de extração das
informações. Os artigos devem seguir o padrão SBC, mas pequenas variações no
padrão, ou mesmo pequenos erros, relevados pelas comissões julgadoras,
atrapalharam o processo. Como exemplo, um dos artigos vinha com o termo
“abstract” escrito de maneira incorreta. O algoritmo, ao verificar caractere por
caractere, não encontrava a palavra desejada, não conseguindo definir o momento de
coletar a informação. Sendo assim, alguns dos artigos tiveram de ser descartados.
Foram considerados então 57 artigos aceitos das edições 2008, 2009 e 2010, que
formaram a base de treinamento, e 27 artigos aceitos da edição 2011, que formaram a
base de testes.
Considera-se utilizar os artigos descartados em uma futura versão do classificador.
Outra possibilidade para atenuação e/ou resolução do problema, seria a informação
por parte do sistema dos artigos com problemas na padronização.
5.4.2 Problemas na definição das categorias
A definição das categorias nunca é uma tarefa trivial, ela demanda a análise
manual e é essencial para um bom resultado. Como citado anteriormente, diferente
dos estudos analisados como referência, neste trabalho os artigos são relacionados
muitas vezes a mais de uma categoria, havendo uma sobreposição de idéias. Na
definição das listas de termos relevantes das categorias, são levados em consideração
os termos das outras categorias, sendo que muitas vezes estamos falando de artigos
comuns a ambas as categorias.
58
Na classificação automática de texto, informações relevantes são justamente as
que distinguem uma categoria de outra, mas, no caso de artigos comuns a diversas
categorias, uma informação pode ser relevante a mais de uma categoria, dificultando o
estabelecimento do domínio.
Além disso, os artigos da base de treinamento tiveram suas categorias, definidas a
partir dos tópicos de interesse, assinaladas pelos autores no momento da submissão.
Um possível erro de classificação dos autores gera resultados indesejados. Esta foi uma
das motivações para o desenvolvimento do classificador, identificar possíveis erros de
classificação e sugerir automaticamente novas categorias.
5.5 Trabalhos Relacionados
O fato de um artigo poder estar relacionado a mais de uma categoria, difere da
maioria dos estudos utilizados como referência que utilizam o corpus Reuters Corpus
(Weiss apud Castro, P. F., 2000) - coleção de notícias da agência Reuters lançada em
2000, onde cada notícia em questão é pertinente a apenas uma das categorias
analisadas - ou outras coleções de notícias (Pazzim, 2007). A coleção Reuters Corpus se
tornou padrão para este tipo de estudo, porque um classificador automático de texto
só poderia ter seu resultado comparado a outro que utilizasse a mesma base.
Outra questão a ser analisada é a quantidade de artigos formando cada categoria.
Nos estudos com a Reuters Corpus, pode-se facilmente selecionar muitas notícias de
treinamento para formação de cada categoria, enquanto neste trabalho um tópico
pode ter vários artigos e outro um ou dois, ocasionando uma dimensionalidade
insuficiente (indesejável) para o aprendizado da máquina.
59
5.6 Trabalhos Futuros
Como trabalho futuro, considera-se a utilização de referências consolidadas da
área ao invés dos tópicos de referência do SBSI. Ou seja, seriam analisadas as
principais referências de cada área para definição das categorias e dos vocabulários.
A motivação para esta mudança na abordagem é a dificuldade dos autores em
classificar o próprio artigo.
60
6 Anexo A - Stoplist
A stoplist contém as palavras de pouco valor preditivo, retiradas durante a fase de
pré-processamento dos textos, as chamadas stopwords. A stoplist foi retirada da
biblioteca de processamento de linguagem natural NLTK.
'all', 'just', 'being', 'over', 'both', 'through', 'yourselves', 'its', 'before', 'herself',
'had', 'should', 'to', 'only', 'under', 'ours', 'has', 'do', 'them', 'his', 'very', 'they', 'not',
'during', 'now', 'him', 'nor', 'did', 'this', 'she', 'each', 'further', 'where', 'few', 'because',
'doing', 'some', 'are', 'our', 'ourselves', 'out', 'what', 'for', 'while', 'does', 'above',
'between', 't', 'be', 'we', 'who', 'were', 'here', 'hers', 'by', 'on', 'about', 'of', 'against', 's',
'or', 'own', 'into', 'yourself', 'down', 'your', 'from', 'her', 'their', 'there', 'been', 'whom',
'too', 'themselves', 'was', 'until', 'more', 'himself', 'that', 'but', 'don', 'with', 'than',
'those', 'he', 'me', 'myself', 'these', 'up', 'will', 'below', 'can', 'theirs', 'my', 'and', 'then',
'is', 'am', 'it', 'an', 'as', 'itself', 'at', 'have', 'in', 'any', 'if', 'again', 'no', 'when', 'same',
'how', 'other', 'which', 'you', 'after', 'most', 'such', 'why', 'a', 'off', 'i', 'yours', 'so', 'the',
'having', 'once'
61
7 Referencias
Bates, M. (1995). Models of natural language understanding. Proceedings of the
National Academy of Sciences of the United States of America, Vol. 92, No. 22 (Oct. 24,
1995), pp. 9977–9982.
Castro, P. F. (2000) Categorização Automática de Textos. Instituto Militar de
Engenharia, IME, Brasil.
Eugene Garfield, Morton V. Malin and Henry Small. A System for Automatic
Classification of Scientific Literature. Institute for Scientific Information 325 Chestnut
Street Philadelphia, Pa. 19106. Reprinted from Journal of the Indian Institute of
Science 57(2):61-74, 1975
Fabrizio Sebastiani. Machine learning in automated text categorization. ACM
Computing Surveys, 34(1):1–47, 2002.
Franco, Augusto de. O poder nas redes sociais. Carta Rede Social 192 (18/06/09)
Freeman, L. C.: Visualizing social networks. Journal of Social Structure, 1, 2000.
G. Salton and C. Buckley. Term weighting approaches in automatic text retrieval.
Information Processing and Management, 24(5):513-523, 1988.
Galho, Thaís S.; MORAES, Sílvia M. W. (2003) Categorização Automática de
Documentos de Texto Utilizando Lógica Difusa. Gravataí: ULBRA. Trabalho de
Conclusão de Curso.
62
Harris, Zellig (1954). "Distributional Structure". Word 10 (2/3): 146–62. "And this
stock of combinations of elements becomes a factor in the way later choices are made
... for language is not merely a bag of words but a tool with particular properties which
have been fashioned in the course of its use".
Hill, T.; Lewicki, P. Statistics: methods and applications. A comprehensive
reference for science, industry and data mining. 1.ed. Tulsa: StaSoft, 2006. p485.
Prévia disponível em: <http://books.google.com.br/books?id=TI2TGjeilMAC>. Acesso
em: 27 jul. 2011.
J. A. Barnes. Class and Committees in a Norwegian Island Parish. Human Relations
February 1954 7: 39-58
J.A. Barnes and Frank Harary. 1983. "Graph theory in network analysis" Social
Networks 5: 235-244.
Julie Bichteler; Ronald G. Parsons. Document retrieval by means of an automatic
classification algorithm for citations. Graduate School of Library Science, The University
of Texas at Austin, USA. The Library, Computation Center, Department of Physics, The
University of Texas at Austin, USA. Received 1 May 1974
Linton Freeman, Graphical Techniques for Exploring Social Network Data.
University of California, Irvine, 2001.
Linton Freeman, The Development of Social Network Analysis—with an Emphasis
on Recent Events. University of California, Irvine, 2011.
Loh, Stanley (2001) Abordagem Baseada em Conceitos para Descoberta de
Conhecimento em Textos. Porto Alegre: UFRGS. Requisito Parcial ao Grau de Doutor
em Ciência da Computação, Instituto de Informática, Universidade Federal do Rio
Grande do Sul.
63
Luhn, H.P., 'The automatic creation of literature abstracts', IBM Journal of
Research and Development, 2, 159-165 (1958).
Pazzim, Débora. Machado Clusterização de Textos Utilizando o Algoritmo k-Means
/ Débora. Machado Pazzim [orientada por] Silvia Maria Wanderley Moraes –. Gravataí:
2007. 38 p.: il.
S. Schiminovich. American Institute of Physics, 335 East 45 Street, New York, N.Y.
10017, USA. 1971
Solange O. Rezende, Ricardo M. Marcacini, Maria F. Moura , O uso da Mineração
de Textos para Extração e Organização Não Supervisionada de Conhecimento, 2011
Sparck Jones, K. (1972), “A statistical interpretation of term specificity and its
application in retrieval”, Journal of Documentation, Vol. 28, pp. 11–21.
V. Batagelj, A. MRVAR: Pajek – Program for Large Network Analysis. Connections,
2011.
Valerie Cross. Fuzzy Information Retrieval. Systems Analysis Department, Miami
University, Oxford, OH 45056. Journal of Intelligent Information Systems, 3, 29-56
(1994).
Wiener, Erick; Pedersen, Jan O.; Weigend, Andreas S. (1995) A Neural Network
Approach to Topic Sppoting.
Wives, Leandro Krug (1999) Um estudo sobre Agrupamento de Documentos
Textuais em Processamento de Informações não Estruturadas Usando Técnicas de
“Clustering”. Porto Alegre: UFRGS. Dissertação (Mestrado em Ciência da Computação),
Instituto de Informática, Universidade Federal do Rio Grande do Sul.
64
Download

Silveira e Muramatsu- PDF - Redes Sociais de Pesquisa em