Avaliação do Desempenho de Metodos de Análise de Sentimentos na Presença das Figuras de Linguagem Sarcasmo e Ironia

Share Embed


Descrição do Produto

UNIVERSIDADE FEDERAL DO SUL E SUDESTE DO PARÁ INSTITUTO DE GEOCIÊNCIAS E ENGENHARIAS Faculdade de Computação e Engenharia Elétrica Bacharelado em Sistemas de Informação

PRISCILLA DE SOUZA SILVA

AVALIAÇÃO DO DESEMPENHO DE MÉTODOS DE ANÁLISE DE SENTIMENTOS NA PRESENÇA DAS FIGURAS DE LINGUAGEM SARCASMO E IRONIA

Marabá 2016

PRISCILLA DE SOUZA SILVA

AVALIAÇÃO DO DESEMPENHO DE MÉTODOS DE ANÁLISE DE SENTIMENTOS NA PRESENÇA DAS FIGURAS DE LINGUAGEM SARCASMO E IRONIA

Trabalho de Conclusão de Curso, apresentado à Universidade Federal do Sul e Sudeste do Pará, como parte dos requisitos necessários para obtenção do Título de Bacharel em Sistemas de Informação Orientador: Prof. José Santos Coorientador: Profª. Drª. Leila Weitzel Coelho da Silva

Marabá 2016

Dados Internacionais de Catalogação-na-Publicação (CIP) Biblioteca Josineide da Silva Tavares da UNIFESSPA. Marabá,PA Silva, Priscilla de Souza Avaliação do desempenho de métodos de análise de sentimentos na presença das figuras de linguagem sarcasmo e ironia / Priscilla de Souza Silva; orientador, José Santos, coorientadora, Leila Weitzel Coelho da Silva. — 2016. Trabalho de Conclusão de Curso (Graduação) - Universidade Federal do Sul e Sudeste do Pará, Campus Universitário de Marabá, Instituto de Geociências e Engenharias, Faculdade de Educação e Engenharia Elétrica, Curso Bacharelado em Sistemas de Informação, Marabá, 2016. 1. Mineração de dados (Computação). 2. Mineração de uso da Web. 3. Mídia social. 4. Conteúdo gerado pelo usuário. 5. Ironia. I. Santos, José, orient. II. Título. CDD: 22. ed.: 006.312

Dedico este trabalho a minha família, Aos mestres, amigos e colegas de trabalho.

Agradecimentos

Agradeço primeiramente a Deus, por me dar forças para enfrentar os desafios da vida. Agradeço a ele pelas inúmeras bençãos recebidas, dentre essas o diploma de Bacharel em Sistemas de Informação. A minha família por todo amor gratuito e sem reservas. Em especial aos meus pais (Jodimar e Juvenilda) que sempre batalharam com afinco para me proporcionar a oportunidade de crescer espiritualmente e profissionalmente. E a minha irmã Mikaelhy pelo companheirismo silencioso. Agradeço especialmente ao professor Haroldo Gomes Barroso Filho, por acreditar e confiar no meu trabalho, me incentivando a buscar e conquistar meu espaço no meio acadêmico. E pela credibilidade ao me convidar para o grupo de pesquisa DataLab. Além do esforço empregado na publicação de trabalhos em eventos da área de Data Mining. Ao professor José Santos orientador deste trabalho, pela paciência, atenção, prestatividade e por sempre me encorajar a buscar meus projetos de vida. A professora Leila Weitzel, pela confiança de me entregar está magnifica pesquisa, e pelo apoio durante o desenvolvimento da mesma. Ao professor Warley Junior, por me ensinar que sempre podemos correr atrás do melhor de nós. E por sua benevolência para comigo. Um profissional comprometido com a disseminação do conhecimento e do aprendizado. A equipe do Centro de Tecnologia da Informação e Comunicação (CTIC) da Universidade Federal do Sul e Sudeste do Pará, coordenada pelo Análista Hugo Pereira Kuribayashi. Em especial á equipe da Divisão de Redes (DIRSI), dirigida pelo analista Idelvandro, e composta pelos analistas e técnicos - Nielsen, Fábio, Edney, Regivaldo e Kennedy. Foi através destes profissionais que aprendi lições para o enriquecimento da minha vida profissional e pessoal. A todos os meus colegas de turma com os quais partilhei bons momentos durante os quatro anos de curso. Em especial aos grandes amigos que conquistei nesta jornada, Dilcielly Ribeiro, Ítalo Giovanni e Anderson Reis. Por fim e não menos importante, gostaria de agradecer a todos os professores da Faculdade de Computação e Engenharia Elétrica da UNIFESSPA, com os quais tive a honra de aprender um pouco mais, bem como a todos os colaboradores que foram fundamentais a minha formação acadêmica. A todos meu sincero obrigado!

“O verdadeiro perigo não está no fato de que máquinas começarão a pensar como homens, mas que homens começarão a pensar como máquinas.” (Sydney J. Harris)

Resumo Análise de Sentimentos é uma área de estudo em expansão, aplicada a inúmeros ambientes (financeiro, político, acadêmico, empresarial ou de comunicação), cujo propósito é buscar mensagens publicadas nas mídias sociais, e através destas identificar e classificar a opinião das pessoas sobre determinado item como positivo ou negativo. Classificar o sentimento expresso em mensagens opinativas é uma tarefa tão importante que, atualmente empresas investem muito dinheiro na coleta deste tipo de informação e na elaboração de métodos e técnicas capazes de classificar o sentimento que estas expressam, para utilizar os resultados como informação útil na elaboração de estratégias de marketing e vendas de forma eficiente, ou pelo setor acadêmico para descobrir fatores relevantes à sociedade. Atualmente muitos destes métodos passaram a ser desenvolvidos e implementados em diversos tipos de aplicações e ferramentas que realizam a análise de sentimentos em mensagens compartilhadas nas redes sociais. No entanto, muitos destes métodos, vem sendo empregados sem um entendimento concreto da sua aplicabilidade em diferentes contextos, suas vantagens, limitações e eficiência comparado aos demais métodos. Dentre estes contextos, encontra-se um dos grandes problemas enfrentando pela Análise de Sentimentos, que é a dificuldade dos métodos em analisar corretamente mensagens com teor sarcástico e/ou irônico, já que estes fenômenos linguísticos possuem a característica de transformar a polaridade ou significado de um enunciado positivo ou negativo em seu oposto. Neste contexto a presente pesquisa buscou avaliar e comparar quantitativamente o desempenho de diferentes métodos de Análise de Sentimentos existentes na literatura ao classificarem a polaridade de mensagens com teor sarcastico. Palavras-chave: Análise de Sentimentos. Sarcasmo. Inversão de Polaridade.

Abstract Sentiment analysis is a study area expanding, applied to numerous environments (financial, political, academic, business or and communication), whose purpose is to search for messages posted on social media, and through these to identify and classify people’s opinions about particular item as positive or negative. Classify the sentiment expressed in opinionated messages is such an important task that currently companies invest a lot of money in collecting this type of information and the development of methods and techniques to classify the feeling that they express, to use the results as useful information in preparation marketing and sales strategies efficiently, or the academic sector to discover relevant factors society. Currently many of these methods began to be developed and implemented in various types of applications and tools that perform sentiment analysis on shared messages on social networks. However, many of these methods are being used in developing applications without a concrete understanding of its applicability in different contexts, its advantages, limitations and efficiency compared to other methods. Among these contexts, is one of the major problems facing the sentiment analisys, which is the difficulty of methods to properly analyze messages with content sarcastic or ironic, since these linguistic phenomena have the characteristic of transforming the polarity or meaning a positive or negative statement into its opposite. In this context the present study sought to evaluate and compare quantitatively the performance of different methods existing in the literature to classify the polarity messages with the presence of sarcasm. Keywords: Sentiment Analysis. Sarcasm. Reversal of Polarity.

Lista de ilustrações

Figura Figura Figura Figura Figura Figura Figura Figura Figura Figura Figura Figura Figura Figura Figura Figura Figura Figura Figura Figura Figura Figura Figura Figura Figura Figura Figura Figura Figura Figura Figura Figura Figura Figura Figura Figura

1 – 2 – 3 – 4 – 5 – 6 – 7 – 8 – 9 – 10 – 11 – 12 – 13 – 14 – 15 – 16 – 17 – 18 – 19 – 20 – 21 – 22 – 23 – 24 – 25 – 26 – 27 – 28 – 29 – 30 – 31 – 32 – 33 – 34 – 35 – 36 –

