1 mixture model for named entities alunos: carlos eduardo portela susana r. s. velloso

27
1 Mixture Model For Named Entities Alunos: Carlos Eduardo Portela Susana R. S. Velloso

Upload: micaela-mendonca-anjos

Post on 07-Apr-2016

221 views

Category:

Documents


1 download

TRANSCRIPT

Page 1: 1 Mixture Model For Named Entities Alunos: Carlos Eduardo Portela Susana R. S. Velloso

1

Mixture Model For Named Entities

Alunos: Carlos Eduardo PortelaSusana R. S. Velloso

Page 2: 1 Mixture Model For Named Entities Alunos: Carlos Eduardo Portela Susana R. S. Velloso

2

Motivação

Comparar os resultados obtidos com as outras técnicas (TBL, SVM, HMM) de Extração de Entidades Nomeadas do Português.

Page 3: 1 Mixture Model For Named Entities Alunos: Carlos Eduardo Portela Susana R. S. Velloso

3

Metodologia O Corpus utilizado será o LearnNmd06.

Os indicadores utilizados serão:

Precisão: Total de relações corretamente classificadas / Total de relações classificadas

Abrangência: Total de relações corretamente classificadas / Total de relações existentes

F1: Média harmônica entre a precisão e a abrangência

Page 4: 1 Mixture Model For Named Entities Alunos: Carlos Eduardo Portela Susana R. S. Velloso

4

Plano inicial

Análise do Corpus Algoritmo para geração do modelo Adicionar amostras não classificadas Comparação dos valores calculados com

uma base já classificada para encontrar os parâmetros: precisão, abrangência e F1.

Page 5: 1 Mixture Model For Named Entities Alunos: Carlos Eduardo Portela Susana R. S. Velloso

5

Documento X Token Aplicação natural do modelo de misturas

Objetivo: classificação do documento Documentos Palavras que ocorrem nos documentos (Léxico) Contagem de ocorrência de cada palavra em cada

documento Caso de Entidades Nomeadas

Objetivo: classificação do Token Documentos contendo diversos tokens (Palavras) Token inserido em um texto

Page 6: 1 Mixture Model For Named Entities Alunos: Carlos Eduardo Portela Susana R. S. Velloso

6

Solução adotada

Documentos divididos em sentençasCada sentença tem diversas palavras e

apenas uma entidade nomeada (NPROP)

A classificação da sentença será igual a classificação deste token

Page 7: 1 Mixture Model For Named Entities Alunos: Carlos Eduardo Portela Susana R. S. Velloso

7

Formato inicial do Corpus[features = word, pos, np, ne]

#0 - 0:0De_PREP_O_Oseus_PROADJ_I_O111_NUM_I_Omunicípios_N_I_O,_,_O_O94_NUM_O_Osão_VAUX_O_Oconsiderados_PCP_O_Ode_PREP_O_O"_"_O_Oalta_ADJ_I_Omarginalização_N_I_O"_"_O_O,_,_O_Ode=acordo=com_PREP_O_Oum_ART_I_Oinforme_N_I_Ode_PREP_I_Oo_ART_I_OConselho=Nacional=da=População_NPROP_I_COM._._O_O

#1 - 1:1A_ART_I_Oprogramação_N_I_Ode_PREP_I_Ovendas_N_I_Ofoi_VAUX_O_Oaberta_PCP_O_Oem_PREP_O_Oo_ART_I_Odia_N_I_O26_N_I_Ode_PREP_I_Oagosto_N_I_O,_,_O_Oem_PREP_O_Oo_ART_I_OParque=da=Água=Branca_NPROP_I_PLA,_,_O_Oem_PREP_O_OSão=Paulo_NPROP_I_PLAcom_PREP_O_Oo_ART_I_Oleilão_N_I_OMarcas=Nobres_NPROP_I_O._._O_O

Page 8: 1 Mixture Model For Named Entities Alunos: Carlos Eduardo Portela Susana R. S. Velloso

8

Análise do corpus Importação para uma tabela de banco utilizando

separador de coluna ‘_’ Coluna ‘Linha’ contador Acrescentadas as colunas ‘Sentenca’ e ‘neSentenca’

Corpus

Linha intPalavra varchar(255)Pos varchar(10)np varchar(1)ne varchar(3)Sentenca varchar(255)neSentenca varchar(3)

Column Name Data Type Allow Nulls

