Processamento de Linguagem Natural Flávia Barros Centro de Informática - UFPE CIn/UFPE Roteiro  Breve histórico  Arquitetura geral de sistemas de PLN  Etapas na interpretação da LN • • • • • Processamento morfológico Processamento sintático Análise semântica Análise do discurso Processamento pragmático CIn/UFPE Processamento de Linguagem Natural  Há 20 anos atrás... • Os dados estavam ordenadamente armazenados em Bancos de Dados  Hoje: • Os dados estão armazenados em forma de texto livre – e.g., Internet • Como ter acesso a esses dados?  Processamento de Linguagem Natural (PLN) !!! • tem por objetivo interpretar e gerar frases isoladas ou textos em alguma língua natural • congrega estudos da Lingüística e da Ciência da Computação. CIn/UFPE Um Pouco de História  Déc. 40 - 60: • Tradução automática (Ling.) • Recuperação de informação (C.C.)  Final 60 - 70 • Técnicas de Inteligência Artificial para representar e manipular conhecimento • Sistemas de pergunta-resposta • Interfaces em L.N. para bancos de dados e bases de conhecimento  Final 70 - final 80 • Lógica de Predicados e Frames para representar conhecimento e fazer inferência • Análise automática do discurso • Geração de linguagem natural • PLN conexionista • Ressurgimento de tradução automática (EUROTRA,UNL) CIn/UFPE Um Pouco de História  Final 80 - 90: • PLN estatístico (grandes corpora) • Recuperação de informação na Web • Apresentações multimídia • Ajuda on-line • Sistemas tutores inteligentes  Outras aplicações: • Verificadores ortográficos e gramaticais • Reconhecimento e síntese de voz • Extração de informação • Geração de resumos • Avaliação empírica de teorias lingüísticas CIn/UFPE Arquitetura de Sistemas para PLN  Etapas: • Processamento morfológico • Processamento sintático • Análise semântica • Análise do discurso • Processamento pragmático  Ver figura na apostila CIn/UFPE Processamento Morfológico Objetivo:  Na interpretação: decompor as palavras da frase de entrada em radical + morfema gramatical • morfologia inflexional: – menina = menin + a – cadeiras = cadeira + s • morfologia derivativa: – fazia = faz + ia – desfaz = des + faz  Na geração: gerar as palavras que vão formar a frase a partir do seu radical + morfema gramatical CIn/UFPE Processamento Morfológico  Análise morfológica: • Utiliza os radicais, morfemas gramaticais e regras morfológicas de formação das palavras • É central na construção de – verificadores ortográficos automáticos – qualquer aplicação com léxico e gramática de grande tamanho CIn/UFPE Processamento Sintático Objetivo:  Na interpretação: • obter a representação da estrutura sintática da frase: Parsing  Na geração: • determinar a estrutura sintática da frase a ser gerada CIn/UFPE A partir de agora...  Veremos apenas Interpretação de Linguagem Natural CIn/UFPE Processamento Sintático  Parser: • algoritmo que mapeia uma frase na sua estrutura sintática • com base no léxico e na gramática do sistema. CIn/UFPE Parsing  Etapas de processamento: • rotular cada palavra com sua categoria sintática (postagging) – mesa: substantivo; casa: subst. ou verbo • delimitar constituintes sintáticos - sintagmas (bracketing) • rotular os constituintes com categorias sintáticas – SN (sintagma nominal), SV (sintagma verbal), etc – Gramática de Constituintes Imediatos • rotular os constituintes com sua função sintática – sujeito, objeto, predicado, ... • identificar dependências estruturais entre os constituintes – oração coordenada, subordinada, embedding,... CIn/UFPE O Léxico  Dicionário com os termos utilizados pelo sistema.  Existem variados formalismos para representação dos léxicos.  A representação do léxico deve estar de acordo com a da gramática do sistema.  Exemplos de entradas de um léxico em PATR-II (Shieber 1984): mesa <categoria> = substantivo <gênero> = feminio <número> = singular <contável> = yes comprou <cat> = verbo <tempo> = pretérito-perfeito <número> = singular <pessoa> = 3 <voz passiva> = yes <arg1> = SN <arg2> = SN CIn/UFPE A Gramática  Define, através de regras, quais são as cadeias de palavras válidas para o sistema.  Sistemas de PLN tratam um sub-conjunto de uma língua natural.  Existem diversos formalismos para a representação de gramáticas.  Exemplos de regras de uma gramática em PATR-II: • este formalismo oferece mecanismos para verificação de concordância gênero e número, por exemplo. SN  Det Subst <Det gênero> = <Subs gênero> <Det número> = <Subs número> SN  Subst Adj <Subst gênero> = <Adj gênero> <Subst número> = <Adj número> CIn/UFPE Ambigüidade no nível Sintático  Frases onde as palavras podem assumir categorias sintáticas diferentes, a depender da interpretação: • I saw her duck  Ambigüidade estrutural: • Eu vi o banco da praça • Eu vi o rapaz no parque com o binóculo. (1) O rapaz estava com o binóculo (2) Eu estava com o binóculo CIn/UFPE Ambigüidade no nível Sintático Ver figura na apostila CIn/UFPE Interpretação Semântica  Estrutura sintática apenas não basta! • frases com palavras e estruturas sintáticas diferentes, porém com mesmo significado: (1) Eu dei um livro a Maria. (2) Maria recebeu um livro de mim. • receber e dar  conceito semântico de transferência  Controle de inferência • Eu vi uma baleia grande – eu vi uma baleia – eu vi algo grande • Eu vi uma baleia pequena – eu vi algo pequeno??? CIn/UFPE Interpretação Semântica Semântica • estuda o significado das palavras e como elas se combinam para formar o significado das frases. Objetivo:  Na interpretação: mapear a estrutura lingüística da frase nos conceitos do domínio que a frase pode expressar. • problema: ambigüidade – Ela estava em minha companhia (1) companhia = empresa (2) companhia = pessoa (i.e., ela estava comigo)  Na geração: expressar os conceitos do domínio na estrutura lingüística da frase. • problema: paráfrase CIn/UFPE Restrições de Seleção  Restrições de seleção são atribuídas às palavras no léxico: • menino  [+humano], [+masculino], [-adulto] • pensamento  [+abstrato] • cabo  [+vivente], [+humano], [+adulto] • cabo  [+concreto], [+inanimado] • jovem = Substantivo modificado pelo adjetivo [+vivente] • morrer = Substantivo sujeito do verbo [+vivente] • Exemplo: – o cabo é jovem – o cabo é longo CIn/UFPE Restrições de Seleção Ontologias  Restrições de seleção definem classes semânticas de palavras, que podem ser organizadas em hierarquias de tipos (ontologias). CIn/UFPE Gramáticas de Casos  Formalismo muito utilizado no processamento semântico de frases.  Papéis temáticos, ou casos, são atribuídos aos constituintes da frase.  Papéis temáticos são determinados pelo verbo, o constituinte central da frase.  Exemplo de entrada lexical para o verbo entregar: entregar, Verbo argumentos: agente, tema, beneficiário • Eu entreguei a carta a Pedro. CIn/UFPE Gramáticas de Casos Ver figuras na apostila CIn/UFPE O Modelo do Domínio  Fornece o contexto enciclopédico do sistema.  Armazena conhecimento a respeito das entidades, relações, eventos, lugares e datas do domínio da aplicação.  O conhecimento é representado em uma Ontologia do domínio, em um (ou mais de um) formalismo de IA • e.g., Lógica de Predicados, Redes Semânticas, Frames, Scripts.  Na interpretação: interpretação do conteúdo implícito das palavras.  Na geração: escolha do conteúdo a explicitar. CIn/UFPE Processamento Automático do Discurso  Problema: Antônio quer fazer uma festa de formatura na sua casa. Ele a limpou e arrumou ontem.  Qual o referente do pronome a? • festa e casa apresentam os mesmos traços morfológicos (fem, sing) e sintáticos (subs). • o que nos ajuda a optar por casa é o nosso conhecimento do mundo (ou senso comum). CIn/UFPE Processamento Automático do Discurso  Como é possível resolver automaticamente problemas desta natureza?  Foram desenvolvidos teorias lingüísticas e algoritmos computacionais para representar, interpretar e gerar discurso, a fim de construir sistemas de PLN capazes de manter um diálogo com o usuário.  Discurso: qualquer produção lingüística composta por mais de uma frase. CIn/UFPE Discurso tem Estrutura (a) João e Maria saíram para comprar um cortador de grama novo (b) porque o deles foi roubado. (c) Maria viu os homens que o roubaram. (d) Ela os seguiu até o final da rua, (e) mas eles fugiram num caminhão. (f) Depois de procurar no shopping center, (g) eles concluíram que não têm dinheiro para um novo. (h) A propósito, João perdeu o emprego, (i) por isso ele está sem dinheiro. (j) Finalmente, eles decidiram comprar um cortador usado. CIn/UFPE Análise do Discurso  Estuda os princípios que governam a produção de seqüências estruturadas de frases = discurso escrito ou falado.  O discurso é formado por segmentos • unidades lingüísticas que contêm uma ou mais frases consecutivas • que tratam do mesmo assunto (o foco daquele trecho do discurso).  Qual a importância de se identificar a estrutura do discurso? • entre outras, a identificação dos referentes de pronomes e dêiticos (e.g., hoje, aqui, agora). CIn/UFPE Análise do Discurso  Como determinar automaticamente a fronteira entre segmentos? • analisando a “superfície” do texto em busca de marcadores discursivos – e.g., "A propósito", "Bem", "Como eu ia dizendo", "Em resumo", etc. • analisando o "conteúdo semântico" do , em busca de identificar mudanças de foco. CIn/UFPE O Modelo do Discurso  Fornece o contexto discursivo.  É construído dinamicamente durante o processamento do discurso.  Armazena informações sobre as frases previamente processadas.  Central na interpretação e geração de pronomes e dêiticos.  Geralmente, consiste em uma pilha contendo as caraterísticas sintáticas e semânticas das entidades já introduzidas no discurso.  Essa pilha deve espelhar a estrutura do discurso, indicando onde começa e termina cada segmento. CIn/UFPE Processamento Pragmático  Pragmática • estuda os enunciados - frases com seu significado no contexto do discurso. • tem como preocupação central a análise dos objetivos da comunicação (interação social).  Atos da Fala • atividades desenvolvidas pelos falantes enquanto fazem uso da íngua. 1. Atos Locutórios - "A janela está aberta'’ 2. Atos Ilocutórios - ordem ou um pedido para fechar a janela 3. Atos Perlocutórios - o efeito de um enunciado sobre o (fechar a janela)  Problema: um mesmo enunciado pode realizar atos da fala diversos, dependendo do seu contexto de uso. CIn/UFPE Atos da Fala  Tipos de Atos da Fala, e possíveis realizações lingüísticas: • Assertivos - assertiva, constatação, afirmação, negação • Diretivos - ordem, comando, requisição • Comissivos - promessa, garantia, juramento, aposta • Expressivos - elogio, agradecimento, parabenização • Declarativos (a) encontro, indicação, declaração (b) declaração de guerra (c) estímulo, resignação, excomunhão  Exemplos: • Prometo que vou à festa. • Aposto que você vai gostar do livro. • Fale com o diretor.  Muito úteis na IA Distribuída, na comunicação entre os diversos agentes de uma sociedade. CIn/UFPE Processamento Pragmático  É necessário em qualquer tarefa de PLN que requeira a análise das intenções dos participantes no discurso. • modelagem do usuário.  O Modelo do Usuário • fornece o contexto interpessoal. • armazena conhecimento a respeito do usuário do sistema, por exemplo: – seus objetivos, planos, intenções, – sua função, seu status, – seu conhecimento do domínio.  Pode ser modificado ou enriquecido durante o processamento com auxílio do componente pragmático.  Utiliza representações como planejamento hierárquico ou atos da fala. CIn/UFPE Processamento de Linguagem Natural  Interpretação de LN – OK  Geração de LN • Ver apostila o outros livros e papers... CIn/UFPE