Análise de Múltiplos Sentimentos em Textos Baseada em Lexicon

Documentos relacionados
Descoberta de conhecimento em redes sociais e bases de dados públicas

6 Atributos. A dívida da empresa subiu.

2 Sentiment Analysis 2.1

Análise de Sentimentos. Arthur Carlos Deyvirson Rafael

Análise de sentimentos para português brasileiro usando redes neurais recursivas

Aprendizado de Máquina. Combinando Classificadores

Análise de Sentimento - Parte I

3 Modelagem Textual. Everything should be made as simple as possible, but not simpler. Albert Einstein. 1 bag of words

Implementação de Kernel Customizado Aplicado à Análise de Sentimentos em Resenhas de Filmes

Extração de Informação Téc1 (Verbo e POS) e Téc2 (POS)

Um Método para Melhoria de Dados Estruturados de Imóveis

SQLLOMining: Obtenção de Objetos de Aprendizagem utilizando técnicas de Aprendizado de Máquina

EM BUSCA DE EMOÇÃO EM AMBIENTES VIRTUAIS DE APRENDIZAGEM * 1

Comparação dos algoritmos sequencial e paralelo para contagem de palavras e contexto

Análise Sintática de Frases utilizando Gramáticas Livres de Contexto Probabilísticas

4 Algoritmos de Aprendizado

MCZA Processamento de Linguagem Natural Classificação de textos

Índice. Classificação de textos para o ensino de português como segunda língua. Índice. technology from seed

Aprendizado de Máquina para o Problema de Sentiment Classification

SCC0173 Mineração de Dados Biológicos

Análise de Sentimentos em Notícias Utilizando Dicionário Léxico e Aprendizado de Máquina

UMA FERRAMENTA PARA ANÁLISE DE SENTIMENTOS DE TWEETS EM PORTUGUÊS

Marcação de Nomes Próprios usando técnicas de pesquisa local e recorrendo a fontes de conhecimento na Internet

Extração de paráfrases em português a partir de léxicos bilíngues: um estudo de caso

MODELO DE CLASSIFICAÇÃO AUTOMÁTICA DE QUESTÕES NA LÍNGUA PORTUGUESA Henrique Maia Braum 1, Sandro José Rigo 1, Jorge L. V.

Verificação automática de substantivos compostos através de reconhecimento de padrões sintáticos

Etiquetação morfossintática de textos em português do Brasil no domínio do e-commerce

SEMINÁRIO DOS ARTIGOS:

UBIBUSANALYSIS UMA FERRAMENTA DE INTERPRETAÇÃO DE

Mineração de Opinião Aplicada ao Cenário Político

Deep Learning for Chinese Word Segmentation and POS Tagging

PROCESSAMENTO DE TEXTO

A/ART casa/n caiu/v./. Figura 3.1: Frase com anotação morfossintática.

Descritores de Imagens

Máquinas de suporte vetorial e sua aplicação na detecção de spam

7 Congresso de Pós-Graduação MODELAGEM DE BASE DE CONHECIMENTO PARA TAREFA DE CLASSIFICAÇÃO EM MINERAÇÃO DE DADOS

Profª Ana Lúcia Lima Marreiros Maia Profª Fabiana Cristina Bertoni

Agregação de Algoritmos de Aprendizado de Máquina (AM) Professor: Eduardo R. Hruschka Estagiário PAE: Luiz F. S. Coletta

I-Preproc: uma ferramenta para pré-processamento e indexação incremental de documentos

UNIVERSIDADE FEDERAL DE PERNAMBUCO CENTRO DE INFORMÁTICA GRADUAÇÃO EM ENGENHARIA DA COMPUTAÇÃO

Reconhecimento de texturas utilizando padrão binário local e classificador knn.

1.1 Tema Aprendizado de Máquina (Mit97) é o campo da Inteligência Artificial responsável pelo desenvolvimento de modelos inferidos automaticamente a

Ontologias Linguísticas e Processamento de Linguagem Natural. Ygor Sousa CIn/UFPE

Objetivos. 1. O método desenvolvido usa características de pares de pixeis para fazer estatísticas e formar

Mineração de Textos na Web

Descoberta de Conhecimento em Bancos de Dados - KDD

MCZA Processamento de Linguagem Natural Modelando a linguagem com N-gramas

Análise Automática de Coerência Textual em Resumos Científicos: Avaliando Quebras de Linearidade

18º Congresso de Iniciação Científica INCORPORAÇÃO DA TAREFA DE CLASSIFICAÇÃO NA FERRAMENTA DE MINERAÇÃO DE DADOS KIRA

UMA FERRAMENTA PARA A PESQUISA EM CORPORA DE AQUISIÇÃO DE LINGUAGEM

7 Resultados e Discussão

Color Eyes Detector. Duarte Petiz. DCC/FCUP

Quantificando a Importância de Emojis e Emoticons para Identificação de Polaridade em Avaliações Online

Mineração de Opinião Multilíngue para Comentários sobre Produtos

