Uma breve história do desenvolvimento do reconhecimento de entidades nomeadas (NER)

Nos últimos anos, métodos de aprendizado profundo baseados em redes neurais obtiveram grande sucesso nos campos de visão computacional e reconhecimento de fala e também fizeram muito progresso no campo do processamento de linguagem natural. No estudo do NER (Reconhecimento de Entidades Nomeadas por Tarefas), a aprendizagem profunda também alcançou bons resultados. Recentemente, o autor leu uma série de artigos relacionados à pesquisa de NER com base em aprendizado profundo e os aplicou ao módulo básico do conceito de NER.Aqui vou resumir e compartilhar o aprendizado com você.

1. Introdução ao NER

O NER, também conhecido como reconhecimento adequado de nome, é uma tarefa básica no processamento de linguagem natural e possui uma ampla variedade de aplicativos. As entidades nomeadas geralmente se referem a entidades com significados específicos ou referências fortes no texto, geralmente incluindo nomes de pessoas, lugares, nomes de organizações, datas e nomes próprios. O sistema NER é extrair as entidades acima do texto de entrada não estruturado e pode identificar mais tipos de entidades de acordo com as necessidades do negócio, como nome do produto, modelo, preço, etc. Portanto, o conceito de entidade pode ser muito amplo, desde que os fragmentos de texto especiais exigidos pela empresa possam ser chamados de entidades.

Academicamente, as entidades nomeadas envolvidas no NER geralmente incluem 3 categorias (categoria de entidade, categoria de hora, categoria de número) e 7 subcategorias (nome da pessoa, nome do local, nome da organização, hora, data, moeda, porcentagem).

Em aplicações práticas, o modelo NER geralmente só precisa reconhecer os nomes de pessoas, lugares, organizações e datas, e alguns sistemas também fornecerão resultados nominais adequados (como abreviações, nomes de conferências, nomes de produtos etc.). Entidades digitais, como moeda e porcentagens, podem ser obtidas através da regularização. Além disso, em alguns cenários de aplicação, serão fornecidas entidades em um campo específico, como títulos de livros, títulos de músicas, títulos periódicos, etc.

O NER é uma tarefa chave básica na PNL. Do ponto de vista do processamento de linguagem natural, o NER pode ser considerado como um tipo de reconhecimento de palavras não registrado na análise lexical, que é a palavra mais não reconhecida, a mais difícil de reconhecer e a maior influência no efeito da segmentação de palavras. Ao mesmo tempo, o NER também é a base de muitas tarefas da PNL, como extração de relações, extração de eventos, gráfico de conhecimento, tradução automática, sistema de resposta a perguntas e assim por diante.

Atualmente, o NER não é um tópico de pesquisa importante, porque alguns acadêmicos pensam que esse é um problema resolvido. Certamente, alguns estudiosos acreditam que esse problema não foi bem resolvido.Os principais motivos são: o reconhecimento de entidades nomeadas é obtido apenas em tipos de texto limitados (principalmente em notícias) e categorias de entidades (principalmente nomes de pessoas, lugares, organizações). Comparado com outros campos de recuperação de informações, espera-se que a avaliação de nomeação de entidades seja menor e seja fácil produzir sobreajuste; o reconhecimento de entidades nomeadas se concentra mais em altas taxas de recall, mas no campo de recuperação de informações, alta precisão é mais importante; reconhecimento geral Muitos tipos de entidades nomeadas têm desempenho ruim do sistema.

2. Aplicação de métodos de aprendizagem profunda no NER

O NER sempre foi um ponto de acesso de pesquisa no campo da PNL. Desde métodos antigos baseados em dicionário e regras, até métodos tradicionais de aprendizado de máquina, até métodos baseados em aprendizado profundo nos últimos anos, a tendência geral do progresso da pesquisa do NER é mostrada aproximadamente na figura a seguir.

Figura 1: Tendência de desenvolvimento do NER

