Processamento de linguagem natural (NLP): o que é e como funciona

O processamento de linguagem natural está em todo lugar, permitindo um mundo mais tecnológico e prático. Entenda mais sobre como funciona e onde é aplicado.


Você já utilizou alguma assistente virtual para pesquisar alguma coisa no celular ou para automatizar alguma tarefa importante? Se você tem um smartphone, provavelmente já fez isso. 

Ao interagir com o dispositivo dessa forma, as pessoas usuárias estão lidando com uma aplicação de processamento de linguagem natural (NLP): a interpretação da linguagem humana, em uma versão comercializada que se tornou praticamente parte do dia a dia.

A NLP é um campo crescente no universo de machine learning e é uma das tendências atuais de Data Science. Novas aplicações surgem frequentemente, assim como novas formas de resolver problemas clássicos nesse ramo. 

O centro dessa tecnologia é o fato de que cientistas estão sempre tentando chegar a melhores maneiras de fazer os computadores entenderem o ser humano e a linguagem humana, de modo que eles se tornem mais úteis às nossas necessidades.

Para adentrar esse mundo e aprender mais sobre o que é NLP e como ela funciona, é só conferir com atenção os tópicos abaixo.

O que é o processamento de linguagem natural? 

O processamento de linguagem natural (Natural Processing Language - NLP) é uma área da ciência da computação que combina computação, linguística e até filosofia da linguagem para estudar como fazer computadores entenderem a linguagem natural humana. Assim, trata-se de um conjunto de técnicas que ajudam as máquinas a processarem textos e falas, a fim de decodificar o seu significado e seu contexto.

Isso é, digamos, uma tarefa bastante desafiadora. Até mesmo humanos sofrem com interpretações errôneas de coisas que leram ou ouviram de outros humanos, sendo que nós utilizamos o mesmo código. Então, traduzir esse código para um sistema que opera majoritariamente com números é uma dificuldade que tem mantido cientistas da computação acordados à noite há décadas.

Leia também: 5 tendências de Data Science para 2021 | Digital Trends 

Felizmente, com o avanço das estratégias de aprendizado de máquina e de deep learning, tivemos um avanço significativo na área de NLP. Hoje, tornou-se relativamente fácil desenvolver soluções práticas na área, visto que existem muitas ferramentas prontas que abstraem todo o trabalho pesado.

Como funciona essa tecnologia

Para fins de organização, podemos dividir a área de Natural Language Processing em três principais subáreas: a análise de sentimentos, a análise de intenção e a categorização da informação.

A análise de sentimentos consiste no uso das ferramentas de NLP a fim de extrair o sentimento de uma frase ou sentença. Geralmente, utilizam-se classificações binárias, como positivo ou negativo.

analise-de-sentimentos

Visão do processo de Análise de Sentimentos proposta pelo pesquisador Marcello Bax. Fonte: ResearchGate]

A análise de intenção (que concentra a maioria das aplicações) busca identificar a intenção e o significado por trás de um determinado texto ou fala. Já a categorização intenciona apenas separar o conteúdo em classes principais.

categorizacao-ibm-grafico

Exemplo de categorização. Fonte: Impacting Digital

Para isso, as soluções de processamento fazem análises morfológicas, lexicais, fonológicas, sintáticas, semânticas e discursivas.

Lidam com a forma como as palavras são compostas (morfológica), com interpretação de cada palavra em específico (léxica), com a pronúncia e o som das palavras (fonológica), com a estrutura das palavras em uma frase e seu relacionamento com outras (sintática), com o significado geral de uma sentença (semântico) e com o significado geral de várias sentenças (discursiva).

Dentro dessas etapas, aplicam-se algumas estratégias de processamento. Podemos mencionar: 

  • a stemização e lematização, que reduzem as palavras ao seu aspecto mais importante, o seu radical ou forma-raiz (remove sufixo e transforma a palavra na forma masculina singular ou infinitiva correspondente, por exemplo); 

  • a remoção de stopwords, que remove as palavras que não importam muito para o objetivo da análise (como “a”, “de”);

  • normalização, que adapta as palavras a um padrão para análise;

  • e tokenização, que é a transformação das palavras em pequenas variáveis.

