computador sejam capazes de processar linguagens naturais:
❑Para se comunicar com os seres humanos
❑Para adquirir informação a partir da linguagem escrita PLN Três questões envolvidas na compreensão de uma linguagem: 1) presume-se uma grande quantidade de conhecimento humano; 2) uma linguagem é baseada em padrões: fonemas são componentes de palavras e palavras constituem frases e sentenças. A ordenação de fonemas, palavras e sentenças não ela aleatória; 3) os atos de linguagem são o produto de agentes tanto de humanos quanto de um computador PLN
Devo comparar-te a um dia de verão?
És mais encantadora e mais delicada: O vento forte de maio agita a flor em botão, E a despedida do verão tem data marcada.
Soneto XVIII - Shakespeare
PLN – modelos de linguagem
Quando falamos em linguagem de programação
temos que: uma linguagem pode ser definida como um conjunto de sequencias formando um programa válido, uma linguagem por sua vez tem um conjunto de regras que chamamos de gramática. As linguagens formais tem regras que definem o significado ou a semântica de um programa. PLN – modelos de linguagem
Para as linguagens naturais: podemos definir um
modelo de LN de forma melhor como sendo uma distribuição de probabilidade sobre uma sentença em vez de um conjunto definitivo. Em outras palavras, em vez de perguntarmos se uma sequencia de palavras é ou não membro de um conjunto que define o idioma, perguntamos por P(S = palavras) – qual a probabilidade de que uma sequencia aleatória seria palavras. PLN – modelos de linguagem As linguagens naturais também são ambíguas, dessa forma não podemos falar de um único significado para uma sentença, mas uma distribuição de probabilidade sobre significados possíveis.
Linguagens naturais são difíceis de lidar porque são
muito grandes e com mudanças constantes, assim os modelos da nossa língua são, na melhor das hipóteses, uma aproximação. PLN – Análise da linguagem Fazer análise de uma linguagem é um fenômeno complicado que envolvem processos variados como:
❑ reconhecimento de sons ou de linhas impressas;
❑ análise sintática; ❑ inferências semânticas de alto nível; ❑ comunicação de conteúdo emocional. PLN – Análise da linguagem Devido à complexidade os linguistas definiram diferentes níveis de análise para a linguagem natural (divisões artificiais que foram impostas à linguagem)
1) Prosódia: trata do ritmo e da entonação da linguagem;
2) Fonologia: examina os sons que são combinados para formar a linguagem; 3) Morfologia: se preocupa com os componentes (morfemas) que constituem as palavras; PLN – Análise da linguagem 4) Sintaxe: estuda as regras para combinar palavras em frases e sentenças válidas e o uso dessas regras para analisar e gerar sentenças; 5) Semântica: considera o significado de palavras, frases e sentenças e os modos pelos quais o significado é transmitido em expressões em linguagem natural; 6) Pragmática: é o estudo das formas do uso da linguagem e de seus efeitos sobre o interlocutor; 7) conhecimento do mundo: inclui o conhecimento do mundo físico, do mundo da interação social humana e do papel de objetivos e intenções na comunicação. PLN – Análise da linguagem Embora a organização específica de programas para a compreensão da linguagem natural varia de acordo com diferentes filosofias e aplicações, todos eles precisam traduzir a sentença original em uma representação interna de seu significado. Dessa forma temos:
❑ Primeiro estágio (análise – parsing): analisa a estrutura
sintática de sentenças. Identificando as principais relações linguísticas o analisador fornece um arcabouço para a interpretação semântica que normalmente é representado por uma árvore sintática. PLN – Análise da linguagem ❑ Segundo estágio (interpretação semântica ): produz uma representação do significado do texto
❑ Terceiro estágio: interpretação do conhecimento
contextual/do mundo
Estes estágios existem na maioria dos sistemas (não
probabilísticos ) de compreensão de LN, embora eles possam ou não corresponder a módulos de software distintos PLN – Análise da linguagem
LUGER, G.F. Inteligência
Artificial. p. 517 PLN – Análise da linguagem
A análise incremental é uma técnica comumente usada, na
qual um fragmento da representação interna é produzido tão logo uma parte significativa da sentença é analisada. Esses fragmentos são combinados em uma estrutura completa à medida que a análise prossegue. Eles são também usados para resolver ambiguidades e guiar a análise . PLN – Sintaxe Uma sentença válida é qualquer cadeia de terminais que pode ser derivada usando essas regras. Uma derivação começa com o símbolo não terminal sentença e produz uma cadeia de terminais a partir de uma série de substituições definidas pelas regras da gramática.
LUGER, G. F. Inteligência Artificial, p. 517
PLN – Sintaxe A derivação pode ser representada como uma estrutura de árvore, conhecida como uma árvore sintática, na qual cada nó é um símbolo do conjunto de regras da gramática.
A estrutura frasal da gramática define a organização
linguística mais profunda da linguagem.
A análise sintática é o problema de construir uma derivação
ou uma árvore sintática para uma cadeia de entrada a partir de uma definição formal de uma gramática. PLN – Sintaxe Os algoritmos de análise são agrupados em 2 classes :
❑ Os analisadores de cima para baixo que começam
com o símbolo de alto nível sentença e tentam construir uma árvore cujas folhas casam com a sentença alvo;
❑ O analisadores de baixo para cima que começam com
as palavras da sentença (os terminais) e tentam encontrar uma série de reduções que produz o símbolo sentença. PLN – Analisadores por rede de transição ❑ Um analisador por rede de transição representa uma gramática como um conjunto de máquinas de estados finitos ou redes de transição. ❑ cada rede corresponde ao único não terminal na gramática; ❑ os Arcos das redes são símbolos terminais ou não terminais; ❑ cada caminho na rede no estado inicial até o estado final corresponde a uma regra para aquele não terminal; ❑ A sequência de rótulos do arco no caminho é a sequência de símbolos no lado direito da regra. PLN – Analisadores por rede de transição
LUGER, G.F. Inteligência Artificial. P.525
PLN – Analisadores ATN ❑ Em vez de usar a gramática para descrever noções como número, tempo e gênero, representamos isso como características associadas aos terminais e não terminais da gramática ❑ Os procedimentos associados às regras da gramática acessam essas características para atribuir valores e realizar os testes necessários ❑ As gramáticas que usam extensões da gramática livres de contexto para implementar sensibilidade a contexto incluem as gramáticas de estrutura de frase estendidas, gramáticas de lógica estendida e rede de transição estendida (ATN) PLN – Analisadores ATN ❑ As redes de transição estendidas expandem as regras de transição permitindo que procedimentos sejam associados aos arcos das redes ❑ O analisador ATN executa esses procedimentos associados quando ele atravessa os arcos ❑ Os procedimentos podem atribuir valores a características gramaticais e realizar testes, causando a falha de uma transição se certas condições não forem satisfeitas ❑ Esses procedimentos também constroem uma árvore sintática, que é usada para gerar uma representação semântica interna do significado da sentença PLN – Analisadores ATN PLN – Analisadores ATN PLN – Analisadores ATN PLN – Analisadores ATN PLN – Analisadores ATN Referências RUSSELL, Stuart e NORVIG, Peter. Inteligência Artificial. Rio de Janeiro: Elsevier, 2013. 988p.
COPPIN, Bem. Inteligência Artificial. Rio de Janeiro: LTC, 2010. 636p.
LUGER, George F. Inteligência Artificial. 6ed. São Paulo: Pearson,