Linguística computacional - Tech Week

21
Linguística computacional: O que diabos é isso? Bruno Ferrari Guide www.importlinguistics.com

Transcript of Linguística computacional - Tech Week

Linguística computacional:

O que diabos é isso?

Bruno Ferrari Guidewww.importlinguistics.com

Tópicos

• Linguística computacional vs. Processamento de linguagem natural

• O que é?

• Um pouco de História

• Subáreas e questões

• Aplicações e sucessos

• Exemplos

Linguística computacional (LC) vs. Processamento de linguagem natural (NLP)

• Duas culturas distintas:• LC é acadêmica e teórica;• NLP é resolução de problemas e desenvolvimento de produtos;

• LC normalmente está ligada aos departamentos de Linguística.

• NLP normalmente está ligado aos departamentos de Ciências da Computação.

• Aqui os dois termos serão usados sem distinção.

O que é?

• Objetivo: criar modelos computacionais que interpretem/produzam dados linguísticos.

• Isso ganhou uma dimensão nova com o crescimento monstruoso de informações linguísticas (textos) disponíveis nas últimas décadas.

• Os principais entraves da LC se devem ao fato de que a língua é um objeto muito complexo.

O que é?

• Atualmente a LC é usada para:• Extrair e estruturar dados de forma automática (Data Mining). *

• Reconhecimento e síntese de voz.

• Tradução automática.

• Responder perguntas automaticamente.

• Sumarização automática.

Um pouco de História

• Nascimento da LC (e de uma outra área...): • Alan Turing (1950) – “Computing machinery and intelligence”.

• Conferências de Dartmouth (1956) – John McCarthy, Marvin Minsky, Claude Shannon.

• Era dos sistemas lógicos/ cognitivos (até o fim dos anos 80):• Agentes ‘hard coded’: ELIZA, SIR.

• Sistemas formais de língua: TAG, CCG, HPSG, DRT.

Um pouco de História

• Revolução dos Corpora e das abordagens estatísticas:• Google Translator;

• Praticamente todas as tecnologias atuais;

• Cenário Atual:• Cenário fortemente estatístico;

• Abordagens mistas estão surgindo;

• Impacto do Deep Learning (redes neurais profundas);

Subáreas e questões

• Fonética e Fonologia

• Nível de análise da língua que trata do som.

• Reconhecimento de voz – Desafio de engenharia por si só:• E sotaques diferentes?• E o encadeamento de sons ao formar frases? Isso muda o sentido de frases! (Prosódia)

• Produção de voz:• Como fazer soar naturalmente?• Língua falada é muito diferente da língua escrita

Subáreas e questões

• Morfologia

• Nível de análise da língua que trata da estrutura da palavra.

• Como atribuir categorias morfossintáticas para todas as palavras de um idioma? (POS Tagging)

• Quantas categorias morfossintáticas existem?

• As línguas funcionam de modo parecido?

Subáreas e questões

• Sintaxe

• Nível de análise da língua que trata da combinação de palavras.

• Computacionalmente complexo:• Qual a sentença mais longa do Português?• Como atribuir um sujeito automaticamente às sentenças?• Construções com aposto, sentenças encaixadas dentro de sentenças...

Subáreas e questões

• Semântica lexical

• Nível de análise da língua que trata do significado das palavras.

• Como descobrir os sinônimos, antônimos, hipônimos e hiperônimos de uma palavra?

• Como reconhecer as entidades nomeadas de um texto?

• Como descobrir qual sentido de uma palavra que possui mais de um?• Ambiguidade ‘fácil’ vs. Ambiguidade ‘difícil’;

Subáreas e questões

• Semântica e interpretação

• Nível de análise da língua que trata do significado de sentenças e além.

• Como descobrir se um texto avalia uma coisa positivamente ou negativamente? (Análise de sentimento)

• Como criar uma paráfrase de uma sentença?

• Como traduzir uma sentença para uma outra língua?

• Como descobrir o assunto de um texto?

Aplicações e sucessos 1

• Extrair e estruturar dados de forma automática (Data Mining).

• Muitos exemplos bem-sucedidos em domínios específicos.

• A quantidade de dados não para de crescer: a demanda nessa área ainda é muito grande.

Aplicações e sucessos 2

• Reconhecimento e síntese de voz.

• Sucessos recentes com as redes neurais profundas (Siri e Assistente Google).

• Sistemas baseados em quantidades massivas de dados transcritos.

Aplicações e sucessos 3

• Tradução automática: tida como o santo graal da LC.

• Google Translator criou um novo patamar de velocidade/qualidade.

• Sistemas novos usando Deep Learning tem resultados muito promissores, mas ainda a serem analisados.

• CAT Tools que usam tecnologias de LC são o padrão do mercado profissional de tradução.

Aplicações e sucessos 4

• Sumarizaçao automática

• Bastante utilizada em domínios específicos:

• Notícias de análise de mercado;

• Acompanhamento de processos;

• Importante para a redução de volume de dados, é uma área vital para os desenvolvimentos recentes.

Aplicações e sucessos 5

• Responder perguntas automaticamente.

• Watson da IBM venceu o jogo Jeopardy!• Velocidade altíssima de processamento de dados;

• Usa deep semantic parsing e uma grande base de dados;

• Parece ser o setor de aplicações que mais vai mudar nos próximos tempos.

Exemplo 1:Reconhecendo Urgência automaticamente- SAC

• Problema: • Grande volume de pedidos, como ordená-los de acordo com a urgência?

• Solução:• Um ser humano interpreta a urgência do pedido usando as palavras que estão na descrição. Podemos automatizar esse processo criando uma medida de urgência com base nas palavras utilizadas pelo usuário.

• Pedido não-urgente:“Boa tarde! Sou morador do bairro de Santana e trabalho durante a semana. Todo dia entre 7:00 hs e 9:00 hs enfrento congestionamento na Av. Bráz Leme entre a Rua Maria Curupaiti e a ponte da Casa Verde, fico entre 40 minutos a 1 hora e meia só para atravessar a ponte. Imagino que haja um setor de inteligência que possa resolver eesa desagradável situação pois acho que não deva ser um problema para o CET.”

• Pedido urgente:“Não há faixa de pedestres ela apagou, pedestres se jogam no meio dos carros, muito perigoso. gente já foi atropelada lá. pelo amor de Deus, pintem e iluminem esta faixa!!!!”

Exemplo 1:Reconhecendo Urgência automaticamente- SAC

Exemplos extraídos do SAC CET.

• Contexto:• A internet está tomada por discurso de ódio nas sessões de comentários dos portais de notícia e nas redes sociais.

• Questões:• Identificar discurso de ódio automaticamente;• Classificar esse discurso de acordo com categorias relevantes;

• Depois disso, implementar um sistema de respostas automáticos:• Variando de acordo com o discurso identificado.

Exemplo 2:Identificando discurso de ódio na internet

Obrigado!

Bruno Ferrari Guide

[email protected]