segunda-feira, 30 de setembro de 2019

Ontologias

Uma ontologia computacional de domínio é uma descrição formal de um domínio de conhecimento. A formalização lógico-matemática do conhecimento compartilhado por uma comunidade se relaciona com as disciplinas da Análise Formal de Conceitos, Lógica de Primeira Ordem e Lógica Descritiva, bem como como as linguagens de programação XML, RDF e OWL, entre outras.

Componentes de uma Ontologia (Description Logic):

*Instâncias: Os objetos da ontologia que também são chamados de indivíduos ou exemplares
*Classes: Conjuntos de objetos agrupados por atributos
*Atributos: Propriedades descritivas dos objetos
*Relacionamentos: As formas como os objetos podem se relacionar com outros objetos.

Ontologias são utilizadas em inteligência artificial, web semântica, engenharia de software e arquitetura da informação, como uma forma de representação de conhecimento sobre o mundo ou alguma parte deste. 

A origem do termo Ontologia

O termo Ontologia que tradicionalmente era aplicado para o Estudo do Ser na metafísica clássica foi cooptado pela Ciência da Computação e se tornou um jargão técnico para se referir ao estudo da classificação dos conceitos e do conhecimento semântico formalizado.

Ontologia de Domínio

Na análise de sistemas e engenharia de software, a ontologia de domínio é uma ferramenta auxiliar para a gestão de conhecimento e a elaboração de algoritmos eficientes, pois realiza uma síntese do conhecimento compartilhado sobre um domínio de conhecimento. 

Um engenheiro eletrônico que precisa construir um sensor inteligente que faz o sequenciamento do DNA e identifica alguns marcadores genéticos importantes pode entender muito de linguagens de programação e machine learning, mas conhecer pouco ou quase nada de bioquímica, biofísica e engenharia genética.

Nesse sentido, se o engenheiro projetar uma boa ontologia computacional sobre o sequenciamento de DNA ele terá uma ferramenta poderosa contendo os fluxos e os relacionamentos das informações que o software deve processar, promovendo a comunicação eficiente entre o programador e os especialistas das diversas áreas, como os geneticistas e os bioquímicos que o ajudarão a programar, corrigir e atualizar o respectivo software.

Um bom software para o desenvolvimento de ontologias é o programa Protégé que permite editar ontologias de acordo com a metodologia da lógica descritiva.

Espaço da Informação e Algoritmos Genéticos

Algumas formalizações permitem projetar ontologias diretamente no espaço da informação, para testar algoritmos genéticos ou reescrever uma rede semântica em termos de suas relações lógicas estritas.

Um algoritmo genético é um algoritmo que é voltado especialmente para a busca de soluções de um problema mediante aproximações sucessivas, adaptando os princípios básicos de seleção e mutação aleatória oriundos da biologia para a teoria da informação.

O espaço de informação ou espaço de Hamming é um espaço discreto ou de geometria finita, onde os valores binários (0, 1) são dispostos numa grade reticulada multidimensional. Esse é o lugar nativo da informação, um artifício matemático bastante utilizado, especialmente para a correção de erros digitais nas telecomunicações.

Ontologia e Tecnologia

A medicina baseada em inteligência artificial, que permite que um agente de IA elabore diagnósticos eficientes, é um dos campos que pode se desenvolver muito com o auxílio das ontologias.

Para fazer isso, o primeiro passo é a formalização semântica dos conceitos, que funciona como uma espécie de interface assembler para a inteligência artificial entender a linguagem natural de alto nível. A interface baseada em ontologia permite a IA apreender com os bancos de dados médicos e até com a leitura de diagnósticos que estão armazenados na internet. Por exemplo, a IA Watson aprendeu a jogar Jeopardy! através de várias ontologias computacionais que treinaram a inteligência artificial para a busca de informações, superando os competidores humanos em conhecimentos gerais.

Reciprocamente, a ontologia permite aos usuários humanos entenderem de forma maquinal ou lógica conceitos formulados na linguagem de alto nível, gerando uma comunicação efetiva e um entendimento mútuo entre o agente de IA e o programador dos softwares.

Nenhum comentário:

Postar um comentário