processamento de linguagem naturaleol/ssiim/1112/aula_pln.pdf · • como tornar a interação mais...

62
Processamento de Linguagem Natural Uma necessariamente breve, muito incompleta, assumidamente parcial mas eventualmente motivadora panorâmica da área Luis Sarmento

Upload: vanhanh

Post on 08-Nov-2018

213 views

Category:

Documents


0 download

TRANSCRIPT

Page 1: Processamento de Linguagem Naturaleol/SSIIM/1112/aula_pln.pdf · • como tornar a interação mais “natural”? • Devem as pessoas aprender a linguagem das máquinas ou vice-versa?

Processamento de Linguagem Natural

Uma necessariamente breve, muito incompleta, assumidamente parcial mas eventualmente

motivadora panorâmica da área

Luis Sarmento

Page 2: Processamento de Linguagem Naturaleol/SSIIM/1112/aula_pln.pdf · • como tornar a interação mais “natural”? • Devem as pessoas aprender a linguagem das máquinas ou vice-versa?

Luís Sarmento - [email protected]

Resumo da Apresentação

Parte I: Introdução e Motivação ao PLNParte II: Conceitos básicos de Linguística e PLNParte III: Classificação de TextoParte IV: PLN no NIAD&R: o que estamos a fazer?

Page 3: Processamento de Linguagem Naturaleol/SSIIM/1112/aula_pln.pdf · • como tornar a interação mais “natural”? • Devem as pessoas aprender a linguagem das máquinas ou vice-versa?

Luís Sarmento - [email protected]

Parte I

Introdução ao PLN

Page 4: Processamento de Linguagem Naturaleol/SSIIM/1112/aula_pln.pdf · • como tornar a interação mais “natural”? • Devem as pessoas aprender a linguagem das máquinas ou vice-versa?

Luís Sarmento - [email protected]

PLN: o que é?

• Processamento de Linguagem Natural:– Processamento automático de informação

expressa em linguagem dos Humanos, em formato escrito e oral.

Page 5: Processamento de Linguagem Naturaleol/SSIIM/1112/aula_pln.pdf · • como tornar a interação mais “natural”? • Devem as pessoas aprender a linguagem das máquinas ou vice-versa?

Luís Sarmento - [email protected]

Motivação para o PLN (I)• Grande parte da comunicação entre humanos é

realizada naturalmente através de uma de centenas de linguagens existentes

• Quase todo o conhecimento humano encontra-se registado sob a forma de LN

• Linguagem é a ponte entre as gerações passadas, presentes e futuras

• Provavelmente é a mais importante invenção humana porque permite registar e transmitir inteligência

Page 6: Processamento de Linguagem Naturaleol/SSIIM/1112/aula_pln.pdf · • como tornar a interação mais “natural”? • Devem as pessoas aprender a linguagem das máquinas ou vice-versa?

Luís Sarmento - [email protected]

Motivação para o PLN (II)

• Problema de EI/RI/EC:– Cada vez mais informação, escrita e oral, está registada

em formato electrónico:• Como aceder, pesquisar, processar, (re-)utilizar?

• Problema de HCI:– Cada vez mais a comunicação é mediada por máquinas

e feitas com máquinas:• como tornar a interação mais “natural”?• Devem as pessoas aprender a linguagem das máquinas ou

vice-versa?

Page 7: Processamento de Linguagem Naturaleol/SSIIM/1112/aula_pln.pdf · • como tornar a interação mais “natural”? • Devem as pessoas aprender a linguagem das máquinas ou vice-versa?

Luís Sarmento - [email protected]

PLN: Muitas disciplinas• Inteligência Artificial• Ciência de Computadores• Processamento de Sinal• Probabilidade e Estatística• Linguagens Formais• Bases de dados

• Psicologia• Filosofia• Linguística • Lógica• Ciências da Informação

Page 8: Processamento de Linguagem Naturaleol/SSIIM/1112/aula_pln.pdf · • como tornar a interação mais “natural”? • Devem as pessoas aprender a linguagem das máquinas ou vice-versa?

Luís Sarmento - [email protected]

PLN: é complexo!

• Linguagem é uma sofisticada capacidade humana• Linguagem é complexa, ambígua, contextual e

requer conhecimento prévio acerca da realidade• Alguns exemplos:

– TA seria resolvida antes do Homem ir à Lua– Sistemas de RAP state-of-the-art são ainda muito

limitados (60% perguntas factoide)– Só recentemente é que se consegue STT