Tweet sarcástico. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Etapas comuns da Análise de Sentimentos. . . . . . . . . . . . . . . . Sentiment140 ferramenta de Análise de Sentimentos. . . . . . . . . . Léxico de sentimentos. . . . . . . . . . . . . . . . . . . . . . . . . . . Hiperplano ótimo. . . . . . . . . . . . . . . . . . . . . . . . . . . . . Termos que compõem a escala PANAS. . . . . . . . . . . . . . . . . . Variações de emoticons. . . . . . . . . . . . . . . . . . . . . . . . . . Etapas de realização da metodologia proposta. . . . . . . . . . . . . . Ferramenta SOMtool. . . . . . . . . . . . . . . . . . . . . . . . . . . Arquitetura do sistema Web iFeel. . . . . . . . . . . . . . . . . . . . Página principal do iFeel 2.0. . . . . . . . . . . . . . . . . . . . . . . Filtro StringToWordVector. . . . . . . . . . . . . . . . . . . . . . . . Exemplo de arquivo gerado pelo iFeel 2.0. . . . . . . . . . . . . . . . Trecho de um arquivo ARFF. . . . . . . . . . . . . . . . . . . . . . . Vetor de Palavaras do corpus B. . . . . . . . . . . . . . . . . . . . . . Exemplo de matriz de confusão Multiclasse 3x3. . . . . . . . . . . . . Exemplo de como calcular as métricas de avaliação. . . . . . . . . . . Comparação dos resultados do teste com hashtags (tweets Positivos). Comparação dos resultados do teste sem hashtags (tweets Positivos). Comparação dos resultados do teste com hashtags (tweets Negativos). Comparação dos resultados do teste sem hashtags (tweets Negativos). Comparação dos resultados do teste com hashtags (tweets neutros). . Comparação dos resultados do teste sem hashtags (tweets neutros). . Resultados obtidos pelo algoritmo SVM. . . . . . . . . . . . . . . . . Comparação de desempenho entre os métodos. . . . . . . . . . . . . . Acurácia do experimento com hashtags. . . . . . . . . . . . . . . . . Acurácia do experimento sem hashtags. . . . . . . . . . . . . . . . . . Matriz do método SentiWordNet (com#). . . . . . . . . . . . . . . . Matriz do método PANAS-t (com#). . . . . . . . . . . . . . . . . . . Matriz do método Sentistrenght (com#). . . . . . . . . . . . . . . . . Matriz do método Emolex (com#). . . . . . . . . . . . . . . . . . . . Matriz do método NRChashtag (com#). . . . . . . . . . . . . . . . . Matriz do método Opinion Lexicon (com#). . . . . . . . . . . . . . . Matriz do método Pattern.en (com#). . . . . . . . . . . . . . . . . . Matriz do método AFINN (com#). . . . . . . . . . . . . . . . . . . . Matriz do método Vader (com#). . . . . . . . . . . . . . . . . . . . .

. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .

17 26 29 35 41 42 47 57 59 60 61 63 70 71 73 75 78 82 83 85 85 87 87 89 90 91 92 97 97 98 98 99 99 100 101 101

Figura Figura Figura Figura Figura Figura Figura Figura Figura Figura Figura Figura Figura

37 38 39 40 41 42 43 44 45 46 47 48 49

– – – – – – – – – – – – –

Matriz Matriz Matriz Matriz Matriz Matriz Matriz Matriz Matriz Matriz Matriz Matriz Matriz

do do do do do do do do do do do do do

método método método método método método método método método método método método método

Sentiment140 (com#). . . . Combined Method (com#). SentiWordNet (sem#). . . PANAS-t (sem#). . . . . . Sentistrenght (sem#). . . . Emolex (sem#). . . . . . . NRChashtag (sem#). . . . Opinion Lexicon (sem#). . AFINN (sem#). . . . . . . Vader (sem#). . . . . . . . Sentiment140 (sem#). . . . Combined Method (sem#). Pattern.en (sem#). . . . .

. . . . . . . . . . . . .

. . . . . . . . . . . . .

. . . . . . . . . . . . .

. . . . . . . . . . . . .

. . . . . . . . . . . . .

. . . . . . . . . . . . .

. . . . . . . . . . . . .

. . . . . . . . . . . . .

. . . . . . . . . . . . .

. . . . . . . . . . . . .

. . . . . . . . . . . . .

. . . . . . . . . . . . .

. . . . . . . . . . . . .

. . . . . . . . . . . . .

102 103 104 104 105 105 106 106 107 107 108 108 109

Lista de tabelas

Tabela Tabela Tabela Tabela Tabela Tabela Tabela Tabela Tabela Tabela

1 – 2 – 3 – 4 – 5 – 6 – 7 – 8 – 9 – 10 –

Exemplo de uma entrada de classificador com vetor binário de Termos removidos. . . . . . . . . . . . . . . . . . . . . . . . . Distribuição dos tweets rotulados manualmente. . . . . . . . . Exemplos de Tweets Rotulados Manualmente. . . . . . . . . . Classificação dos tweets Positivos para o teste com hashtags. . Classificação dos tweets Positivos para o teste sem hashtags. . Classificação dos tweets Negativos para o teste com hashtags. Classificação dos tweets Negativos para o teste sem hashtags. Classificação dos tweets Neutros para o teste com hashtags. . Classificação dos tweets Neutros para o teste semhashtags. . .

termos. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .

39 65 67 67 81 81 84 84 86 86

Lista de abreviaturas e siglas

AMT

Amazon Mechanical Turk Service

ANEW

Affective Norms for English Words

ARFF

Attribute Relation File Format

AS

Análise de Sentimentos

Cosine Similarity CS DAL

Dictionary of Affective Language

DLA

Dicionário de Língua Afetiva

IBM

International Business Machines

LIWC

Linguistic Inquiry and Word Count

MO

Mineração de Opinião

MSE

Mean Squared Error

PLN

Processamento de Linguagem Natural

POS

Part-of-Speech

SWN

SentiWordNet

TI

Tecnologia da Informação

WEKA

Waikato Environment for Knowledge Analysis

Sumário

1 1.1 1.2 1.3

Introdução . . . . . . . . . Motivação e Justificativa Objetivos . . . . . . . . . . Estrutura do Trabalho . .

. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .

. . . .

. . . .

. . . .

. . . .

. . . .

. . . .

. . . .

. . . .

. . . .

. . . . . . .

15 17 19 19

2 2.1 2.1.1 2.1.2 2.1.3

Ambiente da Pesquisa . . . . . . . . . . . . . . Análise de Sentimentos . . . . . . . . . . . . . . Terminologias e Conceitos . . . . . . . . . . . . . . . Níveis da Análise de Sentimentos . . . . . . . . . . . Etapas da Análise de Sentimentos . . . . . . . . . . Recuperação dos Dados . . . . . . . . . . . . . . . . . . Classificação . . . . . . . . . . . . . . . . . . . . . . . Sumarização dos Resultados . . . . . . . . . . . . . . . . Figuras de Linguagem . . . . . . . . . . . . . . . Sarcasmo e Ironia . . . . . . . . . . . . . . . . . . .

. . . . . . . . . .

. . . . . . . . . .

. . . . . . . . . .

. . . . . . . . . .

. . . . . . . . . .

. . . . . . . . . .

. . . . . . . . . .

. . . . . . . . . .

. . . . . . . . . .

. . . . . . . . . . . . . . . . . . .

21 21 23 25 26

Métodos e Técnicas Utilizados na Análise de Sentimentos Polaridade Baseada em Dicionário Léxico de Sentimentos SentiWordNet (SWN) . . . . . . . . . . . . . . . . . . . . . . . . . Polaridade Baseada em Aprendizado de Máquina . . . . . . Aprendizado Supervisionado e Não Supervisionado . . . . . . . . . Support Vector Machine (SVM) . . . . . . . . . . . . . . . . . . . . . . Outros Métodos e Técnicas . . . . . . . . . . . . . . . . . . . . PANAS-t . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . EmoLex . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . NRC Hashtag Sentiment Lexicon . . . . . . . . . . . . . . . . . . . Opinion Lexicon . . . . . . . . . . . . . . . . . . . . . . . . . . . . Opinion Finder . . . . . . . . . . . . . . . . . . . . . . . . . . . . . VADER . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Sentiment140-Lexicon . . . . . . . . . . . . . . . . . . . . . . . . . LIWC . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . SentiStrength . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Emoticons . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Happiness Index . . . . . . . . . . . . . . . . . . . . . . . . . . . . Combined Method . . . . . . . . . . . . . . . . . . . . . . . . . . . Emoticon Distant Supervisor . . . . . . . . . . . . . . . . . . . . .

. . . . . . . . . . . . . . . . . . . .

. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .

2.1.3.1 2.1.3.2 2.1.3.3

2.2 2.2.1 3 3.1 3.1.1 3.2 3.2.1 3.2.1.1

3.3 3.3.1 3.3.2 3.3.3 3.3.4 3.3.5 3.3.6 3.3.7 3.3.8 3.3.9 3.3.10 3.3.11 3.3.12 3.3.13

. . . .

26 27 28

29 30 34 34 36 37 39 40

41 41 42 43 43 44 45 45 46 46 46 48 48 48

3.3.14 3.3.15

AFINN . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 49 Pattern.en . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 49

4 4.1 4.1.1 4.2 4.2.1 4.3 4.3.1

Trabalhos Correlatos . . . . . . . . . . . . . . Maynard; Greenwood (2014) . . . . . . . . . . Principais Contribuições . . . . . . . . . . . . . . Gonçalves et. (2014) . . . . . . . . . . . . . . . Principais Contribuições . . . . . . . . . . . . . . Hernandez Farías et al.(2015) . . . . . . . . . Principais Contribuições . . . . . . . . . . . . . .

. . . . . . .

. . . . . . .

. . . . . . .

. . . . . . .

. . . . . . .

. . . . . . .

. . . . . . .

. . . . . . .

. . . . . . .

. . . . . . . . . . . . . . . . . . . .

51 51 52 52 54 54 55

5 5.1 5.1.1 5.1.2 5.1.3 5.2 5.3 5.4 5.5 5.5.1 5.5.2 5.6 5.6.1 5.6.2 5.6.3 5.6.4

Metodologia da Pesquisa . . . . . . . . . . . . Ferramentas Utilizadas . . . . . . . . . . . . . . SOMtool . . . . . . . . . . . . . . . . . . . . . . . . iFeel . . . . . . . . . . . . . . . . . . . . . . . . . . WEKA . . . . . . . . . . . . . . . . . . . . . . . . . Coleta dos Dados . . . . . . . . . . . . . . . . . . Pré-processamentos dos Dados . . . . . . . . . Classificação Manual dos Dados . . . . . . . . . Experimentos Realizados . . . . . . . . . . . . . Experimentos Usando os Métodos do iFeel . . . . . Experimentos Usando o Algoritmo SVM . . . . . . . Métricas de Avaliação . . . . . . . . . . . . . . . Precisão . . . . . . . . . . . . . . . . . . . . . . . . Revocação . . . . . . . . . . . . . . . . . . . . . . . F-measure . . . . . . . . . . . . . . . . . . . . . . . Acurácia . . . . . . . . . . . . . . . . . . . . . . . .

. . . . . . . . . . . . . . . .

. . . . . . . . . . . . . . . .

. . . . . . . . . . . . . . . .

. . . . . . . . . . . . . . . .

. . . . . . . . . . . . . . . .

. . . . . . . . . . . . . . . .

. . . . . . . . . . . . . . . .

. . . . . . . . . . . . . . . .

. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .

56 58 58 59 61 63 65 66 67 68 70 74 76 76 77 77

6 6.1 6.2 6.3

Resultados . . . . . . . . . . . . . . . . . . . . . . Resultados dos Métodos do iFeel . . . . . . . . . Resultados do Algoritmo SVM . . . . . . . . . . Comparação de Desempenho entre os Métodos

. . . .

. . . .

. . . .

. . . .

. . . .

. . . .

. . . .

. . . . . . . . . . .

80 80 88 90

7

Considerações Finais . . . . . . . . . . . . . . . . . . . . . . . . .

93

Referências

95

. . . . . . . . . . . . . . . . . . . . . . . . . . . . . .

APÊNDICES

102 96

15

1 Introdução

Com advento da Web e, o progressivo uso de canais online (tais como, redes sociais, blogs, sites de relacionamento, jornais online, fóruns, sites de recomendações e ferramentas comerciais online que permitem aos usuários registrarem suas opiniões sobre produtos e serviços) nos quais os usuários trocam informações e compartilham seus conhecimentos, críticas, opiniões e sentimentos sobre algum tópico de interesse, fez com que na última década a quantidade de informação textual escrita em linguagem natural1 atingisse proporções gigantescas. Conforme Cambria et al. (2013), extrair e processar de modo adequado toda esta montanha de informação tornou-se algo extremamente interessante para o mundo dos negócios, pois através destes dados empresas podem obter um feedback 2 contínuo e mais rápido sobre a opinião do seu público acerca de seus produtos e marca. O meio acadêmico por sua vez é um dos grandes responsáveis pelo desenvolvimento das ferramentas e métodos para tratar esses dados. Entretanto, apesar da relevância desse tipo de informação, coletar e analisar opiniões advindas da Web tornou-se uma tarefa impraticável pelo ser humano em tempo hábil, devido a grande quantidade de dado textual publicado. Então para tratar e analisar automaticamente as opiniões e sentimentos expressos nesse tipo de dado, surgiu uma área denominada Análise de Sentimentos (AS) também chamada de Mineração de Opinião (LIU, 2010a). A análise de sentimentos segundo Benevenuto, Ribeiro e Araújo (2015), é uma área de estudo que emprega processamento computacional para definir técnicas automáticas capazes de extrair informações subjetivas de textos em linguagem natural, como opiniões e sentimentos, a fim de criar conhecimento estruturado que possa ser utilizado por um sistema de apoio ou tomador de decisão. Basicamente estas técnicas identificam o sentimento que os usuários apresentam a respeito de alguma entidade de interesse (um produto específico, uma empresa, um lugar, uma pessoa, dentre outros) baseando-se nos textos compartilhados na Web, permitindo que um usuário obtenha um relatório contendo o que as pessoas comentam sobre algum item, sem que seja preciso buscar e ler todas as opiniões e notícias a respeito manualmente. Atualmente empresas como a Walmart, MCDonalds e IBM, estão investindo em grupos de pesquisa em análise de sentimentos, pois perceberam o valor das opiniões expressas nas mídias sociais e o quanto estas opiniões podem afetá-las de maneira positiva ou negativa (CHEN; ZIMBRA, 2010). Outros setores emergentes interessados nesses dados são: a política para manter seus membros informados sobre a opinião publica em relação 1 2

É a linguagem escrita utilizada pelo ser humano para se comunicar através de simbolos específicos. Em português significa retorno.

16

as suas ações; famosos que acompanham seu nível de popularidade entre os internautas; produtoras interessadas em saber sobre a aceitação dos filmes que produziram, entre outros setores. Dentre as distintas fontes de dados utilizadas pela AS, as redes sociais representam o ambiente mais propício para identificar opiniões e sentimentos sobre diferentes entidades, visto que são locais onde as pessoas discutem sobre tudo expressando opiniões políticas, religiosas ou mesmo sobre marcas, produtos e serviços. Além de que estas opiniões quando devidamente recolhidas e analisadas, permitem não só compreender e explicar diversos fenômenos sociais complexos, mas também prevê-los. No entanto, apesar da Web e principalmente das redes sociais facilitarem o acesso e distribuição de informação opinativa, a tarefa de identificar, classificar e sumarizar opiniões de dados no formato de texto, não é algo trivial e possui diversos desafios, os quais induzem à inconsistências dos resultados gerados pelas aplicações de análise de sentimentos. De modo geral, estes desafios são relacionados à dificuldade que os computadores têm em processar automaticamente a linguagem natural (humana). O processamento de automação da linguagem humana tem seus princípios na área de estudo denominada Processamento de Linguagem Natura (PLN). Esta área relaciona-se diretamente com a AS, pois compartilham o estudo de dados não estruturado3 (LIU; HOGAN; CROWLEY, 2011). A linguagem natural por sua vez, é um assunto um tanto quanto complexo principalmente quando se trata de redes sociais, pois é aonde há muitas nuances em uma mensagem de texto. Esta complexidade se deve á desafios que são fatores próprios da linguagem humana, tais como palavras e/ou frases com significados ambíguos, sarcasmo e ironia, gírias, erros ortográficos, regionalismo, dialetos, entre outros. Mediante estes desafios, é importante considerar que os estudos sobre detecção e classificação automática de sarcasmo e/ou ironia ainda se encontram no seu início. No entanto, a dificuldade de analisá-los é alta já que possuem a capacidade de transformar a polaridade de um enunciado positivo ou negativo em seu oposto ou alterar o significado deste (GONZÁLEZ-IBANÉZ; MURESAN; WACHOLDER, 2011). Para isto, estes que são caracterizados como figuras de linguagem, utilizam-se de várias técnicas linguísticas como simples jogos de palavras, que tem a capacidade de minar a eficiência das aplicações de análise sentimentos (LUNANDO; PURWARINTI, 2013). Para exemplificar a complexidade envolvida, a Figura 1 apresenta um tweet contendo uma mensagem com teor sarcástico.

3

São dados oriundos da Web que se encontram no formato de textos não estruturados.

17 Figura 1 – Tweet sarcástico.

Fonte: Extraido de www.twitter.com.br.

Na mensagem apresentada acima, o autor expressa através da figura de linguagem “sarcasmo” seu descontentamento com o desempenho da empresa Google, pois segundo ele a empresa tende a agir mais de maneira negativa do que positiva. Uma análise computacional que interpretasse unicamente a mensagem e seus adjetivos (no caso destetweet a palavra “obrigado”) poderia entender isto como uma informação positiva para a empresa, gerando assim relatórios com falsos positivos, e não sendo uma solução adequada para o contexto. Assim, o reconhecimento e tratamento do sarcasmo e/ou ironia são de extrema importância para a melhoria da performance de métodos, algoritmos e técnicas que compõem os sistemas utilizados para a classificação ou detecção de polaridade em mensagens com opinião, disponíveis em grande quantidade na Web (KALAMKAR; PHAKATKAR, 2013).

1.1 Motivação e Justificativa Atualmente, diversos estudos científicos na computação e em outras áreas do conhecimento, como por exemplo, a Linguística (CHEANG; PELL; 2011), tem voltando seus esforços para a caracterização, detecção e classificação de sarcasmo e ironia em diálogos informais compartilhados na Web. Os autores (BUSCHMEIER; CIMIANO; KLINGER, 2014), por exemplo, apresentaram uma análise dos recursos aplicados na detecção de ironia, em um conjunto de dados a partir de produtos avaliados em comentários no site da Amazon.com4 . Veale e Hao (2010), apontaram uma abordagem linguística para separar expressões irônicas de expressões figurativas não irônicas, comparando mais de um corpus 5 de smiles colhidos na Web. Em Reyes, Rosso e Veale (2013), o problema da detecção de ironia é abordado exclusivamente para mensagens compartilhas no Twitter, onde um conjunto de características textuais é usado para reconhecer ironia a nível linguístico. Já em Riloff et al. (2013), o foco está em identificar os tweets sarcásticos que expressam um sentimento positivo em direção a uma situação negativa. Um modelo para classificar os tweets sarcásticos, 4 5

www.amazon.com.br Coleção de dados não estruturados, utilizados para tarefa de análise de sentimentos ou mineração de texto.

18

utilizando um conjunto de recursos lexicais é apresentado em (BARBIERI; SAGGION; RONZANO, 2014). Um episódio recente que ilustra a importância de se estudar o sarcasmo nas mídias sociais ocorreu em 2014, quando a agência do Serviço Secreto dos Estados Unidos anunciou a contratação de desenvolvedores para a construção de um sistema detector de sarcasmo em redes sociais online, o objetivo foi automatizar a análise em tempo real do que é publicado nas redes sociais em especialmente no Twitter (BBC, 2014). Segundo Benevenuto, Ribeiro e Araújo (2015), a ampla aplicabilidade da análise de sentimentos em diversos segmentos tem levado muitas empresas e pesquisadores de áreas diferentes a empregarem tempo e dinheiro em soluções que realizem a extração de fatores afetivos (opiniões e sentimentos) nas mensagens compartilhadas pelo público nas rede socias, focando principalmente na identificação e classificação da orientação de um texto como positivo, negativo ou neutro. Entretanto, conforme Maynard e Greenwood (2014) e Gonçalves et al. (2013a), muitos métodos existentes na literatura, vem sendo empregados no desenvolvimento de aplicações sem um entendimento concreto da sua aplicabilidade em diferentes contextos, suas vantagens, limitações e eficiência comparado aos demais métodos, além de que vários deles jamais foram avaliados em um contexto que envolva sarcasmo e/ou ironia. E o mais importante, após uma análise minuciosa dos trabalhos em que são apresentados os métodos em tal contexto, percebe-se que poucos são os esforços no sentido de avaliar e comparar quantitativamente a performance desses métodos em um contexto que envolva mensagens com teor sarcástico ou irônico. Um esforço prévio no sentido de comparar métodos neste contexto foi conduzido recentemente em (GONÇALVES et al., 2015), no qual foi comparado o desempenho entre três métodos de classificação de sentimentos para detecção de sarcasmo e ironia no Twitter. No entanto diversos novos métodos baseados em técnicas diferentes de classificação de sentimento e/ou polaridade tem sido apresentados recentemente na literatura, bem como também frequentemente utilizados em pesquisas cientificas, acadêmicas ou em sistemas mais robustos de análise de sentimentos para redes sociais online. Neste contexto, levando-se em consideração o possível impacto que a presença do sarcasmo/ironia possa exercer sobre o desempenho dos métodos de análise de sentimentos, a presente pesquisa foi conduzida com o objetivo de avaliar e comparar diferentes métodos disponibilizados atualmente na literatura. Dessa maneira as contribuições desta monografia incluem, a identificação dentre diferentes métodos o que melhor e pior classifica mensagens com teor sarcástico/irônico para o escopo deste trabalho, bem como a criação de uma base de dados exclusiva, rotulada de acordo com a polaridade que cada tweet coletado expressa, a qual pode ser utilizada futuramente por outros trabalhos.

19

1.2 Objetivos Buscou-se com esta pesquisa avaliar e comparar em termos quantitativos o desempenho de diferentes métodos de análise de sentimentos em classificar a polaridade de mensagens com teor sarcástico retiradas do Twitter, bem como identificar o impacto da presença do sarcasmo sobre a performance destes métodos. Em particular avaliou-se 11 métodos e um algoritmo de classificação, comumente utilizados na identificação de polaridade de texto, são eles: SentiWordNet, PANAS-t, Sentistrength, EmoLex, NRC Hashtag, Opinion Lexicon, Pattern.en, AFINN, Vader, Sentiment140, Combined Method e Support Vector Machine (SVM). Os 11 primeiros métodos são implementados pelo sistema Web iFeel, e o SVM na ferramenta de mineração de dados Weka. Nesta pesquisa o sarcasmo e ironia são tratados com mesmo significado, voltado para a inversão da polaridade de uma mensagem, esta particularidade é melhor abordada na seção 2.6. De modo mais específico, para alcançar o objetivo principal do presente trabalho, foi necessário alcançar os seguintes objetivos adjacentes: • Pesquisar diferentes métodos de análise de sentimento existentes na literatura que realizem a classificação de polaridade; • Criar uma base de dados com mensagens classificadas manualmente de acordo com três orientações de polaridade: positivo, negativo ou neutro; • Realizar experimentos com os métodos de análise de sentimentos para a mesma base de dados em dois cenários diferentes: com a presença de hashtags de cunho sarcástico e sem a presença de hashtags de cunho sarcástico; • Calcular matrizes de confusão e métricas de avaliação de desempenho para os resultados das classificações de polaridade realizadas pelos métodos; • Fazer avaliação individual e comparativa entre o desempenho alcançado pelos diferentes métodos testados.

1.3 Estrutura do Trabalho Além desta introdução e das referências bibliográficas, este trabalho está organizado da seguinte maneira: Capítulo 2, apresenta a fundamentação teórica sobre Análise de Sentimentos; Figuras de Linguagem; Sarcasmo e Ironia. No capítulo 3 são descritos os métodos e técnicas aplicados no domínio do problema tratado por este trabalho. O Capítulo 4 exibe os trabalhos correlatos que nortearam a presente pesquisa, e suas respectivas

20

contribuições. No Capítulo 5 apresenta-se a metodologia empregada para alçar o objetivo principal. Os resultados verificados são apresentados no Capítulo 6. E por fim, o Capítulo 7 destaca as conclusões e trabalhos futuros.

21

2 Ambiente da Pesquisa

Neste capitulo é descrito o ambiente no qual a pesquisa se insere – Análise de Sentimentos, bem como a definição e relevância de Figuras de Linguagem para a AS, em especial o sarcasmo e a ironia, domínios deste trabalho.

2.1 Análise de Sentimentos Análise de sentimentos também conhecida como Mineração de Opinião (MO) é um processo que diferentemente das técnicas convencionais de mineração de texto (que buscam determinar sobre qual tópico ou tema um texto, frase ou mensagem tratada) tem por objetivo descobrir qual o sentimento expresso em uma mensagem retirada da Web, para poder classificá-la como uma opinião positiva, negativa ou neutra (BOIY; MOENS, 2008). Para Liu (2010a) a análise de sentimentos, é uma maneira de automatizar a análise de opiniões, sentimentos, avaliações, atitudes, afeições, visões, emoções e subjetividades expressas nas Web no formato de texto, por alguém sobre algo. Várias abordagens podem ser relacionadas à AS como: extração de opinião das Web principalmente das redes socias; classificação da opinião extraída quanto a sua polaridade (positiva, negativa ou neutra); comparação de mensagens quanto as opiniões que expressam, etc. Uma peculiaridade da Análise de Sentimentos, são os diferentes termos que se aplicam a tarefa, tais como: mineração ou extração de opinião, mineração de sentimentos, análise de sentimento ou análise de subjetividade, análise afetiva, análise de emoção, extração de avaliação e mineração de revisão (PANG; LEE, 2008). Desta forma é possível encontrar diversos trabalhos com diferentes termos, mas que abordam a mesma área de pesquisa. Apesar dos diversos termos existentes na literatura o mais utilizado comercialmente e academicamente é Análise de Sentimentos. Diferentemente dos demais autores, para Chen e Zimbra (2010) AS e MO não são termos intercambiáveis, de forma que a análise de sentimento é uma ferramenta utilizada em mineração de opinião com o objetivo de identificar sentimentos expressos pelo usuário em seus textos. Alguns estudiosos como Liu (2010a) identificam a tarefa de análise de sentimentos como o que se pode chamar de classificação de sentimentos ou classificação da polaridade dos sentimentos. Entretanto os pesquisadores de AS não se restringem apenas a classificação de sentimentos. Exemplos de estudos vinculados a área, mas que não são voltados a classificação de sentimentos ou polaridade são as pesquisas a cerca da detecção de subjetividade (identificar se uma determinada parte de um texto ou postagem em

22

canais da Web, possui conteúdo opinativo) conforme apresentado no trabalho de Pang e Lee (2004), além de outros como a melhoria da etapa de sumarização, ou a aplicação de AS a sistemas de respostas e perguntas (SOUZA, 2012). Para realizar a tarefa de classificação geralmente a análise de sentimentos utiliza técnicas fundamentadas nas áreas de Processamento de Linguagem Natural (PLN) e Mineração de Texto, para determinar se um dado texto está expressando algo positivo, negativo ou neutro. Isto porque estas áreas são pioneiras no tratamento de linguagem natural através de máquinas, em específico informações no formato de texto. PLN é um conjunto de técnicas computacionais para analisar e representar ocorrências naturais de texto em um ou mais níveis de análise linguística. Seu objetivo é alcançar um processamento de linguagem similar ao humano, de modo que sistemas computacionais sejam capazes de executar diferentes tipos de tarefas que envolvam a comunicação entre homem-máquina ou simplesmente fazendo processamento de textos de maneira útil e gerando valor para o usuário (LIDDY, 2003). Em suma, é uma área que lida com diversos elementos linguísticos e estruturas gramaticais, tais como, morfologia, sintática, semântica, entre outros. Algumas de suas técnicas podem ser utilizadas para auxiliar na etapa de pré-processamento de dados textuais (etapa de extrema relevância para a tarefa de análise de sentimentos), tal como a técnica de remoção de stopwords, segmentação de palavras, lematização, dentre outras (CARVALHO FILHO, 2014). Estas técnicas são aplicadas com o propósito de melhorar a estrutura e organização dos dados a serem analisados. A Mineração de Texto, também conhecida como mineração de dados de texto, é a área de extração de padrões, tendências ou conhecimentos interessantes e não-triviais em dados não estruturados, através de um conjunto de métodos usados para navegar, organizar e descobrir informação em grandes bases de dados textuais (BERRY; KOGAN, 2010). Realiza tarefas como: classificação, agrupamento, extração de informação, categorização e sumarização. Quando associada a análise de sentimento atualmente tem sido utilizada para o monitoramento de mídias sociais, afim de identificar o que se fala sobre sobre marcas das empresas, principalmente (PANG; LEE, 2008). É nas técnicas de PLN e mineração de texto que a análise de sentimentos se baseia para realizar suas tarefas. Além de avaliar comentários acerca de produtos e/ou serviços, a AS é aplicada também para outros fins, através de varias aplicações. Abaixo são apresentados algumas delas (SILVA, 2013): • Análise de Empresas na Bolsa de Valores: Nesse ramo tem se a ferramenta StockMood.com, que auxilia pequenos investidores na bolsa dos EUA. Ela identifica o humor do mercado em relação às empresas negociadas na bolsa de valores com base nas opiniões dos analistas, com o objetivo de identificar a tendência dos preços; • Análise de Produtos: Aplicações desse tipo tem o intuito de utilizar a opinião dos

23

usuários como um fator de decisão na hora da compra de um produto, ou para melhorar os produtos da empresa. Um exemplo desse tipo de aplicação é o Sentweet; • Análise de Política: Eleitorando é um software com o objetivo de identificar as opiniões dos usuários do Twitter e do Youtube a respeito dos políticos. Ele analisa as opiniões dos usuários e disponibiliza as informações através de gráficos; • Análise no Twitter: SocialView é uma das inúmeras ferramentas que usam a rede social Twitter para realizar análise de sentimento. Essa ferramenta foi lançada pela OpenAmplify com o propósito de realizar análise de uma determinada empresa ou produto na base do Twitter, o resultado é apresentado sumarizado ou através de gráficos. Existe também o Tweetfeel que é gratuito, usado para classificar as opiniões postadas no Twitter, ele apenas mostra a quantidade de posts positivos e negativos relacionados à pesquisa do usuário; • openSys: É um sistema de mineração de opinião para análise de conteúdo online que indica a orientação semântica dos textos, traçando um panorama de quanto as entidades pesquisadas estão sendo citadas positivamente ou negativamente. Tal sistema utiliza técnicas de Processamento de Linguagem Natural. • Tracksal: é um sistema Web que permite realizar a classificação de comentários de clientes em positivos, neutros e negativos, e também em temas mais falados, facilitando o entendimento das demandas dos clientes. 2.1.1 Terminologias e Conceitos Diante da recente popularidade desse tema, vários termos e conceitos vêm sendo descritos para tarefas associadas a detecção e classificação de sentimentos ou polaridade. A seguir são apresentados cada um deles, propostas em sua grande maioria por Liu (2012) e Benevenuto, Ribeiro e Araújo (2015): • Polaridade: representa o grau de positividade e negatividade de um texto. Normalmente esta é a saída para os métodos de análise de sentimentos que serão estudados neste trabalho. Alguns métodos tratam a polaridade como um resultado discreto binário (positivo ou negativo) ou ternário (positivo, negativo ou neutro). Por exemplo, a frase “Como você está lindo hoje” é positiva e a frase “Hoje a França acordou de luto” é negativa, já a frase “Hoje é 21 de Outubro” não possui polaridade e normalmente é classificada como neutra. • Sentimento/Emoção: índica um sentimento específico presente em uma mensagem (ex.: raiva, surpresa, felicidade, medo, desgosto, etc.). Alguns métodos de análise de sentimentos apresentam abordagens capazes de identificar qual sentimento em

24

específico uma sentença representa, como o dicionário léxico EmoLex desenvolvido por Mohammad e Turney (2013). • Entidade/Objeto: um objeto é uma entidade qualquer que esteja sendo analisada ou comentada por alguém, como por exemplo, um produto, uma pessoa, um evento, uma organização ou um serviço; • Característica/Aspecto: característica ou aspecto é um atributo, propriedade, parte ou componente de um objeto/entidade. Cada aspecto do objeto pode ser classificado como explícito ou implícito. Será explicito quando realmente aparecer na frase e implícito quando, apesar de não estar presente poder ser deduzido a partir do contexto do enunciado; • Titular da Opinião: é o indivíduo (organização ou pessoa) que possui a opinião em questão, ou seja, que expressa a opinião. Comumente em dados advindos de blogs, redes sociais e fóruns, o titular da opinião é o próprio autor da postagem. Mas em outras fontes como jornais online, a opinião expressa nem sempre vem do autor da postagem, visto que os jornais comumente apresentam opiniões de outras pessoas sobre determinado objeto; • Sentença Objetiva versus Subjetiva: sentenças objetivas são mensagens que apresentam para o leitor um fato, acontecimento ou informação concreta, sem expressar a opinião do autor, já as sentenças subjetivas expressam a visão pessoal do autor em relação a um determinado objeto. Algumas técnicas utilizam a análise da objetividade para estimar se compensa realizar a análise de sentimentos. Portanto entender se um conjunto de dados possui mais sentenças objetivas ou subjetivas pode influenciar diretamente os resultados; • Opinião: são afirmações subjetivas que refletem sentimentos ou percepções das pessoas sobre as entidades e eventos, por exemplo: “Está chovendo hoje, cariocas odeiam dias chuvosos” ou “ I didn’t like the results of elections in some cities ” (em português “Eu não gostei dos resultados das eleições em algumas cidades”). Uma opinião pode ser representada pela quíntupla (oj , fjk , ooijkl , hi , tl ), onde: – oj é um objeto; fjk uma característica do objeto oj ; ooijkl a polaridade da opinião sobre a característica fjk do objeto oj ; hi é o titular da opinião, e tl o momento em que a opinião foi expressa por hi . • Palavra Opinativa: são palavras normalmente utilizadas para expressar sentimentos positivos ou negativos. Geralmente as palavras opinativas são adjetivos ou advérbios, mas também podem ser substantivos ou verbos.

25

• Opinião direta versus Comparativa: é um tipo de opinião que faz referências sobre um aspecto ou objeto expressando diretamente um sentimento positivo ou negativo sobre ele. Uma opinião comparativa expressa uma preferência em relação a dois ou mais objetos baseado em algumas de suas características compartilhadas. É geralmente transmitido através da forma comparativa ou superlativa de um adjetivo ou advérbio, por exemplo, “The Iphone 6S is better than the Moto X ” (tradução em português “O iPhone 6S é melhor do que o Moto X”); • Sentenças opinativas: são sentenças que, independentemente da subjetividade ou objetividade, expressam opiniões, mesmo que implicitamente. Basicamente uma opinião é composta de pelo menos dois elementos: um “alvo” e um “sentimento” sobre o alvo. Um alvo pode ser uma entidade, aspecto de uma entidade, ou tópico, representando um produto, pessoa, organização, marca, evento, etc. Um sentimento representa uma atitude, opinião ou emoção que o autor tem a respeito do alvo (SANTOS, 2013). 2.1.2 Níveis da Análise de Sentimentos Segundo Liu (2012) as linhas de pesquisa na área de AS são divididas basicamente em três diferentes níveis de granularidade conforme a tarefa de detecção de sentimentos e/ou polaridade nos textos. Quanto menor a granularidade, mais específica é a classificação: • Nível de documento: neste nível realiza-se a classificação de um documento (texto completo) como positivo, negativo ou neutro. Assumindo que cada documento expressa uma única opinião sobre uma única entidade, como por exemplo, os comentários realizados nas páginas de avaliações de produtos. Este nível não é aplicável a documentos que fazem avaliação e comparação entre diferente entidades; • Nível de sentença/frase: classifica cada sentença de um documento, como positiva, negativa ou neutra. Neste nível também é possível diferenciar sentenças objetivas (que expressam fatos) de sentenças subjetivas (que expressam opinião, ou seja, um sentimento positivo ou negativo). Por exemplo: – Comprei uma placa de vídeo de 4 gb para meu notebook (sentença objetiva); – Comprei uma placa de vídeo ótima de 4 gb para meu notebook (sentença com opinião positiva); • Nível de entidade/aspecto: este nível descobre a opinião focando na entidade ou em um aspecto e não nas estruturas (documento, sentença ou orações). No exemplo “Amo meu computador Dell porque a qualidade de seu processador é excepcional.

26

Pena que a capacidade do seu HD seja pouca”, observa-se que existem três opiniões em 2 sentenças: sobre o computador Dell, e sobre dois de seus aspectos (HD e processador). Apenas a opinião sobre o HD é negativa, sendo que a opinião sobre o processador e o computador são positivas (CRESPO, 2015). 2.1.3 Etapas da Análise de Sentimentos Basicamente a arquitetura de um sistema completo de análise de sentimentos é algo complexo, por isso geralmente é dividido em grandes etapas. Para Angulakshmi e Chezian (2014), essas etapas compreendem: a recuperação dos dados, classificação e a sumarização (apresentação dos resultados). A Figura 2 ilustrada a relação entre as etapas. Figura 2 – Etapas comuns da Análise de Sentimentos.

Fonte: Adaptado de Angulakshmi e Chezian (2014).

A seguir são descritas cada uma das etapas que compõem a AS. 2.1.3.1 Recuperação dos Dados Esta é a tarefa de recuperação (extração) de textos, mensagens, posts ou comentários na Web, sobre determinado item de interesse, extraídos de alguma fonte como sites de notícias, redes sociais, plataformas de revisão de produtos/serviços, blogs, entre outros. Uma das ferramentas comumente utilizadas para essa tarefa são os web crawlers 1 . Este processo pode envolver também o discernimento entre texto subjetivo (opinião) ou objetivo (fato), objetivando melhorar os resultados da etapa seguinte. Isto é comum quando o nível de análise é de granularidade menor. O critério utilizado para determinar se 1

Software ou rotina automatizada que faz buscas pela web afim de criar índices de conteúdo (AGUIAR; RODRIGUEZ, 2014).

27

um conteúdo é subjetivo comumente consiste na identificação de palavras de sentimento (ex.: Eu recomendo este filme), ou de classes de palavras candidatas a expressar sentimento como adjetivos (BECKER; TUMITAN, 2013). Diversos trabalhos na literatura focam na resolução deste problema, como em Hatzivassiloglou e Wiebe (2000) que propuseram um método de identificação de subjetividade baseado na orientação dos adjetivos contidos em uma frase. Abdul-Mageed, Diab (2011), propuseram uma abordagem para pesquisar sentenças subjetivas na língua árabe. 2.1.3.2 Classificação A classificação ou análise de sentimento é a etapa mais importante do processo de AS, pois é nesta que se mede a polaridade ou orientação da opinião, através do uso de técnicas que identificam a polaridade de um texto, como negativo, positivo ou neutro. Para alcançar o objetivo da classificação de sentimentos existem diversas técnicas. Dentre estas as mais utilizadas na literatura são: algoritmos de aprendizagem de máquina ou técnicas baseadas em recursos léxicos. Usualmente a classificação consiste em um problema binário, ou seja, que classifica um texto em uma de duas classes: positivo ou negativo (BECKER; TUMITAN, 2013). No entanto uma outra classe também pode ser considerada, a “neutra”, está abrange textos sem uma tendência clara quanto a sua polaridade, ou simplesmente sem sentimento. A polaridade também pode ser expressa com diferentes graus de intensidade (ex.: muito positivo ou moderadamente positivo), ou em intervalos numéricos representando um grau de intensidade [-1 a 1] (TSYTSARAU; PALPANAS, 2012). Esta etapa comumente envolve também operações de pré-processamento e transformações específicas, tais como, reconhecimento de construtores sintáticos, reconhecimento de n-gramas, extração de features (características), eliminação de termos irrelevantes, transformação de mensagens em vetor de palavras, etc. O propósito é preparar a mensagem de acordo com as particularidades de cada técnica. Para Santos (2010) o pré-processamento constitui uma etapa integrada da análise de sentimentos, responsável pelo tratamento dos dados, através de tarefas como a correção de possíveis erros ortográficos, abreviaturas, gírias e ditos populares, tradução de comentários, além da remoção de termos irrelevantes através de listas de stopwords. As Stopwords podem ser traduzidas como “palavras vazias” e merecem particular atenção, pois são palavras muito comuns que aparecem frequentemente em textos e carregam pouco significado ou importância para a determinação do conteúdo (significado) do texto, servindo apenas como função sintática, ou seja, não tem o papel de palavra chave em uma sentença. Exemplos destas palavras são os artigos, preposições, pronomes e demais palavras utilizadas para auxiliar na construção sintática das orações como: as, e, os, de, para, com (em inglês “at, and, the, in, for, with”). Logo, com a eliminação dessas palavras

28

espera-se simplificar a ideia principal contida na mensagem para fins de classificação do texto contido na mensagem (DRAGUT et al., 2009). O tratamento de dados não estruturados ocorre basicamente da seguinte maneira: quando a linguagem escrita (isto é, as mensagens extraídas da Web) é armazenada em um arquivo de computador, ela é normalmente representada por meio de uma sequência ou string (do inglês, “cadeia”) de caracteres. Isto é, em um arquivo de texto padrão, as palavras são strings, as sentenças são strings e o próprio texto não passa, no fundo, de uma longa string. Os caracteres de uma string não precisam ser necessariamente alfanuméricos, podem incluir também caracteres especiais que representem os espaços, as tabulações ou os sinais de nova linha existentes no texto. Os métodos e técnicas de classificação de polaridade por sua vez, trabalham em cima dos dados transformados em strings. 2.1.3.3 Sumarização dos Resultados A classificação de sentimento realizada sobre as mensagens postadas na Web, precisam também ser sumarizadas de modo que as informações encontradas na montanha de dados em formato de texto sejamx facilmente compreendidas pelos usuários finais (e.g. empresas que monitoram redes sociais atrás da opinião de seus consumidores, ou partidos políticos que precisam saber como anda sua popularidade perante os eleitores). A sumarização pode ser disponibilizada de duas maneira: no formato de texto ou como gráficos. A Figura 3 apresenta um sistema online de análise de sentimento chamado Sentiment1402 , que permite a descoberta da porcentagem de opiniões positivas e negativas sobre um tópico qualquer. Este sistema realiza a recuperação dos dados no Twitter em tempo real, de acordo com o termo informado pelo usuário no campo de pesquisa. A busca pode ser por uma palavra ou frase. Para classificar a opinião o Sentiment140 se baseia em técnicas de aprendizado de máquina, através de três algoritmos de classificação: Naive Bayes, Maximum Entropy e Support Vector Machine. Após a classificação da polaridade da palavra ou mensagem, o sistema apresenta o resultado através de um gráfico que corresponde a quanto por cento dos tweets recuperados online são positivos e quantos são negativos. Este gráfico gerado como resultado consiste em uma das formas de sumarização mais utilizada nas aplicações de AS.

2

http://www.sentiment140.com/

29 Figura 3 – Sentiment140 ferramenta de Análise de Sentimentos.

Fonte: Print screen da tela de resultados do Sentiment140.

Como pode ser observado na Figura 3, para o termo “Obama”, o resultado da análise de sentimento foi mais positiva do que negativa. Sendo que 68% dos tweets que continham a palavra no corpo do tweet foram classificados como positivas e 32% como negativas.

2.2 Figuras de Linguagem Compondo parte integrada da linguagem escrita, figuras de linguagem (em inglês figurative language) são encontradas em literaturas orais primitivas, bem como na poesia, prosa polida e no discurso diário, rimas para cartões de felicitação, slogans publicitários, manchetes de jornais, legendas de cartoons, e os lemas de famílias e instituições que costumam usar figuras de linguagem, geralmente para fins de humor, mnemônicos3 ou para ser chamativo. “Figura de linguagem é qualquer desvio ou afastamento intencional da declaração literal ou uso comum que enfatiza, esclarece, ou embeleza tanto a língua escrita como a falada” (KALAMKAR; PHAKATKAR, 2013). Com o uso destas, um enunciado assume um significado diferente do que as palavras teriam isoladamente. Fuguras de linguagem podem ser classificadas pelas seguintes categorias: • Baseadas em semelhança: como Comparação, Metáfora, Personificação e Apóstrofe. • Baseadas em contraste: Antítese, Epigrama, Ironia e Sarcasmo. • Baseadas em Associação: Metonímia e Sinédoque. 3

Mnemônico é um conjunto de técnicas utilizadas para auxiliar o processo de memorização.

30

• Aquelas dependentes da construção: Clímax e Anticlímax. Segundo Kalamkar e Phakatkar (2013), um grande número de titulares de opinião nas redes sociais faz uso de figuras de linguagem enquanto escreverem suas avaliações ou comentários sobre algum produto ou pessoa, projetando assim sua própria personalidade nas mensagens. No entanto, figuras de linguagem podem representar desafios para ferramentas e sistemas que precisam trabalhar com a linguagem humana escrita, pois estes nem sempre conseguem diferenciar corretamente quando as palavras ou sentenças são escritas de maneira lúdica, de quando são escritas em seu sentido literal (i.e. significado original) acarretando assim, em um processamento incorreto das mensagens e/ou palavras. Este efeito é muito nítido quando se trata de sarcasmo e ironia, visto que estes se deleitam em usar linguagem afirmativa para transmitir crítica a algo ou alguém, ou seja, um enunciado escrito com conotação positiva (ou negativa) mas que no entanto, significa uma opinião ou sentimento negativo (ou positivo) sobre o alvo do sentimento. Metáfora, ironia e sarcasmo podem individualmente à sua maneira afetar um enunciado de formas complexas, e cada uma testa os limites das técnicas convencionais para análise de sentimentos de mensagens supostamente escritas de forma literal (GHOSH et al., 2015). Neste contexto, o sarcasmo e a ironia constituem um desafio relevante para as aplicações de análise de sentimentos, já que algumas das técnicas e métodos utilizados para classificação de sentimento ou de polaridade de texto, muitas vezes se mostram inadequados em face de significados figurativos indiretos. Dentre estas técnicas pode-se destacar os dicionários léxicos que podem ser afetados pela inversão da polaridade, por levarem em consideração as palavras individualmente, e não a mensagem completa HERNANDEZ FARIAS et al., 2015). O tópico as seguir traz definições para sarcasmo e ironia bem como suas diferenças e similaridades. Por serem mais empregadas nas mídias sociais e consequentemente mais estudadas em trabalhos da área, serão as categorias de figuras de linguagem estudadas nesta pesquisa. 2.2.1 Sarcasmo e Ironia Caracteristicamente, mas não exclusivamente, o sarcasmo e a ironia ocorrem com frequência em conteúdos gerados pelos internautas em blogs, fóruns, microposts e redes sociais online como o Twitter, Facebook, Myspace e Youtube, especialmente na língua inglesa. Neste ambiente identificar automaticamente quando alguém está sendo sarcástico ou irônico é um desafio, visto que, a linguagem humana escrita envolve elementos complexos e de difícil compreensão pelas máquinas, pois como mencionado na seção anterior computadores não processam com precisão mensagens e palavras de acordo com o contexto em que foram escritas (RILOFF et al., 2013).

31

De acordo com o dicionário inglês NTC’s American English (SPEARS; GROUP, 1998, tradução nossa), sarcasmo é a “atividade de dizer ou escrever o oposto do que você quer dizer, ou falar de uma forma com o objetivo de fazer alguém se sentir estúpido ou mostrar-lhe que você está com raiva”4 . Geralmente, no sarcasmo há o uso de instrumentos linguísticos indiretos para a ridicularização ou zombaria, muitas vezes considerados grosseiros e ofensivos, sendo utilizados para fins destrutivos e manipulados de forma hipócrita e com falsa polidez. Um exemplo de sarcasmo pode ser visto no tweet “This is my brilliant son, who failed out of college #sarcasm“ (a tradução em português seria “Este é meu filho brilhante, que não conseguiu sair da faculdade #sarcasmo”), em que é encontrado um sentimento de agradecimento com o surgimento de um contratempo negativo em um diálogo de desaprovação. A ironia por sua vez é “uma forma de humor em que você usa palavras para expressar o oposto do que as palavras realmente significam”5 (SPEARS; GROUP, 1998, tradução nossa). Pode ser considerada como uma discordância entre o que se diz e o que se sente, ou do que se espera e do que realmente ocorre (SINGH, 2012). Esse tipo de mensagem geralmente vêm acompanhada de um tom de brincadeira e possui menor peso ofensivo do que o sarcasmo. Por exemplo, “I loved my iPhone 6s! #irony”, (“Eu amei meu iPhone 6s! #ironia“), nesta postagem em tom engraçado o usuário demonstra sua desaprovação para com o aparelho celular, levando-se em consideração os problemas que o modelo apresentou durante seu lançamento. Na visão de Conz (2010), o sarcasmo e a ironia possuem uma ligação íntima, pois ambos tendem a ser usados para se fazer um enunciado que possua um sentido emocional. Frequentemente as pessoas dizem que algo é irônico quando na realidade é sarcástico e vice-versa. No entanto, na realidade sarcasmo é um conceito que se utiliza de ironia. Na maioria dos casos, a sutil diferença entre ambos é que, o sarcasmo tem o intuito mordaz quase cruel, muitas vezes ferindo a sensibilidade da pessoa que o recebe, enquanto a ironia é mais educada e sutil. Tradicionalmente a distinção entre ambos é de que, sarcasmo é uma ironia de forma mais explicita. Na atualidade, principalmente nas redes sociais, o sarcasmo e ironia são geralmente utilizados em declarações nas quais as pessoas ”dizem o contrário da verdade, ou o oposto de seus verdadeiros sentimentos, a fim de serem engraçados, para enfatizar um determinado ponto ou zombar de algo ou alguém“ (MAYNARD; GREENWOOD, 2014) Para Gonçalves et al. (2015), uma das principais dificuldades para a tarefa de identificação ou classificação de mensagens sarcásticas ou irônicas da Web, é a falta de acordo entre a maioria dos pesquisadores (sociólogos, psicólogos, cientistas da computação, etc.) 4

5

“The activity of saying or writing the opposite of what you mean, or of speaking in a way intended to make someone else feel stupid or show them that you are angry”. “A form of humour in which you use words to expressthe opposite of what the words really mean”.

32

em como definir ou diferenciar sarcasmo de ironia. Enquanto diversos trabalhos sugerem que sarcasmo e ironia são termos associados a um mesmo fenômeno linguístico (CONZ, 2010; INGLE et al., 2014; MAYNARD; GREENWOOD, 2014), outros pesquisadores como Singh (2012) sustentam que estes fenômenos se diferem. Portanto, considerando que a base de dados utilizada no presente trabalho possui mensagens (tweets) de usuários que não diferenciam sarcasmo de ironia, esta pesquisa assim como em Maynard e Greenwood (2014) e Ingle et al. (2014), define uma declaração sarcástica e/ou irônica como ”aquela onde o significado oposto da sentença é intencional“, porque este é o uso dominante deste trabalho e também o que tende a influenciar/impactar a polaridade do sentimento expresso nas mensagens. Por exemplo, ” I love walking to work in the rain#sarcasm #irony“ ( tradução em português ”Eu adoro ir caminhado para o trabalho na chuva #sarcasmo #ironia“), seria interpretado como uma mensagem de polaridade negativa em seu sentido sarcástico e irônico. Desta forma os termos sarcasmo e ironia foram tratados neste trabalho como similares, sendo que o termo utilizado no capítulo de Metodologia da Pesquisa (capítulo 5) foi sarcasmo. As definições de sarcasmo e ironia adotados nesta pesquisa são baseadas na língua inglesa. A escolha deste idioma deve-se ao fato de que a grande maioria das aplicações, métodos ou ferramentas de análise de sentimentos são desenvolvidos para avaliação de textos em inglês. Desta maneira a base de dados criada para esta pesquisa é composto unicamente de tweets escritos no referido idioma. Neste contexto que envolve sarcasmo e ironia na Web, na visão de Riloff et al., (2013), a análise de sentimentos pode ser facilmente enganada pela presença de palavras que tenham uma polaridade forte, mas que são utilizados como sarcasmo, o que significa que a polaridade oposta foi intencional. Por exemplo, o seguinte tweet que inclui as palavras ”yay“ (oba) e ”thrilled“ (entusiasmado) são palavras fortes, mas que na verdade expressam um sentimento negativo: ”yay! it’s a holiday weekend and I’m on call for work! couldn’t be more thrilled! #sarcasm.“ (”Oba! Um feriado prolongado e eu estou de plantão no trabalho! Não poderia estar mais entusiasmada! #sarcasmo“). Neste caso, a hashtag #sarcasm revela o sarcasmo pretendido, mas nem sempre os métodos utilizados para classificar sentimento têm o benefício de etiquetas de cunho sarcastico explícitas em uma mensagem. Hashtags são usualmente utilizadas como meta-informação 6 nos tweets, seja para expressar uma informação pragmática em forma textual, como ironia, ou avaliação (e.g. as hastags #not, #win, #fail), ou para classificá-los quanto ao tópico (e.g. #google, #android, etc.). As pesquisas na área de AS exploram o uso de hashtags como rótulos de sentimentos, isto é, os métodos classificam a orientação da polaridade das mensagens de acordo com as palavras-chave dentro das hashtags que possui. 6

Informação acerca da informação.

33

Abaixo são apresentados alguns exemplos de tweets com hashtags de cunho sarcástico: a. I love it when a thin layer of dirt covers the majority of my body. #sarcasm (tradução, ”Eu adoro quando uma fina camada de sujeira cobre a maior parte do meu corpo. #sarcasmo“); b. Absolutely adore it when my bus is late #sarcasm, (tradução, ”Com certeza adoro quando o meu ônibus está atrasado #sarcasmo“); c. You must have a quiet timeline #irony , (tradução, ”Você deve ter um cronograma de vida bem tranquilo #ironia“). Para entender melhor como o sarcasmo age, tomemos como exemplo a frase da opção ”a“ apresentada acima, na qual de acordo com o contexto da mensagem, provavelmente o autor estivesse em algum spa com o corpo coberto de algum tipo de lama medicinal. Então se levarmos em consideração a forma como a sentença foi escrita teremos uma mensagem que expressa uma opinião com a polaridade positiva, mas se consideramos o contexto em que ela foi escrita concluiremos que expressa uma opinião negativa, mesmo sem a presença das hashtags ”sarcasm“ ou ”irony“, isto é, hashtags de cunho sarcástico. E é justamente esta inversão de polaridade promovida pelo sarcasmo, que influência a classificação de polaridade realizada pelos métodos de análise de sentimentos, visto que estes nem sempre são capazes de entender com cem porcento de precisão o contexto de mensagens (mensagens, comentários ou posts) escritas de maneira lúdica através dos recursos linguísticos ”sarcasmo e ironia“. Apesar dos marcadores #sarcasm e #irony serem comumente os mais utilizados para indicar sarcasmo ou ironia em redes sociais como o Twitter, há também outros que desempenham o mesmo papel, tais como #notcool, #greatstart, #lying, #moresarcasm, #notsarcasm, #somuchsarcasm e #funny (MAYNARD; GREENWOOD, 2014). Para a identificação automática desses fenômenos linguísticos, alguns estudos sugerem a criação de métodos que busquem por fatores gramaticais comuns em frases sarcásticas/irônicas (e.g., interjeições e advérbios). Em Kreuz e Caucci (2007), foram criados padrões e fórmulas gramaticais para identificação do sarcasmo e ironia. Outra estratégia para identificação destas figuras de linguagem em mensagens postadas nas redes socias, é a técnica de filtragem por hashtags que denotem sarcasmo. Por exemplo, Gonzales-Ibáñes et al. (2011), criaram uma base de dados textual somente de mensagens contento sarcasmo aonde cada mensagem foi rótula com as hashtags #sarcasm e #sarcastic.

34

3 Métodos e Técnicas Utilizados na Análise de Sentimentos

Nesta seção são apresentados 17 dos principais métodos de análise de sentimentos existentes na literatura, bem como as técnicas de classificação nas quais eles se baseiam. Para isto, foi realizada uma vasta busca na literatura a fim de identificar diferentes métodos de AS já utilizados em outras pesquisas. Vale ressaltar que estes têm sido utilizados como métodos de prateleira (off-the shelf ), ou seja, na grande maioria dos casos o pesquisadores e demais usuários interessados em aplicar a análise de sentimentos para determinada finalidade escolhem algum ou alguns método (s) disponíveis e aceitos na literatura e aplicam ao fim pretendido. Na literatura há diversos métodos de análise de sentimentos, os quais se diferenciam através das técnicas de classificação que utilizam para determinar o sentimento ou polaridade expresso em uma mensagem. Dentre estas técnicas pode-se mencionar as abordagens baseadas em dicionários léxicos, aprendizagem de máquina, processamento de linguagem natural, escalas psicométricas, métodos híbridos (combinação de diferentes métodos) e técnicas avançadas de linguística e estatística. Na visão de Pang e Lee (2008), os métodos atuais de detecção e/ou classificação de sentimentos ou polaridade de mensagens postadas na Web, podem ser divididos basicamente em dois grupos: baseados em técnicas de dicionários léxicos e em aprendizado de máquina. Os métodos baseados em aprendizado de máquina comumente dependem de bases de dados rotuladas manualmente para treinar (ensinar) algoritmos denominados de classificadores. Por outro lado, os métodos léxicos utilizam listas e dicionários de palavras associadas a sentimentos específicos (BENEVENUTO; RIBEIRO; ARAÚJO, 2015). Dentre os 17 métodos de análise de sentimentos apresentados nesta seção 12 foram aplicados para experimentos realizados no presente trabalho.

3.1 Polaridade Baseada em Dicionário Léxico de Sentimentos Dicionário léxico de sentimentos, é uma especie de dicionário de palavras ou termos que ao invés de possuir como conteúdo o significado de cada palavra, possui em seu lugar um significado quantitativo (ou seja, pode ser um número entre -1 a 1, onde -1 é o valor sentimental mais negativo e 1 o valor mais positivo) ou mesmo valor qualitativo (i. e. positivo/negativo, feliz/triste, amor/ódio). Abordagens léxicas assumem que palavras individuais possuem o que é chamado de polaridade prévia, que é uma orientação semântica independente de contexto e que pode ser expressada com um valor numérico ou classe de polaridade (TABOADA et al., 2011). A AS baseada em técnicas léxicas, geralmente utiliza um grande dicionário de

35

termos ou palavras, onde cada termo ou palavra é previamente associado a um sentimento que possui determinada orientação de polaridade (i.e. cada termo possui rótulos positivos ou negativos, ou valores que indicam o grau de polaridade). O processo de classificação de sentimento ou de polaridade inicia quando o método recebe uma mensagem de entrada, em seguida realiza o processamento de linguagem natural (na maioria do casos se trata do tratamento dos dados), e por último efetua uma pesquisa no léxico para analisar e comparar cada termo da mensagem de entrada com os termos existentes no léxico, e o retorno é somado ao valor final da mensagem. Quando o valor resultante for maior que zero, o sentimento é classificado como positivo e quando for menor que zero, será negativo. (SOUZA, 2012). A Figura 4 mostra de maneira generalizada o funcionamento de um método de análise de sentimentos baseado em técnicas de dicionário léxico para classificação da polaridade de uma mensagem. Figura 4 – Léxico de sentimentos.

Fonte: Benevenuto, Ribeiro e Araújo (2015).

Comumente os métodos de AS utilizados na determinação da orientação semântica de palavras e termos (ou seja, a orientação da polaridade), são baseados em três tipos de abordagens: grandes corpora (dicionários com uma extensa quantidade de palavras e termos), baseados em recursos léxicos e os baseados em tradução ou multilíngue. Na primeira abordagem os métodos utilizam relações encontradas entre palavras e expressões presentes no seu dicionário léxico para determinar a polaridade da mensagem. Sua vantagem se aplica quando o método precisa classificar mensagens com palavras ou expressões compostas como: ”espírito de porco“, ou expressões com polaridade adquiridas por uso social (e.g. ”saco“). Dessa maneira, os resultados obtidos pelo método de AS dependerão da natureza do dicionário, já que em alguns casos existem diferentes sentidos para a mesma palavra ou expressão. Podendo assim, fazer com que os métodos léxicos não classifiquem corretamente o texto. A segunda abordagem trabalha com as relações semânticas existentes nos dicionários.

36

Um exemplo é o grande banco de dados em inglês WordNet 1 , utilizado pelos métodos para identificar a polaridade de substantivos, verbos, adjetivos e advérbios. Esse tipo de técnica oferece aos métodos a possibilidade de explorar relações semânticas, manualmente codificadas e avaliadas, existentes entre as palavras ou termos (SOUZA, 2012). Entretanto esses métodos só capturaram o significado literal da palavra ou termo, sendo incapaz de interpretar gírias ou expressões compostas. Os métodos de tradução também conhecidos como multilíngue, servem para detecção de sentimentos em mensagens em idiomas diferentes do inglês. Exploram dicionários léxicos já prontos para a criação de recursos para outras línguas alvo, ou seja, permitem extrair e analisar opiniões em textos independentemente do idioma no qual foram escritos, sua desvantagem é a complexidade em traduzir duas línguas diferentes. Neste caso, há tentativas de recriar técnicas supervisionadas a partir de novos dados rotulados ou mesmo traduzindo dicionários léxicos de métodos já existentes. Mas estas abordagens não são muito efetivas pois, é caro obter dados rotulados e desenvolver um novo método, assim como muitas palavras e gírias especificas de uma língua não estão contidas nos léxicos ou serão traduzidos erroneamente (BENEVENUTO; RIBEIRO; ARAÚJO, 2015). A desvantagem da técnica de dicionário léxico de sentimentos está no fato que, o conjunto de palavras utilizado nos dicionários léxicos deve ser cuidadosamente selecionado, tratando ainda a ambiguidade de uma mesma ”palavra“ em um mesmo tópico. Por exemplo, a palavra grande no contexto de avaliação de um celular, pode representar tanto uma opinião positiva, quanto uma opinião negativa, dessa maneira o dicionário selecionado deve ser ajustado para cada tópico Um outro impasse desta abordagem deve-se ao fato de que a grande maioria dos léxicos existentes na literatura são para a língua inglesa, tais como, o General Inquirer, OpinionFinder, SentiWordNet e o WordNetAffect, o que dificulta o desenvolvimento de sistemas que realizem a análise de sentimentos em textos escritos em outros idiomas como o português. A seguir apresenta-se um método de AS baseado em dicionário léxico. 3.1.1 SentiWordNet (SWN) O SentiWorldNet é uma base léxica em formato de arquivo de texto, utilizada para classificação de sentimentos. Foi desenvolvida através do banco de palavras da língua inglesa WordNet (MILLER, 1995), o qual é composto por substantivos, verbos, adjetivos e advérbios agrupados em conjuntos de sinônimos cognitivos (synsets), cada um expressando um conceito diferente. Os Synsets são interligados por meio de relações conceituais-semânticas e léxicas. O SWN é resultado da anotação automática de cada synsets do WordNet, no qual 1

https://wordnet.princeton.edu/

37

foi atribuído a cada palavra três valores numéricos, indicando o qual P (Positivo), N (Negativo) e O (Neutro) os termos contidos em cada sysnet são. Um ponto importante sobre este método é que, dependendo do contexto em que uma palavra é utilizada o seu valor é diferente. Por exemplo, a palavra “Love” pode ser entendida como substantivo (obtendo um valor objetivo = 0.375, positivo = 0.625 e negativo = 0) correspondendo aos seguinte sentidos: a) “uma forte emoção positiva de respeito e carinho”, ou ainda assumir o valor de verbo b) “ter uma grande afeição ou simpática” (objetivo = 0.5, positivo = 0.5 e negativo = 0). Cada valor gerado está dentro do intervalo [0.0,1.0] e a soma dos três valores associados é necessariamente 1. Isso significa que cada synset tem valor diferente de zero em pelo menos uma das categorias de polaridade. O método utilizado para desenvolver o SentiWordNet é uma adaptação dos métodos de classificação para synsets de polaridade Positiva-Negativa e Subjetiva-Objetiva de termos. O método depende da formação de um conjunto de três classificadores ternários, cada um deles decidindo se um synset é positivo, negativo ou objetivo. Cada classificador ternário difere dos outros no conjunto de treinamento e no instrumento de aprendizado usado para treiná-los, produzindo diferentes classificações dos synsets do WordNet. Os scores (valores) relacionados a opiniões de cada synset são determinados pela proporção dos classificadores ternários que tenham dado o correspondente rótulo a ele. Se todos os classificadores ternários derem o mesmo rótulo a um synset, esse terá o maior score, caso contrário, cada rótulo terá um score proporcional aos classificadores (ESULI e SEBASTIANI, 2006). Atualmente o SentiWordNet encontra-se na versão 3.0 e é disponibilizado em .

