Representación de conocimiento biomédico mediante web semántica


Grado en biotecnología

Bioinformática

Dr. Alejandro Rodríguez González
http://www.alejandrorg.com

ETS de Ingenieros Informáticos

Índice


Representación del conocimiento

Tecnologías Semánticas / Web Semántica

Linked Data

Ontologías

Web Semántica + Biotec

¿Como no funciona esta clase?



REPRESENTACIÓN DEL CONOCIMIENTO


¿Que es el conocimiento?


REPRESENTACIÓN DEL CONOCIMIENTO


¿Que es el conocimiento?

El conocimiento es un conjunto de información almacenada mediante la experiencia o el aprendizaje (a posteriori), o a través de la introspección (a priori). En el sentido más amplio del término, se trata de la posesión de múltiples datos interrelacionados que, al ser tomados por sí solos, poseen un menor valor cualitativo.

representación del conocimiento



¿Que es la representación del conocimiento?

representación del conocimiento



La representación del conocimiento y el razonamiento es un área de la inteligencia artificial cuyo objetivo fundamental es representar el conocimiento de una manera que facilite la inferencia (sacar conclusiones) a partir de dicho conocimiento. 

Representación del conocimiento

Inferencia

Inferencia es el acto o proceso de derivar conclusiones lógicas a partir de premisas conocidas o que se asumen como ciertas.

Dentro del campo de la lógica tenemos tres tipos de lógicas (clásicas):

  1. Lógica proposicional (orden cero): Elementos simples (proposiciones), conectivas (operaciones sobre proposiciones).
  2. Lógica de 1er orden: Lógica de predicados. Incluye cuantificadores y funciones.
  3. Lógica de segundo orden: Se añaden variables para propiedades, funciones y relaciones y cuantificadores que operan sobre las variables.

Representación del conocimiento

Lógica

Representación del conocimiento

Inferencia

Además de las 3 lógicas clásicas, en las que se basan gran parte de los sistemas inteligentes existentes, existen más lógicas..

  • Lógica difusa: Infinitos valores.
  • Lógica no monotónica: Diagnóstico médico.
  • Lógica modal
  • Lógica temporal
  • ...


Representación del conocimiento

Inferencia: Tipos de razonamiento

Existen dos tipos fundamentales de razonamiento:


  1. Razonamiento deductivo
  2. Razonamiento inductivo

Representación del conocimiento

Inferencia: Razonamiento deductivo


La conclusión se infiere necesariamente de las premisas.
Ejemplo:

  1. Todo estudiante de biotecnología es sexy.
  2. Chindasvinto es estudiante de biotecnología.
  3. ?? Conclusión ??

Representación del conocimiento

Inferencia: Razonamiento deductivo

Otro ejemplo:

  1. Todo estudiante de biotecnología es sexy.
  2. Menganito es sexy.
  3. ... es Menganito estudiante de biotecnología?


Hay que tener cuidado cuando se está realizando inferencia con las proposiciones y como están afectadas por los cuantificadores.

Representación del conocimiento

Inferencia: Razonamiento inductivo


El razonamiento inductivo es más complejo y depende de más factores. En contrasten con el razonamiento deductivo donde la conclusión puede considerarse completamente cierta en el razonamiento inductivo se habla de probablemente cierta.

Representación del conocimiento

Inferencia: Razonamiento inductivo

Ejemplo:

Premisa: Todos los estudiantes de biotecnología que conozco son sexys.
Conclusión: Seguramente, todos los estudiantes de biotecnología sean sexys.

No hay conclusión certera.

Representación del conocimiento


Además de la propia inferencia para obtener nuevas deducciones, dentro de la representación del conocimiento tenemos que tener en cuenta las propias formas de representación. Fundamentalmente, necesitamos:

  • Sistema de símbolos para representar el dominio del discurso.
  • Funciones de inferencia.

REPRESENTACIÓN DEL CONOCIMIENTO

Ejemplo

Vamos a representar el conocimiento de una estructura familiar usando como lenguaje de representación Prolog.

Prolog es un lenguaje de programación lógica asociado generalmente su uso a la inteligencia artificial. Tiene sus raíces en la lógica de primer orden y es un lenguaje declarativo: se desarrollan programas mediante la especificación de condiciones, proposiciones, afirmaciones, restricciones, ecuaciones o transformaciones para definir el problema y detallar su solución.