Aprendizado de Máquina (Machine Learning)

Diego Martin Mancini Orientador: Prof. Paulo A. V. de Miranda Instituto de Matemática e Estatística Universidade de São Paulo

MCZA Processamento de Linguagem Natural Semântica e similaridade de palavras: Parte III

Conceitos de Aprendizagem de Máquina e Experimentos. Visão Computacional

ALINHAMENTO MANUAL DE TEXTOS E SUMÁRIOS EM UM CORPUS JORNALÍSTICO MULTIDOCUMENTO

Leitura de Documentos. Priscila Engiel

Mineração de Textos. Mineração de Textos

Organizaçãoe Recuperaçãode Informação GSI521. Prof. Dr. Rodrigo Sanches Miani FACOM/UFU

Inteligência Artificial. Raimundo Osvaldo Vieira [DComp IFMA Campus Monte Castelo]

Mineração de Grafos e Predição de Links. Antonio Pecli Ronaldo Goldschmidt

Classificação Automática de Gêneros Musicais

Extração de atributos usando o método LBP - Local Binary Pattern

MouseCam: aplicação de controle do mouse via câmera

Tópicos Especiais em Reconhecimento de Padrões [2COP329] Mestrado em Ciência da. Sylvio Barbon Jr

Capítulo 4. Comitê BAS 35

Identificação e Tratamento de Expressões Multipalavras aplicado à Recuperação de Informação

Classificação Hierárquica Multirrótulo Utilizando Redes Neurais Artificiais

Descoberta de conhecimento em textos - Análise semântica. Diogo Cardoso Eduardo Camilo Inácio Eduardo Monteiro Dellandréa Guilherme Gomes

Utilização do Corte Percentual na categorização de documentos da Web com o algoritmo Naive Bayes

Matéria: Desenho e desenvolvimento de tecnologias linguísticas

UNIVERSIDADE FEDERAL DE P ERNAMBUCO

MCZA Processamento de Linguagem Natural Laboratório: Classificação de textos

Classificadores Bayesianos

Implementação de um Modelo para Previsão de Evasão Escolar no IFSULDEMINAS

AGRANDA, Simposio Argentino de GRANdes DAtos. Analisador de Expressões Positivas e Negativas Aplicado em Comentários de Livros e Filmes.

Métodos para Classificação: - Naïve Bayes.

Sentimentalista: Um framework para análise de sentimentos baseado em processamento de linguagem natural

Uma Abordagem de Extração de Terminologia Para a Construção de uma Representação Atributo-valor a Partir de Documentos Não Estruturados

Seleção de Atributos 1

Aprendizado de Máquina

Pedro Larronda Asti. Anotador Morfossintático para o Português-Twitter. Dissertação de Mestrado

Aprendizado de Máquina (Machine Learning)

Dimensão sociocultural Concretizada nos domínios de referência específicos de cada módulo (em anexo).

Aprendizagem de Máquina

Aplicação de Histograma de Gradientes Orientados para detecção de hidrômetros em imagens de fundo complexo

OS DIFERENTES CRITÉRIOS UTILIZADOS PARA CLASSIFICAÇÃO DE PALAVRAS EM GRAMÁTICAS ESCOLARES

Carga Horária: 67h-80 h. a Docente Responsável: CARLOS ANDRÉ EMENTA USO DO VOCABULÁRIO EM CONTEXTOS E SITUAÇÕES DIVERSAS QUE AUXILIEM NA

Avaliação de IHC Métodos de INSPEÇÃO A Avaliação Heurística

Uma Ferramenta para Análise de Sentimentos em Redes Sociais Utilizando o SenticNet

Vampiro que brilha... rá! Desafios na anotação de opinião em um corpus de resenhas de livros

UNIVERSIDADE FEDERAL DO CEARÁ CAMPUS QUIXADÁ BACHARELADO EM CIÊNCIA DA COMPUTAÇÃO RÔMULO CÉSAR COSTA DE SOUSA

Inteligência Artificial. Prof. Esp. Pedro Luís Antonelli Anhanguera Educacional

English version at the end of this document

CLASSIFICAÇÃO DE PADRÕES EM IMAGENS UTILIZANDO DESCRITORES DE TEXTURA Pattern Classification in Images Using Descriptors of Texture

Transcrição:

Análise de Múltiplos Sentimentos em Textos Baseada em Lexicon Igor A. M. Barbosa*, Ygor C. Diniz*, Andy A. T. Gajadhar*, Yuri A. M. Barbosa + e Andrei A. Formiga* *Centro de Informática Universidade Federal da Paraíba (UFPB) João Pessoa PB Brasil + Departamento de Ciências Exatas Universidade Federal da Paraíba (UFPB) Rio Tinto PB Brasil Email: {igormalheiros92, ygor.crispim, andygajadhar}@gmail.com, yuri@dce.ufpb.br, andrei@ci.ufpb.br Abstract Traditional classifiers used in sentiment analysis often only assign one sentiment value to a whole text. Although this approach is very common, it can waste much relevant information, because the same text can have positives and negatives sentiment in it. This work proposes a tool with a different approach to sentiment analysis. Unlike traditional works, our method can generate multiple classifications for the same text, assigning different labels according to the terms associated with adjectives. The results showed that the tool has a general classification quality similar to other works in this area. Furthermore, they also showed that in the same text there is a massive amount of sentiments that have different classifications compared with the general classification. Then, ignore these different classifications is waste much information that could be important. Resumo Classificadores tradicionais de análise de sentimento frequentemente atribuem a um texto apenas um único sentimento. Apesar de muito usada, essa abordagem pode gerar um grande desperdício de informação relevante, pois um mesmo texto pode possuir sentimentos positivos e negativos contidos nele. Este trabalho propõe uma ferramenta com uma abordagem diferente para a análise de sentimento. Ao contrário das abordagens tradicionais, o método proposto pode gerar diversas classificações para um mesmo texto, atribuindo diferentes rótulos de acordo com os termos associados aos adjetivos. Os resultados obtidos mostraram que a ferramenta possui uma qualidade de classificação geral próxima a outros trabalhos na área. Além disso, eles também mostraram que dentro de um mesmo texto existe uma quantidade massiva de sentimentos que possuem classificações diferentes a classificação geral atribuída e que ao desconsiderar esses sentimentos muita informação está sendo perdida. Keywords sentiment analysis; natural language processing; lexicon; I. INTRODUÇÃO Grande parte dos dados gerada na Internet atualmente é feita pelos os usuários dos diversos websites existentes na rede, por exemplo, redes sociais, fóruns, wikis, etc. Muitas vezes os usuários usam os meios disponíveis para expressar suas opiniões sobre diferentes assuntos ou produtos. É comum usuários escreverem mensagens elogiando uma nova compra, reclamando de um defeito ou analisando algum programa de televisão. Assim, todos esses dados podem ser preciosos para empresas e instituições que desejam saber o que muitas pessoas estão pensando, sentindo e expressando. Entretanto, analisar a gigantesca massa de dados produzida pelas pessoas na Internet manualmente é uma tarefa complexa, lenta e muitas vezes inviável. Por isso, a análise de opiniões e detecção de sentimentos automática através de computadores tem ganhado muita atenção nos últimos anos [1] [2] [3]. Usando as técnicas desenvolvidas nessa área é possível extrair automaticamente de textos o assunto a que eles se referem e também que sentimento eles carregam: felicidade, tristeza, excitação, reclamação, etc. Apesar de conseguir bons resultados na classificação de sentimentos, esse tipo de sistema frequentemente funciona atribuindo um valor único de sentimento para um texto. Isso pode ser um problema, principalmente em textos longos, pois toda a informação contida nele é reduzida a apenas um valor. Se, por exemplo, um texto fala sobre qualidades e defeitos de um produto, o sistema só é capaz de identificar um sentimento associado ao texto, perdendo as informações sobre sentimentos contrários. A frase abaixo ilustra um problema encontrado em muitos analisadores de sentimentos. The car is good, but the engine is weak and maintenance is bad Levando em consideração os adjetivos da frase: weak, bad e good. Muitos analisadores podem concluir que a frase, que está descrevendo características de um produto ( car ), tem um sentido negativo, pois, a maioria dos adjetivos possuem um sentido negativo ( weak, bad ). Nesse caso, o produto seria avaliado como negativo, o que não parece ser verdade se analisarmos a frase manualmente, já que a frase descreve que no geral o carro é bom. Talvez apenas o motor e a manutenção possuam caraterísticas negativas. Com a motivação de tentar extrair de textos informações mais detalhadas que muitas vezes são desperdiçadas por outros analisadores de sentimento, foi construída uma ferramenta que é capaz de identificar todos os adjetivos contidos em um texto e os termos relacionados a eles (e.g. substantivos e pronomes). Em seguida, as polaridades dos adjetivos são identificadas usando um lexicon. Por fim, os termos relacionados são classificados com os sentimentos dos seus respectivos adjetivos. Para testar a ferramenta foi utilizado como entrada um conjunto de dados de críticas de filmes [4] composto por dois mil arquivos textos, dividido em críticas classificadas como positivas e críticas classificadas como negativas. A ferramenta avaliou detalhadamente cada arquivo, atribuindo polaridade aos adjetivos e consequentemente aos termos relacionados a eles. Com isso, foi possível perceber que existem muitos sentimentos misturados dentro de uma mesma crítica. Ou seja, uma crítica que recebe uma classificação positiva ou negativa pode ter diversos termos com sentimento oposto a sua

