• Nenhum resultado encontrado

3.5 Matching de ontologias/esquemas

3.5.2 Técnicas de matching por tipo de entrada

Calcula-se a similaridade entre elementos dos esquemas por meio de uma análise das caracterís- ticas fornecidas pelos elementos dos esquemas. Portanto, o tipo de entrada do processo de matching

3.5 Matching de ontologias/esquemas

influencia na determinação do conjunto de técnicas que podem ser utilizadas. De acordo com os levantamentos bibliográficos deRahm e Bernstein(2001),Shvaiko e Euzenat(2005) eEuzenat e Sh- vaiko (2007), os tipos de entradas fornecidas ao processo de matching podem ser categorizados em termos, estruturas (interna e relacional), instâncias e modelo semântico.

As técnicas baseadas em termos (nomes) podem indicar a similaridade entre entidades dos es- quemas pela comparação de seus identificadores, labels, ou até mesmo comentários. Ao extrair os termos referentes às entidades de um esquema, as técnicas podem interpretá-los de duas maneiras durante o cálculo da similaridade: simplesmente como strings (sequências de caracteres) ou como palavras (entradas em um dicionário).

Técnicas baseadas em strings consideram os termos como uma sequência de caracteres. A pos- sibilidade mais simples para determinar a similaridade entre duas strings s e t é o teste de igualdade entre elas: σ(s, t) =    0 se s = t 1 se s = t

Pode-se testar a igualdade após realizar alguma normalização sintática, como transformar todos os caracteres em letras minúsculas (caixa baixa) e eliminação de pontuação. Por exemplo, C.D. se torna cd. Essa abordagem não considera que strings com estruturas similares (e não idênticas) podem se referir a conceitos similares e, portanto, caso as strings comparadas apresentem qualquer caractere diferente, mesmo que seja apenas um, o teste de igualdade resulta em 0.

Por essa razão, existem técnicas mais tolerantes nesse sentido. Duas strings podem ser consi- deradas similares quando uma é substring da outra, por exemplo. Desse modo, pode ser calculada a similaridade de substring, que expressa a proporção da sequência de caracteres em comum entre duas strings. Seja S o conjunto de todas as strings, |x| o comprimento da string x e t a maior substring comum entre x e y, a similaridade de substring é definida pela função σ : S × S → [0, 1] tal que ∀x, y ∈ S:

σ(x, y) = 2|t| |x| + |y|

Por outro lado, se os termos são considerados como palavras, são utilizados recursos linguísticos externos, como dicionários, tesauros e terminologias. Assim, conceitos como Participant e Subject, que contêm estruturas muito diferentes entre si, podem ser identificados como similares se for usada uma terminologia em que essas entradas constem como sinônimos.

Terminologias são vocabulários de domínio específico e tendem a ser menos ambíguos do que dicionários e tesauros. As entradas de uma terminologia são mais adequadas quando os textos ou es- quemas a serem casados dizem respeito ao mesmo domínio, por reterem acepções mais especializadas ou até mesmo acepções que não existem na linguagem cotidiana.

Além de comparar os termos, pode-se comparar a estrutura das entidades contidas em um es- quema: tanto a estrutura individual de uma entidade (estrutura interna), quanto a estrutura formada pelos relacionamentos entre as entidades (estrutura relacional). As estruturas internas de duas enti-

3.5 Matching de ontologias/esquemas

dades podem ser comparadas com base nos atributos que elas possuem. Compara-se os seus tipos de dados e seus identificadores (utilizando as técnicas baseadas em termos). Quando há estruturas relacionais, compara-se os grafos ou as árvores hierárquicas que as entidades e os relacionamentos formam.

As técnicas baseadas em instâncias comparam as informações instanciadas a fim de indicar o relacionamento que existe entre as entidades do esquema que as modela. A ideia é que se dois conceitos compartilham o mesmo conjunto de instâncias, pode-se presumir que são similares. Essas técnicas são aplicadas quando as informações relativas ao esquema são limitadas ou em situações em que os esquemas não são fornecidos junto aos dados.

A aplicação de uma técnica baseada em um modelo semântico restringe-se a ontologias, pois depende da presença de um conjunto de axiomas lógicos que descrevam as entidades. Como primeiro passo, são estabelecidas âncoras ou correspondências semente (que podem ser informadas pelo usuá- rio ou obtidas por meio das demais técnicas). Em seguida, são utilizados sistemas capazes de inferir os relacionamentos entre as entidades (reasoners).

3.6

Considerações finais

Neste capítulo foi apresentada uma introdução a ontologias e noções gerais sobre processos de evolução e matching, que podem ser utilizados para aplicá-las em soluções de software cujo objetivo é lidar com a falta de entendimento compartilhado. Também foram apresentados trabalhos relaci- onados, que propõem a aplicação de ontologias em Engenharia de Software Experimental. Dentre esses trabalhos, aEXP EROntology (Garcia et al.,2008) é uma ontologia que pode ser utilizada para