3.2 Polaridade Baseada em Aprendizado de Máquina Além dos dicionários léxicos uma outra técnica utiliza para classificação ou análise de polaridade de mensagens, é o Aprendizado de Máquina (do inglês Machine Learning). Consiste em uma subárea da Inteligência Artificial (IA), aplicada para elaboração de algoritmos e técnicas que permitem aos computadores serem capazes de aprender e evoluir seu desempenho em determinadas tarefas, através da experiência adquirida com a repetição de tais tarefas (MITCHEL, 2006). Simon (1983) também define o aprendizado de máquina (AM) como qualquer mudança e um sistema que melhore o seu desempenho de maneira automática em uma posterior repetição da mesma tarefa ou em uma outra tarefa utilizando a mesma base de dados. Segundo Becker e Tumitan (2013), o objetivo principal das técnicas de aprendizado de máquina é descobrir automaticamente regras gerais (i.e. padrões) em grandes bases de dados, que permitam encontrar informações implicitamente representadas. De modo geral, as técnicas e algoritmos de AM podem ser divididos em dois tipos: aprendizado

38

supervisionado e aprendizado não supervisionado. Para classificar a polaridade de mensagens ou comentários extraídos da Web, os algorítimos de AM precisam de treinamento prévio, para tal necessitam dispor de um conjunto de treino de atributos quantitativos rotulados previamente, representando informações ou características dos dados. Esses dados de treino são utilizados pelos algoritmos para criar regras e padrões que os possibilitem classificar corretamente a polaridade de novos dados (i.e. mensagens extraídas da Web) (SAUSEN, 2015). Os dados de treino utilizados na tarefa de classificação equivalem a um conjunto de instâncias caracterizadas por atributos. O rótulo é denominado atributo alvo, enquanto que os demais são designados como atributos discriminantes ou features. O atributo alvo na classificação é discreto2 . Em termos de pré-processamento, é necessário extrair de cada porção de texto analisada, as características relevantes para a tarefa de classificação e representá-las na forma de um vetor de palavras ou vetor de termos, como ilustra a Tabela 1. Os tipos de características comumente consideradas durante a classificação são (BECKER; TUMITAN, 2013): • Palavras de sentimento: somente as palavras de sentimento de uma base são utilizadas como feature. Não existe ordem entre as palavras, e estas são caracterizados de forma binária, isto é, presente ou ausente no texto. • Termos e sua frequência: são usados n-gramas (de sentimento ou não), junto com sua frequência absoluta ou relativa (e.g. TF-IDF), como peso dos termos. • Part-of-Speech (POS): as classes morfológicas das palavras também podem ser usadas, em complementação às palavras de sentimento ou termos. • Dependência sintática: as dependências sintáticas entre as palavras podem ser utilizadas, com o intuito de auxiliar na definição do alvo e fonte do sentimento. Basicamente neste tipo de técnica é necessário um conjunto de mensagens previamente classificadas (rotuladas), que é utilizado como base de treinamento para o algoritmo. E a partir do algoritmo já devidamente treinado, novas mensagens podem ser classificadas corretamente.

2

Em atributos discretos o número de valores possíveis é um número finito ou uma quantidade enumerável. Na classificação estes valores são de dois tipos - positivo ou negativo.

39

Tabela 1 – Exemplo de uma entrada de classificador com vetor binário de termos.

gosto

produto

ruim

grande

prático

facilidade

uso

polaridade

0

1

0

0

1

0

0

positivo

1

1

1

1

1

0

0

negativo

1

1

0

0

0

1

1

positivo

Fonte: Becker e Tumitan (2013).

3.2.1 Aprendizado Supervisionado e Não Supervisionado Os algoritmos baseados em aprendizado supervisionado utilizam-se de grande quantidade de dados, previamente rotulados de acordo com a classe ou categoria de polaridade que representam. A finalidade é descobrir a partir desses dados rotulados manualmente, padrões que os modelos gerados pelos algoritmos, devem seguir para classificar outros dados que não estejam rotulados. A estratégia de classificação supervisionada consiste basicamente em três passos: 1. Uma base de dados de treinamento com mensagens (tweets) que contenham opiniões expressas em formato de texto é obtida, de maneira que cada mensagem esteja rotulada com sua respectiva polaridade (positiva ou negativa); 2. Em seguida as mensagens contidas na base de treinamento são representadas apropriadamente em forma de atributos (colunas), de modo que cada palavra de uma mensagem possa ser tratada como um novo atributo. Assim um classificador3 é treinado para distinguir se uma mensagem contém uma opinião positiva ou negativa, mediante a análise da frequência ou presença de seus atributos na base de treinamento; 3. Por fim, o algoritmo é utilizado para a classificação de mensagens que não foram previamente rotuladas, isto é, que não foram utilizados na construção do classificador (treinamento do algoritmo). No aprendizado não supervisionado, não há a necessidade de dados previamente rotulados manualmente. Este tipo de algoritmo procura por padrões dentro dos dados, agrupando-os em categorias (e.g. dados positivos ou negativos). Esse tipo de aprendizagem não é muito utilizado para análise de sentimentos, já que as classes resultantes não podem ser previamente determinadas, não tendo assim um ponto de comparação entre o resulto do classificador e a real classe de polaridade a qual a mensagem pertence (SILVA, 2013). 3

Termo técnico para tratar os algoritmos de classificação.

40

Ainda segundo Becker e Tumitan (2013), uma das grandes limitações no uso de aprendizado supervisionado para definição de polaridade é a necessidade de dados rotulados para treino. O desempenho destes métodos é afetado não somente pela quantidade, mas igualmente pela qualidade dos dados de treino disponíveis. A seguir é apresentado um algoritmo baseado na técnica de aprendizado supervisionado. 3.2.1.1 Support Vector Machine (SVM) Support Vector Machine (SVM) ou Máquinas de Vetores de Suporte, consiste em um método de aprendizado de máquina supervisionado para classificação binária baseado na fundamentação teórica do aprendizado estatístico desenvolvido por Vapnik (1995). É um método implementado através de algoritmos que visualizam os dados de entrada como dois conjuntos de vetores em um espeço N-dimensional (N é o número de atributos do vetor), e tentam classificar corretamente novos dados (GONÇALVES, 2010). A ideia por trás do SVM é encontrar um hiperplano de separação ótima, ou seja, que dívida e diferencie melhor duas classes (categorias) de dados. Para isso, primeiramente o algoritmo precisa receber dados rotulados manualmente para treino (no caso da classificação de mensagens estes dados são os vetores de palavras ou de termos), e após realizar vários testes de treinamento inteligente com os dados rotulados, trata os mesmos como pontos no espaço de características e, então constrói hiperplanos capazes de fazer a separação entre as diferentes classes identificadas nos dados rotulados, de modo que os novos dados de entrada que não façam parte do conjunto de teste sejam classificados corretamente (HASTIE; TIBSHIRANI; FRIEDMAN, 2008). Para um melhor entendimento, suponhamos uma base de treino composta por apenas dois atributos e duas classes possíveis (positivo e negativo). Para este caso tem-se um plano bidimensional que de acordo com Groot (2012) é um plano ideal, pois permite a separação linear entre as duas classes, ou seja, seria possível traçar uma reta que separasse perfeitamente os elementos de uma classe da outra classe. Segundo Santos (2013) é possível traçar várias retas, entretanto a melhor reta é aquela que separa os dois grupos de elementos de forma a maximizar a distância entre a reta e eles.

