Post on 22-Jan-2016
description
Linguagem Natural versus
Linguagem Artificial
• Aberta, não completamente definida
• Estrutura formal não pré-definida
• Inerentemente ambígua
• Muito complexa
• Não é concebida para se adequar aos métodos de parsing eficientes conhecidos
PLN é multidisciplinar
• Linguística• Psicolinguística• Neurologia• Engenharia Elétrica• Computação
– Linguagens Formais: autômatos, gramáticas– Algoritmos (e.g. de parsing)– (Outros) Modelos Formais: matemáticos, estatísticos– INTELIGÊNCIA ARTIFICIAL MACHINE
LEARNING (Aprendizado de Máquina)– Curiosidade: Paper do Knuth sobre LR [1965?]
Aplicações do PLN
• Correção de textos e aconselhamento• (Apoio à) Tradução (Semi-) Automática• Interfaces de usuário
– Entrada de comandos em LN– Aplicativos como para reservas de vôos– Comunicação com “robôs”– Direcionadores de chamadas
• Sistemas de perguntas e respostas• Recuperação de Informação/Documentos• Sumarização• Extração de Informação• ... Muitos outros ... Corretores de prova
automâticos ...
É difícil? MUITO!!!!
• Linguística: Ninguém sabe como modelar formalmente (e.g. com GLC, etc.) o conhecimento linguístico “completo”
• Psicolinguística, ciência cognitiva: Ninguém sabe como funcionam os processos cognitivos humanos ligados à manipulação da linguagem (interpretação, geração, e muito menos AQUISIÇÃO da linguagem)
• Neurologia:Ninguém sabe exatamente como o cérebro reage à linguagem (Mas há grandes progressos recentes na área !!!)
• Engenharia Elétrica: Vários desafios em speech recognition
É difícil? MUITO!!!!
• Computação:– Não se conhece o modelo real do proceso– Não se conhece modelo computacional
behaviorally equivalent• Comparação com aritmética
– Há um processo cognitivo por trás da maneira como humanos manipulam quantidades
– Não se conhece o processo cognitivo por trás
– Mas se descobriu um modelo computacional, mecânico, behaviorally equivalent que todos aprendem na escola
É difícil? MUITO!!!!
• Considere o diálogo:– Quero comprar um laptop que vi
anunciado por mil e duzentos reais.– Já tem o dinheiro?– Tenho 537 no banco.
E a mãe disse que me dá até 680.Vai dá ...
É difícil? MUITO!!!!
• Como você raciocinou durante a interpretação?
• Não se sabe reproduzir este mecanismo por computador
• Mas ...• Se conhece um método mecânico que
chega às mesmas conclusões, e aliás, MUITO EFICIENTE!
• Infelizmente isto não acontece com o processamento da linguagem.
Como fazer computacionalmente
Baseado em observação do comportamento cognitivo humanoe.g., Fodor (MUITO DIFÍCIL)
Baseado em resultado. Métodos completamente dissociados da realidade cognitivaSÃO CLARAMENTE LIMITADOS NO LONGO PRAZO
PASSADO
PRESENTE
Como fazer computacionalmente
Baseado em observação do comportamento cognitivo humanoe.g., Fodor (MUITO DIFÍCIL)
Baseado em resultado. Métodos completamente dissociados da realidade cognitivaSÃO CLARAMENTE LIMITADOS NO LONGO PRAZO
PASSADO
PRESENTE
LINGÜÍSTICA
Lingüística
• ANEDOTA:“Cada vez que eu demito um lingüista o desempenho do meu sistema melhora.” [atribuído a Fred Jelinek quando estava na IBM](http://www.lrec-conf.org/lrec2004/doc/jelinek.pdf)
• FATO: Qualquer abordagem para PLN requer algum conhecimento lingüístico (em maior ou menor grau)
Níveis de Conhecimento Lingüístico
• Fonético e Fonológico: fala
• Morfológico: estrutura das palavras
• Sintático: estrutura das sentenças– sintagmas, funções gramaticais
• Semântico: Significado ...– Das palavras– Dos sintagmas– Das sentenças
• Pragmático: Uso das sentenças em diferentes situações. O que as sentenças realmente informam.
• Discurso: Estrutura do texto, interpretação de pronomes, correferências.
• Nível de conhecimento do mundo
COMPOSICIONALIDADE
Conhecimento Morfológico
O João vendeu para Maria o seu velho computador de mesa
O det (determinador/artigo)João pn (nome próprio)vendeu v (verbo)para prep (preposição)o pnPedro pno detseu adj (?? Adjetivo? pronome (adjetivo) ??)velho adj computador n (nome, substantivo comum)de prepMesa n0
Vendeu v: finito (indicativo), passado (perfeito), 3ª pessoa, sing
• Categorias léxicas ou
parts-of-speech (pos)• Qual o sistema de (pos) tags mais adequado?• Qual a pos correta de uma palavra?
convenção !!• Aliás, o que fazer com “do”, “das”, “cannot”,
“wanna”
Conhecimento Morfológico
O/det João/pn vendeu/v para/prep o/det Pedro/pn o/det seu/adj velho/adj computador/n de/prep mesa/n
Conhecimento Sintático
O João vendeu para o Pedro o seu velho computador de mesa
S
NP VP
det[o]
pn[João]
v[vendeu]
PP NP
prep[para]
NP
det[o]
pn[Pedro]
det[o]
adj?[seu]
sdj[velho]
n[computador]
PP
prep[de]
n[mesa]
NP
Conhecimento Sintático
O João vendeu para o Pedro o seu velho computador de mesa
S
NP VP
det pn v PP NP
prep NP
det pn
det adj? sdj n PP
prep
n
NP
Formas de Representação da Estrutura Sintática
S NP det O pn João VP v vendeu PP prep para NP det o pn Pedro NP det o adj seu adj velho n computador PP prep de n mesa
[S [NP [det O] [pn João] ] [VP [v vendeu] [PP [prep para] [NP [det o] [pn Pedro] ] ] [NP [det o] [adj seu] [adj velho] [n computador] [PP [prep de] [n mesa] ] ] ] ]
Conhecimento Sintático
• Qual a estrutura mais adequada do texto?– Há construções standard e outras que os lingüistas não tem
posição definida/adequada/estável a respeito– Estas últimas são MUITO MAIS FREQÜENTES DO QUE SE
IMAGINA !!! (lingüística de corpus)• Como representar o conhecimento sintático?
– Teoria X-BAR– Government and Binding (GB)– Transformational Grammars– Minimalismo– Influência muito forte de Noam Chomsky!
• Como representar o conhecimento sintático?– Gramáticas Livres de Contexto (CFG)?– GPSG – Generalized Phrase Structure Grammars?– HPSG – Head-driven Phrase Structure Grammars?– LFG – Lexicalized Functional Grammars?– TAG – Tree Adjoining Grammars? A melhor de todas
Syntactic Nuts
• Extraposição:– [S [NP Uma reunião
[PP para escolher o diretor] ] [VP foi feita ontem] ]
– [S [NP Uma reunião] [VP foi feita ontem]<---???--> [PP para escolher o diretor] ]
– ??? Onde colocar o PP ???
• Longa distância: • João [comprou a bola].• O que [João comprou]?• Quem [comprou a bola]?
Conhecimento Semântico
• Cada palavra tem significado• Cada sintagma tem significado, que é definido pela
COMPOSIÇÃO dos significados dos sintagmas CONSTITUINTES COMPOSICIONALIDADE
• O aluno da frente chamou o aluno de trás– da/prep + frente/n indica adiantamento– aluno + [ind. de adiantamento] restringe a um aluno
específico– e assim por diante ...
• Papéis temáticos:– O aluno da frente agente– O aluno de trás paciente
• Representação lógica: predicados CHAMOU (alunodafrente, alunodetras)
Conhecimento Pragmático
• Vera, você sabe que horas são?• Grice: pessoas são colaborativas
– Por favor, me alcance o livro em cima da mesa.
– Qual das mesas?– Como assim, em cima da mesa? Só
tem uma mesa.– OK, pensei que pudesse ser na mesa
da sala ao lado, ou na mesa do escritório lá de casa.
Conhecimento Pragmático
• Vera, você sabe que horas são?• Grice: pessoas são colaborativas
– Por favor, me alcance o livro em cima da mesa.– Qual das mesas?– Como assim, em cima da mesa? Só tem uma mesa.– OK, pensei que pudesse ser na mesa da sala ao
lado, ou na mesa do escritório lá de casa.
• (Este é um tipo comportamento non-Gricean, que é a base de todas as piadas)
Conhecimento do Discurso
• Considere o seguinte trecho:– (A) João pediu um bife.– (B) O bife estava duro.– (C) Por isso ele desistiu,– (D) pagou a conta,– (E) e saiu.
• Estrutura:
RAZÃO
SEQÜENCIA SEQÜENCIA
A B C D E
Conhecimento do Discurso
• Correferência:– O João vendeu para o Pedro o seu
velho computador de mesa.• Quem é “seu”: João ou Pedro?
– O João pediu emprestado ao Pedro o seu notebook.
• E agora, quem é “seu”: João ou Pedro?
– Saiu do caminhão. Entrou no carro. Fechou a porta.
• A porta do caminhão ou do carro?
Conhecimento de mundo
– Vai no jogo do Inter domingo?
• “Provavelmente” eu não estou falando do Inter de Milão.
• Dado que o jogo é um GreNal, há também “grandes chances” que eu seja colorado.
É difícil processar linguagem natural computacionalmente?
• MUITO !!!!! Vou focar um aspecto:
• AMBIGUIDADE (A taxonomia é minha)
– Ambigüidade Real– Pseudo-ambigüidade– Ambigüidade Local
Ambigüidade
• das palavras:– banco: diferentes significados, mesma
categoria léxica (nome)– a: artigo e preposição
• das sentenças/construções/sintagmas:– João viu a Maria com o telescópio.
• Quem estava com o telescópio?
• A sentença acima tem ambigüidade REAL
Pseudo-ambigüidade
• Considere:– João viu a Maria de saia.
• Maria estava de saia
• Compare com:– João viu a Maria de manhã.
• Não é a Maria que estava “de manhã.”• Ele a “viu” de manhã.
• Considere:– João comprou um computador com alta velocidade.
• o computador tinha alta velocidade– João comprou um computador com o dinheiro da mesada
• Não é o computador que tem o dinheiro da mesada.• A compra é que foi feita com o dinheiro da mesada.
– João dirigia o carro em alta velocidade• ele dirigia em alta velocidade
• NÃO HÁ AMBIGÜIDADE REAL NAS SENTENÇAS• MAS CLARAMENTE HÁ DUAS ESTRUTURAS POSSÌVEIS• HÁ MUITO MAIS AMBIGÜIDADE DO QUE SE CONSEGUE
PERCEBER NO DIA-A-DIA
AMBIGÜIDADE LOCAL
• Tirei a grana do banco e dei a ela.• Tirei a toalha do banco.• Ele latiu [PP como cachorro].• Eu [VP como cachorro] quando estou
na China.• Tente achar as várias outras possíveis
“ambigüidades locais” nas sentenças acima.
• Como fazer para achar a estrutura sintática correta?!!!!
Como é a arquitetura de um sistema de PLN (interpretação)
• Análise é em geral “bottom-up”• Segue mais ou menos os níveis de
conhecimento da linguagem– primeiro pos-tagging, depois parsing, etc.– embora, na verdade eles são inter-
dependentes ...• Abordagem cognitiva: “Mmmm, acho
que devo fazer a análise da esquerda para à direita ...”
• Abordagens não cognitivas: “Eu não ligo para a direção da análise e tenho um parser mais acurado que o teu!”
Abordagens da análise da PLN
• Handrafted:– Tipicamente baseada em regras– “principled”– linguisticamente motivada– baixa taxa de cobertura das construções– baixa eficácia (accuracy: precision, recall)– Vocês não fazem idéias de como tem
construções estranhas nas sentenças do dia-a dia um jornal!
Abordagens da análise da PLN
• A partir dos anos 90:– Proliferação de corpora anotado– um corpus é uma coleção de
sentenças/ textos– um corpus anotado é uma tal coleção
em que as sentenças aparecem já com análise linguística.
– [S [NP [det O] [pn João] ] [VP [v vendeu] [PP [prep para] [NP [det o] [pn Pedro] ] ] [NP [det o] [adj seu] [adj velho] [n computador] [PP [prep de] [n mesa] ] ] ] ]
Abordagens da análise da PLN
• Baseada em corpus– Tipicamente usa técnicas de aprendizado de
máquina (machine learning) / “Inteligência Artificial”.– O computador analisa o corpus anotado e gera um
sistema de decisão, utilizando análise estatística e modelos probabilísticos.
– O sistema de decisão é então usado para fazer a análise das novas sentenças.
– Mesmo com modelos com conhecimento linguístico MUITO PUERIL, se consegue resultados em geral melhores que na abordagem handcrafted.
– Alta cobertura.– DESAFIO/TENDÊNCIA: Integração do
conhecimento linguístico com os métodos probabilísticos
FINALMENTE:
• Diga-me para que você quer PLN ...• E eu lhe digo quanto conhecimento você
precisa!!• Exemplo: Para classificar textos / information
retrieval:– verificação e comparação da freqüência de
ocorrência de palavras nos documentos pesquisados
– levar em conta palavras que “co-ocorrem” com as palavras chave
– Mmm ... Será que vale a pena fazer parsing?– Mmm ... E análise morfológica?