Capítulo 5 – Assistente Inteligente para Extração de Elementos Orientados
5.6 Nível Lingüístico Semântico
5.6.2 Teoria Semântica
5.6.2.1 Modelo de Discurso baseado em UML
A presente técnica lingüística aplica a semântica lógica orientada a discurso, i.e., sobre uma seqüência coerente de sentenças em vez de uma frase isolada (KAMP e REYLE, 1993). A unidade semântica primária é o vocábulo cujo significado depende basicamente de seus constituintes sintáticos, i.e., categoria gramatical e estrutura sintática. Os referidos constituintes contribuem com a vinculação lógica da base de conhecimento semântica que determina os referentes do discurso, i.e., os elementos orientados a objeto que permitem a modelagem conceitual.
A distinção entre sintaxe e semântica, na tradição lógica, está proximamente vinculada à distinção entre os sistemas formais e suas interpretações. A Teoria do Modelo, i.e., o estudo das interpretações dos sistemas formais, enfoca as relações entre teorias e modelos. Um conjunto de axiomas juntos com todos os teoremas deriváveis dos mesmos é chamado de uma teoria, i.e., um conjunto de declarações vinculadas por meio de conseqüências lógicas. Um modelo para uma teoria requer um domínio abstrato e estruturado e a interpretação para todas as expressões primitivas da teoria naquele domínio, de modo que para a referida interpretação todas as declarações na teoria tornam-se verdadeiras para aquele modelo naquela interpretação (PARTEE et al., 1990). Com base nos referidos conceitos e utilizando a estrutura de representação do conhecimento adotada, i.e., a rede semântica, o modelo adotado, que permite a geração dos axiomas que irão compor a base de conhecimento semântica, está estruturado de acordo com as definições descritas a seguir.
Figura 5.30: Rede semântica do MDU.
Definição 1: Um Modelo de Discurso baseado em UML (MDU) para uma linguagem natural L é composto pela estrutura ‹D, cFaSi, cFaSe, cReSe, cTeSe›, onde (SILVA e CARVALHO, 2006b):
i) D é o domínio do MDU, i.e., todos os vocábulos, categorias gramaticais e estruturas sintáticas de uma determinada linguagem natural L, e.g., Português;
ii) cFaSi é um conjunto de axiomas sintáticos denominados de fatos sintáticos (FaSi); iii) cFaSe é um conjunto de axiomas semânticos denominados de fatos semânticos (FaSe);
iv) cReSe é um conjunto de axiomas semânticos denominados de regras semânticas (ReSe);
v) cTeSe é um conjunto de teoremas semânticos (TeSe);
vi) FaSi, FaSe, ReSe e TeSe são gerados a partir da estrutura de representação do conhecimento ilustrada na figura 5.30.
Definição 2: O axioma FaSi é um predicado com seis argumentos com o seguinte subconjunto do vocabulário V em sintaxe BNF:
<fatoSintatico> ::= <predicado> “.”
<predicado> ::= constituinteSintatico(<listaTermosSintaticos>) <listaTermosSintaticos> ::= <atomoEstruturaSintatica>,
<atomoCategoriaGramatical>, <atomoLexico>, <atomoSentenca>, <atomoNumero>
< atomoEstruturaSintatica > ::= sintagma_nominal | … | sintagma_verbal < atomoCategoriaGramatical >::= substantivo | adjetivo | … | verbo < atomoLexico> ::= < atomoPequeno> | ‘<string>’
< atomoPequeno> ::= <letraMinuscula> | <atomoPequeno> <letraMinuscula> <string> ::= <caracter> | <string><caracter>
< atomoSentenca>::= s <numeral>
<numeral> ::= <digito> | <numeral><digito> <atomoNumero> ::= <singular> | <plural>
Definição 3: O axioma ReSe implementa a heurística que permite extrair os referentes do discurso, i.e., os elementos OO, sendo um predicado n-ário com o seguinte subconjunto do vocabulário V em sintaxe BNF: <regraSemantica> ::= <cabecaPredicadoSemantico> :- <listaCorpoPredicadoSemantico>“.” < cabecaPredicadoSemantico> ::= <atomoSemanticoCabeca> (<listaTermoSemantico>) < listaCorpoPredicadoSemantico> ::= <corpoPredicadoSemantico> | <listaCorpoPredicadoSemantico>, <corpoPredicadoSemantico> < corpoPredicadoSemantico::= < atomoSemanticoCorpo > (<listaTermoSemantico>) | <atomoSemanticoCorpo> (<listaTermoSemantico>) | <atomoEstruturaSintatica>| <atomoCategoriaGramatical>
< atomoSemanticoCabeca > ::= class | association | atributte | cardinality | inheritance
< atomoSemanticoCorpo> ::= constituinteSintatico
<listaTermoSemantico> ::= <variavelSemantica> | <listaTermoSemantico>, <variavelSemantica > | <atomo> | <listaTermoSemantico>, <atomo> < variavelSemantica> ::= < letraMaiusculaSemantica> [<numeral>]
<letraMaiusculaSemantica> ::= C | R | A | M | WC | SS | W | S <atomo> ::= <pequenoAtomo> | ‘<string>’
<pequenoAtomo> ::= <letraMinuscula> | <pequenoAtomo> < letraMinuscula > <string> :: <caracter> | <string>< caracter>
<numeral> ::= <digito> | <numeral><digito>
*** C – classe, R – associação, A – atributo, M – multiplicidade,
*** WC – categoria gramatical, SS – estrutura sintática, W – palavra, S – sentença.
Definição 4: O FaSe é um axioma para um elemento orientado a objeto representado por um predicado n-ário gerado por uma regra semântica com o seguinte subconjunto do vocabulário V em sintaxe BNF:
<fatoSemantico> ::= <predicado> “.”
<predicado> ::= <atomoSemantico>(<listaTermoSemantico>)
<atomoSemantico> ::= classe | associacao | atributo | multiplicidade |
<listaTermoSemantico> ::= <atomoLexico> | <listaTermoSemantico>, <atomoLexico>
<atomoLexico> ::= <pequenoAtomo> | ‘<string>’
<pequenoAtomo> ::= < letraMinuscula > | <pequenoAtomo> <letraMinuscula> <string> :: <caracter> | <string><caracter>
Definição 5: O TeSe é um teorema semântico, i.e., teorema presumido a ser provado a partir dos axiomas FaSi, FaSe e ReSe com o seguinte subconjunto do vocabulário V em sintaxe BNF:
<fatoSemantico> ::= <predicado> “.”
<predicado> ::= <atomoSemantico>(<listaTermoSemantico>)
< atomoSemantico > ::= class | association | attribute | cardinality | inheritance < listaTermoSemantico > ::= <variavelSemantica> | < listaTermoSemantico>, <
variavelSemantica>
A representação de conhecimento MDU permite a geração de uma base de conhecimento semântica para o assistente inteligente proposto. Brachman e Levesque (2004) destacam que o significado é tipicamente capturado por interpretações específicas, i.e., uma interpretação mapeada sobre um domínio, e apresentam o seguinte questionamento: como seria possível dar uma interpretação a um sistema que poderia envolver (talvez infinitos) conjuntos de excelentes objetos tais como países e animais? A resposta inclui a conexão entre sistemas baseados em conhecimento, tal qual o assistente proposto, e o vínculo lógico. Considere S um conjunto de sentenças e α uma sentença qualquer: se S = {α1,…, αn}, então S╞ α se e somente se a sentença [{α1 ^…^ αn} ^ α] é válida, i.e., S vincula a sentença α. As sentenças não vinculadas podem ou não ser verdadeiras, mas o sistema baseado em conhecimento pode seguramente concluir quais vínculos existem. Baseado no conceito de vínculo lógico, onde FaSi e FaSe são fatos do discurso, as regras ReSe permitem expressar a conexão entre símbolos não lógicos envolvidos, cabendo aos teoremas TeSe a definição do conjunto de sentenças vinculadas próximas ao conjunto de sentenças verdadeiras em uma determinada interpretação. O cálculo do referido vínculo é uma forma de raciocínio, por meio de inferência dedutiva, que permite a extração do significado dos termos envolvidos. Baseado na referência (SOWA, 2000), o MDU é um modelo computacional com um método declarativo, i.e., baseado em axiomas, que utiliza técnicas de prova de teoremas na derivação de suas conseqüências lógicas.