Modelos de aprendizado profundo codificador-decodificador para resumo de texto

Modelos de aprendizado profundo codificador-decodificador para resumo de texto

O resumo de texto é a tarefa de criar resumos curtos, precisos e fluentes a partir de documentos de texto maiores.

Recentemente, os métodos de aprendizagem profunda têm se mostrado eficazes na abordagem abstrativa de resumo de texto.

Nesta postagem, você descobrirá três modelos diferentes que se baseiam na arquitetura codificadora-decodificadora eficaz desenvolvida para predição sequência a sequência na tradução automática.

Depois de ler esta postagem, você saberá:

  • O modelo do Facebook AI Research que usa o modelo Codificador-Decodificador com um codificador de rede neural convolucional.
  • O modelo Brutalk Watson que usa o modelo Codificador-Decodificador com indicação e atenção hierárquica.
  • O modelo Stanford / Google que usa o modelo Encoder-Decoder com apontamento e cobertura.

Comece seu projeto com meu novo livro Deep Learning for Natural Language Processing, incluindo tutoriais passo a passo e a Código-fonte Python arquivos para todos os exemplos.

Vamos começar.

Modelos de aprendizado profundo codificador-decodificador para resumo de texto

Modelos de aprendizado profundo codificador-decodificador para resumo de texto
Fotos de Hiếu Bùi, alguns direitos reservados.

Visão geral dos modelos

Veremos três modelos diferentes de sumarização de texto, nomeados em homenagem às organizações às quais os autores dos modelos eram afiliados no momento da redação:

  1. Modelo do Facebook
  2. Modelo Brutalk
  3. Modelo do Google

Precisa de ajuda com Deep Learning for Text Data?

Faça meu curso intensivo de e-mail gratuito de 7 dias agora (com código).

Clique para se inscrever e também obter uma versão gratuita do Ebook em PDF do curso.

Comece Seu Crash-Course GRÁTIS Agora

Modelo do Facebook

Esta abordagem foi descrita por Alexander Rush, et al. do Facebook AI Research (FAIR) em seu artigo de 2015 “Um modelo de atenção neural para resumos de frases abstrativas“.

O modelo foi desenvolvido para sumarização de sentenças, especificamente:

Dada uma frase de entrada, o objetivo é produzir um resumo condensado. […] Um sumarizador pega x como entrada e produz uma frase encurtada y de comprimento N

Este é um problema mais simples do que, digamos, o resumo completo do documento.

A abordagem segue a abordagem geral usada para tradução automática neural com um codificador e um decodificador. Três decodificadores diferentes são explorados:

  • Codificador Bag-of-Words. A frase de entrada é codificada usando um modelo de saco de palavras, descartando as informações de ordem das palavras.
  • Codificador Convolucional. Uma representação de incorporação de palavras é usada seguida por camadas convolucionais de retardo de tempo entre palavras e camadas de agrupamento.
  • Codificador baseado em atenção. Uma representação de incorporação de palavras é usada com um mecanismo de atenção simples sobre um vetor de contexto, fornecendo um tipo de alinhamento suave entre a frase de entrada e o resumo de saída.

Diagrama de rede de elementos codificadores e decodificadores

Diagrama de rede de elementos codificadores e decodificadores
Retirado de “Um modelo de atenção neural para sumarização de sentenças abstrativas”.

Uma pesquisa de feixe é então usada na geração de resumos de texto, não muito diferente da abordagem usada na tradução automática.

O modelo foi avaliado no conjunto de dados padrão DUC-2014, que envolve a geração de resumos de aproximadamente 14 palavras para 500 artigos de notícias.

Os dados para esta tarefa consistem em 500 artigos de notícias dos serviços do New York Times e da Associated Press Wire, cada um emparelhado com 4 diferentes resumos de referência gerados por humanos (não realmente manchetes), limitados a 75 bytes.

O modelo também foi avaliado no conjunto de dados Gigaword de aproximadamente 9,5 milhões de artigos de notícias, onde um título foi gerado a partir da primeira frase do artigo de notícias.

Os resultados foram relatados em ambos os problemas usando as medidas ROUGE-1, ROUGE-2 e ROUGE-L e o sistema ajustado demonstrou alcançar resultados de última geração no conjunto de dados DUC-2004.

O modelo mostra ganhos de desempenho significativos na tarefa compartilhada DUC-2004 em comparação com várias linhas de base fortes.

Modelo Brutalk

Esta abordagem foi descrita por Ramesh Nallapati, et al. da Brutalk Watson em seu artigo de 2016 “Resumo de texto abstrativo usando RNNs de sequência para sequência e além”.

A abordagem é baseada na rede neural recorrente codificador-decodificador com atenção, desenvolvida para tradução automática.

Nosso modelo de linha de base corresponde ao modelo de tradução automática neural usado em Bahdanau et al. (2014). O codificador consiste em um GRU-RNN bidirecional (Chung et al., 2014), enquanto o decodificador consiste em um GRU-RNN unidirecional com o mesmo tamanho de estado oculto do codificador e um mecanismo de atenção sobre a fonte -estados ocultos e uma camada soft-max sobre o vocabulário alvo para gerar palavras.

Uma incorporação de palavras para palavras de entrada é usada, além de uma incorporação de classes gramaticais marcadas e recursos discretizados de TF e IDF. Essa representação de entrada mais rica foi projetada para fornecer ao modelo um melhor desempenho na identificação de conceitos e entidades-chave no texto de origem.

O modelo também usa um mecanismo de troca de aprendizagem para decidir se deve ou não gerar uma palavra de saída ou apontar para uma palavra na sequência de entrada, projetado para lidar com palavras raras e de baixa frequência.

… O decodificador é equipado com uma 'chave' que decide entre usar o gerador ou um ponteiro a cada intervalo de tempo. Se a chave estiver ligada, o decodificador produzirá uma palavra de seu vocabulário de destino da maneira normal. No entanto, se a chave estiver desligada, o decodificador gera um ponteiro para uma das posições de palavra na fonte.

Finalmente, o modelo é hierárquico no sentido de que o mecanismo de atenção opera tanto no nível da palavra quanto no nível da frase nos dados de entrada codificados.

Codificador hierárquico com atenção hierárquica

Codificador hierárquico com atenção hierárquica.
Retirado de "Resumo de texto abstrativo usando RNNs de sequência para sequência e além".

Um total de 6 variantes da abordagem foram avaliadas no conjunto de dados DUC-2003/2004 e no conjunto de dados Gigaword, ambos usados ​​para avaliar o modelo do Facebook.

O modelo também foi avaliado em um novo corpus de notícias dos sites da CNN e do Daily Mail.

A abordagem da Brutalk obteve resultados impressionantes nos conjuntos de dados padrão em comparação com a abordagem do Facebook e outras.

… Aplicamos o codificador-decodificador atencional para a tarefa de sumarização abstrativa com resultados muito promissores, superando os resultados de última geração significativamente em dois conjuntos de dados diferentes.

Modelo do Google

Esta abordagem foi descrita por Abigail See, et al. de Stanford em seu artigo de 2017 "Get To The Point: Summarization with Pointer-Generator Networks."

Um nome melhor pode ser “Modelo de Stanford”, mas estou tentando vincular este trabalho ao post de 2016 do coautor Peter Liu (do Google Brain) intitulado “Resumo de texto com TensorFlow” no Blog de Pesquisa do Google.

Em sua postagem no blog, Peter Liu, et al. no Google Brain apresenta um modelo TensorFlow que aplica diretamente o modelo codificador-decodificador usado para tradução automática para gerar resumos de frases curtas para o conjunto de dados Gigaword. Eles afirmam resultados melhores do que o estado da arte para o modelo, embora nenhuma redação formal dos resultados seja apresentada além de um documento de texto fornecido com o código.

Em seu artigo, Abigail See, et al. descrevem duas deficiências principais das abordagens de aprendizagem profunda para o resumo de texto abstrativo: elas produzem erros factuais e se repetem.

Embora esses sistemas sejam promissores, eles exibem um comportamento indesejável, como a reprodução incorreta de detalhes factuais, uma incapacidade de lidar com palavras fora do vocabulário (OOV) e se repetem

Sua abordagem é projetada para resumir várias sentenças em vez de resumo de uma única sentença e é aplicada ao conjunto de dados CNN / Daily Mail usado para demonstrar o modelo Brutalk. Os artigos neste conjunto de dados são compostos por aproximadamente 39 frases, em média.

Um modelo básico de codificador-decodificador é usado com incorporação de palavras, LSTMs bidirecionais para entrada e atenção. É explorada uma extensão que usa apontar para palavras nos dados de entrada para endereçar palavras fora do vocabulário, semelhante à abordagem usada no modelo Brutalk. Finalmente, um mecanismo de cobertura é usado para ajudar a reduzir a repetição na saída.

Modelo de gerador de ponteiro para resumo de texto

Modelo de gerador de ponteiro para resumo de texto
Retirado de “Get To The Point: Summarization with Pointer-Generator Networks.”

Os resultados são relatados usando pontuações ROUGE e METEOR, mostrando desempenho de ponta em comparação com outros métodos abstrativos e pontuações que desafiam os modelos extrativos.

Nosso modelo de gerador de ponteiro com cobertura melhora ainda mais as pontuações ROUGE e METEOR, superando de forma convincente os melhores [compared] modelo abstrativo ...

Os resultados mostram que o modelo seq-a-seq de linha de base (codificador-decodificador com atenção) pode ser usado, mas não produz resultados competitivos, mostrando o benefício de suas extensões para a abordagem.

Descobrimos que ambos os nossos modelos de linha de base têm um desempenho fraco em relação a ROUGE e METEOR e, de fato, o tamanho do vocabulário maior (150k) não parece ajudar. … Os detalhes factuais são freqüentemente reproduzidos incorretamente, freqüentemente substituindo uma palavra incomum (mas dentro do vocabulário) por uma alternativa mais comum.

Leitura Adicional

Esta seção fornece mais recursos sobre o tópico se você estiver procurando ir mais fundo.

Resumo

Nesta postagem, você descobriu modelos de aprendizado profundo para resumo de texto.

Especificamente, você aprendeu:

  • O modelo do Facebook AI Research que usa o modelo codificador-decodificador com um codificador de rede neural convolucional.
  • O modelo Brutalk Watson que usa o modelo Codificador-Decodificador com indicação e atenção hierárquica.
  • O modelo Stanford / Google que usa o modelo Encoder-Decoder com apontamento e cobertura.

Você tem alguma pergunta?
Tire suas dúvidas nos comentários abaixo e farei o possível para responder.

Desenvolva modelos de aprendizado profundo para dados de texto hoje!

Aprendizado profundo para processamento de linguagem natural

Desenvolva seus próprios modelos de texto em minutos

... com apenas algumas linhas de código python

Descubra como em meu novo Ebook:
Aprendizado profundo para processamento de linguagem natural

Ele fornece tutoriais de auto-estudo em tópicos como:
Saco de palavras, incorporação de palavras, modelos de linguagem, geração de legendas, tradução de texto e muito mais...

Finalmente, leve o aprendizado profundo para seus projetos de processamento de linguagem natural

Ignore os acadêmicos. Apenas resultados.

Veja o que há dentro

Você também pode estar interessado em