Embora nas camadas do aprendizado de ontologias da Figura 3.13 se preveja instanciação de axiomas e sua generalização, o método proposto não emprega tamanho rigor lógico (CIMIANO, 2006, p. 27). A tarefa de população de ontologias, para os fins a que se destinam neste caso, ocorrem em domínios específicos, culminando na definição e extensão de conceitos úteis para a modelagem de sistemas de negócio. Com isso, não se corre o risco de cometer erros que justifiquem a análise axiomática, dispensando-se, em princípio, a descoberta e discussão ontológica de objetos do negócio nesse nível.
A estrutura geral (framework) do modelo completo de aplicação do método proposto por Cimiano (2006) pode ser analisada na Figura 3.14. O processo se inicia com a análise sintática
(parsing) de um texto ou conjunto de textos (documentos) sobre um determinado domínio, no caso
produzidos pela organização ou sobre a organização (produzidos por terceiros), na qual se busca extrair, conforme Grefenstette (1994), Lin (1998), Gamallo et al. (2005) e outros autores, estruturas sintáticas como “verbo-preposição-complemento” e dependências de “verbo-objeto” e “verbo-sujeito”. Considera-se, para o ciclo de análise posterior, um par de termos composto por um verbo e um sujeito, um objeto ou uma frase preposicional. Então, para cada substantivo ou nome aparecendo como cabeçalho desses argumentos de busca, utiliza-se os verbos correspondentes como atributos para construção do contexto formal e calcular, no final, a rede de conceitos formais (concept lattice).
Em seguida, buscando-se consolidar números menores de contextos a partir da eliminação de variações sintático-morfológicas, realiza-se a lematização ou redução dos termos a suas raízes ou bases morfológicas no respectivo idioma (como norma do método, se a palavra não pertence ao léxico de referência, a mesma não é lematizada).
69 A próxima fase envolve a comparação estatística dos pares de termos encontrados nas fases anteriores com pares de termos idênticos encontrados em corpora de referência adotados para o estudo, geralmente compostos de textos do domínio em questão (por exemplo, se a organização que estão sendo modelada é da área médica, provavelmente será recomendável utilizar-se um corpus como o MEDLINE). Esse requisito do método se justifica pelo fato, comumente observado nesse tipo de busca, que se extrai um grande número de objetos e relações que ofuscam a compreensão do domínio e levam à proliferação de dados para análise, muitas vezes sem correspondência dos pares nos corpora de referência para análise de freqüência. Assim, deve-se procurar estabelecer correspondência entre as freqüências de pares conhecidas (presentes nos corpora) e desconhecidas (presentes nos documentos de entrada no processo, mas desconhecidas nos corpora), a fim de se reduzir o número de pares no modelo de análise, processo que deve se apoiar em estimativas de freqüência de pares algo parecidos no contexto. Os pares de termos, a seguir, são ponderados, estatisticamente, de modo a estabelecer- se algum grau de importância respectiva ao domínio e ao contexto. Com isso, considera-se para a próxima fase apenas os pares com freqüência maior que o limiar definido no processo, que comporão o contexto formal no qual será aplicada a ACF.43
Figura 3.14 Processo de Indução de Hierarquia de Conceitos (Fonte: CIMIANO, 2006)
A rede resultante desse processo é transformada, então, numa estrutura de ordem parcial que é próxima de uma hierarquia de conceitos tradicional. Como a ACF induz, naturalmente, a uma proliferação de conceitos, essa ordem parcial é compactada com a remoção dos conceitos abstratos comumente produzidos, obtendo-se uma ordem parcial compactada que é a hierarquia
43 Conforme se descobriu no experimento que embasa esta tese, cada estrutura sintática utilizada como padrão de mineração nos textos, para se tornar útil, deve atender a propósitos específicos do projeto e refletir estruturas presentes em quantidade adequada nas fontes de informação.
Análise
Sintática DependênciasExtração de Lematização
Análise Estatística
Análise de
Conceito Formal Seleção Ponderação
Construção da Rede
70 de conceitos resultante. Cimiano (2006, p. 96) apresenta o processo de aprendizado e população de ontologias a partir de textos no algoritmo a seguir:
Algoritmo: Construir Hierarquia de Conceitos (D, T)
/* construir uma hierarquia para termos T com base em documentos D */ AnáliseSintática = analisar(POS-tag(D));44 DependSintática = represtags(AnáliseSintática); DependSintáticaLematizada = lematizar(DependSintática); DependSintáticaEqualizada = equalizar(DependSintáticaLematizada); DependSintáticaPonderada = ponderar(DependSintáticaEqualizada); DependSintática‟ = aplicarLimiar(DependSintáticaPonderada); K = obtenhaContextoFormal(T,DependSintática‟); (β,≤) = computarRede(K); (C‘,≤‘) = transformar(β,≤); (C‖,≤‖) = compactar(C‘,≤‘); retorne(C‖,≤‖);
A formalização do processo apresentada no algoritmo é importante para se demonstrar o cálculo lógico-matemático do método. Então, partindo do contexto formal K = (G, M, I) até a rede compactada C‖,≤‖, onde G se refere a objetos, M a atributos e I às incidências, a demonstração a
seguir, conforme Cimiano (2006, p. 97-98), é desenvolvida em duas definições formais:
Definição 3 (Transformação de (β,≤) em (C’,≤’)): em primeiro lugar, a ordem parcial C‘ contém
tanto objetos como conjuntos de atributos:
C‘ := G U {B | (A,B) Є β}
≤‘ := {(g,B1) | γ(g) = (A1,B1)} U {(B1,B2) | (A1,B1) ≤ (A2,B2)}
Como ACF tipicamente produz um grande número de conceitos, comprime-se a hierarquia de conceitos ontológicos resultante removendo-se qualquer nodo interno no qual a extensão é a mesma que a de um conceito-filho em termos de nodos-folha subsumidos. O resultado é uma ordem parcial (C‖,≤‖c), conforme formalizada a seguir:
Definição 4 (Hierarquia de Conceitos Compactada (C”,≤”)): assumindo-se que lext(c) é o conjunto de nodos-folha dominado por c, de acordo com ≤‘c, então:
C‖ := {c2Є C‟ | _c1Є C‟ c2≤‟c c1→ lext(c2) ≠ lext(c1)} ≤‖c := ≤‘c | c” x c”
Isto é, ≤‖c é a relação ≤‘c restrita aos pares de elementos de C‖.
44 POS: Part-of-Speech (parte da fala); tag: etiqueta de metadados que define a função sintática de cada palavra (exemplos: <VB> indica um verbo, <PP> indica uma preposição, <NP> indica um substantivo (nome) e <ADJ> indica um adjetivo). As tags acompanham as palavras no texto etiquetado, geralmente colocado ao seu lado posterior, como em corpora existentes em cada idioma.
71 O desenvolvimento de métodos e técnicas para implementação do framework de indução de hierarquias de conceitos de Cimiano (2006) tem duas correntes originais: os métodos de recuperação da informação para indexação de termos, baseado nas idéias de Salton e outros (SALTON e BUCKLEY, 1988), e as pesquisas em processamento da linguagem natural (PLN). Em suma, a extração de termos a partir de textos em linguagem natural implica o uso de níveis mais ou menos avançados de processamento lingüístico para identificação de frases nominais complexas que podem expressar termos interessantes num contexto e análise sintática de dependência de termos para identificação de suas estruturas internas. Geralmente, utiliza-se
softwares etiquetadores (taggers) de termos para identificação de palavras, quando disponíveis corpora de comparação adequados (o Treetagger, da Universidade de Stuttgart, desenvolvido
conceitualmente também na Universidade da Pennsylvannia, é um exemplo), ou se realiza etiquetação manual de corpus, aplicando depois algum método de reconhecimento de padrões sintáticos manualmente ou com uso de softwares de análise sintática (parsing).
Os passos seguintes desse método são mais ou menos automatizáveis, com uso de
softwares estatísticos (alguns parsers implementam análise estatística também, como o WordSmith, desenvolvido na Universidade de Oxford) e aplicativos de construção de redes (lattice builders) e de organização de ontologias (Protegè, ToscanaJ e outros). Contudo, ainda não se
conhece nenhum aplicativo integrado disponível no mercado, como software proprietário ou livre, para implementação de todas as fases do processo previsto no framework discutido neste capítulo. Como literatura de apoio para a fase seguinte, de identificação de termos sinônimos, Cimiano (2006) recomenda as técnicas de Harris (1968), baseada na hipótese que todos os termos que são extensões de algum conceito, num determinado contexto, são semanticamente similares. Essa abordagem tem sido explorada por Grefenstette (1994), Turcato et al. (2000), Buitelaar e Sacaleanu (2002) e Navigli e Velardi (2004). Outras técnicas são a Latent Semantic
Indexing (LSI), com Landauer e Dumais (1997) e a Probabilistic Latent Semantic Indexing (PLSI),
de Hoffman (1999), e suas variantes. Existe, no entanto, uma tendência mais atual de utilização da própria WWW como um imenso corpus lingüístico para pesquisa de sinônimos baseada em técnicas estatísticas.
A extração de conceitos de textos é uma tarefa um tanto polêmica exatamente em sua essência, ou seja, em relação à definição dessa atividade. Enquanto alguns autores abordam essa atividade na perspectiva de formação de agrupamentos (clusters) de termos correlatos considerados como conceitos, tais como Hindle (1990), Lin e Pantel (2001) e Reinberger e Spyns (2004), ou mediante a exploração de conexões entre palavras a partir da redução das dimensões de busca, como Schütze (1993) e Landauer e Dumais (1997), para formação de clusters, outros desenvolvem técnicas de formação e população de conceitos com a extensão de outros conceitos, como Evans (2003) e Etzioni et al. (2004). Existem, ainda, técnicas de aprendizado de
72 conceitos de modo “intensional‖, como no caso do sistema OntoLearn, de Velardi et al. (2005), que deriva destaques para conceitos de domínios específicos (como na WordNet), com base em interpretação composta do significado dos conjuntos de termos (CIMIANO, 2006).
As estratégias mais conhecidas para indução de hierarquia de conceitos a partir de textos em linguagem natural são, basicamente, três:
I. Recuperação de termos com base em padrões léxico-sintáticos: com a aplicação de
templates de palavras representando padrões estruturais do idioma, tais como os de
Hearst (1992), descobre-se relações de interesse para formação e hierarquização de conceitos; entretanto, os pontos fracos dessa estratégia são que certos padrões ocorrem raramente em corpora e, por serem padrões sintáticos, são de precisão razoável, mas de baixa taxa de revocação (recall); outros autores que desenvolvem essa estratégia são Buitelaar et al. (2004), com padrões sintáticos além dos de Hearst (1992), explorando as estruturas internas de frases nominais para derivar relações taxonômicas.
II. Hipótese distributiva de Harris: utiliza abordagens de clustering para derivar, automaticamente, hierarquias de conceitos a partir de textos em linguagem natural, aproveitando-se a dupla vantagem da clusterização: (i) formação de conceitos e (ii) indução de hierarquia de conceitos. A potência das técnicas de clusterização se revela na medida em que ao formarem os clusters de palavras similares, que são, naturalmente, extensões de um conceito, elas permitem a generalização dessas extensões para formação de conceitos que representam essas extensões, ordenando os
clusters hierarquicamente. Os autores dessa estratégia são Faure e Nedellec (1998),
Bisson et al. (2000) e Cimiano et al. (2004).
III. Análise de co-ocorrência de termos na mesma sentença, parágrafo ou documento: conforme Cimiano (2006), a técnica de Sanderson e Croft (1999), por exemplo, apresenta uma noção de subsunção baseada em documento onde um termo t1 é mais
específico que um termo t2 se t2 aparece em todos os documentos em que t1 ocorre.
Existem poucas abordagens de aprendizado de relações ontológicas de textos publicados na literatura, aparecendo o trabalho seminal de Mädche e Staab (2000) como o mais conhecido. O método desses autores é uma variante do algoritmo de extração de regras de associação baseado na co-ocorrência de termos em sentenças. Conforme Cimiano (2006, p. 29), outros autores produtivos nessa linha de pesquisa são: Ciaramita et al. (2005), Gamallo et al. (2002) e Schutz e Buitelaar (2005), ainda que essas iniciativas tenham apenas “arranhado a superfície do problema”.
Quanto ao problema da população de ontologias, existem, nos métodos e técnicas mais conhecidos, restrições de escala. Em geral, o problema é atacado na abordagem conhecida como Reconhecimento de Entidades Nominadas (NER)45 e Cimiano (2006) apresenta um método
73 alternativo, com poder de processamento escalar, baseado na Web, que ele denomina Learning
by Googling. A implementação desse método é apresentada no paradigma denominado Pattern- based Annotation through Knowledge on the Web (PANKOW), cuja vantagem reside na
simplicidade de se utilizar um motor de busca na Web para encontrar padrões léxico-sintáticos. Os resultados dessa busca são, então, agregados para se descobrir um conceito apropriado para uma determinada instância conceitual e as anotações semânticas são aproximadas analisando- se, estatisticamente, suas respectivas ocorrências na Web em face de determinadas estruturas indicando alguma relação de interesse para a tarefa de população de ontologias.