No contexto do machine learning, o processamento de linguagem natural se torna poderoso, pois permite que a máquina seja treinada com milhares/milhões de dados e consiga entender os padrões dela. Por exemplo, em uma análise de sentimento de textos de redes sociais, conseguimos realizar um treinamento prévio para que o modelo aprenda como as características levam a determinadas saídas.

Já o reconhecimento de voz, por exemplo, pode usar o conceito de deep learning, com as redes neurais profundas.

Desafios do uso de NLP

Um dos grandes desafios da NLP é justamente a complexidade de uma língua corrente. É muito difícil mapear para um computador o uso de um idioma, pois ele varia bastante a depender da região e do período. As palavras se tornam obsoletas cada vez mais rápido com a internet, por exemplo.

Assim, é complexo adaptar gírias, variações linguísticas e expressões mais específicas para uma aplicação de machine learning.

O problema específico da tradução com processamento de linguagem natural (que, como veremos, é um dos casos de uso mais comuns) sofre com outro grande desafio: o de não ter dados suficientes para permitir o treinamento do algoritmo. Algumas línguas mais específicas apresentam essa situação.

5 Exemplos de NLP para entender essa tecnologia

Nesta seção, vamos conhecer um pouco do universo prático do natural language processing. Vamos entender quais são essas aplicações tão empolgantes hoje em dia.

1. Assistentes virtuais e chatbots

Podemos começar com o exemplo que demos no início deste texto. As assistentes virtuais são construídas com os princípios da NLP para que consigam entender as requisições das pessoas e sejam capazes, até, de desenvolver uma conversa. 

Elas analisam os textos enviados, quebram em tokens, transformam palavras em números e realizam todo o processamento que citamos para captar e entender a intenção.

2. Resultados de busca do Google

Outro grande uso, que inclusive impulsionou a tecnologia nos últimos anos, foi no mercado de buscadores da internet. A gigante Google adota algoritmos de NLP para entender a intenção de busca das pessoas usuárias e conseguir direcionar as páginas que melhor atendem ao objetivo pesquisado. 

É mais um caso de análise de intenção que se vale muito de técnicas como stemização e lematização.

3. Tradutores

Hoje, temos também aplicações que traduzem textos de uma língua para outra. O próprio Google Tradutor é um exemplo de um algoritmo de machine learning com processamento de linguagem natural por trás. Esse sistema analisa uma frase e o seu significado geral para então transpor para outro código, que é outro idioma.

4. Análise de sentimentos

A área de análise de sentimentos é muito usada para diversas aplicações. Uma empresa pode adotá-la para entender se as menções à empresa na rede são positivas ou não e, então, mobilizar o departamento de relações públicas para melhorar os resultados. 

Da mesma forma, pessoas que se candidatam na política ou governantes podem utilizar NLP para identificar se a comunidade aprova ou não seus projetos e ideias.

5. Filtros de spam

Outro uso comum que nos afeta no dia a dia: o filtro de spam. Parece trivial, mas na verdade ele utiliza o natural language processing para identificar características de spam nos corpos e títulos de mensagens mandadas por e-mail. Além disso, o sistema gerenciador também utiliza esses sistemas inteligentes para dividir e-mails em categorias, como acontece no Gmail, por exemplo.

….

O processamento de linguagem natural é uma tecnologia extremamente rica e cheia de possibilidades incríveis para quem deseja aprender sobre ela. Trata-se de uma grande opção para quem se interesse por Data Science e por machine learning, visto que continuará muito importante na medida em que chatbots e assistentes, principalmente, permanecerem como parte do nosso dia a dia.

Gostou do artigo? Então continue seu desenvolvimento e entenda melhor as diferenças entre machine learning e deep learning.