Universidade Federal de Pernambuco – UFPE Centro de Informática – Cin UFPE Emanuel de Barros Albuquerque Ferreira Paulo Ricardo da Silva Soares Nelson Gutemberg Rocha da Silva Outubro de 2011 Motivação Contexto Análise de Sentimentos Baseado em Orientação Semântica Baseado em Aprendizagem de Máquina Exemplos Acadêmicos e Comerciais Conclusão Liu [1] Web 2.0 – Internet centrada no usuário – Participação das pessoas: • Grupos de discussão, fóruns, blogs.. – Conteúdo rico em opiniões – Influência nas decisões dos consumidores Explosão de dados – Estima-se que cerca de 75.000 blogs e 1,2 milhões de novas postagens são criados por dia Na hora das compras, você utiliza a internet para: 88,3% pesquisar preços de produtos e serviços 85,1% pesquisar opções de produtos e serviços 74,3% comprar produtos e serviços online 36,0% recomendar a outros internautas produtos e 32,8% serviços adquiridos fazer críticas sobre produtos e serviços • Em 2009, o percentual de recomendações era de 46% • Enquanto em 2010, este caiu para 36% dos entrevistados. • Não houve diferença significativa nas compras pela Internet • passou de 72% em 2009 para 74% em 2010. Obter o feedback dos clientes sobre a marca Poder pensar em novas estratégias Reverter uma opinião negativa sobre a empresa Conhecer seu público-alvo Criação do perfil @alobradesco no twitter para realizar atendimento/ouvidoria Foram criados perfis que: – Geram conteúdo – Visam gerar relacionamento com os clientes, potenciais clientes, etc... – Estão voltados para o público jovem Divulgações e citações positivas sobre a estratégia Citações positivas também sobre a agilidade do atendimento O perfil @bradesco – possuía mais de 2600 seguidores em maio de 2010 – atualmente possui mais de 13 mil seguidores Foi identificado um problema de relacionamento devido à fusão com o Banco Real A partir daí foi criada a seguinte estratégia: – Foi criado o perfil @santander_br, como perfil institucional – Foi criado o perfil @sacsantander_br para ouvidoria/atendimento/relacionamento Estratégia de monitoramento e respostas rápidas dos tweets de reclamação/críticas Monitorar todos os usuários que seguem o perfil @santander_br Divulgações e citações positivas sobre a estratégia Citações positivas também sobre a agilidade do atendimento O perfil @santander_br – possuía mais de 2000 seguidores em março de 2010 – atualmente possui mais de 25 mil seguidores Melhora no relacionamento com o cliente Reconhecimento da melhora por parte dos clientes Análise de Sentimentos (AS), também conhecido como Mineração de Opinião é uma área da computação bastante recente, que estuda a classificação das emoções e opiniões expressas em textos opinativos [LIU at al., 2009]. Tecnologia do Momento – Segundo o Gartner Group (*), AS está entre as 10 tecnologias estratégicas para as corporações no próximo ano [IPNEWS, 2010] (*) Empresa de Consultoria fundada em 1979 por Gideon Gartner – A técnica de AS, não só é bastante desafiadora, como também muito útil na prática. Análise de Sentimentos – Visa identificar textos opinativos, – classificar as opiniões identificadas como positivas, negativas ou neutras, e – disponibilizar o resultado da análise de forma clara para o usuário final. Desafio – identificar trechos dos textos que expressam sentimentos/opiniões – indicar se uma opinião é positiva (favorável) ou negativa (desfavorável) em relação ao item sendo abordado Elementos do texto – – – – Titular Objeto Opinião Tempo Felipe Araújo: (12/09/2008) Não gosteidas lentes dos óculos de sol da marca X. Tarefas de Análise de Sentimentos – Extração de elementos do texto – Classificação das opiniões – Apresentação dos resultados Abordagens – Orientação Semântica X Aprendizado de Máquina Orientação Semântica – Abordagem baseada na classificação positiva ou negativa Não requer treinamento Técnicas: – Corpus-based – Abordagem baseada em corpus (estatística) Determinar o sentimento das palavras através – Dictionary-based (baseada uso de dicionário) de padrões em de coocorrência . • WordNet • SentiWordNet Usa sinônimos, antônimos e hierarquias de dicionários com informações de sentimento. SentiWordNet Etapas da Análise de Sentimentos – – – – Análise de Subjetividade Extração de características Classificação de sentimentos Visualização e sumarização Análise da Subjetividade – Texto Informativo X Texto Opinativo – Sentenças Objetivas X Sentenças Subjetivas Abordagens: – Analisa a subjetividade das sentenças através das orientações dos adjetivos [HATZIVASSILOGLOU & WIEBE, 2000] – [WIEBE, 2004] [WILSON, 2004] [WIEBE, 2006] [OUNIS, 2006] Exemplos: – (1) Ontem comemoramos o aniversário do meu primo no Spettus. Comemos muita carne e sushi. – (2) A comida do Spettus é maravilhosa, e lá não é caro. – (3) A carne do Spettus é muito boa, mas o sushi não é um dos melhores. Objetivo: – Identificar os aspectos ou características, e as palavras opinativas – que estão ligados ao objeto a ser analisado. A extração de características é uma das tarefas mais difíceis de ser realizada [SIQUEIRA, 2010] – sendo menos propensa à automação – e, em muitos casos, é dependente do domínio Abordagem proposta por [MAGALHÃES, 2008] Etapas: 1. Dividir o texto em sentenças e palavras, para a aplicação de um Pos-Tagger; 2. Identificar os grupos de substantivos, grupos de verbos, expressões preposicionais e outras estruturas simples; 3. Identificar as entidades relevantes no texto • Tarefa específica para o domínio da aplicação 4. Merging, onde acontece a resolução de co-referências • ou resolução de anáforas A comida do Boi Preto é maravilhosa, e a sobremesa servida no Boi Preto não é cara. O sushi no Spettus é muito bom, é cada prato delicioso. Eu fui lá ontem comemorar o aniversário do meu primo. A comida do Boi Preto é maravilhosa, e a sobremesa servida no Boi Preto não é cara. O sushi no Spettus é muito bom, é cada prato delicioso. Eu fui lá ontem comemorar o aniversário do meu primo. A comida do Boi Preto é maravilhosa, e a sobremesa servida no Boi Preto não é cara. O sushi no Spettus é muito bom, é cada prato delicioso. Eu fui lá ontem comemorar o aniversário do meu primo. 1.Dividir o texto em sentenças e palavras, para a aplicação de um Pos-Tagger; 3. Identificar as entidades relevantes no texto; 2.Identificar os grupos de substantivos, grupos de verbos, expressões preposicionais e 4.Merging, onde acontece a resolução de co-referências; outras estruturas simples; Abordagem proposta por [HU, 2004] – Baseada em estatística e lingüística – Utiliza-se: • da classe gramatical das palavras no texto; – uma vez que a maioria das características são os substantivos das sentenças • e da frequência com que elas aparecem nas sentenças que tratam um determinado assunto. Abordagem Proposta por [Siqueira, 2010]: – Pré-processamento: • TreeTagger – Passo 1: Identificação dos substantivos mais freqüentes • 3% dos substantivos com a maior contagem – Passo 2: Identificação dos substantivos relevantes – Passo3: Mapeamento de Indicadores • Foi construído1.manualmente uma preços lista de indicadores e as "Esta loja tem excelentes!" características a que eles se referem 2. "Achei um produto com excelente desconto" – Passo 4:Remoção de Substantivos Não“Achei este hotel muito caro.” Relacionados • PMI-IR Abordagem Proposta por [Siqueira, 2010]: – Passo 1: Compra, Entrega, Loja, Preço, Produto; Passo 1+2: 1: Identificação substantivos mais freqüentes – Passo Atendimento,dos Compra, Dia, Entrega, Facilidade, Internet, Loja, Prazo, Preço, Produto, Página, Qualidade, Segurança, Variedade; – Passo 1+2+3 Atendimento, Compra, Dia, Embalagem, Entrega, Passo 2::Identificação dos substantivos relevantes Internet, Prazo, Preço, Produto, Promoção, Qualidade, Segurança, Usabilidade, Variedade; – Passo 1+2+3+4 : Atendimento,de Embalagem, Entrega, Prazo, Preço, Passo3: Mapeamento Indicadores Promoção,Qualidade, Segurança, Usabilidade, Variedade; – Esperada: Atendimento, Brindes, Embalagem, Entrega, Estoque, Frete, Prazo,Preço, Promoção, Qualidade, Segurança, Troca, Usabilidade, Variedade. Passo 4: Remoção de Substantivos Não-Relacionados É uma das principais fases da AS – é nessa etapa que ocorrerá a identificação da polaridade do texto, que é o principal objetivo da AS. Níveis de classificação – No nível de documento – No nível de sentença – No nível de aspecto • Classificação mais refinada • Trata informação mais detalhada Etapas: – – – – – Classifica os termos; Tratar Clausulas Negativas; Tratar Clausulas Adversativas; Tratar Sentenças Condicionais [LIU, 2009]; Detectar Ironias [CARVALHO et al., 2009]. Exemplos: – A comida do Boi Preto é maravilhosa, e a sobremesa servida no Boi Preto não é cara. O sushi no Spettus é muito bom, mas dizer que o camarão é bom é piada.” – A comida do Boi Preto é maravilhosa [+1], e a sobremesa servida no Boi Preto não é cara [-1]. O sushi no Spettus é muito bom [+1], mas dizer que o camarão é bom [+1] é piada.” – A comida do Boi “Preto é maravilhosa [+1], e a sobremesa servida no Boi Preto não é cara [+1]”. – “O sushi no Spettus é muito bom [+1], mas dizer que o camarão é bom [-1] é piada. É responsável por agregar e representar os resultados da AS Tipos [PANG & LEE, 2008]: – Sumarização de Documentos Simples – Sumarização de Multi-Documentos Pré-processamento de dados Extração de Características – Sintáticas (N-Grams, POS N-Grams) – Grande quantidade de características (>100.000) – Difícil interpretação dos dados Seleção de Características (Seleção de atributos) – Melhor compreensão dos dados – Menor tempo de treino e classificação Classificação – SVM – Classificador Bayesiano – Combinações Dados rotulado manualmente – Muito trabalhoso – Geralmente “enviesado” • Dependente da área de atuação. – E.g.: Será bom para o Brasil que Dilma vença as eleições. (PT vs. PMDB) Pré-processamento – – – – Remoção de repetições (goooooooooooooool = gol) Troca de risadas por algum token (e.g: LAUGH) Troca de Smiles por algum token (=D, :D, ;D, =)) Etc. Características Sintáticas – – – – – – – O dia está muito lindo. O, di, ia, es, st, tá, est, stá, ... N-Grams de caracteres N-Grams de palavras O dia, dia está, está muito, ... N-Grams de radicais de palavras ..., est, lind, ... POS N-Grams art, subs, verb, adve, adje, pont. Riqueza de Vocabulário Ocorrência de palavras funcionais Etc. Escolha das características mais relevantes Dezenas ou centenas de milhares de características Objetivos – Melhorar performance – Prover um processamento mais rápido do classificador – Fornecer um melhor entendimento dos dados Support Vector Machine – Aproximação de F : Rn x{1,1} – Função Kernel – Caracterísiticas • Binário (2 classes) • Versões extensíveis Classificador Bayesiano – Classificador estatístico – Regra de Bayes Meta Classificadores (com n classificadores) – Melhorar tempo de treino e classificação – Perda na precisão quanto à polaridade Boosting – Melhorar precisão de classificação – Boosting simples • 3 partições • 3 classificadores – AdaBoosting • n -classificadores • Seleção aleatória de exemplos com reposição [ABBASI, 2010]: precisão de 91% – Framework independente de linguagem – Destaque na seleção de características • EWGA: Entropy Weighted Genetic Agorithm – Textos com 2 classes de polaridade • Positivo vs. Negativo – Aplicação • Textos em inglês e Indiano • Textos de fóruns Orientação Semântica Aprendizagem de Máquina Não há necessidade de dados etiquetados para o treinamento. Necessidade de uma grande quantidade de dados etiquetados para treinamentos. Não requer treinamento Etapa de treinamento lenta. Multi-domínio e multi-idioma. Necessidade de conjunto de dados diferentes para cada domínio e idioma. Capacidade de identificação dos elementos do texto (melhor sumarização) Apenas classifica os o texto quanto sua polaridade Possível identificação do motivo da polaridade do texto Difícil identificação do motivo da polaridade do texto devido à grande quantidade de características Menor precisão de classificação da polaridade em relação a AM. Alta precisão de classificação da polaridade em comparação a OS StockMood.com – Análise de Empresas na Bolsa de Valores – Vetta Labs Sentweet – Análise de Um Produto – Vetta Labs Eleitorando – Análise de Políticos opSys – indica a orientação semântica dos artigos filtrados SocialQualis – Monitoramento em Blogs, Sites de notícias e Redes AS tornou-se possível com o advento da web 2.0 Empresas têm usado AS para melhorar sua imagem frente a seus clientes Usuários podem ser beneficiados pelo uso da AS em sistemas de e-commerce. Chefes do governo podem usar AS para ter feedback mais rápido da população Difícil extrair opiniões de um texto Difícil computar todas as nuances de uma língua e o sentimento do escritor – ironia, sarcasmo etc. Difícil tratar ambiguidade [LIU, 2010] LIU, Bing. Sentiment Analysis and Subjectivity. In. Handbook of Natural Language Processing. Segunda Edição. 2010. [ABBASI, 2010] ABBASI, Ahmed, et. al. Sentiment Analysis in Multiple Languages: Feature Selection for Opinion Classification in Web Forums. ACM Transactions on Information Systems, Vol. 26, No. 3, Artigo 12. 2008. [KOTSIANTIS, 2007] KOTSIANTIS, S. B. Supervised machine learning: A review of classification techniques. Informatica, vol. 31, no. 3, pp. 249-268. Slovene Society Informatika. 2007 [CORTES, 1995] CORTES, C.; VAPNIK, V. Support-vector networks. Machine Learning, 20:273- 297. 1995. [HEARST, 1998] HEARST, M. et. al. Trends and controversies – support vector machines. IEEE Intelligent Systems. 1998. [GUYON, 2003] GUYON, I.; ELISSEEFF, A. An introduction to variable and feature selection. JMLR, 3:1157–1182. 2003. [DANG, 2010] DANG, V.; CROFT, W. B. Feature Selection for Document Ranking using Best First Search and Coordinate Ascent, workshop apresentado no 33rd Annual ACM SIGIR Conference, Geneva, Switzerland, 1923. 2010. [KOHAVI, 1997] KOHAVI, R; JOHN, G. Wrappers for feature selection. Artificial Intelligence, 97(1-2):273–324. 1997. [CHOI, 2005] CHOI, Y. et. al. Identifying sources of opinions with conditional random fields and extraction patterns. Proceedings of the Human Language Technology Conference and the Conference on Empirical Methods in Natural Language Processing (HLT/EMNLP), 2005. [KIM, 2006] KIM, S. M.; HOVY, E. Automatic identification of pro and con reasons in online reviews. Proceedings of the COLING/ACL Main Conference Poster Sessions, pp. 483–490, 2006. [PANG, 2002] PANG, B. et. al. Thumbs up? Sentiment classification using machine learning techniques. Proceedings of the Conference on Empirical Methods in Natural Language Processing (EMNLP), pp. 79–86, 2002. [LIU at al., 2009] LIU, B.; NARAYNAN, R.; CHOUDHARY, A. Sentiment Analysis of Conditional Sentences. Proceedings of the 2009 Conference on Empirical Methods in Natural Language Processing. Singapore, v. 1, p. 180–189. 2009. [HATZIVASSILOGLOU & WIEBE, 2000] HATZIVASSILOGLOU, V.; WIEBE, J. M. Effects of adjective orientation and gradability on sentence subjectivity, Proceedings of the 18th conference on Computational linguistics. Saarbrücken-Germany, p.299305. Julho 2000. [WIEBE & MIHALCEA, 2006] WIEBE, J.; MIHALCEA, R. Word sense and subjectivity. Proceedings of the 21st International Conference on Computational Linguistics and the 44th annual meeting of the Association for Computational Linguistics. Sydney, Australia, p. 1065-1072, Julho 2006,. [WIEBE at al., 2004] WIEBE, J. M.; WILSON, T.; BELL, M.; MARTIN, M. Learning subjective language. Computational Linguistics. Cambridge - Massachusetts USA, v. 30, Issue 3, p. 277–308, September 2004. [WILSON at al., 2004] WILSON, T.; WIEBE J.; HWA, R. Just how mad are you? Finding strong and weak opinion clauses. AAAI'04 Proceedings of the 19th national conference on Artifical intelligence. San Jose – Califórnia – USA, p. 761– 767, 2004. [OUNIS at al., 2006] OUNIS, I.; RIJKE, M.; MACDONALD, C.; MISHNE, G.; SOBOROFF, I. Overview of the TREC-2006 blog track. In Proceedings of the 15th Text Retrieval Conference (TREC). NIST - USA, p.15-27. 2006. [SIQUEIRA, 2010] Siqueira, H. WhatMatter: Extração e visualização de características em opiniões sobre serviços. Dissertação (Mestrado em Ciência da Computaçao) - Centro de Informática/UFPE. Recife. 2010. [MAGALHÃES, 2008] MAGALHÃES, L. H. Uma análise de ferramentas para mineração de conteúdo de páginas web. Dissertação (Mestrado em Engenharia) COPPE/UFRJ. Rio de Janeiro. 2008. [HU & LIU, 2004] HU, M.; LIU, B. Mining and summarizing customer reviews. In KDD’04: Proceedings of the tenth ACM SIGKDD international conference on Knowledge discovery and data mining. New York – USA, p. 168–177. 2004. [CARVALHO at al., 2009] CARVALHO, P.; SARMENTO, L.;SILVA, M. J.; OLIVEIRA E. Clues for detecting irony in user-generated contents: oh...!! it's "so easy" ;). In TSA '09 Proceeding of the 1st international CIKM workshop on Topicsentiment analysis for mass opinion. New York - USA, p. 53-56. 2009. [PANG & LEE, 2008] PANG, B.; LEE, L. Opinion Mining and Sentiment Analysis. Foundations and Trends in Information Retrieval, v.2 n.1-2, p.1-135, Janeiro 2008. Universidade Federal de Pernambuco – UFPE Centro de Informática – Cin UFPE Emanuel Ferreira Paulo Ricardo da Silva Soares Nelson Gutemberg Rocha da Silva