PNL - O Gazetteer é um trapaceiro?

16

Na PNL, existe o conceito de Gazetteerque pode ser bastante útil para criar anotações. Tanto quanto eu entendo:

Um gazetteer consiste em um conjunto de listas contendo nomes de entidades como cidades, organizações, dias da semana etc. Essas listas são usadas para encontrar ocorrências desses nomes no texto, por exemplo, para a tarefa de reconhecimento de entidades nomeadas.

Portanto, é essencialmente uma pesquisa. Não é esse tipo de trapaça? Se usarmos a Gazetteerpara detectar entidades nomeadas, não haverá muita coisa Natural Language Processingacontecendo. Idealmente, eu gostaria de detectar entidades nomeadas usando NLPtécnicas. Caso contrário, como é melhor que um comparador de padrões de regex?

AbtPst
fonte
2
Eu não chamaria isso de trapaça em si ... a menos que você tenha sido projetado especificamente para usar uma solução de pesquisa que não seja de dicionário. Eu também não chamaria isso de PNL tradicional, embora você nunca deva ignorar a quilometragem substancial que pode obter de uma solução simples para um problema.
Kyle.
1
Talvez você possa usá-lo para treinar um reconhecedor de entidade nomeada. O que seu gazetteer fará sobre entidades que não fazem parte de seu corpus?
Emre
Eu esperava que, usando corretamente as tags pos e o substantivo, eu nunca mais precisasse de um gazetteer. isso é possível?
AbtPst
2
Na indústria, não existe trapaça. :-) Mas, de qualquer forma, se você quiser uma "abordagem geral", precisará começar com alguns dados anotados à mão, ou seja, semente, para aprender contextos nos quais os NEs aparecem, para aprender mais NEs.
Adam Bittlingmayer 27/01

Respostas:

15

O Gazetteer ou qualquer outra opção de recurso de tamanho fixo intencional parece uma abordagem muito popular em trabalhos acadêmicos , quando você tem um problema de tamanho finito, por exemplo, NER em corpora fixo, identificação de POS ou qualquer outra coisa. Eu não consideraria trapaça a menos que o único recurso que você usará seja a correspondência no Gazetteer.

No entanto, ao treinar qualquer tipo de modelo de PNL, que depende do dicionário durante o treinamento, você pode obter um desempenho no mundo real muito inferior ao relatado pelo teste inicial, a menos que você possa incluir todos os objetos de interesse no gazetteer (e por que então você precisa desse modelo?) porque seu modelo treinado dependerá do recurso em algum momento e, em um caso em que outros recursos sejam muito fracos ou não sejam descritivos, novos objetos de interesse não serão reconhecidos.

Se você usa um Gazetteer em seus modelos, certifique-se de que esse recurso tenha um recurso de contador para permitir que o modelo se equilibre, para que a correspondência simples de dicionário não seja o único recurso de classe positiva (e, mais importante, o gazetteer deve correspondem não apenas a exemplos positivos, mas também a negativos).

Por exemplo, suponha que você tenha um conjunto completo de infinitas variações de todos os nomes de pessoas, o que torna o NER da pessoa geral irrelevante, mas agora você tenta decidir se o objeto mencionado no texto é capaz de cantar. Você dependerá de recursos de inclusão no seu gazeta Pessoal, o que fornecerá muitos falsos positivos; então, você adicionará um recurso centrado no verbo " É o sujeito do canto do verbo " e provavelmente forneceria falsos positivos de todos os tipos de objetos, como pássaros, sua barriga quando você estiver com fome e um sujeito bêbado que pensaele pode cantar (mas, sejamos honestos, ele não pode) - mas esse recurso centrado no verbo se equilibrará com a pessoa que você utiliza para atribuir classe positiva de 'Cantor' a pessoas e não animais ou outros objetos. No entanto, isso não resolve o caso do artista bêbado.

chewpakabra
fonte
4

O uso de uma lista de entidades tem poucas desvantagens:

  • A lista está fechada
  • A lista não é sensível ao contexto. Você precisa do contexto para diferir entre "uma casa branca" e "a casa branca".
  • A construção de listas exige muito trabalho
  • A lista também pode conter erros.
  • Parece trapaça (ou na lista não são usadas informações da PNL).

Você pode lidar com essas desvantagens seguindo a direção sugerida por @emre e usando a lista para aprender um classificador.

Por exemplo, você pode usar tokens perto da entidade e aprender regras como "moro em X" é um indicador de um lugar e "conversei com X" é um indicador de uma pessoa. Você pode jogar este jogo algumas rodadas aumentando sua lista de acordo com as regras e usando a nova lista para aprender mais regras.

Não se esqueça de que, neste aprendizado, você introduzirá ruído nos dados; na maioria dos casos, o aprendizado deve ser direto.

DaL
fonte