suficientemente bom para usar em directo

Page 9: Processamento de Linguagem Naturaleol/SSIIM/1112/aula_pln.pdf · • como tornar a interação mais “natural”? • Devem as pessoas aprender a linguagem das máquinas ou vice-versa?

Luís Sarmento - [email protected]

PLN: dois campos

• Processamento de Linguagem Oral:– Speech-to-Text e Text-to-Speech

• Processamento de Linguagem Escrita:– Assistentes de Escrita, motores de pesquisa,

extracção de informação, sistemas de RAP, tradutores automáticos…

Page 10: Processamento de Linguagem Naturaleol/SSIIM/1112/aula_pln.pdf · • como tornar a interação mais “natural”? • Devem as pessoas aprender a linguagem das máquinas ou vice-versa?

Luís Sarmento - [email protected]

PLN Escrita (I)

• Recursos:– Dicionários– Tesaurus (palavras relacionadas)– Base de Dados Lexicais, Redes Semânticas– Gramáticas Electrónicas / Bancos de Regras– Bases de Dados Estatísticas

Page 11: Processamento de Linguagem Naturaleol/SSIIM/1112/aula_pln.pdf · • como tornar a interação mais “natural”? • Devem as pessoas aprender a linguagem das máquinas ou vice-versa?

Luís Sarmento - [email protected]

PLN Escrita (II)

• Tarefas:– Análise Morfológica– Análise Gramatical / Sintâctica– Análise Semântica

Page 12: Processamento de Linguagem Naturaleol/SSIIM/1112/aula_pln.pdf · • como tornar a interação mais “natural”? • Devem as pessoas aprender a linguagem das máquinas ou vice-versa?

Luís Sarmento - [email protected]

PLN Escrita (III)

• Aplicações:– Corrector Ortográfico– Verificador de Estilo– …– Motor de Pesquisa– Sistema de Resposta Automática– Sistema de Tradução Automática– Sumarizador Multi-Documento– …

Page 13: Processamento de Linguagem Naturaleol/SSIIM/1112/aula_pln.pdf · • como tornar a interação mais “natural”? • Devem as pessoas aprender a linguagem das máquinas ou vice-versa?

Luís Sarmento - [email protected]

Parte II

Conceitos Básicos de Linguística e de Processamento de Linguagem Natural

Page 14: Processamento de Linguagem Naturaleol/SSIIM/1112/aula_pln.pdf · • como tornar a interação mais “natural”? • Devem as pessoas aprender a linguagem das máquinas ou vice-versa?

Luís Sarmento - [email protected]

Conceitos Básico de PLN: Morfologia (I)

• Morfologia: a forma das palavras– Classes de palavras:

• nomes, pronomes, • determinantes, • adjectivos, • verbos, advérbios• preposições

– Regras de Derivação:• Plural <-> Singular• Inflexão de verbos• Derivação Interclasse (salto -> saltar)

Page 15: Processamento de Linguagem Naturaleol/SSIIM/1112/aula_pln.pdf · • como tornar a interação mais “natural”? • Devem as pessoas aprender a linguagem das máquinas ou vice-versa?

Luís Sarmento - [email protected]

Conceitos Básico de PLN: Morfologia (II)

• Tarefa Associada: – Análise Morfológica:

• Exemplo:– são -> verbo ser Pres. Ind. 3p p– são -> adjectivo– são -> nome / parte de um nome “São Paulo”

• Necessário desambiguar em contexto (embora requeira também conhecimento gramátical)

Page 16: Processamento de Linguagem Naturaleol/SSIIM/1112/aula_pln.pdf · • como tornar a interação mais “natural”? • Devem as pessoas aprender a linguagem das máquinas ou vice-versa?

Luís Sarmento - [email protected]

Análise Morfológica• Não é tão trivial como se julga.• Como se lida com erros ortográficos? • Ou com variações (hifen)?• Ou estrangeirismos?• Como se delimita uma “palavra”?

– Exemplo: “base de dados”, “Nova Iorque”• Há sempre palavras novas a aparecer:

– nome próprios: von Sarmenstein– siglas: ANTRAL– termos técnicos: Quasar N345, bosão de Higgs

Page 17: Processamento de Linguagem Naturaleol/SSIIM/1112/aula_pln.pdf · • como tornar a interação mais “natural”? • Devem as pessoas aprender a linguagem das máquinas ou vice-versa?

Luís Sarmento - [email protected]