Page 9: 1 Mixture Model For Named Entities Alunos: Carlos Eduardo Portela Susana R. S. Velloso

9

Análise do corpusEx: Linha Palavra Pos np ne Sentenca neSentenca

1 #0 - 0:0 NULL NULL NULL2 De PREP O O3 seus PROADJ I O4 111 NUM I O5 municípios N I O6 , , O O7 94 NUM O O8 são VAUX O O9 considerados PCP O O10 de PREP O O11 _ O O NULL12 alta ADJ I O13 marginalização N I O14 _ O O NULL15 , , O O16 de=acordo=com PREP O O17 um ART I O18 informe N I O19 de PREP I O20 o ART I O21 Conselho=Nacional=da NPROP I COM22 . . O O

Page 10: 1 Mixture Model For Named Entities Alunos: Carlos Eduardo Portela Susana R. S. Velloso

10

Análise Corpus Separação em Sentenças com apenas uma entidade nomeada

Ex: Linha Palavra Pos np ne Sentenca neSentenca 384 #16 - 16:16 NULL NULL NULL NULL NULL 385 O ART I O #16 - 16:161 PER 386 premiê N I O #16 - 16:161 PER 387 Murayama NPROP I PER #16 - 16:161 PER 388 manifestou V O O #16 - 16:161 PER 389 otimismo N I O #16 - 16:161 PER 390 quanto=a PREP I O #16 - 16:161 PER 391 as ART I O #16 - 16:161 PER 392 conversações N I O #16 - 16:161 PER 393 com PREP I O #16 - 16:161 PER 394 os ART I O #16 - 16:162 PLA 395 EUA NPROP I PLA #16 - 16:162 PLA 396 sobre PREP I O #16 - 16:162 PLA 397 comércio N I O #16 - 16:162 PLA 398 . . O O #16 - 16:162 PLA

Page 11: 1 Mixture Model For Named Entities Alunos: Carlos Eduardo Portela Susana R. S. Velloso

11

Análise Corpus Criação das tabelas:

Classes PER PLA COM O

Pos

Palavras

Palavra

palavraID intpalavra varchar(255)

Column Name Data Type Allow Nulls

Classe

ClasseID intDescrição varchar(50)Sigla varchar(3)

Column Name Data Type Allow Nulls

Page 12: 1 Mixture Model For Named Entities Alunos: Carlos Eduardo Portela Susana R. S. Velloso

12

Algoritmo EM Expectation Step

p = quantidade de palavras i = quantidade de sentenças j = quantidade de classes nip = número de vezes que aparece a palavra p na sentença i ij

t = 1 ou 0 dependendo da classe do exemplo

ijt = j

t.fj(xi|j1t,…,jp

t) / l lt.fl(xi|l1

t,…,lpt)

fj(n1, n2, … , np|j1,…, jp) = (N!/n1! … np!). j1n1. … . jp

np

Após simplificações:

ijt = j

t. j1ni1. … . jp

nip / l lt. l1

ni1. … . lpnip

Page 13: 1 Mixture Model For Named Entities Alunos: Carlos Eduardo Portela Susana R. S. Velloso

13

Algoritmo EM Maximization Step

Loop j = 0 até j

j = i ijt / n

Loop p = 0 até p

jp = i ijt.nip / l i ij

t.nil

Page 14: 1 Mixture Model For Named Entities Alunos: Carlos Eduardo Portela Susana R. S. Velloso

14

Resultados obtidos - Pos

Mesmo utilizando apenas exemplos a convergência dos parâmetros do modelo só ocorreu após a 50a iteração;

Os pesos das classes se alteraram durante as iterações;

Adicionando amostras a precisão era degradada;

Page 15: 1 Mixture Model For Named Entities Alunos: Carlos Eduardo Portela Susana R. S. Velloso

15

Gráfico de convergência

Classes - 4Componentes – 39 posExemplos – 1000Recálculo da classificação dos exemplos

Page 16: 1 Mixture Model For Named Entities Alunos: Carlos Eduardo Portela Susana R. S. Velloso

16

Propostas

Criação de novos componentes com o objetivo de obter resultados mais satisfatórios:

Palavras

Revisão do algoritmo – Teste de convergência

Page 17: 1 Mixture Model For Named Entities Alunos: Carlos Eduardo Portela Susana R. S. Velloso

17

Precisão Abrangência e F1

Classes - 4 Componentes – 931 palavras Exemplos – 251 Recálculo da classificação dos exemplos