REPRESENTACIÓN DEL CONOCIMIENTO


Vamos a representar la estructura familiar de los Griffin


Tecnologías Semánticas



Tecnologías Semánticas


Se le pidió a seis ciegos que determinaran como era un elefante palpando diferentes partes del cuerpo del animal.

El hombre que tocó la pata dijo que el elefante era como un pilar; el que tocó su cola dijo que el elefante era una cuerda; el que tocó su trompa dijo que era como la rama de un árbol; el que tocó la oreja dijo que era como un abanico; el que tocó su panza dijo que era como una pared; y el que tocó el colmillo dijo que el elefante era como un tubo sólido.


Tecnologías Semánticas


Un rey les explicó:

Todos ustedes están en lo cierto. La razón por la que cada uno de ustedes esté diciendo diferentes cosas es que cada uno de ustedes tocó una parte diferente del elefante. Por lo tanto el elefante tiene todas las características que mencionaron.

Tecnologías SEmánticas


Dependiendo del área donde se trabaje, puede cambiar su definición.

Tienen un marco común de aplicación, basado en la tecnología subyacente que las componen.

Se definen como "Tecnologías para manejar las relaciones entre datos, proporcionando acceso inteligente a recursos, que sirve para mediar entre las intenciones de los usuarios y la información disponible. Su reto es crear, codificar y extraer significados, así como ofrecer un "conocimiento" para manipular, reutilizar y direccionar la información."

Tecnologías Semánticas


¿Que es la Web Semántica?

Web Semántica


La web actual es una Web Sintáctica.

Los recursos (páginas con información) se enlazan entre ellos mediante vínculos.


WEB SEMÁNTICA

Dificultades de la Web actual

  • Búsquedas complejas (limitadas)
    • Información multimedia
    • Información multilingüe
    • Información imprecisa (bajo incertidumbre)
    • Búsquedas conceptuales


  • Ambigüedad de contenido

  • Problemas de etiquetado
    • Carencia de etiquetado
    • Etiquetados erróneos

WEB SEMÁNTICA

Dificultades de la Web actual

Todo hay que decir que los buscadores mejoran sus algoritmos y ofrecen cada vez búsquedas más refinadas.

Sin embargo, estos resultados se basan en la mejora de sus algoritmos y no porque la web se esté volviendo más semántica.

Es necesario crear herramientas para semantizar la web.

WEB SEMÁNTICA

Dificultades de la Web actual

Ejemplo: Web actual

Fuente: Dr. Jose Emilio Labra Gayo

Web Semántica

Dificultades de la Web actual

Ejemplo: Buscador semántico


Fuente: Dr. Jose Emilio Labra Gayo

WEB SEMÁNTICA

Solución

  • Mejorar etiquetado

  • Dotar a la información de significado → Creación de conocimiento

  • Permitir que las máquinas comprendan la información que parsean.


Solución: Web Semántica

Web Semántica

¿Qué es la web Semántica?


WEB SEMÁNTICA

¿Que es la Web Semántica?

Definición W3C:


Al dotar a la Web de más significado y, por lo tanto, de más semántica, se pueden obtener soluciones a problemas habituales en la búsqueda de información gracias a la utilización de una infraestructura común, mediante la cual, es posible compartir, procesar y transferir información de forma sencilla.

WEB SEMÁNTICA

¿Como funciona?

La web actual permite definir elementos de visualización sobre las webs (letra, tamaño, color, posición, etc..): HTML

El código se interpreta para su visualización, pero no se interpreta su contenido.

Web Semántica

¿Como funciona?


Fuente: Dr. Jose Emilio Labra Gayo

Web Semántica

¿Como funciona?


Web Semántica

¿Como funciona?

  • Uso de ontologías

  • Enlaces entre recursos

  • Tareas
    • Definir y clasificar entidades
    • Vocabulario para definir enlaces entre recursos
    • Relacionar términos entre varias ontologías

WEB SEMÁNTICA

¿Como funciona?

Pretende disponer datos en la Web definidos y enlazados de forma que puedan ser usados por las máquinas para más tareas aparte de la visualización:

  • Automatización
  • Integración
  • Reutilización

Web Semántica



Web semántica