Conceitos Básicos de PLN: Gramática

• Regras de combinação das palavras• Formação dos constituintes do texto:

– Frases– Sintagmas:

• Nominal / Sujeito• Verbal• Preposicional• Adjectival

Page 18: Processamento de Linguagem Naturaleol/SSIIM/1112/aula_pln.pdf · • como tornar a interação mais “natural”? • Devem as pessoas aprender a linguagem das máquinas ou vice-versa?

Luís Sarmento - [email protected]

Exemplo

O cão roía o osso

SN SV

P N SN

P N

V

• A forma de representação em àrvore é a mais natural porque os constituintes têm dependências hierárquicas

Page 19: Processamento de Linguagem Naturaleol/SSIIM/1112/aula_pln.pdf · • como tornar a interação mais “natural”? • Devem as pessoas aprender a linguagem das máquinas ou vice-versa?

Luís Sarmento - [email protected]

Análise Gramátical (“Parsing”)

• Analisar o texto de forma a encontrar os constituintes:– Do texto obter a árvore de análise

• É importante porque as relações gramáticas definem os papeis semânticos dos constituintes da frase que são fundamentais para a compreensão da mensagem– Agentes / pacientes: “SV/ CD”– Acção (do agente sobre o paciente objecto): “V”– Argumentos (do verbo): “o osso”

Page 20: Processamento de Linguagem Naturaleol/SSIIM/1112/aula_pln.pdf · • como tornar a interação mais “natural”? • Devem as pessoas aprender a linguagem das máquinas ou vice-versa?

Luís Sarmento - [email protected]

Análise Gramátical (“Parsing”)• A análise envolve encontrar muitas estruturas (hieráquicas) e variações de

cada uma delas• Pode tornar-se extremamente complexa, basta imaginar frases mais

“intrincadas”, ou usam léxico complexo (“bosão de Higgs”)• Pode envolver centenas de regras• Pode também ser mais simplificada - “shallow parsing”- procurando-se

apenas encontrar apenas os constituintes de topo, ou certas estruturas específicas

• As regras de análise são:– Escritas manutalmente– Aprendidas automaticamente de exemplos de texto analisado manualmente

Page 21: Processamento de Linguagem Naturaleol/SSIIM/1112/aula_pln.pdf · • como tornar a interação mais “natural”? • Devem as pessoas aprender a linguagem das máquinas ou vice-versa?

Luís Sarmento - [email protected]

Conceitos Básicos de PLN: Semântica

• Análise que verdadeiramente nos interessa:– Significado do texto– Extracção da Informação / Conhecimento

• Tarefas exemplo:– Reconhecimento de Entidades (REM)– Resolução de Entidades– Identificação de Relações Semânticas

• Decoberta de Associações Genéricas• Descoberta de Relações Específicas

Page 22: Processamento de Linguagem Naturaleol/SSIIM/1112/aula_pln.pdf · • como tornar a interação mais “natural”? • Devem as pessoas aprender a linguagem das máquinas ou vice-versa?

Luís Sarmento - [email protected]

Semântica: Reconhecimento de Entidades Mencionadas (REM)

• Identificar os nomes e a sua classe / função.• Exemplos:

– Eu nasci no <LOC>Porto</LOC> em <DATA>1976</DATA>

– O gastei <VALOR>100 euros</VALOR> no <EVENTO>(N/n)atal</EVENTO>

• Essencial para aplicações de Extracção:– Resposta automática a Perguntas– Detecção Automática de Eventos– Sumarização– Tradução Automática

Page 23: Processamento de Linguagem Naturaleol/SSIIM/1112/aula_pln.pdf · • como tornar a interação mais “natural”? • Devem as pessoas aprender a linguagem das máquinas ou vice-versa?

Luís Sarmento - [email protected]

REM

• Muito mais complexo que o que parece:– <?>Bruxelas</?> adverte <?>Sócrates</?> para desvio no <?

>orçamento de Estado</?>– Encontramo-nos no <?>S. João</?> para ver o <?>Godard</?>!– <?>Amsterdão</?> é fantástico

• Amesterdão: local, romance, barco, banda rock…?

• Muita ambiguídade!– Ou seja: mais uma vez só “dicionários” não chegam (se

os houvesse)! – O contexto é determinante mas a análise é complexa!

Page 24: Processamento de Linguagem Naturaleol/SSIIM/1112/aula_pln.pdf · • como tornar a interação mais “natural”? • Devem as pessoas aprender a linguagem das máquinas ou vice-versa?

