Skip to main content
O Dreamforce está chegando em São Francisco entre 17 e 19 de setembro. Registre-se agora e economize 20% usando o código DF24TRAIL20

Conheça o processamento de linguagem natural

Objetivos de aprendizagem

Após concluir esta unidade, você estará apto a:

  • Descrever o processamento de linguagem natural.
  • Discutir os usos cotidianos do processamento de linguagem natural.
  • Explicar como ele evoluiu desde os anos 50.
  • Diferenciar entre o processamento de linguagem natural, o entendimento de linguagem natural e a geração de linguagem natural.

Antes de começar

Este emblema contém termos como redes neurais e aprendizagem profunda que estão descritos em detalhes nos emblemas Noções básicas de inteligência artificial e Noções básicas de IA generativa. Recomendamos que você conquiste primeiro esses emblemas.

O que é processamento de linguagem natural?

Processamento de linguagem natural é um campo da inteligência artificial (IA) que combina ciência da computação e linguística para dar aos computadores a capacidade de entender, interpretar e gerar linguagem humana de forma que seja relevante e útil aos humanos.

O PLN ajuda os computadores a desempenhar tarefas úteis, como: compreender o significado de frases, reconhecer detalhes importantes no texto, traduzir texto que está em outros idiomas, responder a perguntas, resumir texto e gerar respostas idênticas às dos humanos.

O PLN já é tão comum nas nossas vidas que não costumamos nem perceber quando interagimos com ele ou quando ele faz algo por nós. Por exemplo, é possível que seu aplicativo de e-mail ou de criação de documentos sugira automaticamente uma frase ou uma palavra que você poderia usar. Você pode pedir a um assistente virtual como a Siri para lembrar que suas plantas têm que ser regadas às quintas. Ou pode pedir à Alexa que conte detalhes sobre o último grande terremoto no Chile para o projeto de ciências da sua filha.

Os chatbots com que você interage quando fala com o atendimento ao cliente de uma empresa usam PLN, bem como o aplicativo de tradução que você usa para ajudar a pedir uma refeição em outro país. A detecção de spam, as preferências de notícias online e muito mais dependem de PLN.

Uma breve história do PLN

Convém mencionar que o PLN não é novidade. Na verdade, seus primórdios são na década de 50, quando pesquisadores começaram a usar computadores para entender e gerar linguagem humana. Uma das primeiras contribuições notáveis ao PLN é o Teste de Turing. Desenvolvido por Alan Turing, esse teste mede a capacidade de uma máquina de responder a qualquer pergunta de maneira indistinta da de um humano. Pouco depois disso, os primeiros sistemas de tradução automática foram desenvolvidos. Eram experimentos de tradução de idioma baseado em frases e períodos que não tiveram muito progresso porque dependiam de padrões de linguagem muito específicos, como frases ou períodos predefinidos.

Um computador tipo mainframe de 1950 sendo operado por um cientista da computação.

Na década de 60, os pesquisadores estavam experimentando sistemas baseados em regras que permitiam que os usuários pedissem ao computador para concluir tarefas ou ter conversas.

Os anos 70 e 80 viram abordagens mais sofisticadas baseadas em conhecimento com regras linguísticas, raciocínio baseado em regras e conhecimento de domínio para tarefas como execução de comandos e diagnóstico de condições de saúde.

As abordagens estatísticas (ou seja, aprender com dados) de PLN foram populares nos anos 90 e no início dos anos 2000, o que levou a avanços no reconhecimento de fala, na tradução automática e nos algoritmos de máquina. Durante esse período, o surgimento da World Wide Web em 1993 disponibilizou prontamente grandes quantidades de dados baseados em texto para a pesquisa de PLN.

Uma pilha de papéis e livros.

Desde 2009, as redes neurais e a aprendizagem profunda vêm dominando a pesquisa e o desenvolvimento de PLN. As áreas de tradução e geração de linguagem natural do PLN, incluindo o recém-lançado ChatGPT, melhoraram bastante e continuam a evoluir rapidamente.

Nota

Nota: 

para obter mais informações sobre isso e outros avanços importantes do PLN, confira a seção Recursos abaixo.

Linguagem humana é linguagem "natural"

O que é realmente linguagem natural? Linguagem natural se refere a como os seres humanos se comunicam uns com os outros usando palavras e frases. É a linguagem que usamos em conversas, quando lemos, escrevemos ou ouvimos. A linguagem natural é a forma com que transmitimos informações, expressamos ideias, fazemos perguntas, contamos histórias e interagimos uns com os outros. Embora os modelos de PLN estejam sendo desenvolvidos para várias línguas humanas diferentes, este módulo se foca no PLN em inglês.

Se você concluiu o emblema Noções básicas de inteligência artificial, aprendeu sobre dados estruturados e não estruturados. Esses termos também são importantes no PLN. Linguagem natural, a forma como realmente falamos, é um exemplo de dados não estruturados, o que significa que embora nós, humanos, consigamos ver sentido neles, os computadores não recebem o tipo certo de detalhes para ver sentido também. O parágrafo abaixo sobre um cão para adoção é um exemplo de dados não estruturados.

Tala é uma cachorra husky de cinco anos, com 29 kg, que adora brincar no parque e fazer longas caminhadas. Ela é muito meiga com crianças e é ótima com gatos. Essa amorosa cachorra de olhos azuis tem pelo longo, cinza e branco, que necessita de ser escovado regularmente. Você pode agendar uma hora para conhecer Tala, ligando para o abrigo de Troutdale.

Para que um computador entenda o que estamos dizendo, as informações precisam ser bem definidas e organizadas, de maneira semelhante ao que poderíamos encontrar em uma planilha ou um banco de dados. Isso se chama dados estruturados. As informações incluídas nos dados estruturados e como os dados são formatados são determinados pelos algoritmos usados pelo aplicativo final desejado. Por exemplo, os dados de um aplicativo de tradução são estruturados de maneira diferente de um chatbot. Veja como os dados no parágrafo acima podem ficar como dados estruturados em um aplicativo que ajuda a corresponder cães e possíveis donos.

  • Nome: Tala
  • Idade: 5
  • Esterilizada ou castrada: Esterilizada
  • Sexo: Feminino
  • Raça: Husky
  • Peso: 29 kg
  • Cor: Cinza e branco
  • Cor dos olhos: Azul
  • Boa interação com crianças: Sim
  • Boa interação com gatos: Sim
  • Atividades favoritas: Parques, caminhadas
  • Local: Troutdale

Entendimento e geração de linguagem natural

O PLN de hoje em dia amadureceu com dois subcampos, entendimento de linguagem natural (ELN) e geração de linguagem natural (GLN). Os dados processados de não estruturados para estruturados são chamados de entendimento de linguagem natural (ELN). O ELN usa várias técnicas para interpretar linguagem escrita ou falada a fim de entender o significado e o contexto por trás dela. Você conhecerá essas técnicas na próxima unidade.

Os dados processados ao contrário, de estruturado para não estruturado, são chamados de geração de linguagem natural (GLN). GLN é o que permite que os computadores gerem linguagem parecida com a humana. A GLN envolve o desenvolvimento de algoritmos e modelos que convertem dados ou informações estruturadas em texto ou fala do tipo natural, apropriada contextualmente e relevante. Ela também inclui a geração de código em uma linguagem de programação, por exemplo, gerar uma função Python para ordenar sequências de caracteres.

Antigamente, as tarefas de ELN e GLN usavam representações estruturadas linguísticas explícitas, como árvores de análise. Embora o ELN e a GLN ainda sejam cruciais para o PLN atualmente, a maioria dos aplicativos, ferramentas e assistentes virtuais com que nos comunicamos evoluíram para o uso de aprendizagem profunda ou redes neurais a fim de realizar tarefas de ponta a ponta. Por exemplo, um sistema de tradução automática neural poderá traduzir uma frase de, por exemplo, chinês diretamente para inglês sem criar explicitamente nenhum tipo de estrutura intermediária. As redes neurais reconhecem padrões, palavras e frases que tornam o processamento de linguagem exponencialmente mais rápido e contextualmente mais preciso.

Na próxima unidade, você aprenderá mais sobre nossos métodos de linguagem natural e as técnicas que permitem aos computadores entender o que falamos e responder adequadamente.

Recursos