• Aucun résultat trouvé

Outils pour les expérimentations

Chapitre 5 : Approches de la Swarm Intelligence pour la Prédiction de Fonction des

5.7. Outils pour les expérimentations

Dans notre étude qui consiste en l‘identification de fonctions de récepteurs couplés aux protéines G (RCPGs), nous proposons trois classifieurs basés sur des algorithmes de la Swarm Intelligence, l‘algorithme d‘optimisation par colonies de fourmis pour la classification (cAnt- Miner), l‘algorithme d‘optimisation par essaim de particules restreint pour la classification (CPSO) et la deuxième version de l‘algorithme hybride PSO/ACO (PSO/ACO2). Ces trois algorithmes vont être testés en utilisant l‘ensemble de données GDS [DAV 07] (se référer au Chapitre 4, Section 4.6.1) afin de pouvoir comparer les performances de nos trois nouveaux classifieurs avec nos classifieurs immunologiques proposées précédemment (voir chapitre 4) et des méthodes publiées ayant utilisé le même ensemble de données.

Dans cette section, nous allons aborder les outils utilisés pour l‘implémentation des classifieurs proposés. Différents outils ont été utilisés, contrairement à la première partie de nos travaux avec les systèmes immunitaires artificiels. Ceci est dû au fait que nous devions adapter chaque approche proposée au problème de classification et, pour le faire, nous avons choisi les versions appropriées qui sont implémentées avec des outils différents.

𝑹𝟏 𝑹𝟐 𝑹𝟑 𝑹𝟒 𝑹𝟓 𝑹𝟔 𝑹𝟕 𝑹𝟖 𝑹𝑳 𝑹𝟏 𝑹𝟐 𝑹𝟑 𝑹𝟒 𝑹𝟓 𝑹𝟔 𝑹𝟕 𝑹𝟖 𝑹𝑳 𝑹𝟏 𝑹𝟐 𝑹𝟑 𝑹𝟒 𝑹𝟓 𝑹𝟔 𝑹𝟕 𝑹𝟖 𝑹𝑳 𝜆(𝑹𝟏, 𝑹𝟐) 𝜆(𝑹𝟐, 𝑹𝟑) 𝜆(𝑹𝟑, 𝑹𝟒) 𝜆(𝑹𝟒, 𝑹𝟓) 𝜆(𝑹𝟓, 𝑹𝟔) 𝜆(𝑹𝟔, 𝑹𝟕) 𝜆(𝑹𝟕, 𝑹𝟖) 𝜆(𝑹𝟏, 𝑹𝟑) 𝜆(𝑹𝟐, 𝑹𝟒) 𝜆(𝑹𝟑, 𝑹𝟓) 𝜆(𝑹𝟒, 𝑹𝟔) 𝜆(𝑹𝟓, 𝑹𝟕) 𝜆(𝑹𝟔, 𝑹𝟖) 𝜆(𝑹𝟏, 𝑹𝟒) 𝜆(𝑹𝟐, 𝑹𝟓) 𝜆(𝑹𝟑, 𝑹𝟔) 𝜆(𝑹𝟒, 𝑹𝟕) 𝜆(𝑹𝟓, 𝑹𝟖) (a) (b) (c)

5.7.1.

Myra 3.6.1

Pour les expérimentations avec l‘algorithme d‘optimisation par colonies de fourmis (ACO), nous avons utilisé le package Myra19 version 3.6.1. Myra est une multiplateforme du modèle ACO développée en Java. Elle fournit un niveau spécialisé de la fouille de données pour appliquer les techniques ACO au problème de classification, incluant Ant-Miner [PAR 02], cAnt-Miner [OTE 08], hAnt-Miner [OTE 09], hmcAnt-Miner [OTE 10] et cAnt-Minerpb [MED 12].

Paramètre Valeur par défaut

Exemples minimums couverts par valeurs de règle 10

Taille de test de convergence 10

Fonction de la qualité de règle Sensibilité, spécificité (voir Section 5.2.1.2)

Nombre maximum d‘itération 1500

Modèle de la mesure d‘implémentation Mesure de précision (Accuracy measure) Nombre maximum de cas non couverts 10

Nombre de fourmis dans la colonie 60

Tableau 5.1. Paramètres de l‘algorithme cAnt-Miner dans la plateforme Myra. Parmi ces techniques, nous avons sélectionné l‘algorithme cAnt-Miner en raison de la nature de nos données qui sont continues et non discrètes. Nous avons effectué une série de tests sur les paramètres pour identifier quel changement de valeur de paramètre affecte le plus nos résultats en les améliorant ou en les détériorant afin d‘adapter l‘algorithme à nos données (qui sont assez volumineuses à certains niveaux) et à notre problématique de classification qui consiste en la prédiction de fonction de RCPGs.

Parmi les paramètres de l‘algorithme cAnt-Miner cités dans le Tableau 5.1 et d‘après son fonctionnement, les seuls paramètres susceptibles d‘améliorer les performances en modifiant leurs valeurs sont le nombre maximum d‘itérations et le nombre de fourmis de la colonie.

5.7.2.

KEEL-GPLv3

Nous avons utilisé l‘outil KEEL20 – GPLv3 (Knowledge Extraction based on Evolutionnary Learning) [ALC 09, 11] pour l‘implémentation de PSO. KEEL est un software open source qui permet d‘évaluer les algorithmes évolutionnaires pour les tâches de la fouille de données incluant la régression, la classification et le clustering. Il contient une grande collection d‘algorithmes allant des réseaux de neurones artificiels, des arbres de décision aux algorithmes évolutionnaires, il contient les trois approches proposées (ACO, PSO et

19

http://myra.soft112.com/ http://sourceforge.net/projects/myra/

20

PSO/ACO) mais nous avons choisi de l‘exploiter uniquement pour l‘algorithme PSO et plus précisément CPSO (Constricted PSO) (se référer à la Section 5.4) car les versions présentes des autres algorithmes (ACO et PSO/ACO2) ne sont pas disponibles dans la version qui nous intéresse.

