Sunteți pe pagina 1din 8

Reconhecimento de Entidades Nomeadas com SVM

Nuno Miranda, Ricardo Raminhos, Pedro Seabra VIATECLA SA nmiranda@viatecla.com, rraminhos@viatecla.com, pseabra@viatecla.com Jo o Sequeira, Teresa Goncalves, Paulo Quaresma a Universidade de Evora m5071@alunos.uevora.pt, tcg@uevora.pt, pq@uevora.pt
Resumo Com a geracao crescente de conte dos textuais no mundo digital atrav s de m ltiplos criadores u e u e distribuidores de informacao (de qualidade vari vel) e cada vez mais difcil e complexo adquirir, a manter e assimilar informacao relevante que n o esteja previamente tratada, catalogada e referenci a ada. A necessidade de extraccao de conhecimento atrav s de palavras-chave e a criacao de ligacoes e relacionais entre conte dos com palavras-chave comuns constitui assim uma mais-valia importante u ` em qualquer sistema de gest o de conte dos. Devido a quantidade de informacao envolvida e ima u possvel que a extraccao de palavras-chave seja feita de forma manual; este trabalho apresenta um prot tipo desenvolvido para o reconhecimento de entidades nomeadas em documentos escritos na o lngua Portuguesa com recurso a t cnicas de Aprendizagem Autom tica. e a

Introducao

Com a crescente informacao presente na Web torna-se, muitas vezes, difcil navegar de forma objectiva sobre a informacao relevante. A necessidade de extraccao de conhecimento atrav s de palavras-chave e e a criacao de ligacoes relacionais entre conte dos com palavras-chave comuns constitui assim uma u mais-valia importante em qualquer sistema de gest o de conte dos. a u ` Devido a quantidade de informacao envolvida e impossvel que a extraccao de palavras-chave seja feita de forma manual (considere-se o simples exemplo das publicacoes di rias online dos v rios jornais a a nacionais, que perfazem algumas centenas de notcias di rias). Surge assim a necessidade de criar uma a ferramenta que consiga reconhecer entidades em conte dos textuais. u Este reconhecedor de entidades poder ser usado per si como uma aplicacao aut noma ou embua o tido, como auxiliar, noutras aplicacoes que facam uso das entidades ou das relacoes entre elas. A sua utilizacao, poder servir para: a reconhecer as entidades e apresent -las ao utilizador a classicar o assunto geral dos textos de acordo com as entidades envolvidas permitir navegar no conjunto de documentos, atrav s das relacoes criadas a partir das entidades e comuns entre diferentes conte dos. u A ferramenta deve identicar entidades nomeadas e classic -las numa das seguintes categorias: a Pessoa, Organizacao ou Local. Para ser utiliz vel em diferentes contextos deve ser independente do a domnio e da lngua na qual os documentos est o escritos. A utilizacao de t cnicas de Aprendizagem a e Autom tica vai de encontro a estes objectivos. Este trabalho apresenta os resultados obtidos num cona texto de notcias de v rios jornais nacionais: OJE [14], P blico [18] e Record [6], onde a lngua ser a u a obviamente o Portugu s. e Apoiado no ambito do QREN TV.COMmunity para a regi o do Alentejo, o prot tipo foi desenvola o vido pela Viatecla em colaboracao com o Departamento de Inform tica nas instalacoes do Laborat rio a o de Excel ncia .NET existente na Universidade de Evora. Este laborat rio surgiu inicialmente de um proe o tocolo tripartido entre a VIATECLA, a Universidade de Evora e a Microsoft e visa introduzir experi ncia e

Reconhecimento de Entidades com SVM

Miranda et al.

e conhecimento acad mico em contexto empresarial. Neste sentido o Laborat rio surge como um espaco e o multi-disciplinar que conta com a presenca de docentes, investigadores e alunos. O artigo est organizado da seguinte forma: a Seccao 2 introduz a area do reconhecimento de ena tidades nomeadas e a Seccao 3 apresenta a arquitectura do sistema desenvolvido. A descricao das ex peri ncias realizadas e a sua avaliacao s o apresentadas na Seccao 4 e as conclus es e trabalho futuro e a o s o discutidas na Seccao 5. a