Para finalizar..
Características de la Web

  • No centralizada: Problemas para garantizar la integridad de la información.

  • Información dinámica: La información cambia.

  • Cantidad de información: Existe una cantidad enorme de información.

Web Semántica → Linked Data


De la evolución de la Web Semántica, o como parte de esta, nace el concepto de Linked Data.

¿Que es Linked Data?

Linked Data


«Método para publicar datos estructurados de tal forma que pueda ser enlazado de forma interna y por lo tanto ser más útil»

Se basa en la idea de que la información está disponible, pero oculta para los actuales métodos de búsqueda.


Linked Data



Linked Data



Linked Data



Linked Data

Ejemplo

Linked Data

Y... todo esto, ¿en que resulta?


Linked Data

Aclaraciones (I/V)

  • La mayoría de los datos publicados en LD lo hacen instituciones (de investigación, periódicos, gobiernos).

  • Nosotros podemos CONSUMIR sus datos, que se presuponen curados y "ciertos" (para datos de gobiernos, periódicos.. en investigación las reglas son diferentes).

  • Al igual que con la web normal, nosotros podemos crear nuestros datos, pero eso no significa que otros vayan a reconocerlos como válidos.

Linked Data

Aclaraciones (II/V)

  • Reconocer nuestros datos como válidos implica que ellos nos enlacen.


  • La idea de LD es que en vez de procesar millones de textos para encontrar las relaciones entre conceptos, estas, estén ya proporcionadas.


  • La web actual busca palabras clave, no entiende de relaciones. La web semántica y LD funciona con relaciones.

Linked Data

Aclaraciones (III/V)

  • No obstante, publicar en LD tiene por detrás un proceso de curación: Data curation.


  • El proceso de curación de datos comprueba la validez de los datos (enlaces correctos, formatos, trazabilidad).. aunque también hay enfoques para solucionar datos erróneos.


  • Linked Data trata de semantizar la web y relacionar los datos. La web actual, no funciona así y las búsquedas son conceptualmente muy diferentes.

Linked Data

Aclaraciones (IV/V)

Se pretende que la web semántica pueda ser consultada de forma natural, con lenguaje natural.

Actualmente, no es tan sencillo, ya que LD se compone de elementos cuyas queries son complejas y hay lenguajes para hacerlo.

No obstante, existen varias herramientas en las que se está trabajando.

Linked Data

Aclaraciones (V/V)

Más información:

Linked Data, Web SEmántica

¿Como represento el conocimiento?



Ontologías

¿Que es una ontología?


Ontologías

Definición

La palabra Ontología deriva del griego ontos (estudio del ser) y logos (palabra). Filosóficamente, Ontología es la ciencia de qué es, es una explicación sistemática de la existencia, de los tipos de estructuras, categorías de objetos, propiedades, eventos, procesos y relaciones en cada área de la realidad.

Ontologías

Definición

Una ontología es una especificación explícita y formal de una conceptualización compartida.

  • Conceptualización: Vista simplificada y abstracta del mundo a representar para un propósito específico. Se define un vocabulario controlado.
  • Explícita: El tipo de conceptos usados sean explícitamente definidos.
  • Formal: Debe ser interpretado por una máquina.
  • Compartido: La ontología no es restringida para un individuo, sino que es aceptada por un grupo de personas.

Ontologías

Otros términos relacionados

Cuando hablamos de ontologías suelen salir a la palestra otros términos relacionados. Por ejemplo:

  • Tesauro
  • Vocabulario
  • Taxonomía
  • Folksonomía

Ontologías

Otros términos relacionados


Ontologías

¿Como se construyen?


Ontologías

¿Como se construyen?

Se usa el modelo de datos RDF (Resource Description Framework) como base.

Es un método general para la descripción conceptual o modelado de información implementada en recursos web.

Tiene diferentes notaciones de sintaxis y formatos de serialización.

Ontologías

URI

URI es el acrónimo de Universal Resource Identifier.

Es una cadena que identifica inequivocamente un recurso.

En las ontologías y en la web semántica todo se define a través de URIs.

Ontologías

RDF

Se basa en la idea de crear declaraciones de recursos en la forma sujeto-predicado-objeto.

Estas declaraciones se conocen como tripletas.


Ontologías

RDF


Ontologías

