O que é processamento de linguagem natural (PLN)?

O processamento de linguagem natural (PLN) permite que os computadores interpretem a linguagem humana.

Objetivos de aprendizado

Após ler este artigo, você será capaz de:

  • Definir processamento de linguagem natural (PLN)
  • Entenda como funciona o PLN
  • Comparar o PLN com outros tipos de inteligência artificial (IA)

Copiar o link do artigo

O que é Processamento de Linguagem Natural (PLN)?

O processamento de linguagem natural (PLN) é um método que os programas de computador podem usar para interpretar a linguagem humana. O PLN é um tipo de inteligência artificial (IA). Os modelos modernos de PLN são criados principalmente por meio do aprendizado de máquina e também se baseiam no campo da linguística, o estudo do significado da linguagem.

Todos os computadores podem interpretar comandos e instruções em linguagens amigáveis aos computadores. Por exemplo, um computador (especificamente, um aplicativo de navegador) pode entender e interpretar códigos JavaScript como:


window.addEventListener("scroll", popup);

function popup() {
window.alert("Hello, world!");
}

Mas ele não consegue entender e interpretar textos em linguagem natural, como por exemplo:


Se o usuário rolar a tela, mostre um alerta que diz "Hello, world!"

No entanto, um programa de computador com processamento de linguagem natural pode ser capaz de entender a frase acima, mesmo que não consiga executar o comando.

Embora as linguagens de programação sejam a melhor maneira de dar comandos aos computadores, o processamento de linguagem natural permite que os programas de computador realizem uma ampla variedade de tarefas com a linguagem humana, tanto falada quanto escrita. Por exemplo, ele pode ajudar a processar grandes coleções de dados de gravações de voz e textos escritos, automatizar interações com usuários humanos ou interpretar consultas de usuários.

Outros usos do PLN incluem:

  • Análise de sentimento: o PLN pode ajudar a interpretar grandes volumes de comentários de usuários, posts em mídias sociais ou solicitações de atendimento ao cliente.
  • Assistentes virtuais: o PLN é essencial para entender as solicitações dos usuários de assistentes como Siri, Alexa ou Cortana.
  • Mecanismos de pesquisa: o PLN ajuda os mecanismos de pesquisa a entender melhor a intenção da pesquisa por trás de consultas simples, de uma palavra, e consultas digitadas como frases ou perguntas, além de interpretar erros de ortografia ou outros erros humanos nas consultas.
  • Tradução: o PLN pode ajudar a entender e traduzir o conteúdo de um idioma para outro.
  • Moderação de conteúdo: o PLN pode ajudar a sinalizar conteúdo possivelmente prejudicial ou questionável, interpretando o significado do texto gerado pelo usuário.

Como funciona o processamento de linguagem natural (PLN)?

O PLN usa o aprendizado de máquina para analisar estatisticamente o conteúdo gerado por humanos e aprende a interpretá-lo. Durante o processo de treinamento, os modelos de PLN são alimentados com exemplos de palavras e frases no contexto, juntamente com suas interpretações. Por exemplo, um modelo de PLN pode não entender quando a palavra "laranja" significa a cor em vez da fruta. Mas depois de ver milhares de exemplos, frases como "Eu como uma laranja" ou "Este carro é laranja", o modelo pode começar a entender a palavra e interpretar corretamente a diferença entre seus significados.

Dada a complexidade e as inconsistências da linguagem humana, o PLN geralmente é desenvolvido com base na aprendizagem profunda, que é um tipo mais avançado de aprendizagem de máquina. Os modelos de aprendizagem profunda podem processar dados brutos não rotulados, embora precisem de grandes quantidades de dados para serem treinados adequadamente. A aprendizagem profunda também requer uma grande capacidade de processamento.

O que é pré-processamento de PLN?

O pré-processamento de PLN é a preparação do texto bruto para análise por um programa ou modelo de aprendizado de máquina. O pré-processamento de PLN é necessário para colocar o texto em um formato que os modelos de aprendizagem profunda possam analisar com mais facilidade.