41 Figura 5 – Hiperplano ótimo.

Fonte: Hamester (2013).

Na Figura 5, vê-se um exemplo no espaço bidimensional, no qual considera-se como dados de treinamento, duas classes de sentimento (positivo e negativo). A classe “positivo” é composta pelos pontos indicados por círculos (equivalem aos tweets positivos) e a classe “negativo’ pelos quadrados (tweets negativos). No entanto, entre os diversos hiperplanos possíveis, o algoritmo SVM escolherá o melhor hiperplano de separação, ou seja, o que melhor maximize a margem de separação, que equivale a duas vezes a distância entre o hiperplano e o ponto no espaço mais próximo a ele, como pode ser observado na Figura 5 (RUSSELL; NORVIG, 2009).

3.3 Outros Métodos e Técnicas Este tópico apresenta uma breve descrição dos diferentes métodos utilizados para classificação de sentimento ou polaridade de dados não estruturados. Estes métodos como mencionado na seção anterior, envolvem diferentes técnicas de classificação, tais como: a utilização de processamento de linguagem natural na atribuição de polaridade; o uso de Mecânica da Amazon Mechanical Turk Service (AMT) para criar conjuntos de dados marcados; a utilização de escalas psicométricas para identificar sentimentos através do humor, aprendizagem supervisionada e não supervisionada, métodos híbridos que combinam diferente técnicas de classificação, entre outros. 3.3.1 PANAS-t PANAS-t é um método léxico adaptado a partir de uma versão expandida de uma escala bastante conhecida na psicologia chamada de Positive and Negative Affect Schedule (WATSON; CLARK; TELLEGEN, 1985). Tem como objetivo detectar as flutuações de humor dos usuários no Twitter, através das postagens.