RDF

Notación Turtle:

<http://www.example.org/index.html> <http://purl.org/dc/elements/1.1/creator> <http://www.example.org/staffid/85740> .
<http://www.example.org/index.html> <http://www.example.org/terms/creation-date> "August 16, 1999" .
<http://www.example.org/index.html> <http://purl.org/dc/elements/1.1/language> "en" .

Ontologías

RDF

Notación XML:


Ontologías

RDF

Grafos RDF

Un grafo RDF es un conjunto de tripletas.


Fuente imagen: Dr. Mikel Egaña Aranguren

Ontologías

Grafos RDF

Algunos objetos pueden ser valores literales (Cadenas de caracteres)

Sujetos y predicados sólo pueden ser recursos

Los valores literales pueden tener tipo (XML Schema datatypes)


Fuente imagen: Dr. Mikel Egaña Aranguren

Ontologías

RDF

Como modelo de datos, es relativamente pobre. Solo permite:

  • Definir que algo es un determinado tipo o clase (type).
  • Definir que algo es una propiedad (rdf:property).
  • Definir listas y conjuntos.
  • Hacer afirmaciones sobre ternas (reificación). Convierte ternas en recursos.

Ontologías

RDFS

Además de RDF, existe RDFS (RDF Schema).

  • RDFS extiende RDF con nuevas primitivas.

  • Define un lenguaje básico para la creación de ontologías.
      • Determina la semántica de "subclase de".
      • Posee jerarquía de clases y propiedades.
      • Posee herencia.
      • Existen restricciones de dominio y rango.

Ontologías

RDFS

Con RDFS empezamos a hablar de clases (rdfs:Class) e instancias o individuos (rdf:type).

Tenemos jerarquía de subclases (rdfs:subClassOf).

Propiedades (rdf:Property) y sus restricciones de dominio (rdfs:domain) y rango (rdfs:range).





Ontologías

Vocabulario e instancias


Fuente imagen: Dr. Mikel Egaña Aranguren

Ontologías

RDFS



Violación de la semántica

Ontologías

RDFS


Ontologías

RDFS

RDFS posee las siguientes limitaciones:

    • Las restricciones de rango no se pueden aplicar a algunas clases solamente.
    • No permite expresar:
      • Clases disjuntas. Ej: Masculino y femenino
      • Combinación booleana de clases: Hombre U Mujer
      • Restricciones de cardinalidad
      • Características de propiedades: transitiva, inversa, ...

Ontologías

Recordemos...


Ontologías

OWL

OWL es el acrónimo de Ontology Web Language.

    • Es un lenguaje ideado para construir ontologías.

    • Está construido sobre RDFS añadiendo más expresividad.

    • Dos versiones y varios sublenguajes.

Ontologías

OWL

Las ontologías en OWL se componen de:

    • Entidades: las entidades del dominio de conocimiento. Están identificadas mediante URIS y las crea el desarrollador (proteina, participa_en, ...).
    • Axiomas: Relacionan las entidades mediante el vocabulario lógico que ofrece OWL.

Una ontología puede importar otra (owl:import) y hacer referencia a sus entidades.

Ontologías

OWL

Las entidades básicas que componen una ontología, son:

    • Individuos
    • Clases
    • Propiedades
      • Objeto
      • Anotación
      • Datos

Ontologías

Entidades OWL

Individuos


Fuente imagen: Tutorial pizza

Ontologías

Entidades OWL

Propiedades


Fuente imagen: Tutorial pizza

Ontologías

Entidades OWL

Clases

Fuente imagen: Tutorial pizza

Ontologías

Semántica OWL

Una ontología OWL formada por individuos y clases es una "Base de Conocimiento" (KB) formada por: 

  • TBox (Terminological Box): clases (~ "esquema")
  • Abox (Assertional Box): individuos (~ "datos")

Ontologias

OWL


Ontologías

OWL

OWL Lite: Clasificación en jerarquía de clases y restricciones simples.

OWL DL (Description Logic): Máxima expresividad con completitud computacional (se garantiza que las conclusiones son computables) y decibilidad (los cálculos requieren un tiempo finito). Incluye todos los constructores de OWL, pero usados sólo con restricciones.

OWL Full: Máxima expresividad sin garantias computacionales.

Ontologías

OWL2