No método baseado no aprendizado de máquina, o NER é considerado um problema de rotulagem de sequência. Um corpus em larga escala é usado para aprender o modelo de anotação, de modo a anotar cada posição da sentença. Modelos comumente usados ​​em tarefas NER incluem o modelo generativo HMM e o modelo discriminante CRF. O campo aleatório condicional (campo aleatório condicional, CRF) é o atual modelo mainstream do NER. Sua função objetivo não apenas considera a função de recurso de estado de entrada, mas também inclui a função de recurso de transferência de etiquetas. O SGD pode ser usado para aprender os parâmetros do modelo durante o treinamento. Quando o modelo é conhecido, encontrar a sequência de entrada para prever a sequência de saída, ou seja, encontrar a sequência ideal que maximize a função objetivo, é um problema de programação dinâmica.Você pode usar o algoritmo Viterbi para decodificar para obter a sequência ideal de etiquetas. A vantagem do CRF é que ele pode utilizar informações valiosas sobre recursos internos e contextuais no processo de rotular um local.

Figura 2: Um campo aleatório condicional de cadeia linear

Nos últimos anos, com o desenvolvimento dos recursos de computação em hardware e a introdução da incorporação de palavras, as redes neurais podem lidar efetivamente com muitas tarefas da PNL. Esse tipo de método é semelhante ao processamento de tarefas de rotulagem de sequência (como CWS, POS, NER): mapeia tokens de representações discretas e quentes para espaço de baixa dimensão para se tornar uma incorporação densa e, em seguida, insira a sequência de incorporação de frases na RNN No método, a rede neural é usada para extrair recursos automaticamente, e o Softmax prevê o rótulo de cada token.

Esse método faz do treinamento do modelo um processo completo, em vez do pipeline tradicional, não depende da engenharia de recursos, é um método orientado a dados, mas existem muitos tipos de redes, uma grande dependência das configurações de parâmetros e baixa interpretabilidade do modelo. Além disso, uma desvantagem desse método é que o processo de rotular cada token é realizado de forma independente, e os rótulos previstos acima não podem ser usados ​​diretamente (apenas as informações acima podem ser transmitidas por estado implícito), o que leva aos rótulos previstos A sequência pode ser inválida.Por exemplo, o rótulo I-PER não pode ser seguido por B-PER, mas o Softmax não usará essas informações.

A comunidade acadêmica propôs um modelo DL-CRF para anotação de sequência. A camada CRF (ênfase no uso da probabilidade de transição de etiqueta) é conectada à camada de saída da rede neural para fazer uma previsão de etiqueta no nível da frase, de modo que o processo de identificação não é mais para classificar cada token independentemente.

2.1 BiLSTM-CRF

A rede LongShort Term Memory é geralmente chamada de LSTM, que é um tipo especial de RNN que pode aprender informações dependentes de longa distância. O LSTM foi proposto por Hochreiter & Schmidhuber (1997) e foi recentemente aprimorado e promovido por Alex Graves. Em muitas questões, o LSTM alcançou um sucesso considerável e é amplamente utilizado. O LSTM resolve o problema da dependência de longa distância através de um design inteligente.

Todos os RNNs têm uma forma em cadeia de repetir unidades de redes neurais. Em uma RNN padrão, essa unidade de repetição possui apenas uma estrutura muito simples, como uma camada de tanh.

Figura 3: Estrutura tradicional da RNN

O LSTM tem a mesma estrutura, mas a unidade de repetição tem uma estrutura diferente. Ao contrário das unidades RNN comuns, aqui estão quatro, interagindo de uma maneira muito especial.

Figura 4: Estrutura LSTM

O LSTM usa três estruturas de porta (porta de entrada, porta de saída e porta de saída) para esquecer seletivamente algumas informações históricas, adicionar algumas informações de entrada atuais e finalmente integrá-las ao estado atual e gerar um estado de saída.

Figura 5: Cada estrutura de bloqueio do LSTM

