Forêts neuronales
Use case

 
Pour un client dans le domaine de la climatologie nous avons cherché à construire une prédiction du niveau de précipitation mensuelle trois mois à l’avance sur une certaine région française. Pour se faire, le client nous a donné un historique mensuel contenant quelques dizaines de variables explicatives météorologique partout dans le monde (indices atmosphériques), obtenant ainsi une base de données de quelques centaines d’enregistrement, l’historique remontant aux années 80.

 

Le niveau de précipitation est décomposé en 5 classes : très humide, humide, standard, sec, très sec. Prédire ce phénomène avec un bon niveau d’exactitude est, selon les experts, très difficile.

Le client utilise actuellement plusieurs modèles, purement statistiques, comme par exemple la régression logistique. Le niveau de précision obtenu (« Accuracy ») est de l’ordre de 40% (sur l’ensemble de validation), au sens ou 40% des prédictions du niveau de précipitation sont correctes sur les données qui n’ont pas été utilisées pour l’apprentissage, les 60% restant étant incorrectes. Ce faible niveau est compréhensible, puisque la prédiction s’effectue 3 mois à l’avance !

Nous avons lancé la création de 2000 réseaux de neurones profonds avec notre logiciel NEURALSIGHT, en sélectionnant 60% des enregistrements pour le training, gardant 40% des enregistrements restants pour la validation. Le type de fonction d’activation, la forme topologique du réseau et la méthode d’apprentissage ainsi que d’autres paramètres neuronaux varient d’une construction d’un réseau à un autre. Nous avons obtenu un niveau de précision un peu supérieur à celui du client, mais pas réellement significatif.

Ensuite, nous avons lancé un algorithme génétique créé par NEHOOV, permettant de construire des « forêts neuronales », à savoir des sous-ensembles de modèles parmi les 2000 précédemment construits : chaque sous-ensemble permet de déterminer une prédiction du niveau de précipitation par l’usage d’un algorithme de type « vote démocratique ». L’algorithme génétique a porté sur les 500 meilleurs modèles construits initialement, il a été demandé un nombre d’époques de 300, avec une population par époque de 250, et un taux d’eugénisme de 85%. Ainsi, la combinatoire produisant les forêts neuronales est assez complexe.

 Le résultat est sans appel : la meilleure forêt neuronale, contenant 7 réseaux de neurones, a permis d’obtenir un niveau de précision en global training + validation de 70%. Le niveau d’Accuracy sur l’ensemble de validation seul est de l’ordre de 60%, bien supérieur au 40% obtenu par le client. Ce qui prouve toute la puissance des forêts neuronales !

Pourquoi n’y aurait-il que les forêts aléatoires dans la vie ? 😉