padronizar pacotes de laboratório.

Com essa abordagem, é possível apoiar as atividades do FIRE (Mendonça et al.,2008) que focam na transferência de conhecimento: criar/evoluir pacote (ciclo interno), compartilhar conhecimento, padronizar pacotes, criar/evoluir corpo de conhecimento e compreender experimentos e pacotes de laboratório (ciclo externo). Isso motivou a definição de um workflow de empacotamento de experi- mentos controlados em Engenharia de Software, que usa uma ontologia como estrutura para instanciar as informações, apresentado no capítulo seguinte.

CAPÍTULO

4

Workflow para empacotar experimentos

controlados

Muitos experimentos em Engenharia de Software vêm sendo conduzidos e seus resultados pu- blicados, mas cada pesquisador publica o conjunto de informações que julga ser mais importante (Carver, 2010). Não há um padrão amplamente adotado para as informações que devem ser geradas em um pacote de laboratório. Nesse contexto, uma ontologia pode ser adotada como o modelo para instanciar as informações, a fim de padronizá-las e facilitar o seu entendimento.

Entretanto, acomodar os diferentes conjuntos de informação que um pacote de laboratório pode conter sugere que a ontologia adotada como padrão deve evoluir, incorporando novos conceitos. As- sim, além de utilizar a ontologia para instanciar as informações, é preciso considerar a prática atual dos pesquisadores ao reportar um experimento.

A fim de lidar com essas necessidades identificadas, neste trabalho de mestrado é proposto um workflow de empacotamento de experimentos controlados usando como base uma ontologia. Na Seção4.1são descritos de maneira geral os requisitos que o workflow deve cumprir e são identificadas as suas atividades. Em seguida, na Seção 4.2, as atividades identificadas são instanciadas com a escolha de opções para implementá-las.

4.1

Definição do comportamento do workflow

Devido à necessidade de estabelecer um padrão que seja capaz de incorporar diferentes conjuntos de informação, é preciso lidar com as diferentes perspectivas sobre o que deve conter um pacote de laboratório. A meta, ilustrada na Figura 4.1, é contribuir na integração de estudos isolados em um corpo comum com base na padronização por meio de uma ontologia.

Nesse sentido, para empacotar as informações de um estudo, é preciso identificar qual conceito definido na ontologia corresponde a cada elemento de informação do pacote de laboratório a ser padronizado. Em uma situação ideal, assim como está representado na Figura4.2, para cada elemento de informação existe um conceito definido na ontologia e, assim, todos os elementos de informação

4.1 Definição do comportamento do workflow

pacotes de laboratório

ontologia

Figura 4.1: Integração de pacotes de laboratório usando ontologia

pacote de laboratório ontologia

Figura 4.2: Empacotamento com ontologia - situação ideal são instanciados.

Na Figura 4.3 está representada uma outra situação, que tem grande probabilidade de acontecer devido à falta de padronização dos pacotes de laboratório: alguns elementos de informação ficam sem conceito correspondente definido. Esses elementos que sobram podem sugerir conceitos que devem ser inseridos na ontologia a fim de habilitá-la para acomodar o pacote de laboratório satisfatoriamente.

pacote de laboratório ontologia

Figura 4.3: Empacotamento com ontologia - situação em que sobram elementos de informação O empacotamento de acordo com a ontologia envolve uma sequência de atividades embutidas nas situações descritas. Para modelar o seu comportamento, neste trabalho é proposta a identificação e a organização dessas atividades em um workflow, que recebe como entradas a ontologia (contendo os conceitos de experimentos controlados) e um pacote de laboratório (contendo as informações de um experimento) e devolve como saída um pacote de laboratório padronizado de acordo com a ontologia. Integrando todas as atividades do workflow e as entradas e saídas de cada uma, obtém-se o di- agrama da Figura 4.4. A partir do pacote de laboratório de entrada, a atividade de matching do

4.1 Definição do comportamento do workflow

workflowdetermina os elementos de informação que casam com os conceitos (correspondências) e os que não casam. Assim, são fornecidas as entradas das demais atividades.

Os elementos não casados precisam ser resolvidos pelo usuário, o que possivelmente requer a evolução da ontologia. Quando o usuário associa um elemento a um conceito, esse par se torna uma correspondência também. Todas as correspondências, estabelecidas automaticamente pelo matching ou manualmente pelo usuário, são instanciadas em um novo pacote de laboratório, sob o formato de uma ontologia.

Matching Pacote de Laboratório

Elementos

não casados Correspon-dências

Instanciação Pacote de Laboratório Padronizado Resolução Evolução apoio do usuário Ontologia

Figura 4.4: Diagrama com todas as atividades do workflow e suas respectivas entradas e saídas

Documentos relacionados