classificação principal. Isto confirmou a hipótese que reduzir todo o texto a apenas um valor desperdiça muita informação que pode ser relevante. O restante do artigo está organizado da seguinte forma. A seção II mostra trabalhos relacionados na área de análise de sentimento, explicando técnicas e abordagens utilizadas em cada um. A seção III expõe conceitos fundamentais utilizados na realização do presente trabalho. Na seção IV é explicado como foi produzida a ferramenta de análise detalhada de texto. A seção V ilustra os resultados obtidos utilizando a ferramenta criada sobre o conjunto de dados de críticas de filmes. Na seção VI é discutido o significado e importância dos valores obtidos na seção anterior. A seção VII realiza uma conclusão sobre o presente trabalho e promove caminhos para trabalhos futuros. II. TRABALHOS RELACIONADOS Na literatura existem vários trabalhos na área de análise de sentimento, dentre eles muitos voltados a analisar o conteúdo em textos como críticas de filmes. Wilson et al. [5] propuseram uma abordagem de análise de sentimentos que primeiro determina se uma frase é neutra ou polar, com o uso de um lexicon. Depois, atribui-se uma polaridade inicial à expressão. Em seguida, encontra-se uma segunda polaridade da expressão polar encontrada. Para isso são empregados algoritmos de aprendizagem de máquina usando diversas características apresentadas no artigo. Por fim, o sistema é capaz de determinar automaticamente a polaridade contextual, pois uma palavra dentro de um contexto pode ter uma polaridade diferente, para um grande número de expressões. O estudo realizado por Kennedy e Inkpen [6] mostra a diferença de resultado entre dois métodos de análise de sentimento usando o mesmo conjunto de dados do experimento deste trabalho. O primeiro método consiste em contar a quantidade de termos positivos e negativos contidos no texto, usando o lexicon General Inquirer [7]. Se houver mais termos positivos, a crítica é classificada como positiva, se houver mais termos negativos, o crítica é classificada como negativa, caso exista o mesmo número de termos positivos e negativos, a crítica é classificada como neutra. O segundo método faz uso de algoritmos de aprendizagem de máquina (Support Vector Machines), usando unigramas, bigramas, part-of-speech e a posição dos termos no texto como características para o classificador que no final atribui um sentimento à crítica. Apesar dos bons resultados obtidos no trabalho, muita informação é perdida, pois toda a crítica é reduzida a apenas uma classificação, assim desperdiçando as informações de sentimentos opostos que podem estar contidas no texto. No trabalho de Lin e He [8] é proposto um framework de modelagem probabilística baseada em Latente Dirichlet Allocation (LDA), chamado joint sentiment/topic model (JST). Ele é capaz de detectar o sentimento e o tópico simultaneamente em um texto. Diferente de outros estudos na literatura, esse framework não necessita de treinamento como em alguns classificadores, isso acontece por causa do uso do JST que funciona totalmente sem a necessidade de supervisão. O modelo foi usado para avaliar a polaridade de sentimentos e os tópicos em críticas de filmes com o intuito de melhorar ainda mais a precisão de outros classificadores de sentimento. No trabalho experimental desenvolvido por Singh et al. [9], foi proposto um método baseado no lexicon SentiWordNet [10], assim como o presente trabalho, aplicado em um conjunto de dados de críticas de filmes. Nele foi realizado tanto uma análise do texto como um todo, ou seja, foi atribuído um sentimento geral à crítica, quanto a nível de aspectos (características de um filme, e.g. atuação, roteiro, gênero do filme) contidos nele. Foi possível observar a flexibilidade do método desenvolvido, sendo preciso tanto na atribuição de sentimento na crítica como um todo, quanto avaliando os aspectos escolhidos. Essa abordagem de análise de aspectos é de muita importância em uma crítica, tendo em conta que um filme pode ser muito bom em um determinado aspecto e ruim em vários outros, o que resultará em uma crítica negativa. Também pode ser interessante para um usuário do sistema, recuperar os filmes bons em um determinado aspecto. Essa técnica proporciona resultados mais detalhados sobre críticas a custo da adição de um passo a mais no processo de análise, a determinação dos elementos relacionados aos aspectos desejados. Essa etapa, se junta aos tradicionais passos na abordagem SentiWordNet. III. FUNDAMENTAÇÃO TEÓRICA A. Análise de Sentimentos Análise de sentimentos refere-se à uma forma automática de julgar textos geralmente usando técnicas de processamento de linguagem natural e aprendizagem de máquina. Tem como principais objetivos mensurar e qualificar sentimentos expressos em uma ou mais frases. Análise de sentimentos também pode ser compreendida como uma ampla forma computacional de tratamento de opinião, sentimento e subjetividade em um texto [11]. Existem duas técnicas principais para se fazer análise de sentimento, uma usando classificadores de aprendizagem de máquina e outra usando lexicons [12]. Um lexicon é um conjunto de palavras e expressões associadas a algumas definições. Sua estrutura lembra um dicionário, onde uma palavra está associada a sua definição. No lexicon as palavras e expressões podem estar associadas a informações de polaridade, classe gramatical, etc. Em uma abordagem que usa um lexicon, um documento é classificado de acordo com as palavras e expressões do documento avaliado que possuem informações no lexicon [13]. Classificadores de aprendizagem de máquina são classificadores capazes de adquirir conhecimento utilizando técnicas computacionais, eles realizam classificações baseadas em experiências acumuladas anteriormente por meio de treinamento. Para a análise de sentimento, essa abordagem envolve a construção de classificadores a partir de instâncias, textos ou sentenças rotuladas para classificar novas entradas [14]. B. SentiWordNet O SentiWordNet é um lexicon para mineração de opinião e análise de sentimento. Ele atribui para cada synset do WordNet [15] três pontuações diferentes de sentimento: positividade,