42

Consiste em uma escala psicométrica baseada em um largo dicionário léxico de palavras associadas a 11 categorias de humor: jovialidade, autoconfiança, serenidade, surpresa, medo, tristeza, culpa, hostilidade, timidez, fadiga e atenção. Foi desenvolvido para detectar qualquer acréscimo ou decréscimo dos níveis de sentimentos ao longo de um período. O quadro apresentado na Figura 7 sumariza os itens que compõem a escala PANAS-t (GONÇALVES; DORES; BENEVENUTO, 2012). Figura 6 – Termos que compõem a escala PANAS.

Fonte: Gonçalves, Dores e Benevenuto (2012).

3.3.2 EmoLex O EmoLex Mohammad e Turney (2013a), é um léxico criado a partir do Amazon Mechanical Turk Service4 , no qual pessoas foram pagas para classificar os termos. Cada entrada esta associada a 8 sentimentos básicos em inglês: joy, sadness, anger, etc. A base do EmoLex foi construída utilizando termos do Macquarie Thesaurus5 e palavras do General Inquirer6 e do Wordnet. As palavras que o compõem incluem alguns substantivos, verbos, adjetivos e advérbios mais frequentes da língua Inglesa. O método também conta, não apenas com a presença de unigramas mas também de vários bigramas7 , que são comumente utilizados em textos. Em seu funcionamento o EmoLex associa as palavras a sua polaridade e a sua emoção. Por exemplo, a palavra “aberração” é negativa e pertence a categoria de emoção desgosto. Assim é possível não identificar apenas a polaridade da palavra, mas também a sua emoção. 4 5 6 7