Diferencias con OWL1:

  • Nueva sintaxis llamada functional-style syntax.

  • Nuevas especies: OWL 2 Full y DL se corresponden con OWL 1 Full y DL. Para OWL Lite OWL2 especifica 3 nuevos perfiles.

  • Mejoras del lenguaje.

Ontologías

OWL

Definición de clases:

    • owl:Class (subclase de rdfs:Class)
    • rdfs:subClassOf (definición de subclase)
    • owl:Thing (superclase de todas las clases)
    • owl:Nothing (subclase de todas las clases)

Ontologías

OWL

Jerarquía de clases


Fuente imagen: Dr. Mikel Egaña Aranguren

Ontologías

OWL

Propiedades:

    • owl:ObjectProperty: Relación entre instancias de dos clases.
    • owl:DatatypeProperty: Relaciona instancias con literales o tipos de datos de XML Schema.
    • rdfs:subPropertyOf: Subpropiedades.
    • rdfs:domain: Dominio.
    • rdfs:range: Rango.

Ontologías

OWL

Propiedades


Fuente imágen: Tutorial pizza y Dr. Mikel Egaña Aranguren

ONTOLOGÍAS

OWL. Características de propiedades


Fuente imágen: Tutorial pizza y Dr. Mikel Egaña Aranguren

Ontologías

OWL. Características de propiedades


Fuente imágen: Tutorial pizza y Dr. Mikel Egaña Aranguren

Ontologías

OWL. Características de propiedades

owl:FunctionalProperty: Funcional.

Solo puede tener un valor. Ej: año nacimiento

owl:inverseOf: Inversa

Relaciones inversas.

Además, OWL2 soporta varias características de propiedades adicionales (ReflexiveObjectProperty,  NegativeAssertion over properties, ...)

Ontologías

OWL

Restricciones de propiedades

owl:allValuesFrom: Restricción universal para establecer que una relación solo puede tener valores de una determinada clase.


Fuente imágen: Tutorial pizza

Ontologías

OWL

Restricción de propiedades

someValuesFrom: Restricción existencial de forma que al menos un valor esté restringido a la clase especificada.


Fuente imágen: Tutorial pizza

Ontologías

OWL

Restricción de propiedades

owl:hasValue: Restricción a un valor concreto.


Fuente imágen: Tutorial pizza

Ontologías

OWL

Restricción de propiedades

owl:cardinality / owl:maxCardinality / owl:minCardinality

Fuente imagen: Tutorial pizza

Ontologías

OWL

Clases complejas

Además de las restricciones y definiciones de clases y propiedades se puede aplicar teoría de conjuntos para obtener clases en función a los siguientes constructores.

Ontologías

OWL

Clases complejas

intersectionOf(C ⊓ D) y unionOf(C ⊔ D)


Ontologías

OWL

Clases complejas

complementOf(¬C)






Ontologías

OWL

Clases complejas

owl:disjointWith: Clases disjuntas (sin individuos en común)

owl:oneOf: Enumeración de individuos que pertenecen a una clase.

Ontologías

OWL

Condiciones axiomáticas (equivalentClass / subClassOf)


Fuente imagen: Tutorial pizza

Ontologías

Razonamiento automático

El razonador infiere nuevos axiomas que en función del conocimiento introducido en la ontología.

El conocimiento inferido puede servir para retroalimentar el conocimiento.

También existe la opción de razonar mediante reglas.

Los razonadores semánticos trabajan con Open World Assumption (OWA).

Ontologías

OWA

OWA establece que las conclusiones que se pueden alcanzar no sólo dependen de la información contenida en la base de conocimiento, sino también de la que se desconoce.

En otras palabras: con base en el concimiento que tenemos, podemos concluir que una cierta declaración/consulta/afirmación es cierta, pero no podemos negarla por si no tenemos los datos suficientes para hacerlo de forma fehaciente. Esto es debido a que es posible que el conocimiento que haga realmente falsa la afirmación es posible que no esté contenida en la base de conocimiento.

Ontologías

OWA

Ejemplo:

Declaración: Ariadna es francesa.
Pregunta: ¿Es Alicia francesa?

Respuesta en CWA (por ejemplo, respuesta basada en consulta SQL): No
Respuesta en OWA: Desconocido.