negatividade e objetividade (neutralidade) [16]. A objetividade de uma palavra não está explicita no documento, mas pode ser facilmente obtida conforme a equação (1). Obj = 1 (PosScore + NegScore) (1) Tomando como exemplo a palavra good no SentiWordNet 3.0 [12], ela possui uma pontuação de 0.5 de positividade, 0 de negatividade e consequentemente 0.5 de objetividade. Além disso, no documento existe um exemplo do uso da palavra em um contexto ( a good investiment ) e sua classe gramatical indicada como a, que significa adjetivo. Uma mesma palavra pode aparecer diversas vezes no SentiWordNet, isso acontece primeiramente porque uma palavra pode possuir classes gramaticais diferentes e para cada classe gramatical ela pode ter uma classificação diferente. O outro motivo é que uma mesma palavra pode possuir intensidade de sentimento diferente de acordo com o contexto em que se encontra. Dessa forma, para cada contexto existe uma classificação diferente da palavra. O SentiWordNet é uma ferramenta muito útil para mineração de opinião e análise de sentimentos, pois possui uma amplo alcance (todos os sysents do WordNet). Outro motivo é sua granularidade fina, os rótulos do documento são classificados por meio de pontuações numéricas. C. Part-of-Speech O Part-of-Speech [17] são as classes gramaticais da língua, como substantivos, adjetivos, verbos, advérbios, preposições, conjunções, pronomes e interjeições, onde cada classe é representada por uma tag. Essas classes não indicam o que as palavras significam, mas sim a maneira como elas são utilizadas. Logo, uma mesma palavra pode ser um adjetivo numa frase e um verbo em outra. A maioria das soluções para o Part-of-Speech tagging (POST) funciona baseada em aprendizagem de máquina. Os classificadores (taggers) são treinados de acordo com o tipo de texto que se pretende classificar com ele. Durante o treinamento os classificadores geram árvores de probabilidades, estas levam em consideração quais as classes das palavras que precedem a palavra sendo atualmente analisada e que classes são usadas com ela. Com isso, é criada uma lista de possíveis classes para cada palavra e uma lista de probabilidades para cada classe num determinado contexto. O treinamento realizado pelo tagger é dependente de idioma, uma vez que se deseja um tagger que classifique classes gramaticais da língua inglesa, é necessário treiná-lo com textos em inglês. Durante a classificação o tagger analisa o conjunto de probabilidades para uma determinada palavra e escolhe a classe do conjunto que tem a maior valor para aquele contexto específico. Um exemplo de POST é mostrado usando a frase abaixo: I love programming, it is really interesting Para o exemplo temos a classificação da palavra I como pronome pessoal (representado pela tag PRP), love como verbo da primeira pessoa no singular do presente (representada pela tag VBP), programming como um substantivo no singular (representada pela tag NN), it como um pronome pessoal (representada pela tag PRP), is como verbo da terceira pessoa no singular do presente (representada pela tag VBZ), really como advérbio (representada pela tag RB), e por último interesting como adjetivo(representada pela tag JJ). D. Análise de dependências gramaticais As dependências gramaticais de uma determinada língua fornecem a representação da relação gramatical existente entre palavras de acordo com a sentença na qual elas estão inseridas. Elas podem ser utilizadas quando se deseja extrair relações textuais gramaticais. Uma dependência básica é formada por uma tripla: governante, dependente e o nome da relação. Para encontrar uma dependência são necessárias duas etapas: extração de dependência e tipagem de dependência [18]. A primeira consiste em identificar palavras governantes e dependentes de relações existentes dentro de uma frase. Com tais palavras é possível descobrir que tipo de dependência existe entre as duas palavras, assim, na segunda etapa é atribuído o tipo identificado à dependência. Por exemplo: Programming is cool Na frase, cool é governante em duas relações existentes, a primeira com a palavra Programming formando uma relação do tipo sujeito nominal. A segunda é com a palavra is que forma uma relação do tipo cópula, relação que liga um complemento ao verbo. IV. A FERRAMENTA DE ANÁLISE DETALHADA DE TEXTO Para evitar o desperdício de informações que possam ser relevantes, o que acontece quando um classificador atribui a um texto apenas uma classificação, foi construída uma ferramenta para analisar mais detalhadamente textos em inglês, detectando múltiplos sentimentos contidos neles. A ferramenta desenvolvida tem seu funcionamento dividido em quatro etapas principais: encontrar todos os adjetivos do texto, encontrar todas as associações que esses adjetivos possuem com outros termos, encontrar a polaridade dos adjetivos e classificar os termos associados de acordo com a polaridade do seus adjetivos. O diagrama de fluxo da ferramenta é apresentado na Figura 1. Fig. 1. Diagrama de Fluxo da Ferramenta