Reconhecimento de Entidades Nomeadas

O Reconhecimento de Entidades Nomeadas1 e uma tarefa de Extraccao de Informacao que pretende identicar e classicar elementos no texto que referem categorias predenidas como nomes de pessoas, organizacoes, locais, express es de tempo, quantidades, valores monet rios, percentagens, etc. o a Existem diversas aproximacoes ao problema [16], desde sistemas que utilizam regras denidas por humanos [1] at sistemas baseados em t cnicas de aprendizagem autom tica [15] atrav s da utilizacao e e a e algoritmos de classicacao como arvores de decis o [2] e m quinas de vectores de suporte2 [21]. A a a classicacao autom tica utiliza um processo de infer ncia gen rico (normalmente designado por apren a e e dizagem) a partir do qual e construdo, de forma autom tica, um classicador. a Durante a fase de aprendizagem s o facultados v rios exemplos de textos com entidades nomeadas a a classicadas manualmente a partir dos quais o algoritmo infere as caractersticas que denem essas entidades. Esta infer ncia e feita utilizando um conjunto de atributos que caracterizam cada uma das e palavras existentes no texto. Como resultado e obtido um modelo de conhecimento que resume as regras de identicacao de entidades nomeadas. Na fase posterior de classicacao, e utilizado o modelo obtido e s o submetidos novos textos onde s o reconhecidas as entidades nele existentes. a a

Arquitectura da aplicacao

A arquitectura do prot tipo implementado pode ser observada na Figura 1. o

Figura 1: Arquitectura da aplicacao Existem dois blocos principais: o Bloco 1 e respons vel pela extraccao dos atributos ortogr cos e a a morfol gicos de cada palavra; o Bloco 2 e respons vel por identicar e classicar entidades nomeadas o a no texto. Os atributos morfol gicos s o obtidos a partir de um Etiquetador Morfol gico de palavras, o a o
1 Do 2 Do

ingl s, Named Entity Recognition. e ingl s, Support Vector Machines. e

Reconhecimento de Entidades com SVM

Miranda et al.

baseado no SVMTool [9], que, juntamente com os atributos ortogr cos, s o utilizados no Bloco 2 para a a construir o modelo do Reconhecedor de Entidades. O SVMTool e um gerador de etiquetas sequencial baseado em m quinas de vectores de suporte [7]. a Por se tratar de um algoritmo de classicacao autom tica, para ser utilizado e necess rio ter um modelo a a para a lngua na qual os textos est o escritos. Como entre os modelos disponveis (espanhol, catal o e a a ingl s) n o se inclui o da lngua Portuguesa foi necess rio desenvolver tal modelo. e a a Como o Etiquetador Morfol gico, o Reconhecedor de Entidades utiliza m quinas de vectores o a de suporte. Este algoritmo foi escolhido entre arvores de decis o [17], variantes do algoritmo nave a de Bayes [4, 24] e m quinas de vectores de suporte com v rias funcoes de n cleo [10]. Na escolha a a u consideraram-se valores de precis o, cobertura e ec cia e as plataformas disponveis de implementacao a a dos algoritmos. Os testes de seleccao foram efectuados com a ferramenta WEKA [23] mas a implemen tacao do prot tipo utilizou o LibSVM [5], uma ferramenta que implementa diversos tipos de m quinas o a de vectores de suporte. Para criar o modelo de suporte ao Reconhecedor de Entidades, cada palavra do documento foi caracterizada utilizando atributos quer ortogr cos, quer morfol gicos e uma janela de contexto. As pr ximas a o o subseccoes descrevem esses atributos.

3.1

Atributos Ortogr cos a

Os atributos ortogr cos, num total de 25 atributos bin rios, foram extrados das caractersticas ora a togr cas das palavras. A Tabela 1 enumera os atributos considerados. a Atributos Ortogr cos a palavra s mai sculas o u palavra s min sculas o u palavra c/ inicial mai scula u mai sculas e min sculas u u inicial sozinha palavra e