O modelo biLSTM-CRF usado no NER é composto principalmente por uma camada de incorporação (principalmente vetores de palavras, vetores de palavras e alguns recursos adicionais), uma camada bidirecional de LSTM e a camada final de CRF. Os resultados experimentais mostram que o biLSTM-CRF alcançou ou excedeu o modelo CRF com base em recursos avançados e se tornou o modelo mais popular no método NER com base em aprendizado profundo. Em termos de recursos, o modelo herda as vantagens dos métodos de aprendizado profundo, sem a engenharia de recursos, o uso de vetores de palavras e vetores de caracteres pode obter bons resultados.Se houver recursos de dicionário de alta qualidade, ele poderá ser melhorado ainda mais.

Figura 6: Diagrama esquemático do biLSTM-CRF

2.2 IDCNN-CRF

Para a rotulagem de sequências, uma CNN comum tem uma desvantagem de que, após a convolução, a última camada de neurônios pode receber apenas um pequeno pedaço de informação nos dados de entrada originais. Em termos de NER, cada palavra em toda a sentença de entrada pode afetar a anotação da posição atual, o chamado problema de dependência de longa distância. Para cobrir todas as informações de entrada, é necessário adicionar mais camadas convolucionais, resultando em camadas mais profundas e mais e mais parâmetros. Para evitar o excesso de ajuste, é necessário adicionar mais regularização, como o Dropout, para trazer mais hiperparâmetros, e todo o modelo se torna enorme e difícil de treinar. Devido às desvantagens da CNN, para a maioria dos problemas de rotulagem de sequência, as pessoas ainda escolhem uma estrutura de rede como o biLSTM e usam a memória da rede para lembrar as informações completas da frase para rotular o máximo possível a palavra atual.

Mas isso traz outro problema: o BiLSTM é essencialmente um modelo de sequência, que não é tão poderoso quanto a CNN no uso da computação paralela da GPU. Como você pode fornecer à GPU um campo de batalha completo como a CNN e lembrar o máximo possível de informações de entrada com uma estrutura simples como a LSTM?

Fisher Yu e Vladlen Koltun 2015 propuseram o modelo da CNN dilatado, que significa CNN "expandida". A idéia não é complicada: os filtros CNN normais são aplicados a uma área contínua da matriz de entrada e o deslizamento contínuo é usado para convolução. o CNN dilatado adiciona uma largura de dilatação a esse filtro, quando atua na matriz de entrada, ignora os dados de entrada no meio de todas as larguras de dilatação; e o tamanho do próprio filtro permanece inalterado, para que o filtro obtenha os dados na matriz de entrada mais ampla Parece que "se expandiu".

Quando usada especificamente, a largura dilatada aumenta exponencialmente à medida que o número de camadas aumenta. Dessa forma, conforme o número de camadas aumenta, o número de parâmetros aumenta linearmente, enquanto o campo receptivo aumenta exponencialmente, o que pode cobrir rapidamente todos os dados de entrada.

Figura 7: diagrama esquemático do idcnn

Pode ser visto na Figura 7 que o campo receptivo se expande a uma taxa exponencial. O campo receptivo original é uma área 1x1 no centro:

(A) Na figura, o domínio receptivo original é difundido nas etapas de 1 para obter 8 regiões 1x1 para constituir um novo domínio receptivo, com um tamanho de 3x3;

(B) Após a difusão na figura com um tamanho de passo 2, o campo receptivo do passo anterior 3x3 é expandido para 7x7;

(C) Na figura, após a difusão com um tamanho de etapa 4, o campo receptivo 7x7 original é expandido para um campo receptivo 15x15. O número de parâmetros em cada camada é independente um do outro. O campo receptivo se expande exponencialmente, mas o número de parâmetros aumenta linearmente.

Correspondendo ao texto, a entrada é um vetor unidimensional e cada elemento é uma incorporação de caractere:

Figura 8: Um bloco idcnn com um tamanho máximo de etapa de expansão de 4

O IDCNN gera logits para cada palavra da frase de entrada, aqui é exatamente o mesmo que os logits de saída do modelo biLSTM, ingressa na camada CRF e usa o algoritmo Viterbi para decodificar os resultados da anotação.

A conexão de uma camada CRF ao final de um modelo de rede como biLSTM ou IDCNN é um método muito comum de rotulagem de sequência. O biLSTM ou o IDCNN calcula a probabilidade de cada rótulo de cada palavra, e a camada CRF introduz a probabilidade de transição da sequência e, finalmente, calcula a perda e a envia de volta à rede.

3. Aplicação prática

3.1 Preparação do corpus

Incorporação: escolhemos o corpus chinês da Wikipedia para treinar vetores e vetores de palavras.

Corpus básico: selecione o corpus anotado do Diário do Povo em 1998 como o corpus de treinamento básico.

Corpus adicional: 98 corpus é o corpus oficial, e sua autoridade e precisão de rotulagem são garantidas. No entanto, como é extraído completamente do Diário do Povo e tem uma longa história, a cobertura dos tipos de entidade é relativamente baixa. Por exemplo, novo nome da empresa, nome do estrangeiro, nome do local estrangeiro. Para melhorar a capacidade de reconhecer novos tipos de entidades, coletamos um lote de notícias corporativas anotadas. Inclui principalmente finanças, entretenimento e esportes, e é exatamente isso que falta no corpus 98. Devido a problemas de qualidade na rotulagem, o corpus extra não pode ser adicionado demais, cerca de 1/4 do 98 corpus.

3.2 Aprimoramento de dados

Para métodos de aprendizado profundo, geralmente é necessária uma grande quantidade de corpus anotado; caso contrário, é extremamente provável que ocorra um super ajuste e a capacidade de generalização esperada não pode ser alcançada. Descobrimos em experimentos que o aprimoramento de dados pode melhorar significativamente o desempenho do modelo. Especificamente, dividimos o corpus original, em seguida, aleatoriamente bigram e trigram cada sentença, e finalmente usamos a sentença original como corpus de treinamento.

Além disso, usamos o dicionário de entidades nomeadas coletadas para substituir aleatoriamente as entidades do mesmo tipo no corpus para obter um corpus aprimorado.

A figura a seguir mostra a curva de treinamento do modelo BiLSTM-CRF e pode ser visto que a convergência é muito lenta. Por outro lado, a convergência do modelo IDCNN-CRF é muito mais rápida.

Figura 9: Curva de treinamento BiLSTM-CRF

Figura 10: Curva de treinamento IDCNN-CRF

3.3 Exemplos

A seguir, é apresentado um exemplo de resultado de previsão usando o modelo BiLSTM-CRF.

Figura 11: Exemplo de previsão do BiLSTM-CRF

4. Resumo

Finalmente, para resumir, o CNN / RNN-CRF, que combina rede neural e modelo de CRF, tornou-se o modelo principal do NER. Para a CNN e a RNN, ninguém tem uma vantagem absoluta, cada um tem suas próprias vantagens. Como o RNN possui uma estrutura de sequência natural, o RNN-CRF é mais amplamente utilizado. O método NER baseado na estrutura da rede neural herda as vantagens do método de aprendizado profundo sem exigir um grande número de recursos artificiais. Somente vetores de palavras e vetores de palavras podem atingir o nível principal e adicionar recursos de dicionário de alta qualidade pode melhorar ainda mais o efeito. Para um pequeno número de problemas de conjuntos de treinamento rotulados, o aprendizado de transferência e o aprendizado semi-supervisionado devem ser o foco de pesquisas futuras.

发布了150 篇原创文章 · 获赞 149 · 访问量 81万+

Acho que você gosta

Origin blog.csdn.net/chaishen10000/article/details/103919382
Recomendado
Clasificación