En OWA por lo tanto no existe negación por fallo.

Ontologías

Razonamiento automático

Tareas más comunes

  • Mantener taxonomía

  • Consistencia

  • Clasificar entidades y consultas

Ontologías

Razonamiento automático: Mantener taxonomía


Fuente: Dr. Mikel Egaña Aranguren

Ontologías

Razonamiento automático: Consistencia


Fuente: Dr. Mikel Egaña Aranguren

Ontologías

Razonamiento automático: Clasificación entidades

Dada una determinada entidad nueva, se trata de obtener como se relaciona con las demás entidades (tipos, equivalencias, subclases, etc.).

Una consulta es una clase anónima que clasificamos contra la ontología como si fuese una entidad.

Ontologías

Razonamiento automático

Existen diferentes razonadores en la actualidad. Los más destacados son:

Web Semántica + Biotec


Todos los aspectos "bio" (bioinformática, biomedicina, biotecnología, ...) tienen un gran impacto y presencia en temas de Web Semántica.

Existe un grupo oficial de esta temática formado por el W3C (HCLS IG).

Solamente hablar de todos los esfuerzos dedicados a esta temática podría llevar una asignatura entera.. resumamos en los más relevantes.

Web Semántica + Biotec

Bio2RDF

Bio2RDF / OpenLifeData es un proyecto de tipo Open Source que usa la Web Semántica para crear y proporcionar la red más amplia de datos enlazados en el área de ciencias de la salud.

Características:

  • 1 billón de tripletas a través de múltiples datasets.

  • uso de dataset provenance para informar al usuario de que versión están usado y como fue generada.
  • estadísticas de los datasets para describir intra e inter conectitividad.

Web Semántica + BIOTEC

Gene Ontology

Gene Ontology (GO) es un proyecto cuyo objetivo es estandarizar la representación de los genes y sus productos (así como sus atributos) a través de las especies y bases de datos.

Por otra parte, GO proporciona un vocabulario controlado de términos (ontología) para describir las características de los productos de los genes así como anotación de datos. También existe una serie de herramientas para procesar los datos contenidos en GO.


Web Semántica + Biotec

Gene Ontology

Más información:


Web Semántica + Biotec

OBO Foundry

OBO Foundry es un consorcio creado para la creación de ontologías con fundamento biológico/biomédico a través de medios colaborativos. El consorcio establece una serie de principios sobre el desarrollo de ontologías con el objetivo de crear una serie de ontologías ortogonales e interoperables en el dominio biomédico.

WEB SEMÁNTICA + BIOTEC



WEB SEMÁNTICA + BIOTEC


Semantic PHI

PHI-Base es una base de datos sobre interacciones host-patógeno desarrollada por Rothamsted Research (UK).


La versión 4.0 (Septiembre 2015) contiene 6473 interacciones de los que la mayoría son interacciones con plantas.


Semantic PHI es la versión semántica de dicha base de datos desarrollada por investigadores del CBGP.

WEB SEMÁNTICA + BIOTEC


Semantic PHI


WEB SEMÁNTICA + BIOTEC


Semantic PHI


WEB SEMÁNTICA + BIOTEC


Semantic PHI


Web Semántica + BIOTEC

Otros esfuerzos y ontologías

  • SWAN (Semantic Web Applications in Neuroscience)

  • ChEBI (Chemical Entities of Biological Interest)

  • PPIO (Plant Pathogen Interactions Ontology)


Web Semántica

Software de edición de ontologías

Existen varios editores de ontologías en la actualidad.

El más utilizado y que más repercusión tiene actualmente es Protégé.


Bibliografía

.. Y enlaces adicionales

Representación del conocimiento:
Lógica:

Bibliografía

.. Y enlaces adicionales

Web Semántica:
Linked Data:

Bibliografía

.. Y enlaces adicionales

Ontologías:
Semantic Web + Bio:

Bibliografía

.. Y enlaces adicionales

Especial agradecimiento al material proporcionado por:

    • Dr. Mikel Egaña Aranguren [Web]

    • Dr. Jose Emilio Labra Gayo [Web]

Sesión Representación del conocimiento: Bioinformática [Curso 2015-16]

By Alejandro Rodríguez González

Sesión Representación del conocimiento: Bioinformática [Curso 2015-16]

  • 2,200