Python - introdução ao processamento de texto
O processamento de texto tem uma aplicação direta ao Processamento de Linguagem Natural, também conhecido como PNL. A PNL tem como objetivo processar as línguas faladas ou escritas por humanos quando se comunicam entre si. Isso é diferente da comunicação entre um computador e um humano, onde a comunicação é definhada por um programa de computador escrito por humanos ou algum gesto humano como clicar com o mouse em alguma posição. A PNL tenta entender a linguagem natural falada pelos humanos e classificá-la, analisa-a também, se necessário, respondê-la. Python possui um rico conjunto de bibliotecas que atendem às necessidades da PNL. O Natural Language Tool Kit (NLTK) é um conjunto dessas bibliotecas que fornece as funcionalidades necessárias para o NLP.
Abaixo estão alguns aplicativos que usam o NLP e indiretamente o NLTK do python.
Resumo
Muitas vezes, precisamos obter o resumo de uma notícia, um enredo de filme ou uma grande história. Eles são todos escritos em linguagem humana e, sem a PNL, temos que confiar na interpretação e apresentação de outro ser humano desse resumo para nós. Mas com a ajuda da PNL, podemos escrever programas para usar o NLTK e resumir o texto longo com vários parâmetros, como qual é a porcentagem de texto que queremos na saída final, escolhendo as palavras positivas e negativas para o resumo etc. sobre tais técnicas de resumo para apresentar novas percepções.
Ferramentas de voz
As ferramentas baseadas em voz como maçãs Siri ou Amazon Alexa contam com a PNL para entender a interação louca com humanos. Eles têm um grande conjunto de dados de treinamento de palavras, frases e gramática para interpretar a pergunta ou comando vindo de um ser humano e processá-lo. Embora seja sobre voz, indiretamente também é traduzido em texto e a forma de texto resultante em que a voz é levada através do sistema de PNL para produzir o resultado.
Extração de Informação
O scrapping da web é um exemplo comum de extração de dados das páginas da web usando código python. Aqui, pode não ser estritamente baseado em PNL, mas envolve processamento de texto. Por exemplo, se precisarmos extrair apenas os cabeçalhos presentes em uma página html, procuramos a tag h1 na estrutura da página e encontramos uma maneira de extrair o texto apenas entre essas tags. Isso precisa de um programa de processamento de texto de python.
Filtragem de Spam
O spam nos emails pode ser identificado e eliminado analisando o texto da linha de assunto e também o conteúdo da mensagem. Como os e-mails de spam geralmente são enviados em massa para muitos destinatários, mesmo que seus assuntos e conteúdos tenham pouca variação, eles podem ser combinados e marcados para marcá-los como spam. Novamente, é necessário o uso das bibliotecas NLTK.
Tradução de idiomas
A tradução de linguagem computadorizada depende muito da PNL. À medida que mais e mais idiomas são usados na plataforma online, torna-se necessário automatizar a tradução de um idioma humano para outro. Isso envolverá a programação para lidar com o vocabulário, gramática e marcação de contexto das línguas envolvidas na tradução. Novamente, o NLTK é usado para lidar com esses requisitos.
Análise de sentimentos
Para descobrir a reação geral ao desempenho de um filme, podemos ter que ler milhares de postagens de feedback do público. Mas isso também pode ser automatizado usando a classificação de feedback positivo e negativo por meio de palavras e análise de frases. E depois medir a frequência de comentários positivos e negativos para descobrir o sentimento geral do público. Obviamente, isso requer a análise da linguagem humana escrita pelo público e o NLTK é muito usado aqui para processar o texto.