Galerie de cartes mentales Outil d'exploration de données——WEKA
WEKA est un outil complet d'exploration de données qui intègre le prétraitement des données, des algorithmes d'apprentissage (classification, régression, clustering, analyse de corrélation) et des méthodes d'évaluation. Cette carte mentale présente comment utiliser WEKA. J'espère qu'elle sera utile à tout le monde !
Modifié à 2023-07-07 16:09:18Cent ans de solitude est le chef-d'œuvre de Gabriel Garcia Marquez. La lecture de ce livre commence par l'analyse des relations entre les personnages, qui se concentre sur la famille Buendía et raconte l'histoire de la prospérité et du déclin de la famille, de ses relations internes et de ses luttes politiques, de son métissage et de sa renaissance au cours d'une centaine d'années.
Cent ans de solitude est le chef-d'œuvre de Gabriel Garcia Marquez. La lecture de ce livre commence par l'analyse des relations entre les personnages, qui se concentre sur la famille Buendía et raconte l'histoire de la prospérité et du déclin de la famille, de ses relations internes et de ses luttes politiques, de son métissage et de sa renaissance au cours d'une centaine d'années.
La gestion de projet est le processus qui consiste à appliquer des connaissances, des compétences, des outils et des méthodologies spécialisés aux activités du projet afin que celui-ci puisse atteindre ou dépasser les exigences et les attentes fixées dans le cadre de ressources limitées. Ce diagramme fournit une vue d'ensemble des 8 composantes du processus de gestion de projet et peut être utilisé comme modèle générique.
Cent ans de solitude est le chef-d'œuvre de Gabriel Garcia Marquez. La lecture de ce livre commence par l'analyse des relations entre les personnages, qui se concentre sur la famille Buendía et raconte l'histoire de la prospérité et du déclin de la famille, de ses relations internes et de ses luttes politiques, de son métissage et de sa renaissance au cours d'une centaine d'années.
Cent ans de solitude est le chef-d'œuvre de Gabriel Garcia Marquez. La lecture de ce livre commence par l'analyse des relations entre les personnages, qui se concentre sur la famille Buendía et raconte l'histoire de la prospérité et du déclin de la famille, de ses relations internes et de ses luttes politiques, de son métissage et de sa renaissance au cours d'une centaine d'années.
La gestion de projet est le processus qui consiste à appliquer des connaissances, des compétences, des outils et des méthodologies spécialisés aux activités du projet afin que celui-ci puisse atteindre ou dépasser les exigences et les attentes fixées dans le cadre de ressources limitées. Ce diagramme fournit une vue d'ensemble des 8 composantes du processus de gestion de projet et peut être utilisé comme modèle générique.
Outil d'exploration de données——WEKA
Introduction à WEKA
Le nom complet de WEKA est Waikato Environment for Knowledge Analysis.
WEKA est aussi le nom d'un oiseau en Nouvelle-Zélande. Il s'agit d'un logiciel open source d'apprentissage automatique/d'exploration de données développé en Java par l'équipe WEKA de l'Université de Waikato en Nouvelle-Zélande.
Récupérer son code source
http://www.cs.waikato.ac.nz/ml/weka/
http://prdownloads.sourceforge.net/weka/weka-3-6-6jre.exe
En août 2005, lors de la 11e conférence internationale ACM SIGKDD, le groupe WEKA de l'Université de Waikato a remporté la plus haute distinction de service dans le domaine de l'exploration de données et de l'exploration des connaissances. Le système WEKA a été largement reconnu et salué comme un leader dans l'exploration de données. et l'apprentissage automatique. L'apprentissage des jalons de l'histoire est l'un des outils d'exploration de données les plus complets disponibles aujourd'hui. WEKA a été téléchargé plus de 10 000 fois par mois.
caractéristique principale
Il s'agit d'un outil complet d'exploration de données qui intègre le prétraitement des données, des algorithmes d'apprentissage (classification, régression, clustering, analyse de corrélation) et des méthodes d'évaluation.
Possède une interface visuelle interactive
Fournir un environnement d’apprentissage et de comparaison d’algorithmes
Grâce à son interface, vous pouvez implémenter vos propres algorithmes de data mining
Environnement de l'explorateur
Plusieurs onglets de la zone 1 sont utilisés pour basculer entre les différents panneaux de tâches minières.
Prétraiter (prétraitement des données) : Sélectionnez et modifiez les données à traiter.
Classifier : entraîner et tester des modèles de classification ou de régression.
Cluster : clustering à partir de données.
Associer : apprenez les règles d’association à partir des données.
Sélectionner les attributs : sélectionnez les attributs les plus pertinents dans les données.
Visualiser : affichez un nuage de points bidimensionnel des données.
La zone 2 regroupe certains boutons couramment utilisés. Y compris des fonctions telles que l'ouverture, l'édition, la sauvegarde des données et la conversion des données. Par exemple, nous pouvons enregistrer le fichier « bank-data.csv » sous le nom « bank-data.arff ».
Dans la zone 3, vous pouvez choisir un filtre pour filtrer les données ou effectuer une transformation sur les données. Le prétraitement des données est principalement mis en œuvre à l'aide de celui-ci.
La zone 4 affiche les informations de base de l'ensemble de données telles que le nom de la relation, le nombre d'attributs et le nombre d'instances.
Toutes les propriétés de l'ensemble de données sont répertoriées dans la zone 5.
Vous pouvez supprimer certains attributs en les cochant et en "Supprimer". Après suppression, vous pouvez également utiliser le bouton "Annuler" en zone 2 pour les récupérer.
La rangée de boutons au-dessus de la zone 5 permet de vérifier rapidement.
La zone 6 affiche un résumé de l'attribut actuel sélectionné dans la zone 5.
Le résumé comprend le nom de l'attribut (Name), le type d'attribut (Type), le nombre et la proportion de valeurs manquantes (Manquant), le nombre de valeurs différentes (Distinct), le nombre et la proportion de valeurs uniques (Unique)
La méthode récapitulative est différente pour les attributs numériques et les attributs nominaux. La figure montre un résumé de l'attribut numérique « revenu ».
Les attributs numériques affichent la valeur minimale (Minimum), la valeur maximale (Maximum), la moyenne (Mean) et l'écart type (StdDev)
Les propriétés nominales montrent le nombre de chaque valeur distincte
La zone 7 est l'histogramme de l'attribut sélectionné dans la zone 5.
Si le dernier attribut de l'ensemble de données (qui est la variable cible par défaut pour les tâches de classification ou de régression) est une variable d'étiquette de classe (par exemple « pep »), chaque rectangle de l'histogramme est divisé en segments de couleurs différentes, proportionnels à cette variable.
Si vous souhaitez modifier la base de segmentation, sélectionnez simplement un attribut de classification différent dans la liste déroulante au-dessus de la zone 7.
La sélection de « Aucune classe » ou d'un attribut numérique dans la liste déroulante se transformera en un histogramme en noir et blanc.
Zone 8 La zone inférieure de la fenêtre, comprenant la barre d'état, le bouton de journalisation et l'oiseau Weka.
La barre d'état (Status) affiche des informations pour vous informer de ce qui est en cours. Par exemple, si l'Explorateur est en train de charger un fichier, une notification s'affichera dans la barre d'état.
Un clic droit n'importe où dans la barre d'état fera apparaître un petit menu. Ce menu vous propose deux options :
Informations sur la mémoire : affiche la quantité de mémoire disponible pour WEKA.
Exécuter le garbage collector : forcez le garbage collector Java à rechercher l'espace mémoire qui n'est plus nécessaire et à le libérer, afin que davantage de mémoire puisse être allouée à de nouvelles tâches.
Le bouton Journal vous permet d'afficher les journaux d'opérations weka.
Si l'oiseau weka à droite bouge, cela signifie que WEKA effectue une tâche d'excavation.
Environnement KnowledgeFlow
Ensemble de données WEKA
L'ensemble de données traité par WEKA est un tableau bidimensionnel de fichier .arff
Une ligne du tableau est appelée une instance, ce qui équivaut à un échantillon dans les statistiques ou à un enregistrement dans la base de données.
Une ligne verticale est appelée attribut, ce qui équivaut à une variable dans les statistiques ou à un champ dans une base de données.
Selon WEKA, un tel tableau, ou ensemble de données, présente une relation (Relation) entre les attributs.
Dans l'image ci-dessus, il y a 14 instances, 5 attributs et le nom de la relation est « météo ».
Le format dans lequel WEKA stocke les données est un fichier ARFF (Attribute-Relation File Format), qui est un fichier texte ASCII.
Le tableau bidimensionnel présenté ci-dessus est stocké dans le fichier ARFF suivant. Il s'agit du fichier "weather.arff" fourni avec WEKA, qui se trouve dans le sous-répertoire "data" du répertoire d'installation de WEKA.
Le format dans lequel WEKA stocke les données est le fichier ARFF (Attribute-Relation File Format).
Il s'agit d'un fichier texte ASCII (ASCII ((American Standard Code for Information Interchange) : American Standard Code for Information Interchange))
L'extension du fichier est .arff
Vous pouvez utiliser WordPad pour ouvrir et modifier des fichiers ARFF
Les lignes commençant par "%" dans le fichier sont des commentaires et WEKA ignorera ces lignes.
Après avoir supprimé les commentaires, l'ensemble du fichier ARFF peut être divisé en deux parties :
La première partie donne les informations d'en-tête (Head information), incluant la déclaration des relations et la déclaration des attributs.
La deuxième partie donne les informations sur les données (Data information), c'est-à-dire les données fournies dans l'ensemble de données. À partir de la balise "@data", ce qui suit sont les informations sur les données.
Déclaration de relation
Le nom de la relation est défini dans la première ligne valide du fichier ARFF, au format : @relation <nom de la relation>
<nom de la relation> est une chaîne. Si cette chaîne contient des espaces, elle doit être placée entre guillemets (guillemets simples ou doubles pour la ponctuation anglaise).
Déclaration de propriété
Les déclarations d'attributs sont représentées par une liste d'instructions commençant par "@attribute".
Chaque attribut de l'ensemble de données possède une instruction « @attribute » correspondante pour définir son nom d'attribut et son type de données (type de données) : @attribute <nom d'attribut> <type de données>
Où <property name> doit être une chaîne commençant par une lettre. Comme pour les noms de relations, si cette chaîne contient des espaces, elle doit être mise entre guillemets.
L'ordre des déclarations d'attribut est important, car il indique l'emplacement de l'attribut dans la section de données.
Par exemple, "humidité" est le troisième attribut déclaré, ce qui signifie que parmi les colonnes séparées par des virgules dans la partie données, les données de la colonne 2 (en commençant par la colonne 0) 85 90 86 96... sont l'"humidité" correspondante. valeur.
Deuxièmement, le dernier attribut déclaré est appelé attribut de classe, qui est la variable cible par défaut dans les tâches de classification ou de régression.
type de données
type numérique numérique
Les attributs numériques peuvent être des nombres entiers ou réels, mais WEKA les traite tous comme des nombres réels. Par exemple : @attribute température réelle
<spécification nominale> Type nominal
Les attributs nominaux consistent en une liste <nominal-specification> de noms de catégories possibles entourés d'accolades : {<nominal-name1>, <nominal-name2>, <nominal-name3>, ...}.
La valeur de cet attribut dans l'ensemble de données ne peut être qu'une des catégories.
Par exemple, la déclaration d'attribut : @attribute Outlook {ensoleillé, couvert, pluvieux} indique que l'attribut « Outlook » a trois catégories : « ensoleillé », « couvert » et « pluvieux ». La valeur « perspective » correspondant à chaque instance de l'ensemble de données doit être l'une de ces trois valeurs.
Si le nom de la catégorie comporte des espaces, il doit quand même être placé entre guillemets.
type de chaîne
Les propriétés de chaîne peuvent contenir du texte arbitraire. Par exemple : chaîne @attribute LCC
date [<date-format>] type de date et d'heure
Les attributs de date et d'heure sont uniformément représentés par le type "date" et son format est : @attribute <nom de l'attribut> date [<format-date>]
Où <date-format> est une chaîne qui spécifie comment analyser et afficher le format de date ou d'heure. La chaîne par défaut est le format de combinaison de date et d'heure donné par ISO-8601 : "aaaa-MM-jj HH:mm: ss".
La chaîne exprimant la date dans la partie information sur les données doit être conforme aux exigences de format spécifiées dans l'instruction, par exemple : @ATTRIBUTE timestamp DATE "aaaa-MM-jj HH:mm:ss" @DATA "2011-05-03 12 : 59:55"
Avis
Il existe deux autres types « entier » et « réel » qui peuvent être utilisés, mais WEKA les traite tous deux comme « numériques ».
Les mots-clés « entier », « réel », « numérique », « date » et « chaîne » sont sensibles à la casse, alors que « relation », « attribut » et « données » ne le sont pas.
Informations de données
Dans les informations sur les données, la balise "@data" occupe une ligne exclusive, et le reste correspond aux données de chaque instance.
Chaque instance occupe une ligne et les valeurs d'attribut de l'instance sont séparées par des virgules ",".
Si la valeur d'un attribut est une valeur manquante, elle est représentée par un point d'interrogation "?", et ce point d'interrogation ne peut être omis.
données éparses
Parfois, l'ensemble de données contient un grand nombre de valeurs 0. Dans ce cas, il est plus économe en espace de stocker les données dans un format clairsemé.
Le format clairsemé est destiné à la représentation d'un objet dans les informations de données et ne nécessite pas de modification des autres parties du fichier ARFF.
Par exemple des données : @data 0, X, 0, Y, "classe A" 0, 0, W, 0, "classe B"
Exprimé au format clairsemé, il s'agit de @data {1 X, 3 Y, 4 "classe A"} {2 W, 4 "classe B"}
Remarque : La colonne d'attribut la plus à gauche de l'ensemble de données ARFF est la colonne 0. Par conséquent, 1 X signifie que X est la valeur d'attribut dans la colonne 1.
préparation des données
collecte de données
Utilisez directement les données du fichier ARFF.
Importez à partir de fichiers CSV, C4.5, binaires et autres formats.
Lisez les données de la base de données SQL via JDBC.
Obtenez des données sur les ressources réseau à partir d'une URL (Uniform Resource Locator).
Conversion de format de données
Le format ARFF est le meilleur format de fichier pris en charge par WEKA.
Lors de l'utilisation de WEKA pour l'exploration de données, le premier problème rencontré est souvent que les données ne sont pas au format ARFF.
WEKA prend également en charge les fichiers CSV, et ce format est pris en charge par de nombreux autres logiciels (tels qu'Excel).
WEKA peut être utilisé pour convertir le format de fichier CSV en format de fichier ARFF.
Ressources de données
Le propre ensemble de données de WEKA C:\Program Files\Weka-3-6\data
Ressources de données réseau http://archive.ics.uci.edu/ml/datasets.html
.XLS——> .CSV——> .ARFF
Le fichier XLS d'Excel permet de placer plusieurs tableaux bidimensionnels dans différentes feuilles de calcul (Sheets), et chaque feuille de calcul ne peut être enregistrée que sous un fichier CSV différent.
Ouvrez un fichier XLS et passez à la feuille de calcul qui doit être convertie, enregistrez-la au format CSV, cliquez sur "OK", "Oui" et ignorez l'invite pour terminer l'opération.
Ouvrez un fichier de type CSV dans WEKA et enregistrez-le sous forme de fichier de type ARFF.
prétraitement des donnéesprétraitement
Les outils de prétraitement des données dans WEKA sont appelés filtres
Des filtres peuvent être définis pour transformer les données de différentes manières.
La colonne Filtre est utilisée pour effectuer les réglages nécessaires pour divers filtres.
Bouton Choisir : Cliquez sur ce bouton pour sélectionner un filtre dans WEKA.
Lorsqu'un filtre est sélectionné, son nom et ses options apparaissent dans la zone de texte à côté du bouton Choisir.
Charger des données
Les quatre premiers boutons de la zone 2 de la page de prétraitement d'Explorer sont utilisés pour charger des données dans WEKA :
Ouvrir le fichier.... Ouvre une boîte de dialogue qui vous permet de rechercher des fichiers de données sur le système de fichiers local.
Ouvrir l'URL.... Demande une adresse URL contenant des données.
Ouvrir la base de données.... Lire les données de la base de données.
Générer.... Génère des données artificielles à partir de certains DataGenerators.
Supprimer les attributs inutiles
Habituellement, pour les tâches d'exploration de données, les informations telles que l'identité sont inutiles et peuvent être supprimées.
Vérifiez l'attribut "id" dans la zone 5 et cliquez sur "Supprimer". Enregistrez le nouvel ensemble de données et rouvrez-le
Discrétisation des données
Certains algorithmes (comme l'analyse de corrélation) ne peuvent gérer que des attributs nominaux. Dans ce cas, les attributs numériques doivent être discrétisés.
Les attributs numériques avec des valeurs limitées peuvent être discrétisés en modifiant le type de données d'attribut dans le fichier .arff.
Par exemple, l'attribut « enfants » dans un certain ensemble de données n'a que 4 valeurs numériques : 0, 1, 2 et 3.
Nous modifions directement le fichier ARFF et changeons le chiffre @attribute children en @attribute children {0,1,2,3}.
Rouvrez "bank-data.arff" dans "Explorer" et constatez qu'après avoir sélectionné l'attribut "children", le "Type" affiché dans la zone 6 passe à "Nominal".
Pour les attributs numériques comportant de nombreuses valeurs, la discrétisation peut être réalisée à l'aide d'un filtre nommé "Discretize" dans WEKA.
Cliquez sur "Choisir" dans la zone 2, un "Arbre de filtrage" apparaîtra, recherchez "weka.filters.unsupervised.attribute.Discretize" niveau par niveau, et cliquez.
La zone de texte à côté de « Choisir » devrait maintenant indiquer « Discretize -B 10 -M -0.1 -R premier-dernier ».
En cliquant sur cette zone de texte, une nouvelle fenêtre apparaîtra pour modifier les paramètres de discrétisation.
ClasserClasser
WEKA place à la fois la classification et la régression dans l'onglet "Classer".
Dans les deux tâches d'exploration de données, il existe un attribut cible (attribut de catégorie, variable de sortie).
Nous espérons effectuer une prédiction de classification sur les attributs cibles sur la base d'un ensemble d'attributs caractéristiques (variables d'entrée) d'une instance WEKA.
Pour y parvenir, nous devons disposer d'un ensemble de données de formation dans lequel les entrées et les sorties de chaque instance sont connues. En observant les instances de l'ensemble de formation, un modèle prédictif de classification/régression peut être construit.
Avec ce modèle, des prédictions de classification peuvent être faites pour de nouvelles instances inconnues.
Mesurer la qualité d’un modèle dépend principalement de la précision de ses prédictions.
Algorithmes de classification typiques dans WEKA
Bayes : classificateur bayésien
BayesNet : réseau de croyance bayésienne
NaïveBayes : Réseau Naive Bayes
xMultilayerPerceptron : réseau neuronal artificiel multicouche à action directe
SMO : machine à vecteurs de support (utilisant la méthode d'apprentissage par optimisation séquentielle)
Lazy : classificateur basé sur une instance
IB1 : 1 classificateur du voisin le plus proche
IBk : classificateur du k-voisin le plus proche
Choisissez un algorithme de classification
Meta : méthode de combinaison
AdaBoostM1 : méthode AdaBoost M1
Ensachage : méthode d'ensachage
Règles : classificateur basé sur des règles
JRip : Méthode directe - Algorithme Ripper
Partie : Méthode indirecte - Extraction de règles à partir d'arbres de décision générés par J48
Arbres : classificateur d'arbre de décision
Id3 : algorithme d'apprentissage de l'arbre de décision ID3 (les attributs continus ne sont pas pris en charge)
J48 : Algorithme d'apprentissage de l'arbre de décision C4.5 (Version 8)
REPTree : algorithme d'apprentissage d'arbre de décision utilisant l'élagage avec réduction des erreurs
RandomTree : Méthode de combinaison basée sur des arbres de décision
Choisir une méthode d'évaluation de modèle (quatre types)
Utilisation de l'ensemble de formation Utilisation de l'évaluation de l'ensemble de formation
Ensemble de test fourni Utiliser l'évaluation de l'ensemble de test
Validation croisée Validation croisée
Définir le pli
Méthode de rétention divisée en pourcentage. Utiliser une certaine proportion d’exemples de formation pour l’évaluation
Définir le pourcentage d'instances de formation
Cliquez sur le bouton Plus d'options pour définir plus d'options de test :
Modèle de sortie. Produit un modèle de classification basé sur l'ensemble de la formation afin que le modèle puisse être visualisé, etc. Cette option est sélectionnée par défaut.
Afficher les statistiques par classe. Afficher les statistiques de précision/rappel et vrai/faux de chaque classe. Cette option est sélectionnée par défaut.
Mesures d’évaluation de sortie. Mesures d’estimation de l’entropie de sortie. Cette option n'est pas sélectionnée par défaut.
Matrice de confusion de sortie. Produit la matrice de confusion des résultats de prédiction du classificateur. Cette option est sélectionnée par défaut.
Stockez les prédictions pour la visualisation. Enregistrez les prédictions du classificateur afin qu'elles puissent être représentées visuellement.
Sortir les prédictions. Sortir les résultats de prédiction des données de test. Notez que lors de la validation croisée, le numéro d'une instance ne représente pas sa position dans l'ensemble de données.
Évaluation sensible aux coûts. L'erreur sera estimée sur la base d'une matrice de valeurs. Le bouton Set… permet de spécifier la matrice de valeurs.
Graine aléatoire pour xval / % Split Spécifie une graine aléatoire utilisée pour randomiser les données lorsqu'elles doivent être divisées à des fins d'évaluation.
Analyse des résultats du texte
Cliquez sur le bouton Démarrer et les informations textuelles sur le résultat s'affichent dans la fenêtre de sortie du classificateur :
Informations sur l'exécution Informations sur l'exécution
Modèle de classificateur (ensemble de formation complet) Un modèle de classification construit à l'aide de toutes les données de formation
Résumé Résumé des effets de prédiction pour l'ensemble d'entraînement/test.
Précision détaillée par classe Une description détaillée de la précision des prévisions pour chaque classe.
Matrice de confusion Matrice de confusion, où les lignes de la matrice sont les classes réelles, les colonnes de la matrice sont les classes prédites et les éléments de la matrice sont le nombre d'échantillons de test correspondants.
principaux indicateurs
Instances correctement classées Taux de classification correcte
Instances mal classées Taux de classification des erreurs
Statistiques Kappa Statistiques Kappa
Erreur absolue moyenne Erreur absolue moyenne
Erreur quadratique moyenne
Erreur relative absolue Erreur relative absolue
Erreur quadratique relative racine Erreur quadratique relative
Taux TP (mauvais/bon) taux correct
Taux FP (mauvais/bon) taux de faux positifs
Précision(mauvaise/bonne) précision
Taux de retour de rappel (mauvais/bon)
Mesure F (mauvais/bon) Mesure F
Temps nécessaire pour créer le modèle Temps nécessaire pour créer le modèle
Résultats graphiques de sortie
Afficher dans la fenêtre principale. Affichez le résultat dans la fenêtre principale.
Afficher dans une fenêtre séparée. Ouvrez une nouvelle fenêtre distincte pour afficher les résultats.
Enregistrer le tampon de résultats (enregistrer le tampon de résultats). Une boîte de dialogue apparaît pour enregistrer les résultats de sortie dans un fichier texte.
Charger le modèle (mode téléchargement). Chargez un objet en mode pré-entraîné à partir d'un fichier binaire.
Enregistrez le modèle. Enregistrez un objet de schéma dans un fichier binaire, c'est-à-dire au format d'objet série JAVA.
Réévaluer le modèle sur l'ensemble de test actuel (réévaluer l'ensemble de test actuel). Testez l’ensemble de données spécifié via le schéma établi et utilisez le bouton Définir.. sous l’option Ensemble de test fourni.
Visualisez les erreurs du classificateur. Une fenêtre de visualisation apparaît pour afficher le graphique des résultats du classificateur. Parmi elles, les instances correctement classées sont représentées par des croix, tandis que les instances mal classées sont représentées par des petits carrés.
Nuage de points des classes réelles par rapport aux classes prévues. Les résultats d’un classement correct sont représentés par des croix, et les résultats d’un classement incorrect sont représentés par des cases.
Visualiser l'arbre(visualisation de l'arbre). Si possible, une interface graphique apparaît pour décrire la structure du modèle de classificateur (ceci n'est disponible que pour certains classificateurs). Cliquez avec le bouton droit sur une zone vide pour faire apparaître un menu, faites glisser la souris dans le panneau et cliquez pour voir les instances de formation correspondant à chaque nœud.
Visualisez la courbe de marge. Produisez un nuage de points illustrant les marges de prédiction. La marge est définie comme la différence entre la probabilité de prédire une valeur vraie et la probabilité la plus élevée de prédire autre chose que la vraie valeur. Par exemple, les algorithmes accélérés fonctionnent mieux sur les ensembles de données de test en augmentant les marges sur l'ensemble de données d'entraînement.
Créez un nuage de points pour afficher les valeurs marginales prévues.
quatre variables
Marge : valeur marginale prévue
Instance_number : numéro de série de l'instance d'inspection
Actuel : nombre d'instances avec la valeur de marge prévue actuelle
Cumulatif : le nombre d'instances inférieur ou égal à la valeur marginale prédite (conforme à Instance_number)
Cliquez sur l'instance de test n°8, qui montre que la valeur marginale de ce point est de 0,5, et il y a 7 instances avec des valeurs marginales inférieures à 0,5.
Visualiser la courbe de seuil (visualisation de la courbe de seuil). Un nuage de points est produit pour décrire le problème de compromis dans la prédiction, où le compromis est capturé en faisant varier le seuil entre les classes. Par exemple, le seuil par défaut est de 0,5 et la probabilité qu'une instance soit prédite positive doit être supérieure à 0,5, car l'instance est exactement prédite positive à 0,5. Et des graphiques peuvent être utilisés pour visualiser le compromis précision/taux de rétroaction, comme l'analyse de la courbe ROC (rapport positif du rapport correct et rapport positif de l'erreur) et d'autres courbes.
Le seuil est la probabilité minimale de classer l'instance de test dans la classe actuelle. La couleur du point est utilisée pour représenter le seuil.
Chaque point de la courbe est généré en changeant la taille du seuil
L'analyse ROC peut être effectuée
L'axe X sélectionne le taux de faux positifs
L'axe Y sélectionne le taux réel
Courbe ROC
La courbe ROC (Receiver Operating Characteristic Curve) est une méthode graphique qui montre le compromis entre le taux de vrais positifs et le taux de faux positifs du modèle de Classification.
En supposant que les échantillons peuvent être divisés en catégories positives et négatives, interprétez certaines définitions conceptuelles des graphiques ROC :
True Positive (TP), un échantillon positif prédit comme positif par le modèle
Le faux négatif (FN) est un échantillon positif prédit comme négatif par le modèle
Le faux positif (FP) est un échantillon négatif qui devrait être positif selon le modèle.
Vrai négatif (TN) Échantillons négatifs prédits comme négatifs par le modèle
Taux de vrai positif (TPR) ou sensibilité TPR = TP / (TPFN) Nombre de résultats de prédiction d'échantillons positifs/nombre réel d'échantillons positifs
Taux de faux positifs (FPR) FPR = FP / (FP TN) Nombre de résultats d'échantillons négatifs prévus comme étant positifs/nombre réel d'échantillons négatifs
(TPR=1,FPR=0) est un modèle idéal
Un bon modèle de classification doit être aussi proche que possible du coin supérieur gauche du graphique.
Visualiser la courbe des coûts (visualisation de la courbe des coûts). Produisez un nuage de points qui représente avec précision les coûts attendus, comme décrit par Drummond et Holte.
ClusterCluster
L'analyse de cluster affecte des objets à chaque cluster afin que les objets du même cluster soient similaires et que les objets des différents clusters soient différents.
WEKA propose des outils d'analyse de cluster dans le "Cluster" de l'interface "Explorer"
Les principaux algorithmes comprennent :
SimpleKMeans — Algorithme K-means prenant en charge les attributs catégoriels
displayStdDevs : s'il faut afficher l'écart type des attributs numériques et le nombre d'attributs catégoriels
distanceFunction : sélectionnez la fonction de distance pour les instances de comparaison
(Par défaut : weka.core.EuclideanDistance)
dontReplaceMissingValues : s'il faut ou non utiliser la moyenne/le mode pour remplacer les valeurs manquantes.
maxIterations : nombre maximum d'itérations
numClusters : nombre de clusters pour le clustering
préserverInstancesOrder : s'il faut pré-organiser l'ordre des instances
Seed : définir une valeur de graine aléatoire
DBScan — Algorithme basé sur la densité prenant en charge les attributs catégoriels
EM — Algorithme de clustering basé sur un modèle de mélange
FathestFirst — Algorithme de point central K
OPTIQUE - un autre algorithme basé sur la densité
Cobweb — algorithme de regroupement de concepts
sIB — algorithme de clustering basé sur la théorie de l'information, ne prend pas en charge les attributs catégoriels
XMeans — un algorithme K-means étendu qui peut déterminer automatiquement le nombre de clusters. Il ne prend pas en charge les attributs catégoriels.
Mode ClusterMode Cluster
Utiliser l'ensemble d'entraînement – rapporte les résultats de regroupement et de regroupement pour les objets entraînés
Utiliser l'ensemble d'entraînement – rapporte les résultats de regroupement et de regroupement pour les objets entraînés
Ensemble de test fourni : rapporte les résultats de regroupement pour les objets de formation et les résultats de regroupement pour les objets de test supplémentaires.
Répartition en pourcentage : rapporte les résultats de clustering pour tous les objets, les résultats de clustering pour les objets de formation et les résultats de regroupement pour les objets de test.
Évaluation supervisée (évaluation des classes aux clusters) - rapporte les résultats de regroupement et de regroupement, les matrices de confusion classe/cluster et les informations de regroupement erroné pour les objets de formation
Exécuter l'algorithme de clustering
Cliquez sur le bouton "Démarrer" pour exécuter l'algorithme de clustering
Observer les résultats du clustering
Observez les résultats de clustering donnés par "Sortie du clusterer" à droite. Vous pouvez également faire un clic droit sur le résultat généré cette fois dans la « Liste des résultats » dans le coin inférieur gauche et « Afficher dans une fenêtre séparée » pour parcourir les résultats dans une nouvelle fenêtre.
Remarque : Les informations d'exécution ci-dessus n'apparaîtront que si le clustering supervisé est utilisé (c'est-à-dire que l'étiquette de classe de l'ensemble de données de modélisation est connue).
analyse de texte
SimpleKMeans
Mode non supervisé : informations d'exécution, résultats KMeans (nombre d'itérations, SSE, centres de cluster), regroupement des informations des objets d'inspection
Mode supervisé : informations d'exécution, résultats KMeans (nombre d'itérations, SSE, centres de cluster), matrice de confusion classe/cluster, nombre et proportion d'objets mal regroupés
Centre du cluster : moyenne pour les attributs numériques et mode pour les attributs catégoriels
Analyse DBS
Mode non supervisé : informations d'exécution, résultats DBScan (nombre d'itérations, regroupement des informations de chaque objet d'entraînement), regroupement des informations des objets de test
Mode de supervision : informations d'exécution, résultats DBScan (nombre d'itérations, informations de regroupement de chaque objet d'entraînement), matrice de confusion classe/cluster, nombre et proportion d'objets mal regroupés
analyse graphique
Les clusters de magasins pour la visualisation doivent être vérifiés
Visualiser les affectations de cluster : nuage de points 2D permettant de visualiser la matrice de confusion classe/cluster
Informations de sortie importantes
« Au sein d'un cluster, la somme des erreurs quadratiques » est la norme pour évaluer la qualité du clustering : SSE, qui est la somme des erreurs quadratiques. Plus la valeur SSE est petite, meilleur est le résultat du clustering.
« Centres de gravité du cluster : » est suivi de l'emplacement de chaque centre du cluster. Pour les attributs numériques, le centre du cluster est sa moyenne (Mean) et pour les attributs catégoriels, son mode (Mode).
« Instances groupées » correspond au nombre et au pourcentage d'instances dans chaque cluster.
Observer les résultats du regroupement visuel
Faites un clic droit sur les résultats répertoriés dans la « Liste des résultats » en bas à gauche et cliquez sur « Visualiser les affectations de cluster ».
La fenêtre contextuelle affiche le nuage de points de chaque instance.
Les deux cases du haut permettent de sélectionner l'abscisse et l'ordonnée
La "couleur" de la deuxième ligne sert de base à la coloration du nuage de points. La valeur par défaut est de marquer les instances avec des couleurs différentes selon les différents clusters "Cluster".
Règles d'association
L'apprentissage des règles d'association WEKA peut découvrir les dépendances entre les groupes d'attributs :
Par exemple, lait, beurre pain, œufs (confiance 0,9 et soutien 2000)
Pour la règle d'association L->R
Support - la probabilité d'observer à la fois l'antécédent et le conséquent support = Pr(L,R)
Confiance - la probabilité que le conséquent se produise lorsque l'antécédent se produit. confiance = Pr(L,R)/Pr(L)
Principaux algorithmes pour l'exploration de règles d'association
Les principaux algorithmes de fouille de règles d'association sur la plateforme de data mining WEKA sont :
A priori - peut dériver toutes les règles d'association qui satisfont au support minimum et au support minimum.
car : si défini sur true, les règles d'association de classe seront extraites à la place des règles d'association globales.
classindex : index d'attribut de classe. S'il est défini sur -1, le dernier attribut est traité comme un attribut de classe.
delta : utilisez cette valeur comme unité de décrémentation d'itération. Le soutien est continuellement réduit jusqu'à ce que le soutien minimum soit atteint ou que des règles répondant aux exigences quantitatives soient générées.
lowerBoundMinSupport : limite inférieure minimale de prise en charge.
metricType : type de métrique, définit la base métrique pour les règles de tri. Cela peut être : la confiance (les règles d'association de classe ne peuvent être exploitées qu'en toute confiance), l'ascenseur, l'effet de levier et la conviction.
Plusieurs mesures similaires à la confiance sont mises en place dans Weka pour mesurer le degré d'association des règles.
Lift : le rapport confiance/support conséquent ascenseur = Pr(L,R) / (Pr(L)Pr(R)) Lorsque Lift=1, cela signifie que L et R sont indépendants. Plus le nombre est grand (>1), plus il indique que l'existence de L et B dans le même panier n'est pas un phénomène accidentel, et qu'il existe une forte corrélation.
Effet de levier, équilibre : dans l'hypothèse où l'antécédent et le conséquent sont statistiquement indépendants, la proportion d'instances qui dépassent la valeur attendue et sont couvertes à la fois par l'antécédent et le conséquent. effet de levier = Pr(L,R) - Pr(L)Pr(R) Lorsque l'effet de levier = 0, L et R sont indépendants. Plus l'effet de levier est grand, plus la relation entre L et R est étroite.
Conviction, crédibilité : également utilisée pour mesurer l'indépendance de l'antécédent et du conséquent. conviction = Pr(L)Pr(!R) / Pr(L,!R) (!R signifie que R ne s'est pas produit) D'après sa relation avec lift (inverser R et trouver l'inverse après l'avoir substitué dans la formule Lift), nous pouvons voir que plus cette valeur est grande, plus L et R sont pertinents.
minMtric : valeur minimale de la métrique.
numRules : Nombre de règles à découvrir.
OutputItemSets : si défini sur true, les éléments seront affichés dans le résultat.
removeAllMissingCols : supprime toutes les colonnes avec des valeurs manquantes.
significationLevel : niveau d’importance. Test de signification (pour la confiance uniquement).
upperBoundMinSupport : limite supérieure du support minimum. À partir de cette valeur, on diminue de manière itérative le support minimum.
verbeux : si défini sur true, l'algorithme s'exécute en mode verbeux.
PredictiveApriori - combine confiance et assistance dans la précision de la prédiction pour devenir une méthode de mesure à un seul degré et trouve des règles d'association triées par précision de la prédiction.
Terius - recherche des règles en fonction du degré de confirmation. Comme Apriori, il recherche des règles dont les conclusions contiennent plusieurs conditions, mais la différence est que ces conditions sont des « ou » les unes par rapport aux autres au lieu de « et ».
Aucun de ces trois algorithmes ne prend en charge les données numériques.
En fait, la plupart des algorithmes de règles d’association ne prennent pas en charge les types numériques. Par conséquent, les données doivent être traitées, divisées en segments et discrétisées en compartiments.
Informations sur le fonctionnement de l'algorithme d'exploration de règles d'association
Sélectionnez les attributsSélectionnez les attributs
La sélection d'attributs consiste à rechercher toutes les combinaisons possibles de tous les attributs dans l'ensemble de données pour trouver l'ensemble d'attributs ayant le meilleur effet de prédiction.
Pour atteindre cet objectif, des évaluateurs d'attributs et des stratégies de recherche doivent être définis.
L'évaluateur détermine comment attribuer une valeur à un ensemble d'attributs qui représente leur qualité ou leur qualité.
La stratégie de recherche détermine la manière dont la recherche est effectuée.
Possibilités
Il existe deux options dans la colonne Mode de sélection d'attribut.
Utiliser l'ensemble d'entraînement complet. Utilisez l'intégralité des données d'entraînement pour déterminer la qualité d'un ensemble d'attributs.
Validation croisée. La qualité d'un ensemble d'attributs est déterminée par un processus de validation croisée. Fold et Seed donnent respectivement le numéro de pli de la validation croisée et la graine aléatoire lors du brouillage des données.
Comme la section Classifier, il existe une zone déroulante pour spécifier l'attribut de classe.
Exécuter la sélection
Cliquez sur le bouton Démarrer pour lancer le processus de sélection des attributs. Une fois l'opération terminée, les résultats sont affichés dans la zone de résultats et une entrée est ajoutée à la liste des résultats.
Un clic droit sur la liste des résultats vous offrira plusieurs options. Les trois premiers (Afficher dans la fenêtre principale, Afficher dans une fenêtre séparée et Enregistrer le tampon de résultats) sont les mêmes que dans le panneau de classification.
Vous pouvez également visualiser des ensembles de données réduits (Visualiser les données réduites)
Possibilité de visualiser des ensembles de données transformés (Visualiser les données transformées)
Les données réduites/transformées peuvent être enregistrées à l'aide de l'option Enregistrer les données réduites... ou Enregistrer les données transformées....
Visualisation des donnéesVisualiser
La page de visualisation de WEKA peut parcourir visuellement la relation actuelle sous la forme d'un nuage de points bidimensionnel.
matrice de nuages de points
Lorsque le panneau Visualiser est sélectionné, une matrice de nuage de points est donnée pour tous les attributs, qui sont colorés en fonction de l'attribut de classe sélectionné.
Ici, vous pouvez modifier la taille de chaque nuage de points 2D, modifier la taille de chaque point et faire trembler les données de manière aléatoire (faisant apparaître des points cachés).
Vous pouvez également modifier les attributs utilisés pour la coloration, vous pouvez sélectionner uniquement un sous-ensemble d'un ensemble d'attributs à placer dans la matrice de nuage de points et vous pouvez également prendre un sous-échantillon des données.
Notez que ces modifications ne prendront effet qu'après avoir cliqué sur le bouton Mettre à jour.
Sélectionnez des nuages de points 2D individuels
Après avoir cliqué sur un élément de la matrice du nuage de points, une fenêtre distincte apparaît pour visualiser le nuage de points sélectionné.
Les points de données sont répartis sur la zone principale de la fenêtre. Ci-dessus se trouvent deux listes déroulantes permettant de sélectionner les axes de coordonnées des points. À gauche se trouvent les propriétés utilisées comme axe des x ; à droite se trouvent les propriétés utilisées comme axe des y.
À côté du sélecteur de l'axe X se trouve une liste déroulante permettant de sélectionner un schéma de coloration. Il colore les points en fonction des attributs sélectionnés.
Sous la zone pointillée, il y a une légende pour expliquer la valeur que représente chaque couleur. Si les valeurs sont discrètes, les couleurs peuvent être modifiées en cliquant dessus dans la nouvelle fenêtre qui apparaît.
Il y a quelques barres horizontales à droite de la zone de points. Chaque barre représente un attribut et les points qu'elle contient représentent la distribution des valeurs d'attribut. Ces points sont répartis de manière aléatoire dans le sens vertical, afin que la densité des points soit visible.
Cliquez sur ces barres pour modifier les axes utilisés pour le graphique principal. Cliquez avec le bouton gauche pour modifier les propriétés de l'axe des x ; cliquez avec le bouton droit pour modifier l'axe des y. Le "X" et le "Y" à côté de la barre horizontale représentent l'attribut utilisé par l'axe actuel ("B" indique qu'il est utilisé à la fois pour l'axe des x et pour l'axe des y).
Au-dessus de la barre de propriétés se trouve un curseur intitulé Jitter. Il peut déplacer de manière aléatoire la position de chaque point dans le nuage de points, c'est-à-dire la gigue. Le faire glisser vers la droite augmente l'amplitude de la gigue, ce qui est utile pour identifier la densité des points.
Si vous n'utilisez pas un tel tramage, des dizaines de milliers de points ensemble ressembleront à un seul point.
Sous le bouton de sélection de l'axe Y se trouve un bouton déroulant qui détermine la méthode de sélection des points de données.
Les points de données peuvent être sélectionnés des quatre manières suivantes :
Sélectionnez Instance. Cliquer sur chaque point de données ouvrira une fenêtre répertoriant ses valeurs d'attribut. Si plusieurs points sont cliqués, plusieurs ensembles de valeurs d'attribut seront également répertoriés.
Rectangle Créez un rectangle en faisant glisser et en sélectionnant des points à l'intérieur.
Polygone Crée un polygone de forme libre et sélectionne ses points. Cliquez avec le bouton gauche pour ajouter les sommets du polygone et cliquez avec le bouton droit pour terminer les paramètres des sommets. Les points de début et de fin sont automatiquement connectés afin que le polygone soit toujours fermé.
Polyligne Vous pouvez créer une polyligne pour séparer les points des deux côtés. Cliquez avec le bouton gauche pour ajouter des sommets de polyligne et cliquez avec le bouton droit pour terminer le réglage. Les polylignes sont toujours ouvertes (contrairement aux polygones fermés).
Lorsque vous sélectionnez une zone d'un nuage de points à l'aide d'un rectangle, d'un polygone ou d'une polyligne, la zone devient grise.
Cliquer sur le bouton Soumettre à ce moment supprimera toutes les instances se trouvant en dehors de la zone grise.
Cliquer sur le bouton Effacer effacera la zone sélectionnée sans aucun impact sur les graphiques. Si tous les points sont supprimés du graphique, le bouton Soumettre se transforme en bouton Réinitialiser. Ce bouton peut annuler toutes les suppressions précédentes et ramener le graphique à l'état initial où se trouvent tous les points.
Enfin, cliquez sur le bouton Enregistrer pour enregistrer l'instance actuellement visible dans un nouveau fichier ARFF.
Interface de flux de connaissances KnowledgeFlow
KnowledgeFlow fournit à Weka une interface graphique de « flux de connaissances ».
Les utilisateurs peuvent sélectionner des composants dans une barre d'outils, les placer sur le panneau et les connecter dans un certain ordre pour former un « flux de connaissances » pour traiter et analyser les données.
Par exemple : "Source de données" -> "Filtre" -> "Classification" -> "Évaluation"
Les classificateurs, filtres, clusterers, chargeurs, économiseurs Weka et certaines autres fonctions peuvent être utilisés dans KnowledgeFlow.
La mise en page du flux de connaissances peut être enregistrée et rechargée.
Composants disponibles de KnowledgeFlow
Il y a huit onglets en haut de la fenêtre KnowledgeFlow :
DataSources – chargeur de données
DataSinks - économiseur de données
Filtres--Filtre
Classificateurs--Classificateurs
Clusterers – clusters
Associations – Associés
Évaluation – évaluateur
TrainingSetMaker – Faire d'un ensemble de données un ensemble d'entraînement
TestSetMaker - Faire d'un ensemble de données un ensemble de tests
CrossValidationFoldMaker : divisez n'importe quel ensemble de données, ensemble d'entraînement ou ensemble de test en plusieurs volets pour une validation croisée.
TrainTestSplitMaker - Divisez n'importe quel ensemble de données, ensemble d'entraînement ou ensemble de test en un ensemble d'apprentissage et un ensemble de test
ClassAssigner - Utilisez une colonne comme attribut de classe de n'importe quel ensemble de données, ensemble d'entraînement ou ensemble de test
ClassValuePicker--Sélectionnez une certaine catégorie comme classe « positive ». Cela peut être utile lors de la génération de données pour les courbes de forme ROC
ClassifierPerformanceEvaluator --Évaluez les performances d'un classificateur formé ou testé en mode batch
IncrementalClassi¯erEvaluator - Évaluez les performances des classificateurs formés en mode incrémentiel
ClustererPerformanceEvaluator--Évaluez les performances des clusterers formés ou testés en mode batch
PredictionAppender : ajoute la valeur de prédiction du classificateur à l'ensemble de test. Pour les problèmes de classification discrète, vous pouvez ajouter des indicateurs de classe prédits ou des distributions de probabilité
Visualisation—visualisation
DataVisualizer - Ce composant fait apparaître un panneau qui permet de visualiser les données dans un nuage de points séparé et plus grand.
ScatterPlotMatrix - Ce composant peut faire apparaître un panneau avec une matrice composée de petits nuages de points (en cliquant sur chaque petit nuage de points, un grand nuage de points apparaîtra)
AttributeSummarizer --Ce composant affiche un panneau avec une matrice d'histogrammes. Chaque histogramme correspond à un attribut dans les données d'entrée.
ModelPerformanceChart --Ce composant peut afficher un panneau pour visualiser les courbes de seuil (telles que les courbes ROC)
TextViewer - Ce composant est utilisé pour afficher des données textuelles et peut être utilisé pour afficher des ensembles de données et des statistiques pour mesurer les performances de classification, etc.
GraphViewer - Ce composant peut afficher un panneau pour visualiser des modèles arborescents
StripChart - Ce composant peut faire apparaître un panneau qui affiche un nuage de points de données glissant (utilisé pour observer instantanément les performances du classificateur incrémentiel)