Luís Sarmento - [email protected]

Semântica: Resolução de Entidades

• Tendo identificado o nome e a sua classe, de qual exactamente é que estamos a falar?

• Ex: “Amsterdão”– NL?– Ohio, EU (2 cidades chamadas Amsterdam)?– África do Sul?– Amsterdam (Av. )-> 10th Avenue, NY– ….

• Necessária análise de contexto suplementar

Page 25: Processamento de Linguagem Naturaleol/SSIIM/1112/aula_pln.pdf · • como tornar a interação mais “natural”? • Devem as pessoas aprender a linguagem das máquinas ou vice-versa?

Luís Sarmento - [email protected]

Semântica: Identificação de Relações Semânticas (I)

• Classe / Instância:– O Porto é uma cidade antiga.

• Hiperonímia / Hiponímia– “A penicilina é um antibiótico que…”– “Os antibióticos são medicamentos eficazes.”

• Holonímia / Meronímia:– “O trem de aterragem do avião…”

• Mas atenção: “o piloto do avião…”

Page 26: Processamento de Linguagem Naturaleol/SSIIM/1112/aula_pln.pdf · • como tornar a interação mais “natural”? • Devem as pessoas aprender a linguagem das máquinas ou vice-versa?

Luís Sarmento - [email protected]

Semântica: Identificação de Relações Semânticas (II)

• Causa / Efeito:– A aspirina reduz a dor de cabeça– A chuva intensa fez o rio transbordar

• Equivalentes (“sinónimos”):– “grupo” / “banda”– “grupo (de empresas)” / “corporação

empresarial”

Page 27: Processamento de Linguagem Naturaleol/SSIIM/1112/aula_pln.pdf · • como tornar a interação mais “natural”? • Devem as pessoas aprender a linguagem das máquinas ou vice-versa?

Luís Sarmento - [email protected]

Conceitos Básicos de PLN: Pragmática

• Análise do objectivo do acto de comunicação.• O que se quer dizer:

– “Tens horas?” / “Tens lumes?”– “Bater a bota”

• O PLN não ambiciona para já ultrapassar esta barreira. Ou talvez já o faça até bastante bem em certos casos:– processamento de queries a um motor de pesquisa…

Page 28: Processamento de Linguagem Naturaleol/SSIIM/1112/aula_pln.pdf · • como tornar a interação mais “natural”? • Devem as pessoas aprender a linguagem das máquinas ou vice-versa?

Luís Sarmento - [email protected]

Conclusão da Parte II

• PLN envolve análise a vários níveis, todos com situações de ambiguídade

• Problemas de análise são complexos:– Exigem análise de contexto– Exigem “conhecimento” prévio

• Mas já há muita tecnologia utilizável e até tão comum que nem damos por ela

Page 29: Processamento de Linguagem Naturaleol/SSIIM/1112/aula_pln.pdf · • como tornar a interação mais “natural”? • Devem as pessoas aprender a linguagem das máquinas ou vice-versa?

Luís Sarmento - [email protected]

Parte III

Classificação Automática de Texto(brevíssima introdução!!)

Page 30: Processamento de Linguagem Naturaleol/SSIIM/1112/aula_pln.pdf · • como tornar a interação mais “natural”? • Devem as pessoas aprender a linguagem das máquinas ou vice-versa?

Luís Sarmento - [email protected]

Classificação Automática de Texto: o que é?

• Tarefa fundamental em muitos sistemas de processamento de texto

• Dado um excerto de texto:– e.g. uma notícia, um blog, um twitter, um

artigo, um livro, uma frase• Decidir automaticamente:

– qual a “classe” desse texto?– qual a etiqueta que devo colocar no texto?

Page 31: Processamento de Linguagem Naturaleol/SSIIM/1112/aula_pln.pdf · • como tornar a interação mais “natural”? • Devem as pessoas aprender a linguagem das máquinas ou vice-versa?

Luís Sarmento - [email protected]

Tarefas de Classificação de Texto

• Dada uma palavra:– saber qual a sua categoria gramátical (e.g. v)

• Dado um nome:– Saber que tipo de entidade é (local, pessoa..?..)

• Dada uma frase:– Saber se é uma definição, descricão factual, se é

opinião, se foi escrita por um certo autor....

Page 32: Processamento de Linguagem Naturaleol/SSIIM/1112/aula_pln.pdf · • como tornar a interação mais “natural”? • Devem as pessoas aprender a linguagem das máquinas ou vice-versa?