Page 18: 1 Mixture Model For Named Entities Alunos: Carlos Eduardo Portela Susana R. S. Velloso

18

Resultados Obtidos

Adicionando amostras a precisão era degradada;

Convergência lenta Limitação da quantidade de exemplos e

componentes Foram utilizados vários grupos de

exemplos e a convergência variou muito.

Page 19: 1 Mixture Model For Named Entities Alunos: Carlos Eduardo Portela Susana R. S. Velloso

19

Amostras não classificadas

Classes – 4Componentes – 8500 palavrasSentenças sem classificações em ORecálculo da classificação dos exemplos

Page 20: 1 Mixture Model For Named Entities Alunos: Carlos Eduardo Portela Susana R. S. Velloso

20

Exemplos X Amostras

Quando acrescentamos amostras incluímos novas componentes que não têm ainda seus parâmetros no modelo. Se estamos trabalhando com palavras isso acontecerá sempre.

Muitas palavras tem o jp zerado para mais de uma classe. Acabamos por zerar a classificação de sentenças.

Foi necessário o uso da suavização de Laplace. Passamos a não recalcular os exemplos.

Page 21: 1 Mixture Model For Named Entities Alunos: Carlos Eduardo Portela Susana R. S. Velloso

21

Algoritmo EM Maximization Step com suavização de Laplace

Loop j = 0 até j

j = 1 + i ijt / n + j

Loop p = 0 até p

jp = 1 + i ijt.nip / l i ij

t.nil + | W |

Page 22: 1 Mixture Model For Named Entities Alunos: Carlos Eduardo Portela Susana R. S. Velloso

22

Grafico de ConvergênciaSuavização em j e jp

Classes – 4 Componentes

8500 palavras

Suavização

em j e jp

Não recalcula exemplos

Convergência PIj

0,0000

0,2000

0,4000

0,6000

0,8000

1,0000

1,2000

1 4 7 10 13 16 19 22 25 28 31 34 37 40 43 46 49 52 55 59

Iteração

PIj

1

2

3

4

Total Global

Page 23: 1 Mixture Model For Named Entities Alunos: Carlos Eduardo Portela Susana R. S. Velloso

23

Precisão - Suavização em j e jp Palavras Reduzidas SFIjp SPIj

0

0,05

0,1

0,15

0,2

0,25

0,3

0,35

0,4

0,45

0,5

200 400 600 800 1000 1200 1400 1600 1800 2300 2800 3300

amostras

Prec

isão

200

400

800

1600

Page 24: 1 Mixture Model For Named Entities Alunos: Carlos Eduardo Portela Susana R. S. Velloso

24

Resultados Obtidos Suavização em j e jp

Convergência mais rápida Não houve troca de pesos das classes O peso das classes variou muito Precisão decresce muito

Page 25: 1 Mixture Model For Named Entities Alunos: Carlos Eduardo Portela Susana R. S. Velloso

25

Suavização na classificação de sentenças

Convergência PIj

0,0000

0,0500

0,1000

0,1500

0,2000

0,2500

0,3000

0,3500

117

119

121

123

125

127

129

131

133

135

137

139

141

143

145

147

149

151

153

155

157

159

161

163

165

Iteração

PIj

1

2

3

4

Convergência muito mais rápida

Não houve troca de pesos das classes

O peso das classes varia muito menos

Precisão melhora

Page 26: 1 Mixture Model For Named Entities Alunos: Carlos Eduardo Portela Susana R. S. Velloso

26

Precisão - Todas as suavizações

Classes – 4 Componentes - 931

palavras Com 1800 exemplos

precisão aumenta com inclusão de amostras

Palavras Reduzidas SFIjp SPIj SPIij

0

0,05

0,1

0,15

0,2

0,25

0,3

0,35

0,4

0,45

200 400 600 800 1000 1200 1400 1600 1800 2300 2800 3300

amostras

Prec

isão

200

400

800

1600

Page 27: 1 Mixture Model For Named Entities Alunos: Carlos Eduardo Portela Susana R. S. Velloso

27

Conclusões

Pelo que pudemos observar, dados os baixos índices de Precisão, Abrangência e Média Harmônica obtidos, uma implementação direta do Modelo de Misturas não é uma ferramenta eficiente para tratar a extração de Entidades Nomeadas.

É necessário acrescentar outros recursos que forneçam maiores informações.