Vamos compreender o que é processamento de linguagem natural?

Vamos compreender o que é processamento de linguagem natural?

Fonte: imagem produzida pelo Flow, com a logo da Velip e prompts do redator.

 

Redator: Heitor Augusto Colli Trebien

 

Primeiro, o que é processamento de linguagem natural? 

 

Caselli e Volpe (2024) explicam que o processamento de linguagem natural (PLN) é uma área de pesquisa que estuda e cria métodos e sistemas computacionais capazes de processar a linguagem humana. 

O termo “natural”, então, faz referência às línguas utilizadas no dia a dia pelas pessoas (como português e inglês), diferenciando-as de outras linguagens, como a matemática e a de programação. Na Ciência da Computação, o PLN está ligado à Inteligência Artificial e também se relaciona com a Linguística Computacional.

Em geral, o PLN busca resolver tarefas e problemas que exigem que o computador trabalhe com uma língua escrita (textos) ou falada (fala). Os estudos com a linguagem de sinais também estão se desenvolvendo, com características próprias, por envolver a imagem em movimento, e não o texto ou o som. 

Cada meio de comunicação vai apresentar particularidades. No caso da fala, aspectos como entonação, volume e sotaque podem dificultar ou facilitar o processamento — ajudando, por exemplo, a identificar emoções e intenções do falante.

Apesar das diferenças entre escrita, fala e sinais, todas compartilham o grande desafio do PLN: fazer o computador compreender o significado do que está sendo dito, escrito ou transmitido pelo usuário.

 

Quais são as principais áreas do PLN? 

 

Segundo Caselli e Volpe (2024), o processamento de linguagem natural (PLN) possui duas grandes subáreas: a interpretação ou compreensão de linguagem natural (NLU natural language understanding) e a geração de linguagem natural (NLGnatural language generation). 

 

A NLU – compreensão de linguagem natural

 

A NLU reúne os processos que buscam analisar e interpretar a língua. A análise consiste em separar e classificar os elementos linguísticos, como palavras, suas categorias gramaticais, morfológicas, fonéticas, fonológicas e de sentido. 

Já a interpretação tenta compreender os significados que as pessoas constroem ao usar a língua na prática. Em uma conversa com um chatbot, por exemplo, essa interpretação acontece quando o sistema lê a mensagem do usuário e decide o que fazer em seguida, como responder ou realizar uma ação. 

As autoras ressaltam que, em muitas aplicações, não é necessário que a máquina entenda exatamente o mesmo significado que o humano pretendia, pois interpretações aproximadas podem ser suficientes para solucionar uma demanda.

 

A NLG – geração de linguagem natural

 

Na área de NLG, o foco é gerar língua natural, como acontece quando chatbots produzem respostas para os usuários. Para isso, o sistema precisa decidir o que dizer e de que forma apresentar essa resposta. 

Um exemplo bem sucedido é o ChatGPT, que consegue gerar textos com uma organização similar ao que o humano produz. 

Caselli e Volpe (2024) informam que existem alguns conceitos importantes usados para classificar sistemas de PLN de acordo com seu uso, como: ferramentas, recursos e aplicações.

 

Como compreender o que são ferramentas, recursos e aplicações para o PLN?

 

Em PLN, as ferramentas são usadas para construir aplicações, que podem ser sistemas ou aplicativos. Essas aplicações recebem informações em língua natural, como texto ou fala, e devolvem um resultado ao usuário. 

Para funcionar, elas utilizam ferramentas ou conjuntos de ferramentas chamadas toolkits e dependem de recursos, que oferecem dados linguísticos importantes para que o processamento da língua seja feito corretamente.

 Caselli e Volpe (2024) destacam que as categorias “aplicação”, “ferramenta” e “recurso” não têm limites rígidos, pois tudo depende do modo como algo é utilizado. 

Um corretor ortográfico, por exemplo, pode ser um programa usado sozinho (aplicação) ou apenas uma etapa dentro de um sistema maior de correção de redações (ferramenta). 

Um tradutor automático pode ser uma aplicação completa, com entrada e saída de texto, ou servir como ferramenta para traduzir grandes conjuntos de dados e ajudar a criar recursos em línguas com menos suporte tecnológico. 

Um dicionário digital pode ser considerado um recurso linguístico, mas também pode funcionar como aplicativo de consulta. 

Da mesma forma, um sumarizador pode gerar resumos para usuários ou ser usado por buscadores como parte de um sistema de busca. Ou seja, existem várias funções, vários modos de utilizar as ferramentas ou recursos para elaborar um sistema. 

No entanto, como Caselli e Volpe (2024) sintetizam, cada conceito pode ser compreendido como: 

 

  • Ferramentas: auxiliam na construção de um sistema ou aplicação. Por exemplo tokenizadores, que se referem aos segmentadores textuais que separam textos e parágrafos para analisar e completar as partes faltantes. Similar aos exercícios de completar que fazemos quando aprendemos uma língua nova. Outros exemplos são os Stemmers, que são extratores de raízes das palavras, e os lematizadores, que etiquetam as variações de pessoa e do tempo dos verbos, considerando o caráter semântico e morfossintático.  
  • Recursos: indicam fontes de informação linguística, como corpus ou corpora, dicionários, léxicos, taxonomias, lista de palavras, modelos estatísticos e neurais, entre outros. 
  • Aplicações: processam entrada e saída de dados, como tradutor automático, corretor ortográfico, chatbot (como o ChatGPT), assistentes virtuais. 

 

Assim, pensando à grosso modo, as aplicações são a última etapa. Mas quando construímos um sistema, podemos implementar uma aplicação dentro de outra como um recurso extra. 

 

Um exemplo prático de utilização dos conceitos 

 

Na Velip, oferecemos a plataforma Velip One, nossa aplicação que permite programar SMS, torpedo de voz, agentes de IA e mensagens do WhatsApp. 

Dentro de nossa plataforma, oferecemos atendimento virtual, a Vel, que ajuda o usuário a navegar pelos recursos do sistema, como onde subir a base de dados para realizar as ligações. 

Assim, temos uma aplicação dentro de outra para oferecer um serviço mais completo. Ao mesmo tempo, nosso sistema pode ser considerado uma ferramenta de comunicação, para realizar os contatos que a empresa precisa. 

Percebe-se a flexibilidade de usos que a tecnologia tem, o que possibilita uma diversidade de aplicações e estratégias para solucionar problemas. 

 

Velip: a inteligência artificial que te conecta com o futuro

 

Referências

 

CASELI, H. M.; VOLPE, M. G. (org.). Processamento de Linguagem Natural: Conceitos, Técnicas e Aplicações em Português– 2a. Edição. São Carlos: BPLN, 2024. Disponível em: https://brasileiraspln.com/livro-pln/2a-edicao.