! ( " ; + , ou

? ) : - .

car cter unico a palavra alfanum rica e palavra num rica e palavra c/ letras palavra com hfen pontuacao m de frase

Tabela 1: Atributos ortogr cos das palavras a

3.2

Atributos Morfol gicos o

Os atributos morfol gicos, num total de 15 atributos bin rios, indicam a classe gramatical da palavra. A o a Tabela 2 enumera esses atributos. Atributos Morfol gicos o determinante conjuncao adv rbio e prexo pronome interjeicao preposicao pontuacao

nome comum nome pr prio o verbo adjectivo

contraccao (determinante) contraccao (adv rbio) e contraccao (pronome)

Tabela 2: Atributos morfol gicos das palavras o

Reconhecimento de Entidades com SVM

Miranda et al.

3.3

Janela de Contexto

De modo a considerar o contexto da palavra no texto, ao conjunto dos atributos descritivos da palavra juntaram-se os atributos descritivos das palavras vizinhas (anteriores e posteriores), criando uma janela de contexto. Por exemplo, numa janela com dimens o 5, s o considerados os atributos ortogr cos e a a a morfol gicos de cinco palavras: a palavra em an lise encontra-se na posicao central com duas palavras o a posteriores e duas anteriores.

Experi ncias e Avaliacao e

Esta seccao descreve os corpora utilizados, a conguracao experimental e os resultados obtidos para o Etiquetador Morfol gico e o Reconhecedor de Entidades. o

4.1

Etiquetador Morfol gico o

Como referido na Seccao 3, o Etiquetador Morfol gico foi obtido utilizando a ferramenta SVMTool. o Tratando-se de uma ferramenta que utiliza t cnicas de Aprendizagem Autom tica foi necess rio desene a a volver um modelo para a lngua Portuguesa. As pr ximas subseccoes descrevem o corpus utilizado, a o conguracao experimental e os resultados obtidos. 4.1.1 Corpus

O corpus foi construdo a partir do Bosque 8.0 [12], uma coleccao de frases analisadas sintacticamente pela ferramenta Palavras [3] e revista manualmente por linguistas. O Bosque 8.0 foi desenvolvido pela Linguateca (um centro de recursos para o processamento computacional da lngua portuguesa) e e com posto por 9368 frases retiradas dos primeiros 1000 extractos dos corpora CETENFolha e CETEMP blico u (corpora com notcias do Jornal P blico [18] e do Jornal Folha de S o Paulo [8], respectivamente). u a Sobre este corpus inicial retiraram-se as frases do CETENFolha e zeram-se alteracoes para o Eti quetador funcionar directamente sobre o texto, ou seja, cada palavra do texto dar origem a uma etiqueta, caracterstica que n o acontece no corpus Bosque 8.0 j que nele as contraccoes s o expandidas e as a a a palavras integrantes de sintagmas preposicionais n o est o classicadas. Estas alteracoes obrigaram a a a alguma etiquetagem manual. Como se pretendia utilizar um l xico da lngua Portuguesa, utilizaram-se as etiquetas do Labele Lex [11], um l xico produzido pelo Laborat rio de Engenharia da Linguagem do Instituto Superior e o T cnico. e Estas alteracoes deram origem a um corpus com 133 670 palavras e 18 etiquetas morfol gicas. A o Tabela 3 apresenta a percentagem de palavras para cada uma das principais classes gramaticais. n comum 18.4% n pr prio o 8.5% verbo 12.2% adjectivo 5.0% determinante 7.6% pronome 5.3% adv rbio e 4.6% preposicao 9.4%

Tabela 3: Percentagem de palavras das principais classes gramaticais

4.1.2

Conguracao experimental

O Etiquetador, criado com o SVMTool [9], foi obtido utilizando os valores por omiss o para todos os a par metros daquela ferramenta. O corpus foi dividido utilizando 2/3 das frases como treino (2983 frases) a e as restantes como teste (1492 frases). O desempenho foi avaliado atrav s das medidas de precis o, cobertura e F1 [19]. e a 4

Reconhecimento de Entidades com SVM

Miranda et al.

4.1.3

Resultados

Para as classes gramaticais principais (nome comum, nome pr prio, verbo, adjectivo, determinante, proo nome, adv rbio e preposicao) obtiveram-se valores m dios de 96%, 94% e 95% para a precis o, cobertura e e a e F1 , respectivamente. A Tabela 4 apresenta os valores m ximo, mnimo, m dio e desvio padr o das tr s a e a e medidas para essas classes. m ximo a .986 .991 .988 mnimo .886 .891 .888 m dia e .958 .941 .949 desvio padr o a .040 .068 .053

Precis o a Cobertura F1

Tabela 4: Variacao dos valores de precis o, cobertura e F1 do Etiquetador a A partir da tabela e possvel observar que os valores obtidos s o similares aos valores obtidos pela a ferramenta para outras lnguas e outros etiquetadores [9]. Entre as classes principais, e considerando os valores de precis o e cobertura, aquela que apresenta melhores valores e a dos nomes pr prios; por outro a o lado, aquela com valores mais baixos e a dos adjectivos.

4.2

Reconhecedor de Entidades

Como j referido, o Reconhecedor de Entidades utiliza m quinas de vectores de suporte como algoa a ritmo de aprendizagem, onde cada exemplo caracteriza uma palavra. Essa caracterizacao e feita atrav s e de um conjunto de atributos ortogr cos e morfol gicos. Assim, o classicador ir indicar, para cada a o a palavra apresentada, se pertence ou n o a uma entidade e, em caso armativo, qual o tipo (Pessoa, a Organiza~o, Local). ca Como uma entidade pode ser composta por v rias palavras utilizou-se a aproximacao designada por a IOB, normalmente utilizada para marcar express es multi-palavra (ver por exemplo [22]). A etiqueta B o (begin) marca a primeira da express o e as restantes s o marcadas com a etiqueta I (inside). As palavras a a ` que n o pertencem a express o s o marcadas com a etiqueta O (outside). Como existem 3 tipos de a a a entidade, isto corresponde a denir um problema de classicacao multi-classe com um total de 7 classes (O e B-xxx e I-xxx para cada tipo de entidade). ` Mais ainda, como a classicacao e feita palavra a palavra e necess rio reconstruir as entidades a a sada do classicador. Para tal considerou-se entidades o mais extensas possvel (sem sobreposicao nem inclus o de outras entidades). a 4.2.1 Corpus

O corpus utilizado para o desenvolvimento do Reconhecedor foi construdo a partir de uma seleccao de v rias notcias dos jornais OJE, P blico e Record marcadas manualmente segundo os tipos de entidades a u nelas encontradas (Pessoa, Organiza~o, Local e Outra). Este corpus e constitudo por 255 docuca mentos num total de 3645 frases e cerca de 88000 palavras. Nele foram marcadas um total de 1267 pessoas, 2507 organizacoes e 1041 locais. 4.2.2 Conguracao experimental

O Reconhecedor de Entidades, criado utilizando o SVMLib [5], foi obtido utilizando os valores por omiss o para todos os par metros. Embora o corpus tenha sido marcado com 4 tipos de entidades, o a a Reconhecedor foi avaliado apenas para as 3 entidades de interesse (Pessoa,Organiza~o e Local). ca 5

Reconhecimento de Entidades com SVM

Miranda et al.

Mais uma vez, utilizou-se 2/3 das frases como treino e as restantes como teste. A Tabela 5 apresenta a distribuicao de entidades pelos conjuntos de treino e teste. Pessoa Organizacao Local Total Treino 803 1581 691 3075 Teste 464 926 350 1740