TABELA I. CLASSIFICAÇÃO DA PALAVRA DE ACORDO COM SUA CLASSIFICAÇÃO Média das Pontuações Classificação Pontuação > 0.75 Strong Positive 0.25 < Pontuação <= 0.75 Positive 0 < Pontuação <= 0.25 Weak Positive - 0.25 <= Pontuação < 0 Weak Negative - 0.75 <= Pontuação < - 0.25 Negative Pontuação < - 0.75 Strong Negative Pontuação = 0 Neutral Antes de iniciar as etapas citadas anteriormente, a ferramenta ao receber um texto de entrada faz um pré-processamento dos dados. O principal objetivo do pré-processamento é remover sinais de pontuação repetidos que estavam confundindo as classificações da biblioteca de processamento de linguagem natural de Stanford [19], que tem um papel fundamental no funcionamento da ferramenta. Ao receber um texto de entrada, a ferramenta utiliza o POS tagger da biblioteca de Stanford para identificar as classes gramaticais das palavras do texto. Na primeira etapa, a ferramenta cria uma lista com todos os adjetivos encontrados. Em seguida, a ferramenta, novamente usando a biblioteca de Stanford, procura todas as associações e dependências entre as palavras. Por exemplo, nesse passo podem ser encontrados modificadores de adjetivos (o adjetivo promove uma característica ao substantivo) e sujeitos nominais (é uma frase nominal que é sujeito de uma sentença). Essas dependências são importantes para identificar os termos associados aos adjetivos para que eles recebam uma classificação. Na terceira etapa, com a lista de adjetivos adquirida, procurase no SentiWordNet 3.0 [10] as ocorrências de cada adjetivo. Um adjetivo pode aparecer mais de uma vez no lexicon, então para ter um valor único de polaridade para o adjetivo encontrado no texto, é calculada a média das polaridades encontradas para aquele adjetivo no SentiWordNet. Com uma pontuação associada a um adjetivo é possível classificar quanto positivo ou quanto negativo ele é. A Tabela I mostra como é feita a classificação de acordo com a pontuação atribuída. Para concluir a classificação, a ferramenta verifica quais são os termos associados aos adjetivos encontrados de acordo com as associações e dependências obtidas anteriormente. Após todas as etapas a ferramenta apresenta uma relação com todos os substantivos e pronomes que tinham relações com adjetivos e que assim possuem algum sentimento associado a eles. Tomando como exemplo a entrada textual The car is good and the weather is bad... a ferramenta funciona da seguinte forma. Primeiramente, na etapa de pré-processamento a frase seria normalizada para The car is good and the weather is bad. Em seguida seriam localizado todos os adjetivos que aparecem no texto, no caso good e bad. A próxima etapa consiste em encontrar as dependências associadas aos adjetivos, para o texto exemplificado seriam localizados: para good a relação de cópula com is e a relação de sujeito nominal com car. Para bad seria identificado a relação de cópula com o segundo is e de sujeito nominal com weather. Algumas dependências encontradas nessa etapa não são importantes, as relações de cópula por exemplo, são descartadas, pois nesse tipo de relação os adjetivos não estão qualificando nada. Na terceira etapa, a ferramenta calcula as médias das pontuações que aparecem no lexicon de cada adjetivo identificado. Para o exemplo teríamos, good com a pontuação de 0.388 e bad com a de pontuação de 0.348. A última etapa seria classificar os termos associados aos adjetivos com a pontuação recuperada. No exemplo usado seria classificado car como positive e weather como negative. V. RESULTADOS Para testar a ferramenta criada, foram realizados testes utilizando um conjunto de dados de críticas de filmes [4] composto por dois mil arquivos textos, cada um com uma crítica diferente, dividido em mil críticas positivas e mil críticas negativas. Cada arquivo texto foi fornecido como entrada para a ferramenta e um novo arquivo texto foi gerado com as informações de saída, ou seja, a lista de termos associados aos adjetivos e sua respectiva classificação. Com isso, foram gerados dois mil arquivos textos de saída, onde cada um tinha as informações de uma crítica do conjunto de dados. Primeiramente, para avaliar se a ferramenta desenvolvida possui resultados condizentes com a classificação do conjunto de dados era necessário ter apenas uma classificação para toda a crítica. Para isso, contou-se a quantidade de termos avaliados como positivos (strong positive, positive e weak positive) e negativos (strong negative, negative e weak negative) gerados como saída de cada arquivo e atribuiu-se como classificação de uma crítica a classificação que apareceu mais vezes. Assim, foi possível gerar a matriz de confusão dos resultados do classificador para efetuar o cálculo de sensibilidade e especificidade [20]. Os valores dos resultados são 0,629 de sensibilidade e 0,663 de especificidade. Fig. 2. Histograma da quantidade de termos relevantes por crítica.