https://www.mturk.com/mturk/welcome https://www.macquariedictionary.com.au/ http://www.wjh.harvard.edu/∼inquirer/Home.html Refere-se à combinação de N termos consecutivos. Exemplo, considerando os gramas de tamanho 1 e 5 de palavras na frase: “Alguém entendeu o que eu disse? ”, obtém-se os seguintes gramas: “Alguém” um grama, “entendeu o” - dois gramas, “o que eu” – três gramas, “Alguém entendeu o que” - quatro gramas, “Alguém entendeu o que eu disse” – cinco gramas

43

De acordo com os desenvolvedores do método, apesar de algumas diferenças culturais, o léxico tem demonstrado que a maioria das normas afetivos são estáveis em todos os idiomas. Assim, versões do léxico são fornecidas em mais de vinte idiomas através da página . 3.3.3 NRC Hashtag Sentiment Lexicon O NRCHashtag (MOHAMMAD; KIRITCHENKO; ZHU, 2012), consiste em um dicionário de palavras com associações para sentimentos positivos e negativos, vinculadas a oito categorias de emoção: alegria, tristeza, raiva, medo, confiança, desgosto, antecipação e surpresa. O léxico é distribuído em três arquivos: unigramas-pmilexicon.txt (54,129 termos), bigramas-pmilexicon.txt (316,531 termos) e pares-pmilexicon.txt (480,010 termos). Para criação deste léxico milhares de tweets foram rotulados automaticamente com base na ocorrência de hashtags vinculadas a palavras positivas e negativas. A partir da rotulação automática verificou-se com contagens relativamente simples, quais palavras ocorriam com maior frequência em tweets positivos ou negativos. Este léxico resultou em um dicionário com mais de 800 mil tweets contendo hashtags que representam algum grau de positividade (ex.: #good, #joy #excellent) e negatividade (ex.: #anger, #disgust, #feart. #sadness). Alguns exemplos de tweets com hashtags presentes no dicionário são: • ”Me sentindo desprezado #tristeza“. • ”Minha memória incrível salva o dia novamente# alegria“. • ”Algum idiota roubou minha foto no tumblr #raiva“. O corpus utilizado para criar o referido léxico é disponibilizado em . 3.3.4 Opinion Lexicon Opinion Lexicon (HU; LIU, 2004) também conhecido como Sentiment Lexicon, é um banco de dados lexical disponibilizado publicamente, ele contém aproximadamente 6.800 palavras, sendo 2006 com orientação semântica positiva e 4783 com negativa. Foi inicialmente construído a partir do Wordnet, uma base de dados de palavras em inglês agrupadas em conjuntos de sinônimos (synsets). Por ser um léxico gerado automaticamente a partir de conteúdos extraídos de mídias sociais, ele contém palavras com erros ortográficos, o que conta como ponto positivo para a tarefa de análise de sentimentos, já que as mensagens postadas em redes sociais como o Twitter tendem a incluir grafias erradas e gírias da Internet (Liu, 2010b). Por

44

exemplo, no Opinion Lexicon pode-se encontrar ambas as palavras ”impressionante“ e ”impessionante“ na lista de palavras positivas e na lista negativa tanto ”horrível“ como ”orrível“. Essa característica o torna diferente dos demais léxicos pois está mais atualizado para lidar com expressões em redes sociais e reviws de produtos. 3.3.5 Opinion Finder Opinion Finder é uma aplicação de AS híbrida, que realiza análise de subjetividade, identificando automaticamente quando opiniões, sentimentos, especulações e outros estados pessoais estão presentes no texto. Ele visa identificar frases subjetivas para marcar vários aspectos da subjetividade nessas sentenças, incluindo a origem (titular) da opinião, e palavras que estão incluídas em frases que expressam sentimentos positivos ou negativos. Este métodos funciona em dois modos, lote e interativo. No modo lote o sistema leva uma lista de documentos a serem processadas. O modo interativo fornece uma interface que permite ao usuário consultar fontes de notícias online para os documentos a serem processados. Já para o processamento geral do documento, ele primeiramente executa um analisador chamado Sundance (RILOFF; PHILLIPS, 2005), que fornece etiquetas de classe semântica, identifica entidades nomeadas, e combina padrões de extração que correspondem a linguagem subjetiva. Em seguida, o OpenNLP 1.1.08 é utilizado para indexar e dividir a sentença em partes do discurso e taguear os dados. Para identificar palavras e frases utiliza um grande léxico baseado em linguagem subjetiva. E para analisar a subjetividade (se o texto é opinativo) o Opinion Finder executa quatro etapas diferentes: 1. a primeira é a utilização do algoritmo de classificação Naive Bayes, responsável por fazer a distinção entre sentenças subjetivas e objetivas. Ele é treinado usando frases subjetivas e objetivas, que são gerados automaticamente a partir de um grande corpus de dados não rotulados; 2. a segunda identifica eventos de fala (por exemplo, “disse”, “conforme”) e expressões com subjetiva direta (e.g., “medo”, “está feliz”); 3. A terceira combina um modelo de marcação de sequência chamado Conditional Random Field e um padrão de extração de aprendizagem, para identificar as fontes de eventos de fala e expressões subjetivas diretas; 4. A quarta e última, usa dois classificadores para identificar palavras contidas em frases que expressam sentimentos positivos ou negativos. O primeiro classificador se concentra em identificar expressões de sentimento, o segundo leva as expressões de sentimento e identifica aquelas que são positivas e negativas. 8

http://opennlp.sourceforge.net/

45

3.3.6 VADER Proposto por (HUTTO; GILBERT, 2014) VADER (Valence Aware Dictionary for Sentiment Reasoning ) é um método para análise de sentimentos desenvolvido para o contexto de mídias sociais. Para sua construção os autores criaram uma lista de palavras com base em dicionários já bem estabelecidos como LIWC, ANEW9 e GI10 . Em seguida, foram adicionadas numerosas construções léxicas presentes em microblogs tais como emoticons, acrônimos e gírias que expressam sentimentos, resultando em 9000 novos candidatos a serem incluídos no dicionário. Em seguida, verificou-se por meio do “conhecimento das multidões” (AMT) quais destas possuíam realmente aplicabilidade através de pontuação atribuída por Turkers variando de -4 (extremamente negativa) a 4 (extremamente positiva). Por fim, restaram 7000 construções léxicas no dicionário sendo que para a inclusão a média entre as avaliações obtidas com o AMT deveria ser diferente de 0 (neutro) e com desvio padrão entre as pontuações abaixo de um limiar estabelecido pelos autores. A palavra “okay” por exemplo possui uma pontuação de 0.9, enquanto “great” tem o valor 3.1 e “horrible” é -2.5 (BENEVENUTO; RIBEIRO; ARAÚJO, 2015). O VADER está disponível para download na página 3.3.7 Sentiment140-Lexicon Sentiment140-Lexicon ou simplesmente Sentiment140 (MOHAMMAD; KIRITCHENKO; ZHU, 2013b), é um dicionário léxico de palavras associadas a sentimentos positivos e negativos. O método foi criado com uma base de dados que consiste em cerca de 1,6 milhões de tweets rotulados como positivo ou negativo. Os tweets estão rotulados como unigramas, bigramas e pares de n-gramas (unigramasunigramas, unigramas-bigramas, bigramas-unigramas e bigramas-bi-gramas). Por exemplo, algumas das características que poderíamos ver na lista são: os unigramas (”@jeffery_donovan“ e ”xoxoxo“); os bigramas (”sim“ e ”elogios¡‘) e os pares (”feito—tivemos“), ”Eu—bebendo“, ”obrigado—adorável“, e ”bom dia—pode ser“). Cada recurso tem uma pontuação que reflete o quão positiva ou negativa é a mensagem. Se a palavra for vista em contextos mais positivos do que negativos, o resultado é positivo ou o contrário. A magnitude da pontuação é maior quando a distribuição é extremamente positiva, e a magnitude é mais próximo de zero quando a palavra aparece igualmente em ambos os contextos positivos e negativos. As palavras negativas são registadas com semelhantes valores negativos em vez de valores positivos. 9 10

https://github.com/damionjunk/sentimental http://www.cpp.edu/∼carich/gi/gi-1.3/doc/public/gi/Lexicon.html

46

O corpus utilizado para criar este método pode ser encontrado em . 3.3.8 LIWC Linguistic Inquiry and Word Count (LIWC) é uma ferramenta baseada em análise de texto, onde é feita a contagem de palavras relacionando seu significado de forma psicológica (TAUSCZIK; PENNEBAKER, 2010). Ela possui um dicionário léxico de aproximadamente 4500 palavras e raízes de palavras que fazem parte de oitenta categorias de sentimentos. Todas as palavras de raiva por exemplo, estão incluídas em pelo menos duas categorias que são emoções negativas e emoção geral. As categorias foram definidas e populadas com base em buscas em diversos dicionários como Thesaurus11 , questionários e listas feitas por pesquisadores. Para a correta definição, três juízes independentes julgaram cada uma das palavras e definiram em qual categoria ela deveria estar. O percentual de acordo entre os juízes ficou entre 93 e 100%. A construção do dicionário começou entre 1992 e 1994 e ainda sofre alterações e incrementos atualmente. A ferramenta encontra-se na versão LIWC 2007, e pode ser acessada na página . 3.3.9 SentiStrength O SentiStrength (THELWALL, 2013) é uma ferramenta para estimar a polaridade de textos pequenos em linguagem informal, para isto utiliza um dicionário léxico rotulado por humanos e é automaticamente aprimorado por aprendizado de máquina. Seu idioma de origem é o inglês, mas possui também implementações que permitem a classificação em outros idiomas. Utiliza também técnicas de classificação baseada em aprendizado de máquina que permitem seu aprimoramento automaticamente. Também possui um dicionário de termos baseado em uma versão otimizada para redes sociais do dicionário LIWC. Dessa forma é caraterizado como um método híbrido. Dada uma mensagem, a referida ferramenta classifica sua polaridade dentro de uma escala de [-5, 5], onde -5 representam as pontuações mais negativas e 5 as mais positivas. Encontra-se disponível para download em . 3.3.10 Emoticons Segundo Araújo et al., (2014), um dos métodos mais simples para detecção de polaridade, são os baseados nos emoticons que uma mensagem possa conter. Os emoticons tornaram-se populares nos últimos anos, e são baseados em uma sequência de caracteres tipográficos (e.g. :), :( , ˆ-ˆ, :3, e.e ’,’ ’-’ e :-), ou em representações faciais que podem 11

http://www.thesaurus.com/browse/lexicon

47

expressar sentimentos de felicidade ou tristeza. Embora exista uma ampla gama de variações que não representam expressões faciais como, por exemplo, o emoticon
Lihat lebih banyak...

Comentários

Copyright © 2017 DADOSPDF Inc.