Luís Sarmento - [email protected]

Tarefas de Classificação de Texto

• Dada um twitter:– Saber se exprime um sentimento positivo ou

negativo• Dada uma notícia:

– Saber se trata de um determinado tema/tópico• Dado um blog:

– Saber se diz bem ou mal de um produto / político....

Page 33: Processamento de Linguagem Naturaleol/SSIIM/1112/aula_pln.pdf · • como tornar a interação mais “natural”? • Devem as pessoas aprender a linguagem das máquinas ou vice-versa?

Luís Sarmento - [email protected]

Conceitos Base (I)

• Elemento Base: algoritmo de classificação• Fase de Treino:

– Dado um conjunto de exemplo (parcialmente) classificados, o algoritmos é treinado

– O algoritmo aprende relações entre as classes e os atributos do exemplos

• Fase de Classificação:– Dado um exemplo por classificar, o algoritmos

de classificação (treinado) prevê a classe

Page 34: Processamento de Linguagem Naturaleol/SSIIM/1112/aula_pln.pdf · • como tornar a interação mais “natural”? • Devem as pessoas aprender a linguagem das máquinas ou vice-versa?

Luís Sarmento - [email protected]

Desafios

• Construir uma boa base de exemplos:– Notícias com o seu tópico– Twitters com a informação de sentimento– Comentários com informação de polaridade

• Normalmente com intervenção humana:– Bastante trabalhoso

• Por vezes usando estratégias, semi-automáticas, usando outros recursos de maneira engenhosa

Page 35: Processamento de Linguagem Naturaleol/SSIIM/1112/aula_pln.pdf · • como tornar a interação mais “natural”? • Devem as pessoas aprender a linguagem das máquinas ou vice-versa?

Luís Sarmento - [email protected]

Desafios (II)

• Encontrar os melhores atributo que descrevem os elementos a serem classificados:– Notícias: palavras? Nomes? Certos termos?– Blogs: o mesmo, mais os blogs linkados?– Twiiters: as palavras? Certos adjectivos? a hora

de twitter• Esta é normalmente a fase crítica em termos

de engenharia!

Page 36: Processamento de Linguagem Naturaleol/SSIIM/1112/aula_pln.pdf · • como tornar a interação mais “natural”? • Devem as pessoas aprender a linguagem das máquinas ou vice-versa?

Luís Sarmento - [email protected]

Alguns Algortimos de Classificação

• Support Vector Machines– Aproximação geométrica– Muito usados em texto com bom desempenho– Tradicionalmente binários

• Classificadores Naïve Bayes– Aproximação Probabilistica– Muito rápidos de treinar– Usados com desempenhos razoáveis

Page 37: Processamento de Linguagem Naturaleol/SSIIM/1112/aula_pln.pdf · • como tornar a interação mais “natural”? • Devem as pessoas aprender a linguagem das máquinas ou vice-versa?

Luís Sarmento - [email protected]

Parte IV

PLN no NIAD&R: o que andamos a fazer por aqui?….

Page 38: Processamento de Linguagem Naturaleol/SSIIM/1112/aula_pln.pdf · • como tornar a interação mais “natural”? • Devem as pessoas aprender a linguagem das máquinas ou vice-versa?

Luís Sarmento - [email protected]

PLN no NIAD&R

• Tópicos principais: – Ferramentas e Recursos:

• Reconhecimento de Entidades Mencionadas• Identificação de Relações Semânticas• Construção de Léxicos Semânticos / Tesauros

– Aplicações• Resposta Automática a Perguntas• Monitorização de Notícias• Detecção de Opiniões

Page 39: Processamento de Linguagem Naturaleol/SSIIM/1112/aula_pln.pdf · • como tornar a interação mais “natural”? • Devem as pessoas aprender a linguagem das máquinas ou vice-versa?

Luís Sarmento - [email protected]

Recursos e Ferramentas

• LSP – Léxico Semântico do Português:– Base de Dados com entradas léxicais em PT

• Categorização Gramátical• Categorização Semântica• Categorização de Polaridade• No futuro: relações semânticas

– Arquitectura / Funcionamento:• Base de Dados MySQL + Interface de Adm.• Exportação como biblioteca Perl: muito prático

Page 40: Processamento de Linguagem Naturaleol/SSIIM/1112/aula_pln.pdf · • como tornar a interação mais “natural”? • Devem as pessoas aprender a linguagem das máquinas ou vice-versa?

Luís Sarmento - [email protected]

Recursos e Ferramentas

• Corpora: base de texto para exploração ou treino de classificadores

• Base de Co-ocorrências: BACO (demo)• Notícias Curtas com informação de tópico• Comentários a Notícias (em contrução)• Feeds SAPO:

– Notícias– Blogs– Twitter PT– etc...

Page 41: Processamento de Linguagem Naturaleol/SSIIM/1112/aula_pln.pdf · • como tornar a interação mais “natural”? • Devem as pessoas aprender a linguagem das máquinas ou vice-versa?

Luís Sarmento - [email protected]

Ferramentas

• SIEMÊS v2.0 - REM– Desenvolvido desde 2005. Perl + Regras– Tenta identificar cerca de 10 classes e mais de

100 sub-classes de nomes expressões temporais e números (valores).

– centenas de regras + léxico com várias centenas de entradas

• Está neste momento a ser desenvolvida a v3.0 (Perl e Java).

Page 42: Processamento de Linguagem Naturaleol/SSIIM/1112/aula_pln.pdf · • como tornar a interação mais “natural”? • Devem as pessoas aprender a linguagem das máquinas ou vice-versa?

Luís Sarmento - [email protected]

Análise Semântica no NIAD&R

• ASP (sucessor do SIEMÊS)– Desenvolvido desde início 2009– Assenta no LSP para obter informação lexico-

semântica– Usa representações XML e usa uma base de

dados XML como motor de regras– Está suspenso à espera de mais mão-de-obra!

Page 43: Processamento de Linguagem Naturaleol/SSIIM/1112/aula_pln.pdf · • como tornar a interação mais “natural”? • Devem as pessoas aprender a linguagem das máquinas ou vice-versa?

Luís Sarmento - [email protected]

Identificação de Relações Semânticas (I)

• Descoberta de Definições – Usando a Wikipedia e Colecções Web– Procura por definições canónicas

• “N é um TD que”• A Aspirina é um medicamento que

• Utilização da informação da Wikipedia (tags)– Extracção de Hiperónimos / Hipónimos– Listas

Page 44: Processamento de Linguagem Naturaleol/SSIIM/1112/aula_pln.pdf · • como tornar a interação mais “natural”? • Devem as pessoas aprender a linguagem das máquinas ou vice-versa?

Luís Sarmento - [email protected]

Identificação de Relações Semânticas (II)

• Descoberta de semelhança por “clustering”:– Sinónimos / antónimos– “Classes”– Importante porque os recursos públicos

produzidos manualmente têm poucas opções (tesaurus do openoffice)

– Só agora estão a surgir mais recurso públicos

Demonstração do projecto WordMap

Page 45: Processamento de Linguagem Naturaleol/SSIIM/1112/aula_pln.pdf · • como tornar a interação mais “natural”? • Devem as pessoas aprender a linguagem das máquinas ou vice-versa?

Luís Sarmento - [email protected]

Construção de Léxicos Semânticos / Tesauros

• Em quase todas as tarefas de PLN é necessário ter informação acerca de várias possibilidades morfológicas e semânticas

• Exemplo de informação semântica: – ter as palavras agrupadas semânticamente

• médico, engenheiro, etc… -> profissão• Se padrão {@prof NM} => NM -> C_PESSOA

