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

Post on 07-Apr-2016

221 Views

Category:

Documents

1 Downloads

Preview:

Click to see full reader

TRANSCRIPT

1

Mixture Model For Named Entities

Alunos: Carlos Eduardo PortelaSusana 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.

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

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.

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

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

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

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

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

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

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

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

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

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;

15

Gráfico de convergência

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

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

17

Precisão Abrangência e F1

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

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.

19

Amostras não classificadas

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

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.

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 |

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

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

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

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

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

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.

top related