Tabela 5: Distribuicao de entidades nos conjuntos de treino e teste Fizeram-se diversas experi ncias de modo a obter os melhores resultados (tanto de desempenho e como de ec cia). Experimentaram-se diversas janelas de contexto (dimens es entre 1 e 15) e, al m dos a o e atributos ortogr cos e morfol gicos, experimentou-se utilizar outros 3 atributos bin rios com indicacao a o a de pertenca da palavra a cada uma das seguintes listas de palavras: l xico da lngua Portuguesa, com cerca de 940000 palavras (Label-Lex [11]) e palavras funcionais, com 24 palavras (palavras min sculas que aparecem em entidades) u palavras raras, com 4995 palavras (palavras que aparecem em menos de 4 documentos) Criou-se tamb m um classicador cuja funcao foi identicar as entidades presentes no texto sem as e classicar segundo Pessoa, Organiza~o ou Local. A este classicador deu-se o nome de Identicaca dor de Entidades. ` A semelhanca do Etiquetador, o Reconhecedor e o Identicador foram avaliados utilizando as medi das de desempenho precis o, cobertura e F1 . a 4.2.3 Resultados

Para o Identicador de Entidades os melhores resultados foram obtidos com uma janela de dimens o a cinco sem utilizacao dos atributos de pertenca as diversas listas de palavras. Os melhores resultados para ` o Reconhecedor corresponderam a uma janela de contexto de dimens o sete com a utilizacao dos tr s a e ` atributos relativos as listas de palavras. As Tabelas 6 e 7 apresentam os resultados obtidos em cada um dos jornais para o Identicador e Reconhecedor, respectivamente. Como esperado, os resultados obtidos para o Identicador (precis o e a cobertura acima de 81%) s o superiores aos obtidos pelo Reconhecedor (precis o e cobertura entre 56% a a ` ` e 65%), uma vez que a partida este ultimo e a partida um problema mais complexo. OJE Publico Record M dia e Precis o a .814 .832 .818 .821 Cobertura .852 .856 .840 .849 F1 .833 .844 .829 .835

Tabela 6: Precis o, cobertura e F1 do Identicador de Entidades (por jornal) a Em ambas as tabelas e possvel observar que os valores das medidas de desempenho n o variam a muito entre os jornais, excepto para o jornal OJE e o Reconhecedor de Entidades cujos valores das medidas de desempenho s o consideravelmente mais baixos. a A Tabela 8 apresenta os valores de precis o, cobertura e F1 obtidos pelo Reconhecedor para cada um a dos tipos de entidades considerados. Nela, e possvel observar que a classe mais difcil de reconhecer e Organiza~o com um valor de F1 muito perto de 50%, enquanto Local possui um valor de 74%. ca 6

Reconhecimento de Entidades com SVM

Miranda et al.

OJE Publico Record M dia e

Precis o a .565 .650 .654 .623

Cobertura .595 .634 .652 .627

F1 .576 .639 .640 .618

Tabela 7: Precis o, cobertura e F1 do Reconhecedor (por jornal) a Precis o a .582 .497 .774 Cobertura .701 .492 .708 F1 .636 .494 .740

Pessoa Organizacao Local

Tabela 8: Precis o, cobertura e F1 do Reconhecedor de Entidades (por tipo de entidade) a

Conclus es e Trabalho Futuro o

Este artigo apresenta um sistema para Reconhecimento de Entidades Mencionadas utilizando t cnicas de e ` Aprendizagem Autom tica. Embora tenha sido aplicado a lngua Portuguesa, o sistema e independente a da lngua e do domnio, bastando para tal modicar o corpus de aprendizagem para a lngua e/ou domnio escolhidos. Os resultados obtidos est o dentro dos valores apresentados na comunidade cientca para o mesmo a tipo de problema [16, 22]. Como trabalho futuro pretende-se comparar este sistema com outros sistemas desenvolvidos para a lngua Portuguesa utilizando os recursos disponibilizados pelo HAREM [13], uma avaliacao conjunta na area do reconhecimento de entidades mencionadas em Portugu s promovido pela Linguateca. Estes e resultados encontram-se descritos em [20]. Para que a comparacao com outros sistemas seja mais objectiva, pretende-se testar o sistema noutros domnios que n o os das notcias di rias e noutras lnguas nomeadamente a lngua inglesa. a a Com vista a melhorar o sistema, pretende-se criar melhores reconhecedores, quer atrav s da utilizae cao de corpora maiores, quer adicionado novos atributos que se considerarem crticos ao problema.