– Ter informação acerca de níveis “semelhança”:• 'suprir', ---> ['colmatar:0.175', 'satisfazer:0.083',

'superar:0.069', 'minorar:0.064', 'compensar:0.061', 'ultrapassar:0.060’]

Page 46: Processamento de Linguagem Naturaleol/SSIIM/1112/aula_pln.pdf · • como tornar a interação mais “natural”? • Devem as pessoas aprender a linguagem das máquinas ou vice-versa?

Luís Sarmento - [email protected]

Construção do Léxico Semântico

• Semi-automática:– Fundindo informação de vários recursos existentes:

dicionários, tesaurus– Aumentando informação existente com informação

extraída automaticamente.• Wikipedia (nomes, definições, relações, etiquetas)

– Obtenção de informação estatística a partir de grandes quantidades de texto

• dados distribucionais (co-ocorrências)– Utilização de técnicas de clustering

Page 47: Processamento de Linguagem Naturaleol/SSIIM/1112/aula_pln.pdf · • como tornar a interação mais “natural”? • Devem as pessoas aprender a linguagem das máquinas ou vice-versa?

Luís Sarmento - [email protected]

Ciclo de Desenvolvimento Contínuo

AnálisadorSemântico

Extracção de Informação

Léxico Semântico

Page 48: Processamento de Linguagem Naturaleol/SSIIM/1112/aula_pln.pdf · • como tornar a interação mais “natural”? • Devem as pessoas aprender a linguagem das máquinas ou vice-versa?

Luís Sarmento - [email protected]

RAPOSA• Sistema de Resposta Automática a Perguntas (que é

Ouro Sobre Azul) para Português• Preparado para responder a vários tipos de

perguntas directas do tipo “factoide” e definições:– Quem foi o primeiro Rei de Portugal?– O que é um katamaran?

• Sobre qualquer assunto e usando uma colecção de texto em Português (e.g.: Wikipedia em PT)

• Participou nas edições de 2006, 2007 e 2008 do CLEF: 3º lugar para PT em 2007!!

Page 49: Processamento de Linguagem Naturaleol/SSIIM/1112/aula_pln.pdf · • como tornar a interação mais “natural”? • Devem as pessoas aprender a linguagem das máquinas ou vice-versa?

Luís Sarmento - [email protected]

RAPOSA: Como funciona? (I)• O RAPOSA utiliza uma estratégia “data-driven”.• Dada uma pergunta:

– tenta estratégias “simples” para reunir potênciais respostas pesquisando uma dada colecção de texto

– Se a pesquisa for “bem feita” e a selecção de candidatos for minimamente inteligente, então a resposta certa estará entre os dados recolhidos.

– Num passo final o RAPOSA tenta escolher um candidato tendo em conta todos os que recolheu

• Esta estratégia é interessante se a colecção onde vamos buscar a resposta é muito grande (ex: Web)

Page 50: Processamento de Linguagem Naturaleol/SSIIM/1112/aula_pln.pdf · • como tornar a interação mais “natural”? • Devem as pessoas aprender a linguagem das máquinas ou vice-versa?

Luís Sarmento - [email protected]

RAPOSA: Como funciona? (II)• P: “Quem foi o primeiro rei de Portugal?”• Em grande colecções de texto a resposta deverá

estar mais ou menos explícita várias vezes:– “… D. Afonso Henriques, o primeiro rei de Portugal,…”– “… o primeiro rei de portugal foi D. Afonso Henriques…”– “… tornando-se D. Afonso Henriques o primeiro rei de Portugal..”– “…como primeiro rei de Portugal, D. Afonso Henriques tentou…”

• Vamos usar a redundância existente para tentar responder: parte do enunciado da pergunta ocorre em texto muitas vezes “próximo” da resposta

Page 51: Processamento de Linguagem Naturaleol/SSIIM/1112/aula_pln.pdf · • como tornar a interação mais “natural”? • Devem as pessoas aprender a linguagem das máquinas ou vice-versa?

Luís Sarmento - [email protected]

RAPOSA: Como funciona? (III)• Analisar a pergunta para tentar determinar o tipo

de resposta que deve ser devolvida:– Quem -> pessoa– Onde -> local– Quando -> data– ….

• Gerar “queries” tendo em conta a análise prévia:– “primeiro rei de portugal”– “primeiro rei” portugal– “primeiro” “rei de portugal”– …

Page 52: Processamento de Linguagem Naturaleol/SSIIM/1112/aula_pln.pdf · • como tornar a interação mais “natural”? • Devem as pessoas aprender a linguagem das máquinas ou vice-versa?

Luís Sarmento - [email protected]

RAPOSA: Como funciona? (IV)• Pesquisar a colecção e obter todas as frases /

parágrafos onde ocorrem expressões de pesquisa• Analisar semanticamente as frase: neste caso

fazemos REM com o SIEMÊS• Escolhemos os nomes do tipo de entidades

apropriado. Neste caso nomes de pessoas:– “D. Afonso Henriques” ou “Afonso Henriques” ou “D.

Afonso I” … serão provavelmente os nomes mais frequentes

Page 53: Processamento de Linguagem Naturaleol/SSIIM/1112/aula_pln.pdf · • como tornar a interação mais “natural”? • Devem as pessoas aprender a linguagem das máquinas ou vice-versa?

Luís Sarmento - [email protected]

RAPOSA: Como funciona? (V)

Page 54: Processamento de Linguagem Naturaleol/SSIIM/1112/aula_pln.pdf · • como tornar a interação mais “natural”? • Devem as pessoas aprender a linguagem das máquinas ou vice-versa?

Luís Sarmento - [email protected]

RAPOSA - Limitações• Não responde a perguntas:

– Tipo lista• Quais as 3 maiores cidades de Portugal?

– Que impliquem inferências ou deduções:• Qual a aeroporto mais próximo de Londres?

– Sequênciais que envolvam co-referências?• Quem é o presidente da República (Português)?• Com quem é ele casado?

– E muitas outras…. • Mas serve de “test-bed” de ideias e tecnologias

Page 55: Processamento de Linguagem Naturaleol/SSIIM/1112/aula_pln.pdf · • como tornar a interação mais “natural”? • Devem as pessoas aprender a linguagem das máquinas ou vice-versa?

Luís Sarmento - [email protected]

Media Tracking

• Objectivos:– Acompanhar o que se passa na notícias– Detectar acontecimentos / eventos relevantes

• Projecto Verbatim:– Extracção de Citações de Jornais On-line– Categorização por Tópico– Detalhes para a Semana!– Pequena DEMO agora!

Page 56: Processamento de Linguagem Naturaleol/SSIIM/1112/aula_pln.pdf · • como tornar a interação mais “natural”? • Devem as pessoas aprender a linguagem das máquinas ou vice-versa?

Luís Sarmento - [email protected]

Prospecção de “Sentimentos”/ Opinião

• Objectivos:– Determinar se determinado excerto de texto

veicula opinião positiva ou negativa– Determinar qual o sentimento dominante num

dado media (e.g. Blogosfera) – Encontrar em texto opiniões acerca de pessoas,

objectos, productos

Page 57: Processamento de Linguagem Naturaleol/SSIIM/1112/aula_pln.pdf · • como tornar a interação mais “natural”? • Devem as pessoas aprender a linguagem das máquinas ou vice-versa?

Luís Sarmento - [email protected]

Prospecção de “Sentimentos”/ Opinião (II)

• Para quê?– Detectar gripes com antecedência– Fazer sondagens políticas– Perceber o impacto de certa medida / evento– Afinar Marleting

• Onde:– Em “User Generated Content”: – Twitters, Blogs, Comentários a Notícias

Page 58: Processamento de Linguagem Naturaleol/SSIIM/1112/aula_pln.pdf · • como tornar a interação mais “natural”? • Devem as pessoas aprender a linguagem das máquinas ou vice-versa?

Luís Sarmento - [email protected]

Prospecção de “Sentimentos”/ Opinião (III)

• Recursos:– Léxico com adjectivos categorizados– Corpus de Comentários (Público.pt) em

anotação– Experiências sobre determinação de polaridade

de notícias• Correlacionam bem com os resultados das Eleições

Europeias

Page 59: Processamento de Linguagem Naturaleol/SSIIM/1112/aula_pln.pdf · • como tornar a interação mais “natural”? • Devem as pessoas aprender a linguagem das máquinas ou vice-versa?

Luís Sarmento - [email protected]

Visualização

• Visualuzação de Dados– É importante porque permite perceber melhor o

problema / dados– Ajuda a detectar tendências– Ajuda a construir recursos– Alguns exemplos:

• RAMA (Web)• Talk2Me (Web)• Word4Word (Web)

Page 60: Processamento de Linguagem Naturaleol/SSIIM/1112/aula_pln.pdf · • como tornar a interação mais “natural”? • Devem as pessoas aprender a linguagem das máquinas ou vice-versa?

Luís Sarmento - [email protected]

Conclusões Finais

Page 61: Processamento de Linguagem Naturaleol/SSIIM/1112/aula_pln.pdf · • como tornar a interação mais “natural”? • Devem as pessoas aprender a linguagem das máquinas ou vice-versa?

Luís Sarmento - [email protected]

PLN• A linguagem está presente todos os aspectos da

actividade humana e tem desafiado todas as tentativas de sistematização

• O PLN é uma área com muitos desafios que pode receber contributos de todas as outras áreas

• Com a crescente digitalização da comunicação espera-se que a relevância do PLN, nas suas diversas vertentes e aplicações, aumente

• A interfaces serão sempre uma questão essencial na comunicação de informação e conhecimento

Page 62: Processamento de Linguagem Naturaleol/SSIIM/1112/aula_pln.pdf · • como tornar a interação mais “natural”? • Devem as pessoas aprender a linguagem das máquinas ou vice-versa?

Luís Sarmento - [email protected]

Questões?

[email protected]