Mineração de Opiniões e Análise de Sentimentos
-
Upload
matheus-cardoso -
Category
Technology
-
view
789 -
download
0
description
Transcript of Mineração de Opiniões e Análise de Sentimentos
Mineração de opiniões e análise de
sentimentosPesquisa, desafios e aplicações
Quem vos fala?O Blogueiro nas (raríssimas) horas
vagas;O Acesse: blogdomaome.blogspot.com =D
O Jogador de poker às quintas-feiras;O Fanático por boa música, bons livros
e (muita) tecnologia!
Quem vos fala?O Sofredor Gosto de programação e
engenharia de software;O Trabalho como desenvolvedor de
software na Total Informática;
Quem vos fala?O Engenheiro de Computação pela
UEFS (2005.1);O SIECOMP 1 e 3 como palestrante
(Ergonomia) e 2 como ouvinte;
Quem vos fala?O Aluno regular do Mestrado em Ciências da
Computação pela UFBA/UEFS;O Orientador: Prof. Dr. Angelo LoulaO Co – orientador: Prof. Dr. Matheus Pires
O Minha área de pesquisa: Mineração de opiniões e análise de sentimentos e “outras cositas más”
Como eu vim parar aqui?
PROBLEMAS
614
AgendaO Introdução
O Por que saber a opinião de outras pessoas?
O HistóricoO Terminologias
O O problema de analisar sentimentosO Definições;O Tipos de opiniões;O Subjetividade e emoções;
AgendaO Intervalo para um pequeno lanche
AgendaO O que está envolvido em mineração
de opiniões e análise de sentimentos?O Document Sentiment ClassificationO Sentence Subjectivity and Sentiment
ClassificationO Aplicações;O Sessão final de perguntas;
Primeiro, as primeiras coisas:
AgendaO Introdução
O Por que saber a opinião de outras pessoas?
O HistóricoO Terminologias
O O problema de analisar sentimentosO Definições;O Tipos de opiniões;O Subjetividade e emoções;
Por que saber a opinião de outras pessoas?
O Em qual candidato votarO Qual carro comprarO Qual filme assistirO Qual livro comprarO Sobre a futura empresa a se
candidatar a uma vaga
O Tudo isso, muito antes da Web
Por que saber a opinião de outras pessoas?
O Com a Web, temosO Mais informações a serem
consultadas;O Opiniões especializadas e não
especializadas;
Por que saber a opinião de outras pessoas?
O Segundo uma pesquisa feita pelo grupo Kelsey [6] e por Horrigan [7]:O 81% dos usuários de internet já fizeram
alguma pesquisa online sobre algum produto;
O Entre 73% e 87% dos usuários dizem que uma crítica/análise/revisão influenciaram na compra de um produto;
O 20% a 99% dos consumidores estão dispostos a pagar mais por um produto 5 estrelas em vez de um 4 estrelas.
Por que saber a opinião de outras pessoas?
O Informações políticas;O Segundo Horrigan [8], 31% dos
americanos eram usuários de internet nas eleições de 2006;
O O mesmo Horrigan [7], relata que a maioria dos usuários tiveram positivas experiências na pesquisa em produtos e nas eleições.
AgendaO Introdução
O Por que saber a opinião de outras pessoas?
O HistóricoO Terminologias
O O problema de analisar sentimentosO Definições;O Tipos de opiniões;O Subjetividade e emoções;
Um breve históricoO 2001 foi o marco para as pesquisas;O Os principais fatores para o
aumento das pesquisas foram:O Advento de métodos de aprendizado
de máquinas;O Disponibilidade de datasets para o
treino/aprendizado dos algoritmos;O Oportunidades de mercado que a
área oferece;
Um breve histórico
AgendaO Introdução
O Por que saber a opinião de outras pessoas?
O HistóricoO Terminologias
O O problema de analisar sentimentosO Definições;O Tipos de opiniões;O Subjetividade e emoções;
TerminologiaO Como é um campo novo de estudo,
não há uma terminologia definidaO São diferentes os termos utilizados:
O Opinion MiningO Sentiment/Subjectivity AnalysisO Review MiningO Appraisal extraction O Affective Computing
OK, mas…… O QUE É MINERAÇÃO DE OPINIÃO?
O que é mineração de opinião?
O É o campo de estudo que analisa as opiniões, sentimentos, avaliações, atitudes e emoções de pessoas direcionadas a produtos, serviços, organizações, indivíduos, problemas, eventos, tópicos e seus atributos. [3]
O que é mineração de opinião?
O É o campo de estudo que analisa as opiniões de pessoas direcionadas a entidades.
O(s) problema(s) de analisar sentimentos
• Desafios e definições básicas;• Tipos de opiniões;• Subjetividade e emoções;
O(s) problema(s) de analisar sentimentos
• Desafios e definições básicas;• Tipos de opiniões;• Subjetividade e emoções;
Desafios básicosO Opiniões e sentimentos são
subjetivos;O Diferentes fontes e variados
formatos;
O 140 caracteres;O Linguagem informal, gírias e
emoticons;
Desafios básicos
SUP?
}:-):P
Desafios básicos
O que é uma opinião?
O que é uma opinião?
O Primeira definição:
O Uma opinião é uma composição de: um alvo
“g” e um sentimento “s”, positivo, negativo
ou neutro
O O = (g , s)
O Quem é “g” ou o alvo?
O "produtos, serviços, organizações, indivíduos,
problemas, eventos, tópicos e seus atributos"
Exemplo
Fragmento retirado de [3]
Exemplo
Fragmento retirado de [3]
• O alvo da opinião da sentença (2) é a Canon G12 e o sentimento é positivo;
• O alvo da opinião sentença (3) é a qualidade da imagem da Canon G12 e o sentimento é positivo;
Exemplo
Fragmento retirado de [1]
O que é uma opinião?
O Segunda definição:
O Uma opinião é uma composição de:
um alvo “g”, um sentimento “s”, um
titular da opinião “h” e o tempo “t” em
que a opinião foi expressa;
O O = (g, s) -> O = (g, s, h, t)
O Pode piorar, mas paremos por aqui!
Exemplo
Fragmento retirado de [3]
• O = (g, s, h, t)• (Canon G12, positivo, john_smith, sep-10-2011)• (Canon G12_picture_quality, positivo, john_smith,
sep-10-2011)• (Canon G12_batery_life, positivo, john_smith, sep-
10-2011)• (Canon G12_weigh, negativo, john_smith_wife,
sep-10-2011)
O(s) problema(s) de analisar sentimentos
• Desafios e definições básicas;• Tipos de opiniões;• Subjetividade e emoções;
Tipos de opiniõesO Regular ou comparativas;O Explícitas ou implícitas;
Tipos de opiniõesO Regular: uma opinião comum
O Direta: é uma opinião que expressa diretamente um sentimento a um alvoO “A qualidade da imagem é ótima”O “A direção do filme é muito boa”
Tipos de opiniõesO Regular: uma opinião comum
O Indireta: é uma opinião que expressa indiretamente um sentimento para um alvoO “Após a injeção, minhas pernas
começaram a doer”O “Assim que o serviço foi feito, o carro
começou a dar defeito”
O Boa parte da pesquisa realizada em mineração de opinião foca em opiniões DIRETAS!
Tipos de opiniões
Tipos de opiniõesO Opinião comparativa: expressa uma
relação de similaridade ou diferença entre dois ou mais alvos;
Opinião comparativa
“Coke tastes better than Pepsi”
Opinião comparativa
O iOS é o melhor SO mobile
Tipos de opiniãoO Opinião explícita é uma opinião
regular direta ou comparativa:
“Coke tastes better than Pepsi”
“A qualidade da imagem é ótima”
Tipos de opiniãoO Opinião implícita é uma opinião
regular indireta ou comparativa:
“O tempo de bateria do Nokia é maior que o do
Sansumg"
"O iOS é o melhor SO mobile”
O Boa parte da pesquisa realizada em mineração de opinião foca em opiniões EXPLÍCITAS!
Tipos de opiniões
Subjetividade e emoções
O SubjetividadeO Uma sentença subjetiva expressa
sentimentos pessoais, enquanto que uma sentença objetiva apresenta fatos;
O Por que saber se uma sentença é subjetiva ou objetiva?
Subjetividade e emoções
O EmoçõesO São sentimentos e pensamentos [3];O Emoções primárias: amor, alegria,
surpresa, raiva, tristeza, medo [2];O Cada emoção tem uma intensidade
diferente;O A força de um sentimento
identificado está diretamente relacionada a uma emoção;
O Como emoções podem ajudar?
Subjetividade e emoções: aplicação
Predição dos índices da bolsa Dow Jones com o sentimento geral do Twitter!
Subjetividade e emoções
Figura retirada de [9]
Subjetividade e emoções
Figura retirada de [9]
ResumindoO Vimos os desafios fundamentais da
área; O Vimos conceitos de opinião e
diferentes tipos;O Vimos também os conceitos de
subjetividade e emoções e porque são úteis;
O Mas é importante frisar:O Todos os conceitos da área ainda não
estão bem definidos;
Classificação de sentimentos em nível de documento
• Definições;• Problemas de domínio;• Problemas de idiomas;
Classificação de sentimentos em nível de documento
• Definições;• Problemas de domínio;• Problemas de idiomas;
Classificação de sentimentos em nível de documento é:
O Determinar o sentimento geral de um documento como positivo ou negativo;
O Esse documento pode ser um texto, uma postagem, um tweet, uma crítica de produto, dentre outros.
O Formalizando (e relembrando):O O = (g, s, h, t)O O = (GERAL, s, __, __)
O Mas…
HipóteseO O documento somente possui
opiniões direcionada para somente um alvo [3];
O É uma boa hipótese para:O Críticas de produtos e serviços;
O Não é uma boa hitótese para:O Forúns;O Blogs;
Classificação de sentimentos em nível de documento
O Não existe bala de prata!O Incontáveis abordagens para
classificar sentimentos; O Algumas técnicas recorrentes [3]:
O Parte do discurso (Part of speech – POS);
O Palavras e frase de sentimentos;
Parte do discussoO Adjetivos são importantes
indicadores de opiniões;O Advérbios são intensificadores de
adjetivos;
O “O iPhone tem um bom acabamento, mas a inovação da empresa está muito ruim. Mas ela não desistirá.”
Parte do discussoO Adjetivos são importantes
indicadores de opiniões;O Adverbios são intensificadores de
adjetivos;
O “O iPhone tem um bom acabamento, mas a inovação da empresa está muito ruim. Mas ela não desistirá.”
Adjetivos
Parte do discussoO Adjetivos são importantes
indicadores de opiniões;O Adverbios são intensificadores de
adjetivos;
O “O iPhone tem um bom acabamento, mas a inovação da empresa está muito ruim. Mas ela não desistirá.”
Sentença objetiva
Adjetivos
Advérbio
Palavras e frase de sentimentos
O Identificadas as sentenças com opiniões, utiliza-se um dicionário de sentimentos;
O “O iPhone tem um bom acabamento, mas a inovação da empresa está muito ruim. Mas ela não desistirá.”
Sentença objetiva
Adjetivos
Advérbio
Classificação de sentimentos em nível de documento
• Definições;• Problemas de domínio;• Problemas de idiomas;
Problemas de domínioO Análise de sentimentos é sensível
ao domínio estudado;O Exemplos de domínios:
O Livros;O Filmes;O Política;O etc.
Problemas de domínio
“Go read the book”Opinião positiva ou negativa?
Problemas de domínio
“Go read the book”Opinião positiva ou negativa?
Classificação de sentimentos em nível de documento
• Definições;• Problemas de domínio;• Problemas de idiomas;
Problemas de idiomasO Análise de sentimentos é sensível ao idioma
de estudo;O Analise a orientação semântica do seguinte
documento:O “Volvo has the best cars ever made”
O Agora, analise isso:
O Volvo possède les meilleures voitures jamais réalisés;
O 沃尔沃有史以来最好的车
ResumindoO Vimos do que se trata a análise de
sentimentos em nível de documentoO Vimos os principais problemas
envolvidos e algumas técnicas para solucioná-los;
ResumindoO Contudo, extrair opiniões e analisar
sentimentos de um documento inteiro possui falhas:O O sentimento geral não é detalhado;O Blogs e forúns não podem ser
analisados corretamente;
Classificação de sentimentos em nível de sentenças
• Subjetividade de sentenças;• Classificação de sentenças;• Sentenças condicionais;• Sarcasmo;• Problemas de idiomas.
Classificação de sentimentos em nível de sentenças
O Não há diferença fundamental entre este nível e o anterior;
O Problema (a ser resolvido):O Dada uma sentença, determinar se
esta expressa um sentimento positivo, negativo, neutro ou não expressa opinião [3];
O É importante saber se uma sentença é subjetiva ou não;
Classificação de sentimentos em nível de sentenças
• Subjetividade de sentenças;• Classificação de sentenças;• Sentenças condicionais;• Sarcasmo;• Problemas de idiomas.
Subjetividade de sentenças
O Classifica uma sentença em duas classes: subjetiva ou objetiva [4];O Sentença objetiva: expressa fatos;O Sentença subjetiva: expressa
opiniões;O Mas nem sempre é assim!
Subjetividade de sentenças
O Wiebe [4] classifica sentenças buscando a presença de pronomes, adjetivos, números cardinais, advérbios.
O “O iPhone tem um bom acabamento, mas a inovação da empresa é está muito ruim. Mas ela não desistirá.”
Lembrando: Não há bala de prata!
Sentença objetiva
Adjetivos
Advérbio
Classificação de sentimentos em nível de sentenças
• Subjetividade de sentenças;• Classificação de sentenças;• Sentenças condicionais;• Sarcasmo;• Problemas de idiomas.
Classificação de sentenças
O Hipótese: Uma sentença expressa um único sentimento para um único alvo;
Classificação de sentenças
O Hu e Liu [9] utilizaram um dicionário de sentimentos (Wordnet) para classficar sentenças;O Soma a pontuação semântica dos
sentimentosO +1 para um sentimento positivoO -1 para um sentimento negativo
Classificação de sentenças
O Para o exemplo anterior, temos:
O “O iPhone tem um bom acabamento, mas a inovação da empresa é está muito ruim. Mas ela não desistirá.”O +1 para “bom”;O -1 para “ruim”O Resultado: sentença neutra.
Classificação de sentenças
O Kim e Hovy [10, 11, 12] utilizaram uma abordagem similar a de Hu e Liu [9]:O Multiplica a pontuação semântica
dos sentimentosO +1 para um sentimento positivoO -1 para um sentimento negativo
Classificação de sentenças
O Para o exemplo anterior com a técnica de [10,11,12], temos:
O “O iPhone tem um bom acabamento, mas a inovação da empresa é está muito ruim. Mas ela não desistirá.”O +1 para “bom”;O -1 para “ruim”O Resultado: sentença negativa.
Classificação de sentimentos em nível de sentenças
• Subjetividade de sentenças;• Classificação de sentenças;• Sentenças condicionais;• Sarcasmo;• Problemas de idiomas.
Sentenças condicionaisO Um problema difícil!O Segundo Narayanan [5], não existe
bala de prata (ele quase disse nessas palavras)!
O Uma sentença condicional descreve uma implicação ou situação hipotética e suas consequências: causa e efeito [3];
O Exceto por [5], não há muitos trabalhos que tenham investigado esse problema.
Sentenças perguntas (bônus)
O Como identificar opiniões em perguntas?
O Exemplo:O “Alguém pode me dizer como
consertar esse lento celular Nokia? “O Até o presente momento da
pesquisa, não foram encontrados trabalhos nesse campo!
Classificação de sentimentos em nível de sentenças
• Subjetividade de sentenças;• Classificação de sentenças;• Sentenças condicionais;• Sarcasmo;• Problemas de idiomas.
SarcasmoO Você achou que sentenças
condicionais e sentenças-pergunta eram difíceis? O Sarcasmo é mais fácil ainda! ;)
O Poucos trabalhos na área;O Identificam sarcasmo, mas não
classificam sentimentos;
Classificação de sentimentos em nível de sentenças
• Subjetividade de sentenças;• Classificação de sentenças;• Sentenças condicionais;• Sarcasmo;• Problemas de idiomas.
Problemas de idiomasO Problema correlato ao de
classificação de sentimentos em nível de documento;O “Volvo has the best cars ever made”O 沃尔沃有史以来最好的车
Problemas de idiomasO Estratégias [3]:
O Traduzir sentenças de teste do idioma alvo para o idioma fonte e daí classifica-las;
Problemas de idiomasO Estratégias [3]:
O Traduzir sentenças de teste do idioma fonte para o idioma alvo e daí classifica-las;
Problemas de idiomasO Estratégias [3]:
O Traduzir um dicionário de sentimentos do idioma fonte para idioma alvo e construir um classificador novo;
ResumindoO Para classificar sentenças é preciso:
O Saber se são objetivas ou subjetivas;O Assumir que uma sentença tenha um
único sentimento para um único alvo;O Classificar o sentimento de uma
sentença como positivo, negativo, neutro ou sem opinião;
O Sentenças condicionais são difíceis. Sentenças-pergunta, mais ainda!
O E o sarcasmo então?
Mas e se me aparece isso?
O “Tente o Chrome, pois o Firefox vive travando”
Ou isso?O “Câmeras Leica tem boas lentes.
Ótimo obturador. Péssimos preços.”
Isso é assunto para outra história.
Aplicações
AplicaçõesO Sites de análises/críticas e
relacionados (Review-Related Websites)
O Subcomponente (Sub-Component Technology)
O Inteligência Empresarial e Governamental (Business and Government Intelligence)
Aplicações sobre sites de análises/críticas
O Pró-ativamente reunir informações sobreO Análises de produtosO Opiniões sobre candidatosO Problemas políticos
O Resumir (sumarize) análises de usuários sobre os tópicos acima (e outros mais) Positivo
NegativoNeutro
Aplicações em inteligência empresarial e governamental,
O “Por que os consumidores não estão comprando nosso laptop?”O Extração de opiniões de documentos
não estruturados (blogs, redes sociais)
O Predição de vendas [13]O Monitoramento de comunicação
hostil ou negativa [14]
Aplicações sobre diferentes domínios
O O que pensam os eleitores [15]O eRulemaking [16]O Blawgs [17]
Para brincar e conhecer
Ferramentas, apps, bibliotecas sobre mineração de opinião e análise de sentimentos
JavaO SentiStrength [18]O SentiWordNet [19]
O Não é em Java, mas tem uma classe pronta para aproximar sentimentos;
O LingPipe [20]
PythonO Natural Language Toolkit (NLTK) [21]O Pattern [22]
Serviços WebO Sentiment140 [23]O TweetFeel [24]O ChatterBox [25]O Topsy [26]O Opinion Crawl [27]
Android / iOS / Windows Phone
O Stocks Sentiment [28];O Triposo [29];O Twelect [30]; O Apptrace [31];
ReferênciasO [1] B. Pang, “Opinion Mining and Sentiment Analysis,” Foundations and Trends® in
Information Retrieval, vol. 1, no. 2, pp. 91–231, 2008.O [2] Parrott, W. Gerrod. Emotions insocial psychology: Essentialreadings2001: Psychology
Pr.O [3] Liu, Bing. Sentiment Analysis and Subjectivity, in Handbook of Natural Language
Processing, Second Edition, N. Indurkhya and F.J. Damerau, Editors. 2010O [4] Wiebe, Janyce, Rebecca F. Bruce, and Thomas P. O'Hara. Development and use of a
gold-standard data set for subjectivity classifications. in Proceedings of the Association for Computational Linguistics (ACL-1999). 1999
O [5] Narayanan, Ramanathan, Bing Liu, and Alok Choudhary. Sentiment analysis of conditional sentences. in Proceedings of Conference on Empirical Methods in Natural Language Processing (EMNLP-2009). 2009
O [6] comScore/the Kelsey group, “Online consumer-generated reviews have sig- nificant impact on offline purchase behavior,” Press Release, http://www. comscore.com/press/release.asp?press=1928, November 2007
O [7] J. A. Horrigan, “Online shopping,” Pew Internet & American Life Project Report, 2008.O [8] L. Rainie and J. Horrigan, “Election 2006 online,” Pew Internet & American Life Project
Report, January 2007.
ReferênciasO [9] Hu, Minqing and Bing Liu. Mining and summarizing customer reviews. in
Proceedings of ACM SIGKDD International Conference on Knowledge Discovery and Data Mining (KDD-2004). 2004.
O [10] Kim, Soo-Min and Eduard Hovy. Crystal: Analyzing predictive opinions on the web. in Proceedings of the Joint Conference on Empirical Methods in Natural Language Processing and Computational Natural Language Learning (EMNLP/CoNLL-2007).
O [11] 2007.150. Kim, Soo-Min and Eduard Hovy. Determining the sentiment of opinions. in Proceedings ofInterntional Conference on Computational Linguistics (COLING-2004).
O [12] 2004.151. Kim, Soo-Min and Eduard Hovy. Extracting opinions, opinion holders, and topics expressed in online news media text. in Proceedings of the Conference on Empirical Methods in Natural Language Processing (EMNLP-2006). 2006.
O [13] G. Mishne and N. Glance, “Predicting movie sales from blogger sentiment,” in AAAI Symposium on Computational Approaches to Analysing Weblogs (AAAI-CAAW), pp. 155–158, 2006.
O [14] A. Abbasi, “Affect intensity analysis of dark web forums,” in Proceedings of Intelligence and Security Informatics (ISI), pp. 282–288, 2007.
O [15] M. Efron, “Cultural orientation: Classifying subjective documents by cocia- tion [sic] analysis,” in Proceedings of the AAAI Fall Symposium on Style and Meaning in Language, Art, Music, and Design, pp. 41–48, 2004.
ReferênciasO [16] C. Cardie, C. Farina, T. Bruce, and E. Wagner, “Using natural language
processing to improve eRulemaking,” in Proceedings of Digital Government Research
O [17] J. G. Conrad and F. Schilder, “Opinion mining in legal blogs,” in Proceedings of the International Conference on Artificial Intelligence and Law (ICAIL), pp. 231–236, New York, NY, USA: ACM, 2007.
O [18] http://sentistrength.wlv.ac.uk/O [19] http://sentiwordnet.isti.cnr.it/O [20] http://alias-i.com/lingpipe/demos/tutorial/sentiment/read-me.htmlO [21] http://nltk.org/O [22] http://www.clips.ua.ac.be/patternO [23] http://www.sentiment140.com/O [24] http://www.tweetfeel.com/O [25] http://chatterbox.co/O [26] http://topsy.com/O [27] http://www.opinioncrawl.com/O [28]
https://play.google.com/store/apps/details?id=com.ravisekhar.kopparthi.stocksntmnt&hl=pt_BR
O [29] http://www.triposo.com/O [30 http://www.twelect.com/O [31] http://www.apptrace.com/