Fouille de données et apprentissage Farida Zehraoui [email protected] Plan • Clustering (Rappels) • Biclustering – Biclustering de résidue minimum – Biclustering spectral Clustering Problèmatique Soient N instances de données à m attributs, Trouver un partitionnement en k clusters (groupes) ayant un sens (Similitude) Affectation automatique de “labels” aux clusters k peut être donné, ou “découvert” Plus difficile que la classification car les classes ne sont pas connues à l’avance (non supervisé) Clustering Apprentissage non supervisé Trouver les classes naturelles (implicites) pour rassembler des données non étiquetées Qualité d’un clustering Objectifs du clustering Minimiser les distances intra-cluster Maximiser les distances inter-clusters Mesure de la similarité Quelques points difficiles sur le clustering - Trouver le nombre optimal de clusters k - Choix de la mesure de similarité - Convergence des algorithmes vers un minimum local /global Biclustering Données d’expression de gènes L’analyse d’expression de gènes permet de contrôler les activités de plusieurs gènes suivant différentes conditions Les résultats des expériences sont représentés par des matrices. Données d’expression de gènes • Les données d’expression de gènes peuvent être représentées par des matrices NXM : • les N lignes représentent les gènes • Les M colonnes représentent les conditions • Les éléments de la matrice représentent les valeurs des expressions de gènes Clustering • Les gènes sont regroupés suivant leurs similarités sur l’ensemble des conditions. Cluster A Clustering… Graph of Gene Expression Versus Conditions Cluster B Cluster C Biclustering • Regrouper les gènes suivant un sous ensemble de condition • + général que le clustering • Le biclustering regroupe les exemples suivant un sous ensemble d’attributs. • Propriétés : Bi ∩ B j ≠ ∅ ∪ Bi ≠S Biclustering Types de biclusters • Biclusters à valeurs constantes • Biclusters à valeurs constantes sur les lignes et les colonnes • Biclusters à valeurs cohérentes Biclusters à valeurs constantes • Biclusters à valeurs constantes • Biclusters à valeurs constantes sur les lignes et les colonnes – Un bicluster constant parfait est une sous matrice A(i,j), où toutes les valeurs dans le bicluster sont égales pour tout i∈I et tout j∈J – Un bicluster parfait à lignes constantes est une sous-matrice A(I,J), où toutes les valeurs dans le bicluster peuvent être obtenues par : – Un bicluster parfait à colonnes constantes est une sous-matrice A(I,J), où chaque valeur dans les biclusters peuvent être obtenu par : Biclusters à valeurs cohérentes • Un bicluster parfait à valeurs cohérentes est défini comme un sous ensemble de lignes et un sousensemble de colonnes, dont les valeurs peuvent être obtenues suivant : – Modèle additif : – Modèle multiplicatif : Structure des biclusters Algorithmes existants Algorithme de Cheng & Church Modèle : • Un bicluster est représenté par la sous-matrice A de la matrice d’expression globale. • Chaque élément du aij dans le bicluster est le résultat de : – L’effet des lignes (gènes) – L’effet des colonnes (conditions) • Une base de données contient des biclusters qui ne sont pas nécessairement disjoints. Algorithme de Cheng & Church Dans la matrice A, le score du résidu d’élément aij est donné par : Où aiJ = moyenne de la ligne i aIj = moyenne de la colonne j aIJ = moyenne de A(I,J) Sens biologique : les gènes ont la même réponse aux conditions Algorithme de Cheng & Church But : trouver les biclusters de résidu quadratique minimum : • Le score global H donne une indication sur la similarité des données dans la matrice : trouver si elles sont cohérentes ou aléatoires • Une valeur H élevée signifie que les données ne sont pas corrélées. • Une valeur de H faible signifie qu’il y a une corrélation dans la matrice • Un score H(I,J)=0 signifie que la sous-matrice AIJ est un bicluster (bicluster idéal). Algorithme de Cheng & Church Algorithme de Cheng & Church Algorithm 1 (Spression d’un noeuds). Entrées: A, une matrice de nombre réels et δ>=0, le maximum acceptable du score de résidu quadratique moyen. Sorties: AIJ, un δ–bicluster qui est une sous-matrice de A où I est l’ensemble des lignes et J l’ensemble des colonnes, avec un score inférieur ou égal à δ. I et J sont initialisés à tous les ensembles de gènes et de conditions AIJ = A Itérations: • calculer aiJ pour tout i dans I et aIj pour tout j dans J. Si H(I,J) <= δ retourner AIJ. • Trouver les lignes i dans I ayant les plus grandes valeurs du score : d(i) = 1/|J| (aij – aiJ – aIj + aIJ, )2 et les colonnes j dans J ayant les plus grandes valeurs du score : d(j) = 1/|I| ( aij – aiJ – aIj + aIJ, )2 • Supprimer les lignes et les colonnes de plus grandes valeurs de d en mettant à jour I et J. Algorithme de Cheng & Church Algorithm 2 (sppression multiple de noeuds) Entrées: A, une matrice de nombre réels et δ>=0, le maximum acceptable du score de résidu quadratique moyen et a>1 un seuil pour la suppression multiple. Sorties: AIJ, un δ–bicluster qui est une sous-matrice de A où I est l’ensemble des lignes et J l’ensemble des colonnes, avec un score inférieur ou égal à δ. I et J sont initialisés à tous les ensembles de gènes et de conditions AIJ = A Itérations: 1. calculer aiJ pour tout i dans I et aIj pour tout j dans J. Si H(I,J) <= δ retourner AIJ. 2. supprimer les lignes i dans I tel que : 1/|J| (aij – aiJ – aIj + aIJ, )2 > α H(I,J) 3. recalculer aIj,aIJ, et H(I,J) 4. supprimer les colonnes j dans J tel que : 1/|I| ( aij – aiJ – aIj + aIJ, )2 > α H(I,J) 5. Si rien aucune ligne ou colonne n’est supprimée, aller à l’algorithme 1. Algorithme de Cheng & Church Algorithm 3 (Ajout de noeuds) Entrées: matrice A et I, J représentant un δ bicluster Sorties: I´ et J´ tel que I est un sous ensemble de I´ et J un sous ensemble de J´ vérifiant : H(I´,J´) <= H(I,J). Itérations 1.Calculer aiJ pour tout i, aIj pour tout j, aIJ et H(I,J) 2.Ajouter les colonnes j qui n’appartiennent pas à J vérifiant : 1/|I| ( aij – aiJ – aIj + aIJ, )2 <= H(I,J) 3. Recalculer aiJ,aIJ, and H(I,J). 4. Ajouter les lignes i qui ne sont pas dans I vérifiant : 1/|J| (aij – aiJ – aIj + aIJ, )2 < H(I,J) 5. Ajouter les lignes I qui ne sont pas dans I ainsi que leur inverses si : 1/|J| (- aij + aiJ – aIj + aIJ, )2 < H(I,J) 6Si rien n’est ajouté, retourner I´ et J´ Algorithme de Cheng & Church Algorithm 4 (Recherche de biclusters : algorithme principal) Entrées : une matrice A de nombre réels et α >=1, un paramètre pour la suppression multiple, δ >=0 le maximum acceptable du score de résidu quadratique moyen et n le nombre de δ biclusters à trouver. Sorties: n δ-biclusters dans A. A´ est une copie de A. Itération (à répéter n fois) : 1. Appliquer l’algorithm 2 sur A´, δ et α. Si le nombre de lignes (colonnes) est < 100 alors ne pas appliquer la suppression multiple de lignes (colonnes). La matrice B est obtenue après cette étape. 2.(Etape 5 de l’algorithme 2) Appliquer l’algorithme 1 sur B et δ. La matrice obtenue est C. 3.Appliquer l’algoritme 3 sur A et C et le résultat est le bicluster D. 4. Reporter D,aet remplacer les éléments dans A´ qui sont aussi dans D avec des valeurs aléatoires. Résultats (données d’expression de gènes : la levure) Résultats (données d’expression de gènes : l’homme) Yang et al. (FLOC) • Modèle: basé sur l’algorithme de Cheng and Church, mais permet de gérer les valeurs manquantes. – Volume d’un bicluster : nombre (proportion) de valeurs non manquantes dans la sous-matrice. • Objectifs : – Eviter l’introduction de l’interférence aléatoire. – Découvrir k biclusters qui se chevauchent de simultanément. – Possède des options supplémentaires (exp. limite du taux de recouvrement) sans coût supplémentaire. • FLOC : FLexible Overlapped biClustering Yang et al. (FLOC) • Prise en compte des valeurs manquantes : – Introduction du paramètre α (une proportion), de façon que dans un bicluster, toutes les lignes et colonnes ne doivent pas contenir plus de (1-α) valeurs manquantes. Si α=0.6, Bicluster valide : Bicluster non valide : 1 1 3 3 4 3 4 3 3 5 4 4 3 5 4 – Lors du calcul des moyennes des lignes/colonnes, les valeurs manquantes ne sont pas comptées Yang et al. (FLOC) • Algorithme: – Paramètres : k (nb. de biclusters), ρ (paramètre de la taille des biclusters), α (seuil des valeurs non manquantes), r (seuil du résidu, i.e., δ dans les natations de Cheng and Church). – Phase 1: créer k biclusters aléatoirement (pour chaque bicluster, chaque ligne/colonne est ajoutée de façon aléatoire avec la probabilité ρ). – Phase 2: Répéter • Pour chaque ligne/colonne, déterminer les changements du résidu quadratique si elle est ajouté/supprimée à partir des k biclusters. • Effectuer la meilleure action pour les m+n lignes et colonnes. Yang et al. (FLOC) • Exemple (Avant): • Remove from red • Add to green • Remove from red • Remove from green • Remove from red • Remove from green • Add to red • Add to red • Remove • Remove from green from green Yang et al. (FLOC) • Exemple (décisions): • Remove from red • Add to green • Remove from red • Remove from green • Remove from red • Remove from green • Add to red • Add to red • Remove • Remove from green from green Yang et al. (FLOC) • Comment comparer les différentes actions ? – Supposons qu’une action est effectuée sur une ligne/colonne x dans un bicluster c pour former un bicluster c’, le gain d’une action est défini par : – un gain >0 indique une amélioration de la qualité du bicluster. – rc’ > rc ⇒ le premier terme est <0 : favorise les petits résidus. – vc’ > vc ⇒ le second terme est <0 :favorise les biclusters de grand volume. – rc << r ⇒ le second terme domine : quand le réidu est petit, le but est d’augmenter le volume. volume. Yang et al. (FLOC) • Some results on the yeast (la levure) cell cycle data:Avg. Avg. Avg. Avg. Time residue volume gene num. cond. num. CC algorithm 204.293 1576.98 167 12 12min FLOC algorithm 187.543 1825.78 195 12.8 6.7min Yang et al. (FLOC) • Some results on Yeast (la levure) cell cycle data: 1 more gene 2 more conditions, 6 more genes Bibliographie • [Madeira & Oliveira, 2004] Sara C. Madeira, Arlindo L. Oliveira, "Biclustering Algorithms for Biological Data Analysis: A Survey," IEEE/ACM Transactions on Computational Biology and Bioinformatics, vol. 01, no. 1, pp. 24-45, Jan-Mar, 2004. • [Zha & al., 2001b] H. Zha, X. He, C. Ding, M. Gu & H. Simon. Bipartite Graph Partitioning and Data Clustering, Proc. of ACM 10th Int'l Conf. Information and Knowledge Management (CIKM 2001), pp.25-31, 2001, Atlanta. • Y. Cheng and G. M. Church. Biclustering of expression data. In 8th Int'l Conference on Intelligent Systems for Molecular Biology, pages 93--103, 2000. • Jiong Yang; Haixun Wang; Wei Wang; Yu, P. Enhanced biclustering on expression data. Bioinformatics and Bioengineering, 2003. Proceedings. Third IEEE Symposium on Volume , Issue , 10-12 March 2003 Page(s): 321 - 327 • http://arep.med.harvard.edu/biclustering/