Há vários métodos de pré-processamento de PLN que são usados em conjunto. Os principais são:

  • Conversão para minúsculas: em termos do significado de uma palavra, há pouca diferença entre maiúsculas e minúsculas. Portanto, a conversão de todas as palavras em minúsculas é mais eficiente porque muitos programas de computador diferenciam maiúsculas de minúsculas e podem tratar desnecessariamente as versões em maiúsculas das palavras de forma diferente.
  • Stemming: isso reduz as palavras à sua raiz ou ao "tronco" , removendo terminações como "-ing" ou "-tion" (por exemplo. "transporting" e "transportation" ambos se tornam "transport").
  • Lematização: essa técnica de PLN reduz as palavras à forma primária que pode ser encontrada em um dicionário. Os substantivos plurais ou possessivos tornam-se singulares: "neighbor's" " neighbors'" e "neighbors" tornam-se "neighbor", por exemplo. Os verbos se tornam sua forma não conjugada: "went" e "goes" se tornam "go."
  • Tokenização: divide o texto em partes menores que indicam o significado. As peças geralmente são compostas de frases, palavras individuais ou subpalavras (o prefixo "un-" é um exemplo de subpalavra).
  • Remoção de palavras de parada: muitas palavras são importantes para a gramática ou para a clareza quando as pessoas conversam entre si, mas não acrescentam muito significado a uma frase e não são necessárias para o processamento da linguagem em um programa de computador. Essas palavras são chamadas de "palavras de parada (stop words)" no contexto do PLN, e a remoção das palavras de parada as retira do texto. Por exemplo, na frase "I went to college for four years,", as palavras "to" e "for" são essenciais para que a frase soe inteligível aos ouvidos humanos, mas não são necessárias para transmitir o significado. A versão com a remoção de palavras seria: "I went college four years."

Qual é a diferença entre PLN e modelos de linguagem grande (LLMs)?

Um modelo de linguagem grande (LLM) é um tipo de modelo de aprendizado de máquina que pode compreender textos gerados por humanos e gerar resultados que soam naturais. Os LLMs, como o ChatGPT, amplamente utilizado, são treinados em conjuntos de dados de texto muito grandes.

Há uma certa sobreposição entre os termos PLN e LLM: ambos usam aprendizado de máquina, grandes conjuntos de dados e treinamento para interpretar a linguagem humana. De fato, algumas fontes definem o LLM como sendo um tipo de PLN.

No entanto, os LLMs diferem dos modelos de PLN de várias maneiras importantes:

  • O PLN geralmente é treinado para uma tarefa específica, enquanto os LLMs têm uma ampla gama de usos.
  • O PLN fornece percepções e interpretações, enquanto os LLMs produzem textos estatisticamente relevantes, mas que podem não transmitir uma compreensão do significado subjacente (embora muitos LLMs avançados possam facilmente dar a impressão de fazê-lo)
  • Por terem uma gama tão ampla de usos, os LLMs exigem muito mais dados e treinamento do que os modelos de PLN

Por exemplo, um modelo de PLN seria mais útil para a análise de sentimentos, enquanto um LLM funcionaria bem para ser incorporado a um chatbot que interage com os clientes. Ou, um modelo de PLN poderia ajudar um mecanismo de pesquisa a interpretar a consulta de um usuário e gerar resultados de pesquisa relevantes, enquanto um LLM poderia escrever sua própria resposta à consulta com base na análise estatística de conteúdo relevante preexistente.

Comparação entre PLN, LLMs e IA generativa

O PLN também é diferente da IA generativa, embora esteja relacionado a ela. A IA generativa é um modelo de aprendizagem profunda que pode gerar texto, áudio, vídeo, imagens ou código. Os modelos de PLN, por outro lado, geralmente não são projetados para gerar texto algum. Os LLMs, por sua vez, também são um tipo de IA generativa, pois podem produzir texto em resposta a consultas.

Como a Cloudflare permite o desenvolvimento de modelos de PLN?

A Cloudflare permite que desenvolvedores executem a aprendizagem profunda avançada em GPUs em todo o mundo, dando-lhes acesso ao poder de computação de que precisam para treinar modelos de IA, com latência mínima. E o Cloudflare R2 é um método de armazenamento econômico para a grande quantidade de dados em que a PLN baseada em aprendizagem profunda deve ser treinada. Saiba mais sobre a Cloudflare para IA.