Processamento de texto e linguagem natural com TensorFlow,Processamento de texto e linguagem natural com TensorFlow

Antes de poder treinar um modelo em dados de texto, normalmente você precisará processar (ou pré-processar) o texto. Em muitos casos, o texto precisa ser tokenizado e vetorizado antes de ser alimentado a um modelo e, em alguns casos, o texto requer etapas adicionais de pré-processamento, como normalização e seleção de recursos.

Depois que o texto é processado em um formato adequado, você pode usá-lo em fluxos de trabalho de processamento de linguagem natural (NLP), como classificação de texto, geração de texto, resumo e tradução.

O TensorFlow fornece duas bibliotecas para processamento de texto e linguagem natural: KerasNLP ( GitHub ) e TensorFlow Text ( GitHub ).

KerasNLP é uma biblioteca de modelagem NLP de alto nível que inclui todos os modelos baseados em transformadores mais recentes, bem como utilitários de tokenização de nível inferior. É a solução recomendada para a maioria dos casos de uso de PNL. Construído no TensorFlow Text, o KerasNLP abstrai as operações de processamento de texto de baixo nível em uma API projetada para facilitar o uso. Mas se você preferir não trabalhar com a API Keras ou precisar de acesso às operações de processamento de texto de nível inferior, poderá usar o TensorFlow Text diretamente.

KerasNLP

A maneira mais fácil de começar a processar texto no TensorFlow é usar o KerasNLP . O KerasNLP é uma biblioteca de processamento de linguagem natural que oferece suporte a fluxos de trabalho criados a partir de componentes modulares com pesos e arquiteturas predefinidos de última geração. Você pode usar os componentes do KerasNLP com sua configuração pronta para uso. Se precisar de mais controle, você pode personalizar facilmente os componentes. O KerasNLP fornece computação gráfica para todos os fluxos de trabalho, para que você possa esperar uma fácil produção usando o ecossistema TensorFlow.

O KerasNLP contém implementações de ponta a ponta de arquiteturas de modelos populares como BERT e FNet . Usando modelos, camadas e tokenizadores KerasNLP, você pode concluir muitos fluxos de trabalho NLP de última geração, incluindo tradução automática , geração de texto , classificação de texto e treinamento de modelo de transformador .

O KerasNLP é uma extensão da API principal do Keras, e todo módulo KerasNLP de alto nível é uma Layer ou Model . Se você está familiarizado com o Keras, já entende a maior parte do KerasNLP.

Texto do TensorFlow

KerasNLP fornece módulos de processamento de texto de alto nível que estão disponíveis como camadas ou modelos. Se precisar de acesso a ferramentas de nível inferior, você pode usar o TensorFlow Text . O TensorFlow Text fornece operações e bibliotecas para ajudá-lo a trabalhar com strings e documentos de texto bruto. O TensorFlow Text pode executar o pré-processamento regularmente exigido por modelos baseados em texto e também inclui outros recursos úteis para modelagem de sequência.

Usando o TensorFlow Text, você pode fazer o seguinte:

  • Aplique tokenizers ricos em recursos que podem dividir strings em espaços em branco, separar palavras e pontuação e retornar deslocamentos de bytes com tokens, para que você saiba onde uma string pode ser encontrada no texto de origem.
  • Verifique se um token corresponde a um padrão de string especificado. Você pode verificar letras maiúsculas, pontuação, dados numéricos e outros recursos de token.
  • Combine tokens em n-gramas.
  • Processe o texto no gráfico do TensorFlow para que a tokenização durante o treinamento corresponda à tokenização na inferência.

Onde começar

Os recursos a seguir ajudarão você a começar a usar o processamento de texto do TensorFlow: