Slide 1

Slide 1 text

Identificação de entidades mencionadas para análise de sentimentos em microblogs Jessica Caroline Alves Nunes Temporal Orientador: Evandro Eduardo Seron Ruiz Co-Orientador: Mateus Tarcinalli Machado

Slide 2

Slide 2 text

Sumário - Introdução - Fundamentação Teórica - Materiais - Métodos - Resultados - Conclusão 2

Slide 3

Slide 3 text

- Web 2.0 - Textos opinativos - Reviews - Redes sociais - Técnicas de NLP - Linguagens de Programação 3 Introdução

Slide 4

Slide 4 text

- Textos opinativos “Este celular é muito bom! Mas a bateria dura pouco =/” 4 Introdução

Slide 5

Slide 5 text

- Textos opinativos “Este celular é muito bom! Mas a bateria dura pouco =/” 5 Problema

Slide 6

Slide 6 text

Como - Recuperar um conjunto de dados - Implementar o algoritmo de FREQ Baseline - Dois analisadores sintáticos - Comparar os resultados obtidos 6

Slide 7

Slide 7 text

Fundamentação Teórica - Processamento de Linguagem Natural - Análise de Sentimentos Baseada em Aspectos - Termos de aspecto: Assunto - Rotuladores Morfológicos: Part-of-Speech Tagging 7

Slide 8

Slide 8 text

Análise de Sentimentos Baseada em Aspectos - Extração de termos de aspecto “Este celular é muito bom! Mas a bateria é ruim =/” - Substantivos 8 https://www.dicio.com.br/

Slide 9

Slide 9 text

Part-of-Speech Tagging - Classificação de estruturas textuais “Este celular é muito bom! Mas a bateria é ruim...” - Substantivos, adjetivos, pronomes, pontuação... 9

Slide 10

Slide 10 text

Part-of-Speech Tagging - Corpus Taggeados - MAC Morpho - Floresta 10

Slide 11

Slide 11 text

Part-of-Speech Tagging - Tipos de POS-taggers 11

Slide 12

Slide 12 text

Part-of-Speech Tagging - Tipos de POS-taggers - Expressão Regular 12

Slide 13

Slide 13 text

Part-of-Speech Tagging - Tipos de POS-taggers - Expressão Regular padroes = [(‘*endo’, ‘VG’), (‘*indo’, ‘VG’), (‘*ando’,, ‘VG’)] 13

Slide 14

Slide 14 text

Part-of-Speech Tagging - Tipos de POS-taggers - Expressão Regular padroes = [(‘*endo’, ‘VG’), (‘*indo’, ‘VG’), (‘*ando’,, ‘VG’)] “Estava comendo.” 14

Slide 15

Slide 15 text

Part-of-Speech Tagging - Tipos de POS-taggers - Expressão Regular padroes = [(‘*endo’, ‘VG’), (‘*indo’, ‘VG’), (‘*ando’,, ‘VG’)] “Estava comendo.” 15

Slide 16

Slide 16 text

Part-of-Speech Tagging - Tipos de POS-taggers - Expressão Regular padroes = [(‘*endo’, ‘VG’), (‘*indo’, ‘VG’), (‘*ando’,, ‘VG’)] “Estava comendo.” 16

Slide 17

Slide 17 text

Part-of-Speech Tagging - Tipos de POS-taggers - Expressão Regular padroes = [(‘*endo’, ‘VG’), (‘*indo’, ‘VG’), (‘*ando’,, ‘VG’)] “Estava comendo.” “Estou chegando aí.” 17

Slide 18

Slide 18 text

Part-of-Speech Tagging - Tipos de POS-taggers - Expressão Regular padroes = [(‘*endo’, ‘VG’), (‘*indo’, ‘VG’), (‘*ando’,, ‘VG’)] “Estava comendo.” “Estou chegando aí.” 18

Slide 19

Slide 19 text

Part-of-Speech Tagging - Tipos de POS-taggers - Expressão Regular padroes = [(‘*endo’, ‘VG’), (‘*indo’, ‘VG’), (‘*ando’,, ‘VG’)] “Estava comendo.” “Estou chegando aí.” 19 [(‘comendo’ , ‘VG’), (‘chegando’, ‘VG’)]

Slide 20

Slide 20 text

Part-of-Speech Tagging - Tipos de POS-taggers - Expressão Regular - Default Tagger 20

Slide 21

Slide 21 text

Part-of-Speech Tagging - Tipos de POS-taggers - Default “Jessica foi ao parque passear” 21

Slide 22

Slide 22 text

Part-of-Speech Tagging - Tipos de POS-taggers - Default “Jessica foi ao parque passear” 22

Slide 23

Slide 23 text

Part-of-Speech Tagging - Tipos de POS-taggers - Expressão Regular - Default - N-Grama 23

Slide 24

Slide 24 text