Tableau 5.2. Paramètres de l‘algorithme CPSO sous KEEL.

Lors de l‘utilisation de l‘outil KEEL, il nous est permis, en premier, de sélectionner le type de validation croisée ; validation croisée en choisissant un nombre, ou validation croisée 5 × 2 ou aucune validation. Ensuite, nous sélectionnons le type d‘expérimentation parmi quatre possibilité, classification, régression, apprentissage non-supervisé et découverte de sous- groupe. Dans notre étude, c‘est une expérimentation de classification que nous avons sélectionnée et qui propose cinq étapes à suivre, la première étant le choix de données où nous pouvons sélectionner des données déjà existantes comme la base de données Iris ou bien importer nos propres données sous le format .csv ou .arff. La deuxième étape est le prétraitement de ces données, KEEL offre une large gamme de méthodes d‘extraction des caractéristiques, de discrétisation, de filtrage de données bruyantes, etc. Ayant réalisé nos propres prétraitements en utilisant la méthode de la composition en pseudo acides aminés (PseAAC), nous avons ignoré cette étape dans l‘outil KEEL. La troisième étape permet de sélectionner l‘algorithme de notre choix parmi un large panel d‘algorithmes de fouille de données et nous permette de modifier les paramètres par défaut de CPSO (voir Tableau 5.2). La quatrième étape comporte les tests statistiques que nous souhaitons appliquer et qui contrastent les résultats obtenus dans l'expérimentation, une étape que nous avons ignorée également car nous ne souhaitons obtenir que la précision prédictive et n‘altérer, en aucun cas, les résultats finaux. La cinquième et dernière étape est le choix de la visualisation des résultats où une seule méthode est proposée pour les expérimentations de classification (Vis- Clas-Check) qui fournit les probabilités de classification (erreur, test et apprentissage) dans un fichier .stat une fois l‘expérimentation terminée.

Paramètre Valeur par défaut

Nombre d‘exécution 1

Nombre de particules 25

Convergence du radius 0.1

Limite supérieure de poids 2.05

Coefficient de restriction 0.73

Nombre maximum d‘instances non couvertes 0.1

Seuil d‘indifférence 0.1

5.7.3.

PSO/ACO2

L‘outil PSO/ACO221

est utilisé pour pouvoir tester l‘algorithme hybride (vu dans la Section 5.4) avec notre ensemble de données. PSO/ACO2 [HOL 07] est un logiciel libre et gratuit développé en langage Java, il fournit un niveau spécialisé de la fouille de données pour appliquer la technique PSO/ACO au problème de classification avec un choix à faire entre PSO standard ou DE pour l‘optimiseur continu (pour la construction de la règle à partir des attributs continus). Les paramètres de l‘algorithme sont dans le tableau qui suit.

Paramètre Valeur par défaut

Nombre de fichier (validation croisée) 10

Nombre de particules ^2 10

Nombre d‘itération 200

Fonction de fitness Précision (ou sensibilité, spécificité)

Optimiseur continu PSO (ou DE)

Tableau 5.3. Paramètres de l‘algorithme PSO/ACO2.

5.7.4.

PseAAC server

Pour la sélection des caractéristiques, nous avons le choix entre trois outils de la composition en pseudo acide aminée (PseAAC), PseAAC server22 [SHE 08] qui est un serveur en ligne qui nous permet de soumettre des séquences protéiques et nous renvoie des vecteurs de différentes dimensions selon les caractéristiques choisies, l‘inconvénient cependant avec cet outil, est que ne nous pouvons soumettre que 500 séquences à la fois, ce qui s‘avère très contraignant lorsque l‘on doit soumettre des milliers de séquences. Il y a également PseAAC Builder23 [DU 12], plus récent et plus avantageux dans le sens où il n‘y a pas de limite de nombre de séquences à soumettre et aussi c‘est un outil à installer sur l‘ordinateur, de ce fait, il n‘est pas nécessaire d‘avoir une connexion Internet pour l‘utiliser, en plus du fait qu‘il soit plus rapide. Enfin, il y a Propy24 [CAO 13b], un autre outil pour générer la composition en pseudo acides aminés qui est semblable à PseAAC-Builder. Nous avons utilisé PseAAC server bien qu‘il présente un inconvénient. Ceci parce qu‘au moment où nous avons effectué nos expérimentations, nous n‘avions pas connaissances des autres outils. Nous avons donc sélectionné PseAAC type 1 et toutes les caractéristiques des acides aminés, c‘est-à-dire, l‘hydrophobie, l‘hydrophilie, la fonction carboxylique (-COOH), la fonction amine (-NH3), la masse molaire et le point isoélectrique (PI) à 25°C (par défaut). Nous avons fixé le paramètre 21 http://sourceforge.net/projects/psoaco2/ 22 http://www.csbio.sjtu.edu.cn/bioinf/PseAAC/# 23 http://sourceforge.net/projects/pseb/ 24 https://code.google.com/p/protpy/downloads/list

lambda à 1 et le facteur poids à 0.05 (valeurs par défaut). Avec ce jeu de paramètres, nous avons obtenu des vecteurs de 22 dimensions (moins volumineux que si l‘on avait choisit le type 2 comme pour nos premières expérimentations). Suite à cela, nous avons réarrangé l‘agencement de ces vecteurs afin de pouvoir les exploiter par les classifieurs proposés.