Machine Learning pour le diagnostic de machines défectueuses
Aymen Baccar - Loïc Bal - Antoine Brossas - Tom Carrere - Florian Derlique
1
Sommaire
I - Introduction
II - Librairies et théorie des différents algorithmes étudiés
III - Mise en pratique
IV - Création et traitement d’un dataset
V - Conclusion
2
Introduction
3
Créer notre propre dataset avec MATLAB et pouvoir faire des tests dessus avec nos différents algorithmes.
Librairies utilisées
4
Etude des algorithmes - Régression linéaire
5
Modèle affine : Y = aX + b
Fonction coût : Méthode des moindres carrés
Minimisation : Descente de Gradient
Note : généralisable à n dimensions
Etude des algorithmes - Régression linéaire
6
Points importants :
Etude des algorithmes - Régression logistique
7
Établir une loi de probabilité
Modèle :
Fonction coût : Vraisemblance, ie la mesure de l’adéquation entre la loi de probabilité et les données
Maximisation : Descente de Gradient
Régression logistique avec S=0
Etude des algorithmes - Régression logistique
8
Points importants :
Etude des algorithmes - Méthode Bayésienne
Établir une loi de probabilité.
Formule utilisé :
9
Etude des algorithmes - Méthode Bayésienne
Méthode:
Avantages:
10
Mise en pratique
11
Le machine learning sur Python se déroule sur 3 étapes :
1 - Pré-traitement de données
2 - Séparation de la base de données en 2 parties (partie entrainement et test)
3 - Application des algorithmes, entraînement de la base de données
En S6 nous avons scruter la base du machine learning, mais il est important de rappeler les conclusions pour la suite
Mise en pratique
12
Étape 1
Pré-traitement
Étape 2
Séparation des donnée en 2 parties
Étape 3
Entraînement de la base à l’aide des algorithmes
En 3 étapes :
→ Régression linéaire
→ Régression logistique
→ Naives Bayes
Étude précision :
→ Matrice de confusion
TOUT CECI GRÂCE A SKLEARN !!!
Mise en pratique - Conclusion pour S7
→ Algorithme de la régression linéaire à abandonner (pas adapté à notre application)
→ Algorithme de Naives Bayes à vérifier
→ Algorithme de la régression logistique semble être la meilleure option
SMOTE ≠ Bonne option
→ Nouvelle technique but du S7 : Création d’une propre dataset
13
Création d’une dataset:
Etude du système:
14
On dispose d’un fichier de simulation d’un moteur asynchrone triphasé réalisé sur MATLAB dont les paramètres sont modifiables.
Création d’une dataset:
PROBLÈMES RENCONTRÉE :
→ Impossible de tout sauvegarder sur un seul fichier d’extension .mat = Travail supplémentaire sur Python
→ Impossible de changer la fréquence d'échantillonnage pour prendre un nombre précis de données
15
Récupération de la dataset
Création d’une dataset:
16
Pré-traitement sur Python
Création d’une dataset:
17
Pré-traitement de données
Équilibrage des données
Détection valeurs manquantes
→ TOUT SEMBLE BON
ou presque…
Création d’une dataset
Grosse erreur lors de la récupération des données :
→ Taille des données NON ÉGAUX
Pourquoi ?
Problème sur le time sample sur MATLAB : les données ne sont pas prises à un temps t fixé mais variable
→ Sur une ligne ⇒ données issue d’un temps d'acquisition différent = PROBLÈME
18
Pré-traitement de données - Problèmes rencontrés et erreurs
Application des différents algorithmes
Au final nous avons entraîner notre modèle avec 2 features : le couple et la vitesse, nous pouvons tracer la caractéristique couple-vitesse de notre base
19
= Pas la caractéristique souhaitée
→ A cause de la solution temporaire des données de tailles non-égaux
⇒ Seulement la partie régime transitoire prise et non les deux
⇒ Risque de problèmes dès l'entraînement
Application des différents algorithmes
Naives Bayes
Régression logistique
20
Conclusion
Enjeu de ce semestre : Création et traitement d’un dataset
Problèmes rencontrés :
Objectifs du semestre prochain :
21