Part-of-Speech Tagging - Tipos de POS-taggers - N-Grama: Contexto 24

Slide 25

Slide 25 text

Part-of-Speech Tagging - Tipos de POS-taggers - N-Grama: Contexto “ Programe a sua viagem à Exposição Nacional do Zebu, que começa Dia 25” 25

Slide 26

Slide 26 text

Part-of-Speech Tagging - Tipos de POS-taggers - N-Grama: Contexto “ Programe a sua viagem à Exposição Nacional do Zebu, que começa dia 25” Unigrama 26

Slide 27

Slide 27 text

Part-of-Speech Tagging - Tipos de POS-taggers - N-Grama: Contexto 27

Slide 28

Slide 28 text

Part-of-Speech Tagging - Tipos de POS-taggers - N-Grama: Contexto “Programe a sua viagem à Exposição Nacional do Zebu, que começa Dia 25” 28

Slide 29

Slide 29 text

Part-of-Speech Tagging - Tipos de POS-taggers - Bigrama “(Programe a) sua viagem... 29

Slide 30

Slide 30 text

Part-of-Speech Tagging - Tipos de POS-taggers - Bigrama “Programe (a sua) viagem... 30

Slide 31

Slide 31 text

Part-of-Speech Tagging - Tipos de POS-taggers - Bigrama “Programe a (sua viagem)... 31

Slide 32

Slide 32 text

Part-of-Speech Tagging - Tipos de POS-taggers - Trigrama 32

Slide 33

Slide 33 text

Materiais - 1.3 milhões de tweets 33

Slide 34

Slide 34 text

Materiais - 1.3 milhões de tweets - 200 mil analizados: grupos de 50 mil 34

Slide 35

Slide 35 text

Materiais - Python - Natural Language ToolKit: NLTK - Linux 35

Slide 36

Slide 36 text

Métodos

Slide 37

Slide 37 text

FREQ Baseline - Gerar a lista de aspectos e suas frequências 37

Slide 38

Slide 38 text

FREQ Baseline - Pré-processamento “mesmo no outono, casos de dengue em friburgo continuam aumentando: em uma semana surgiram 358 casos da doença... https://t.co/3lwrwahyp7” 38

Slide 39

Slide 39 text

FREQ Baseline - Pré-processamento - Treinamento POS-taggers 39

Slide 40

Slide 40 text

FREQ Baseline - Pré-processamento - Treinamento POS-taggers - MAC Morpho - FLoresta 40

Slide 41

Slide 41 text

FREQ Baseline - Pré-processamento - Treinamento POS-taggers - Implementação do método 41

Slide 42

Slide 42 text

FREQ Baseline - Pré-processamento - Treinamento POS-taggers - Implementação do método - Remoção de acentuação 42

Slide 43

Slide 43 text

Resultados

Slide 44

Slide 44 text

Validação - Anotação manual - Métricas: POS-tagging 44

Slide 45

Slide 45 text

Validação - Anotação manual - 200 tweets - Dois anotadores - Conjunto gold 45

Slide 46

Slide 46 text

Validação - Métricas 46

Slide 47

Slide 47 text

Validação - Métricas - Precisão 47

Slide 48

Slide 48 text

Validação - Métricas - Precisão - Revocação 48

Slide 49

Slide 49 text

Validação - Métricas - Precisão - Revocação - F-Score 49

Slide 50

Slide 50 text

Validação - Métricas - Precisão - Revocação - F-Score - Acurácia 50

Slide 51

Slide 51 text

Validação - Métricas - Precisão - Revocação - F-Score 51 Floresta MAC Morpho

Slide 52

Slide 52 text

Validação - Métricas - Precisão - Revocação - F-Score 52 Floresta MAC Morpho NLPnet

Slide 53

Slide 53 text

Termos 53

Slide 54

Slide 54 text

Termos 54

Slide 55

Slide 55 text

Termos 55

Slide 56

Slide 56 text

Conclusão - Recuperar um conjunto de dados - Twitter como fonte - Implementar o algoritmo de FREQ Baseline - Dois analisadores sintáticos - NLTK vs NLPnet - Comparar os resultados obtidos 56

Slide 57

Slide 57 text

Referências 57 BIRD, S. NLTK: the Natural Language Toolkit. In: ASSOCIATION FOR COMPUTATIONAL LINGUISTICS. Proceedings of the COLING/ACL on Interactive presentation sessions. [S.l.], 2006. p. 69–72. BIRD, S.; KLEIN, E.; LOPER, E. Natural language processing with Python. [S.l.]: O’Reilly Media, Inc., 2009. PAVLOPOULOS, J.; ANDROUTSOPOULOS, I. Aspect term extraction for sentiment analysis: New datasets, new evaluation measures and an improved unsupervised method. Proceedings of LASMEACL, p. 44–52, 2014.

Slide 58

Slide 58 text

Obrigada!