Fig. 3. Histograma da quantidade de termos positivos em críticas negativas. Com o intuito de mostrar a importância da análise detalhada de texto, foi construído um histograma com a quantidade de termos associados a adjetivos identificados em cada uma das duas mil críticas analisadas. O histograma é ilustrado na Figura 2. Se, por exemplo, a coluna dez do eixo x possuir o valor cinco no eixo y, significa que cinco críticas possuem dez termos relevantes que recebem classificação. Outra informação importante é obtida com uma análise sobre a quantidade de palavras com polaridade negativas encontradas em críticas classificadas como positivas e a quantidade de palavras positivas encontradas em críticas classificadas como negativas. Foram construídos dois histogramas para ilustrar tal informação, eles mostram a quantidade de termos com a classificação inversa a classificação original do conjunto de dados. Se, por exemplo, a coluna vinte do eixo x possuir o valor quinze no eixo y, significa que quinze críticas possuem vinte termos de classificação inversa a sua classificação original. As Figuras 3 e 4 mostram esses histogramas. Por último, foi feito o cálculo da entropia, usando a equação apresentada em (2), para cada crítica analisada. Com esse valor pode-se mostrar o grau de desordem existente nas classificações dos termos associados encontrada nas críticas, ou seja, quanto misturado estão os sentimentos nas críticas. n S = i=1 p i log 2 p i (2) Onde S é a entropia, n varia de 1 a 3 (1 para positivo, 2 para negativo e 3 para neutro) e p i é a proporção da quantidade de termos que recebeu uma determinada classificação (positiva, negativa ou neutra) pelo total de termos identificados em uma crítica. Nesse caso, como temos três possíveis classificações, S varia de 0 (ordem máxima) até 1.585 (desordem máxima). Para sumarizar o resultado, foi realizado o cálculo da média das entropias obtidas e seu desvio padrão. O valor obtido para a média das entropias foi 1.375 e o valor do desvio padrão foi de 0.143. Fig. 4. Histograma da quantidade de termos negativos em críticas positivas. VI. DISCUSSÃO Os primeiros dados obtidos para testar a ferramenta foram encontrados através do cálculo da sensibilidade e da especificidade do classificador. Eles mostraram ser, na maioria das vezes, condizentes com a classificação original do conjunto de dados. O histograma ilustrado na Figura 2 mostrou a importância de uma análise mais detalhada dos sentimentos contidos em um texto, pois praticamente todas as duas mil críticas de entrada possuem múltiplos sentimentos identificados para seus termos, chegando a ter um caso com 207 termos. Nas figuras 3 e 4 os histogramas mostram que as críticas dentro de suas classificações originais, segundo o conjunto de dados, possuem uma grande quantidade de termos com classificações contrárias a classificação original. Isto sugere a necessidade de uma análise detalhada de texto, pois uma crítica de classificação originalmente positiva pode possuir muitos termos de polaridade negativa que seriam desconsiderados em análises tradicionais, e vice-versa. Assim, mesmo que uma crítica possua uma determinada classificação geral, a ferramenta desenvolvida consegue detectar termos que tenham a classificação contrária. Essa capacidade pode ser importantíssima, pois é possível analisar o que é bom ou ruim em um texto de forma detalhada. Para críticas dos filmes, poderíamos analisar se a direção do filme é boa, a qualidade da atuação de algum ator específico, entre outras características Por último, as médias das entropias obtidas mostraram que o grau de desordem existente nas críticas é alto, a média foi de 1.375, com desvio padrão de 0.143. Esses valores mostram, mais uma vez, que uma mesma crítica pode conter vários termos com classificações diferentes, ou seja, uma classificação generalizada pode acabar não levando em consideração muita informação importante.

