Língua Portuguesa e Literatura para o Enem

Tag: linguística computacional

Stop words – o que são e como identificar?

Na lógica de indexação de bilhões de palavras nos hardwares da vida, há uma série de verbetes considerados irrelevantes para o conjunto desejável de resultados de uma busca realizada em um mecanismo como o Google. São as chamadas stop words.

Stop word significa a palavra que pode ser totalmente suprimida, omitida ou ocultada na hora de fazer uma busca na internet sem que o sentido do que se quer encontrar seja perdido. Isso acontece, porque simplesmente as funções semânticas dessas palavras não se mostram tão determinantes para garantir resultados eficazes nos buscadores.

Neste sentido, palavras como “as”, “os”, “uns”, “de”, “para”, “com”, “por” são stop words, ou palavras de parada, em uma tradução livre do inglês. No fundo, é algo que a gente experencia toda vez que consulta um buscador qualquer na internet: o mais comum é escolher o que a gente considera como palavras-chave para fazer a pergunta certa para o aplicativo. Isso normalmente exclui artigos, conjunções e preposições.

É com essa “fé” –  de que esses termos não farão falta no momento de apresentação dos resultados – que os modelos de tópicos são construídos e disponibilizados como banco de dados de mecanismos como o Google e que os profissionais de marketing se esmeram tanto com atender aos preceitos dos Search Engine Optimization (SEO).

Continue reading

Tokenização de textos – o que é e como fazer?

A dinâmica pela qual o computador consegue armazenar e “ler” um texto é um tanto diferente daquela que nos ensinaram na escola e na vida. O processamento computacional faz uma categorização diversa da que conhecemos como letras, palavras, frases, orações, parágrafos: é a tokenização de textos.

Nesse ambiente, as unidades de medida são chamadas strings: as palavras são strings, bem como as sentenças e o próprio texto. É preciso acrescentar que os caracteres de uma string não precisam necessariamente ser alfanuméricos, podendo incluir caracteres especiais, como espaços, tabulações, hífens, etc.

Com isso, a tokenização de textos simplifica o corpus ao dividir a frase em tokens individuais (que não são necessariamente uma simples palavra – um exemplo disso é o tratamento que se dá a palavras compostas, como “guarda-chuva” e “segunda-feira”, que precisam valer como um único token para serem bem compreendidas pelo computador).

Continue reading

N-gramas – entenda o conceito e os campos de aplicação

Aqui no Clube do Português a gente fala sobre “n” assuntos interessantes, não é? Já pensou nessa expressão que acabei de usar: ‘“n” assuntos’? Se você entende do que estou falando, vai ficar fácil compreender o que são n-gramas.  Eles são uma subsequência de n itens de uma dada sequência. Essa sequência contígua de itens pertence a uma determinada amostra de texto ou fala, ou seja, a um corpus.

O termo “n-grama”, ou “n-gram”, em inglês, é usado por linguistas computacionais e engenheiros para se referir a combinações de palavras que ocorrem juntas (que descrevem um padrão de discurso), normalmente com uma certa frequência.

No fundo, é um jogo probabilístico que mede a chance de ocorrer uma dada letra na sequência de um determinado número de itens. Em um modelo de linguagem simples de n-grama, é a probabilidade de ocorrer uma palavra, condicionada a algum número de palavras anteriores.

Mas note que os n-gramas não são apenas palavras. Podem ser também itens como fonemas, sílabas, letras, ou pares de bases coletados dentro de um corpus de texto ou fala – sim, além de pertinentes ao campo das probabilidades, os n-gramas também estão ligados à linguística computacional.

Continue reading

Linguística computacional – conceito e campos de aplicação

A linguística computacional é um campo marcado pelo cruzamento da linguística com a tecnologia. Neste artigo, vamos aprofundar esse conceito e mostrar seus campos de aplicação. Vejamos!

Muito mais do que entender como você se comunica com seu computador, é curioso pensar como é que ele entende você? Como, afinal, a linguagem humana é compreendida em bytes e bits.

Linguística, Informática e Inteligência Artificial (IA), tudo junto e misturado como forma de expressão que parte da relação entre o processamento de linguagem natural com as inovações tecnológicas. É disso que se faz a linguística computacional, uma área multidisciplinar do conhecimento que utiliza processos computacionais para o controle e uso da linguagem humana.

Olha, é preciso pontuar que a linguística é uma área de conhecimento razoavelmente recente, e que a computacional, então, é mais ainda, mesmo que venha apresentando um desenvolvimento considerável nos últimos anos. Ela visa facilitar cada vez mais a interação homem-máquina, aspecto fundamental para a rápida popularização dos computadores.

A linguística computacional desenvolve sistemas capazes de produzir e reconhecer a linguagem natural, a do dia a dia da gente. E faz isso por meio de algoritmos, métodos e softwares que permitem aos computadores “traduzirem” automaticamente para si documentos e arquivos de texto, voz ou vídeo gerados em alguma língua humana.

Entre suas aplicações mais comuns, estão programas como tradutores automáticos (ex: Google Tradutor), corretores ortográficos e gramaticais (ex: corretor do Word), entre outros. Estão sob esse “guarda-chuva”, também, os chatbots, que são aqueles programas que dão conta de conversar online com pessoas (consumidores) por meio de um chat (sala de bate-papo) dentro de sites ou por redes de mensageria (WhatsApp, em especial).

Linguística aplicada à Inteligência Artificial

Como um campo que estuda e manipula o processamento computacional das linguagens naturais humanas, a Linguística Computacional é dividida em duas áreas: Linguística de Corpus e Processamento de Linguagem Natural (NLP).

Um corpus linguístico que tenha como base a computação é um imenso banco de dados de textos de uma língua específica que vão sendo recolhidos pelo sistema operacional e organizados sistematicamente no computador a partir do conhecimento prévio dessa língua pelo sistema.

Já o NLP é o passo adiante, é a vertente da inteligência artificial que ajuda o computador a entender, interpretar e manipular esse banco de dados da linguagem humana. É como a AI de um chatbot torna-se capaz de compreender, interagir e atender à demanda do consumidor.

Está aí a justificativa para a necessidade dessa conexão entre linguística e tecnologia. Para construir um bot que consiga dar conta do atendimento ao cliente, é preciso que ele reconheça a linguagem da pessoa que é sua interlocutora e que possa construir soluções linguísticas que deem suporte a uma conversa satisfatória. Se não, imagina você dizendo ao bot que quer cancelar um serviço e ele respondendo com frases desconexas…

Como se faz isso?

É fácil intuir que a linguística computacional está imersa nos conceitos de matemática e lógica e que utiliza elementos básicos de linguagens de programação, como Python, com ênfase na biblioteca NLTK (Natural Language Toolkit).

Entre as soluções que prometem resolver estão a correção automática de erros de digitação, a tradução instantânea, o reconhecimento, emissão e síntese de voz (típico de robôs humanóides), os chatbots, a análise de sentimentos e a sumarização de textos.

É preciso que o sistema aprenda como as regras se organizam cognitivamente no cérebro de cada falante humano e as represente por um símbolo matemático aplicável em linguagem de programação, para imitar a comunicação humana.

O papel do linguista é traduzir para a linguagem computacional os detalhes de como a língua faz em termos semântico, fonético, fonológico, morfológico, sintático e pragmático, introduzindo conhecimento sobre a formação verbal, gênero e número etc., para poder conversar bem com “aquela pecinha que fica atrás do teclado”.

*

Gostou do texto? Então vale a pena conferir todos os artigos da série Língua e Tecnologia.

© 2024 Clube do Português

Theme by Anders NorenUp ↑

#CodigoClever