Systèmes d`information logiques et Bioinformatique

publicité
Systèmes d’information logiques
et Bioinformatique
Sébastien Ferré
Mai 2004
Plan
n
Combiner interrogation et navigation
– Analyse de concepts logiques (ACL)
– Logiques dédiées et foncteurs logiques
BLID : Bio-Logical Intelligent Database
n Delfin : extraction de motifs, séquences
n Synthèse et programme de recherche
n
Motivation initiale
Recherche d’information
n Naviguer dans un ensemble de documents
pour une découverte progressive des documents
comme dans les systèmes de fichiers hiérarchiques
contrairement aux systèmes de recherche booléenne
n Éviter toute classification à priori
pour une représentation égale de tous les points de vue
comme dans les systèmes de recherche booléenne
contrairement aux systèmes de fichiers hiérarchiques
Combiner interrogation et navigation dans un même cadre
établi sur des fondements logiques
Limite de la navigation hiérarchique
/
medium
big
far
far
far
small
near
alone
satellite
satellite
satellite
satellite
Mercury
Venus
Earth
Mars
Pluto
Uranus
Neptune
Jupiter
Saturn
/
far
near
small
alone
Mercury
Venus
small
medium
big
satellite
satellite
satellite
satellite
Earth
Mars
Pluto
Uranus
Neptune
Jupiter
Saturn
Combiner interrogation et navigation
Le besoin de combiner interrogation et navigation est reconnu
n Répertoire virtuel (Semantic File System, Gifford et al. 1991) :
pas de navigation après interrogation, pas de mise-à-jour
n Répertoire-requête (Hierarchy and Content, Gopal et al. 1999) :
navigation rigide, incohérence dans les contenus
n Concepts (Godin et al. 1991) :
– structure de navigation automatique et flexible
– alternance libre d’interrogation et de navigation
– Mise-à-jour non-restreinte, cohérence
Analyse de concepts formelle (ACF)
Birkhoff 1940, Barbut et Monjardet 1970, Wille et Ganter 1980
Formalisme symétrique entre questions et réponses
Analyse de concepts formelle : contexte
Contexte = objets × attributs
small medium
big
near
far
satellite alone
Mercury
•
•
•
Venus
•
•
•
Earth
•
•
•
Mars
•
•
•
Jupiter
•
•
•
Saturn
•
•
•
Uranus
•
•
•
Neptune
•
•
•
•
•
Pluto
•
représentation centrée sur les objets
pas de classification à priori
Analyse de concepts formelle :
treillis de concepts
Concept (formel) = extension + intension
Treillis de concepts = concepts + ordre de généralisation
intension
extension
Classification automatique et multiples chemins vers un objet
Structure de navigation automatique et flexible
Navigation conceptuelle (1/4)
Le concept courant est entouré
• objets sélectionnés
• liens de navigation pertinents
Navigation conceptuelle (2/4)
La sélection d’un lien de navigation modifie le concept courant…
… restreint l’ensemble des objets sélectionnés…
… et élimine des liens de navigation devenus non-pertinents
near!
Navigation conceptuelle (3/4)
A force de raffinement, on atteint un concept minimal…
… contenant un seul objet, ou bien plusieurs identiques
Rmq : l’ordre de parcours des liens est indifférent
near!
satellite!
Navigation conceptuelle (4/4)
Le résultat d’une requête est également un concept…
… ce qui rend pleinement compatible interrogation et navigation
satellite and near!
near!
satellite!
Analyse de concepts logique (ACL)
Représentation des objets, requêtes et liens de navigation
n Analyse de concepts formelle [Wille 1982] :
ensembles d’attributs
n Analyse de concepts logique [Ferré & Ridoux 2000] :
formules d’une logique arbitraire
→ la logique doit former un treillis (L,<)=(langage, subsomption)
f < g ssi tout objet possible satisfaisant f satisfait aussi g
f <K g ssi tout objet du contexte K satisfaisant f satisfait aussi g
Rmq. : la logique contextualisée (L,<K)
est isomorphe au treillis de concepts
Logiques dédiées et foncteurs logiques
Logique dédié = syntaxe + sémantique + implémentation
avec une sémantique d’instance plutôt que de valeur de vérité
comme les Logiques de description
Comment faciliter la construction de logiques dédiées ?
Foncteur logique = composant logique abstrait sur des sousformules
L = prop(aik(set(pair(attr,sum(num,text)))))
§ descr. = [name is “Jean Dupont”, age = 33]
§ requête = name contains “Jean” and not age in 15..25
Résumé
SIL = Système d’information logique =
+ représentation centrée sur les objets
+ combinaison libre d’interrogation et de navigation automatique et
flexible
+ représentation logique des objets, requêtes et liens de navigation
+ généricité dans la logique employée
Prototype Camelis + qq. applications (BibTeX, librairie Java, ...)
2 autres thèses en cours :
n Yoann Padioleau : Système de fichier logique, LISFS
n Benjamin Sigonneau : SIL et génie logiciel
Plan
n
Combiner interrogation et navigation
– Analyse de concepts logiques (ACL)
– Logiques dédiées et foncteurs logiques
BLID : Bio-Logical Intelligent Database
n Delfin : extraction de motifs, séquences
n Synthèse et programme de recherche
n
Objectif de BLID
n
données brutes
n
BLID
utilisée par
des biologistes
n
n
connaissances
et prédictions
n
sur un génome complet
(levure, ~6000 gènes)
représentation de données
logique et cohérente
extraction de connaissances
manuelle par interrogation
extraction de connaissances
automatique par fouille de
données et apprentissage
facilement extensible à tous
les niveaux
Intégration de données
n
data
n
programs
n
BDR
n
Sources de données
publiques (ex., MIPS,
SwissProt, KEGG)
Programmes produisant des
données supplémentaires
(ex., ExPASy, PROF)
Représentation relationnelle
consistente
(scripts automatiques)
Entrepôt de données (BDR)
Interrogation avec Prolog
BK
BDR
n
n
n
Prolog
n
n
requêtes
réponses
n
Langage relationnel comme
SQL
Récursivité naturelle
Syntaxe plus compacte et
naturelle
Langage de programmation
Background knowledge
Compilation efficace en SQL
Interrogation avec Prolog
Background knowledge:
n Prédicats utilitaires
– Clôture transitive d’une relation taxonomique
subfunc(X,Y) :- X=Y; isa(X,Z), subfunc(Z,Y).
– Pattern matching (ex., sur les séquences)
seq_is(X,’MTDNA...’), seq_match(X,’[DE]-x-A’)
n
Règles inférants de nouveaux faits
Ex.: Tout métabolite impliqué dans le glycolysis
décroît en quantité en cas d’inanition
Interrogation avec Prolog
n
Fonctions de YAL001c ?
has_func(‘YAL001c’,F)
n
Nombre de fonctions de YAL001c ?
count(F, has_func(‘YAL001c’,F), N)
n
Protéines ayant une fonction métabolique ?
has_func(X,F), subfunc(F,’metabolism’)
Navigation dans un SIL
Exploration et vue d’ensemble sur un génome
n requête = sélection d’objets
– combination booléenne de traits
ex.: seq match [DE]-x-A and not metabolism
n
vue = sélection de traits
– logique: spécialisation ou généralisation d’un trait
ex.: < metabolism
– syntaxique: expression régulière
– contextuel: fréquence, etc.
Navigation dans un SIL
Pas besoin de connaître le contexte ou la logique
!
"
"
#
!
$
% !
"
"
"
" ! + ,
! & '
+ & !
( )
**
**
" ! + ,
-
!
- *
Navigation dans un SIL
Vue d’ensemble sur les fonctions MIPS :
.
/
/
0 0
!
+ !
.
1
**
. 2
3
→
(
4
+ !
!
! + ,
fait apparaître des implications entre traits
Fouille de données et apprentissage
BDR
BK
Prolog
spécification
jeu de données
+ constraintes
fouille de données
apprentissage auto.
traits
(itemsets fréquents,
motifs fréquents)
règles de classification
Fouille de données et apprentissage
Langage Commun de spécification de jeux de données
n Motivation: abstraire l’utilisation des différents outils
n Langage de spécification : Prolog
n Contenu:
–
–
–
–
ensemble d’objets ou exemples
ensemble de relations et de traits
biais et contraintes
outil/algorithme à appliquer
une telle spécification joue le rôle d’une requête
inductive (cf. Bases de données inductives)
Fouille de données et apprentissage
Encodage logique des résultats pour intégration
dans le BK (en projet)
1. Extraction de traits dans des données
structurées (ex.: séquences)
2. Construction de règles de classification à
partir de ces traits (induction)
3. Interrogation en utilisant ces règles comme
composante du BK (déduction)
Plan
n
Combiner interrogation et navigation
– Analyse de concepts logiques (ACL)
– Logiques dédiées et foncteurs logiques
n
BLID : Bio-Logical Intelligent Database
Delfin : extraction de motifs, séquences
n Synthèse et programme de recherche
n
Delfin: un extracteur de traits
(Dichotomic and Logical Feature INduction)
n
n
n
n
Logiques (et espace de recherche) dédiées
pour traiter des données structurées
(ex., motifs dans les séquences biologiques)
Guidée par la discrimination de concepts
plutôt que par un parcours systématique
Recherche dichotomique
Supervisé : suppose assymétrie des règles
ex.: motifs de séquence → fonctions
Delfin: recherche orientée-concept
intensions
Toutes les formules
d’une région ont la
même extension dans
le contexte (concept).
Parce que les formules d’un
concept sont équivalentes pour
l’apprentissage, ce qui compte
est de visiter un maximum de
concepts dans un minimum de
temps.
Delfin: recherche dichotomique
n
Analogie: recherche dans un tableau ordonné
– Séquentiel: linéaire dans la taille du tableau
– Dichotomique: logarithmique…
n
dichotomie dans l’espace de recherche
– Commencer par de long sauts, puis raffiner les
“intervalles logiques” par des sauts de plus en
plus petits
– Flexible et non-redondante
– Complète vis-à-vis de la discrimination de concept
même avec des chaînes infinies (ex.: intervalles)
Delfin: recherche dichotomique
recherche top-down
a
b
ba
baa bab
c
bb
bc
recherche dichotomique
a
bc
ab
intervalle
logique
bac
abc
Raffinement minimal
Dichotomie dans
un intervalle logique
<bcab>
Delfin: exemple
n
n
n
n
Objets : protéines de la levure
Données : structure secondaire (from Prof)
Classes : fonctions biologiques (from MIPS)
Logique/espace de recherche :
motifs de longueur arbitraire, intervalles arbitraires
sur la longueur des éléments, et segments flexibles
n
Jeux de données :
apprentissage (1660), validation (855), test (1312),
non-classés (2320)
Delfin: exemple
n
n
Fonction : transport mitochondrial
meilleure règle à ce jour (sortie brute) :
struc length in 14 .. 70 and
struc match a(10,13)-c(11,24)-a(11,13)-c(3,8)
struc match c(1,3)-a(10,13)-c(7,11)-a(9,12)-c(3,10)-x(0,2)-a(7,26)
n
n
Dans le jeu de test, couvre 8 protéines, toutes
positives (1 chance sur 10e14)
Prédit 2 protéines non-classées
– YPR128c a été confirmée
Plan
n
Combiner interrogation et navigation
– Analyse de concepts logiques (ACL)
– Logiques dédiées et foncteurs logiques
BLID : Bio-Logical Intelligent Database
n Delfin : extraction de motifs, séquences
n
n
Synthèse et programme de recherche
Synthèse et
programme de recherche
! (
4 - 4
6 ! ( * 8
! (
$ (
4
5
!
!
!
7
!
!
! *
4 !
)
)
! (
!
!
%
*
!
! *
(
- (
4
!
7 7
4
4
4
!
7 * !
! *
6
!
!
!
4
4 - 4 -
(
4
Programme de recherche
n
Axe vertical - logiques
– Relations entre objets :
• logique (raisonnement) + orienté-objet (id, dynamique)
• généralisation de l’Analyse de concepts logique
– Technologie des foncteurs logiques :
• typage et autres formes de paramétrisation
n
Axe horizontal – bases de données inductives
– Navigation plus intelligente par fouille de données
• formes locales de fouille de données
– Fouille de données plus flexible par navigation
– …
Merci ! Questions ?
Téléchargement