VII. CONCLUSÃO Neste trabalho foi apresentada uma abordagem para detecção de múltiplos sentimentos em textos. Diferente de muitos trabalhos da literatura que reduzem todo o texto a apenas uma classificação, neste trabalho vários termos em um texto recebem classificações de acordo com os adjetivos relacionados a eles. Para testar nossa abordagem foi desenvolvida uma ferramenta que recebeu como entrada duas mil críticas de filmes. Ela realizou todo o processo de classificação e apresentou o resultado com os termos associados a adjetivos e suas respectivas classificações. Os resultados mostraram que fornecer apenas uma classificação para todo o texto pode ser, muitas vezes, insuficiente. Pois, foi percebido que um mesmo texto pode possuir diversos sentimentos com classificações diferentes (entropia alta). Então, classificar o texto com apenas um valor é desperdiçar toda a informação contida nos termos com classificação inversa a classificação geral. Um problema apresentado nessa abordagem é o fato de, por ser feito uma análise tão detalhada, ela pode atribuir classificação para termos que não são relevantes para quem estiver analisando esses dados. Alguns desses termos podem acabar atrapalhando os resultados no momento de mensurar os resultados. Encontrar formas melhores de identificar termos realmente relevantes e de apresentar os resultados podem ser feitos em trabalhos futuros. Melhorias nas atribuições das pontuações da ferramenta podem ser feitas para entender melhor o texto de acordo com seu contexto, gerando assim, uma classificação mais precisa. Por exemplo, tratar advérbios afim de aumentar ou diminuir a pontuação do termo ( This is incredibly cool deve ter uma pontuação maior do que This is cool ). Outro exemplo é tratar negações invertendo a pontuação inicial do termo ( This is not good deve ter uma pontuação invertida a This is good ). Um terceiro tratamento seria analisar emoticons contido em textos, pois eles são muito usados em textos escritos na Internet para expressar o sentimento de quem escreve. Além disso, pretende-se usar a ferramenta desenvolvida para fazer análise de outros conjuntos de dados como mensagens do Twitter e comentários do YouTube que possuem características diferentes de críticas de filmes, por serem textos geralmente menores e mais coloquiais. REFERENCES [1] E. Kouloumpis, T. Wilson, and J. Moore, Twitter sentiment analysis:the good the bad and the omg! ICWSM, vol. 11, pp. 538 541, 2011. [2] B. Liu, Sentiment Analysis and Opinion Mining, ser. Synthesis digital library of engineering and computer science. Morgan & Claypool, 2012. [3] A. Pak and P. Paroubek, Twitter as a corpus for sentiment analysis and opinion mining. in LREC, 2010. [4] P. Gonçalves, M. Arajo, F. Benevenuto, and M. Cha, Comparing and combining sentiment analysis methods. in COSN, S. M. Muthukrishnan, A. E. Abbadi, and B. Krishnamurthy, Eds. ACM, 2013, pp. 27 38. [5] T. Wilson, J. Wiebe, and P. Hoffmann, Recognizing contextual polarity in phrase-level sentiment analysis, in hltemnlp2005, Vancouver, Canada, 2005, pp. 347 354. [6] A. Kennedy and D. Inkpen, Sentiment classification of movie reviews using contextual valence shifters, Computational Intelligence, vol. 22, no. 2, Special Issue on Sentiment Analysis), pp. 110 125, 2006.. [7] P. J. Stone, The General Inquirer: A Computer Approach to Content Analysis. The MIT Press, 1966. [8] C. Lin and Y. He, Joint sentiment/topic model for sentiment analysis, in Proceeding of the 18th ACM conference on Information and knowledge management. ACM, 2009, pp. 375 384 [9] V.K. Singh, R. Piryani, A. Uddin e P. Waila. Sentiment Analysis of Movie Reviews: A new Feature-based Heuristic for Aspect-level Sentiment Classification. International Multi-Conference on Automation, Computing, Communication, Control and Compressed Sensing (imac4s). Kottayam, Mar. 23-25, 2013. [10] A. E. S. Baccianella and F. Sebastiani, Sentiwordnet 3.0: An enhanced lexical resource for sentiment analysis and opinion mining, in Proceedings of the Seventh conference on International Language Resources and Evaluation (LREC 10). Valletta, Malta: European Language Resources Association (ELRA), May 2010. [11] B. Pang and L. Lee, Opinion Mining and Sentiment Analysis, Information Retrieval, vol. 2, no. 1-2, pp. 1 135, 2008. [12] M. Taboada, J. Brooke, M. Tofiloski, K. D. Voll, and M. Stede, Lexicon-based methods for sentiment analysis. Computational Linguistics, vol. 37, no. 2, pp. 267 307, 2011. [13] P. Turney, Thumbs up or thumbs down? Semantic orientation applied to unsupervised classification of reviews, Philadelphia, Pennsylvania, 2002, pp. 417 424. [14] B. Pang, L. Lee, and S. Vaithyanathan, Thumbs up? Sentiment classification using machine learning techniques, in emnlp2002, Philadelphia, Pennsylvania, 2002, pp. 79 86. [15] A. Miller, Wordnet: A lexical database for english, Communications of the ACM, vol. 38, no. 11, pp. 39 41, 1995. [16] A. Esuli and F. Sebastiani, Sentiwordnet: A publicly available lexical resource for opinion mining, in Proceedings of LREC, vol. 6, 2006, pp. 417 422. [17] R. Mitkov, Ed., The Oxford Handbook of Computational Linguistics, ser. Oxford Handbooks in Linguistics, 2003. [18] M.-C. De Marneffe, B. MacCartney, C. D. Manning et al., Generating typed dependency parses from phrase structure parses, in Proceedings of LREC, vol. 6, 2006, pp. 449 454. [19] K. Toutanova and C. D. Manning, Enriching the knowledge sources used in a maximum entropy part-of-speech tagger, in Proceedings of the Joint SIGDAT Conference on Empirical Methods in Natural Language Processing and Very Large Corpora (EMNLP/VLC-2000), Hong Kong, October 2000, pp. 63 70. [20] B. Everitt, The Cambridge dictionary of statistics. Cambridge: Cambridge Univ. Press, 1998.