Refer ncias e
[1] J. Aberdeen, J. Burger, D. Day, L. Hirschman, P. Robinson, and M. Vilain. MITRE: description of the Alembic system used for MUC-6. In MUC6 95: Proceedings of the 6th Message Understanding Conference, pages 141155, Morristown, NJ, USA, 1995. Association for Computational Linguistics. [2] S. Baluja, V.O. Mittal, and R. Sukthankar. Applying machine learning for high performance named-entity extraction. In In Proceedings of the Conference of the Pacic Association for Computational Linguistics, pages 365378, 2000. [3] Eckhard Bick. The Parsing System Palavras: Automatic Grammatical Analysis of Portuguese in a Constraint Grammar Framework. PhD thesis, Aarhus University, Aarhus, Denmark, November 2000. [4] R. Caruana and A. Niculescu-Mizil. An empirical comparison of supervised learning algorithms. In ICML 06: Proceedings of the 23rd international conference on Machine learning, pages 161168, New York, NY, USA, 2006. ACM. [5] C. Chang and C. Lin. LIBSVM: a library for support vector machines, 2001. Software available at http: //www.csie.ntu.edu.tw/~cjlin/libsvm. [6] Edisport S.A. Cona Media Grupo Cona. Record. http://www.record.xl.pt/.

Reconhecimento de Entidades com SVM

Miranda et al.

[7] N. Cristianini and J. Shawe-Taylor. An Introduction to Support Vector Machines. Cambridge University Press, 2000. [8] Folhapress. Folha.com. http://www.folha.uol.com.br/. [9] J. Gim nez and L. M` rquez. SVMTool: A general POS tagger generator based on Support Vector Machines. e a In Proceedings of the 4th LREC, 2004. [10] S.S. Keerthi, S.K. Shevade, C. Bhattacharyya, and K.R.K. Murthy. Improvements to Platts SMO Algorithm for SVM Classier Design. Neural Comput., 13(3):637649, 2001. [11] IST Laborat rio de Engenharia da Linguagem. LABEL-LEX. http://label.ist.utl.pt/pt/ o labellex_pt.php. [12] Linguateca. Bosque 8.0. http://www.linguateca.pt/floresta/corpus.htmll#bosque. [13] Linguateca. Harem. http://www.linguateca.pt/aval_conjunta/HAREM/. [14] Sociedade Editorial S.A. Megan. Oje. http://www.oje.pt/. [15] T.M. Mitchell. Machine Learning. McGraw-Hill, 1997. [16] D. Nadeau and S. Sekine. A survey of named entity recognition and classication. Linguisticae Investigationes, 30(1):326, 2007. Publisher: John Benjamins Publishing Company. [17] R. Quinlan. C4.5: Programs for Machine Learning. Morgan Kaufmann, San Mateo, US, 1993. [18] PUBLICO Comunicacao Social SA. P blico. http://www.publico.pt/. u [19] G. Salton, A. Wang, and C. Yang. A vector space model for information retrieval. Journal of the American Society for Information Retrieval, 18:613620, 1975. [20] D. Santos and N. Cardoso, editors. Reconhecimento de entidades mencionadas em portugu s: documentacao e e actas do HAREM, a primeira avaliacao conjunta na area. Linguateca, 2007. [21] K. Takeuchi and N. Collier. Use of support vector machines in extended named entity recognition. In COLING-02: proceedings of the 6th conference on Natural language learning, pages 17, Morristown, NJ, USA, 2002. Association for Computational Linguistics. [22] E.F. Tjong and K. Sang. Introduction to de CoNLL-2002 Shared Task: Language-Independent Named Entity Recognition. In Proceedings of CoNLL-2002, pages 155158, Taipei, Taiwan, 2002. [23] I. Witten and E. Frank. Data Mining: Practical machine learning tools and techniques. Morgan Kaufmann, San Francisco, US, 2nd edition, 2005. [24] H. Zhang. The optimality of naive bayes. In Proceedings of the 17th International FLAIRS conference. AAAI Press, 2004.

S-ar putea să vă placă și