Course
Klassifizierung beim maschinellen Lernen: Eine Einführung
Heutzutage haben viele Branchen mit sehr großen Datensätzen unterschiedlicher Art zu tun. Die manuelle Verarbeitung all dieser Informationen kann zeitaufwändig sein und bringt auf lange Sicht vielleicht nicht einmal einen Mehrwert. Viele Strategien, von einfacher Automatisierung bis hin zu Techniken des maschinellen Lernens, werden angewandt, um eine bessere Rendite zu erzielen. Dieser konzeptionelle Blog behandelt eines der wichtigsten Konzepte: die Klassifizierung beim maschinellen Lernen.
Wir werden zunächst definieren, was Klassifizierung beim maschinellen Lernen ist, bevor wir die beiden Arten von Lernern beim maschinellen Lernen und den Unterschied zwischen Klassifizierung und Regression erläutern. Dann werden wir einige reale Szenarien behandeln, in denen die Klassifizierung eingesetzt werden kann. Danach werden wir die verschiedenen Arten der Klassifizierung vorstellen und einige Beispiele für Klassifizierungsalgorithmen näher beleuchten. Zum Schluss werden wir die Implementierung einiger Algorithmen praktisch üben.
Werde ein ML-Wissenschaftler
Was ist Klassifizierung beim maschinellen Lernen?
Die Klassifizierung ist eine überwachte Methode des maschinellen Lernens, bei der das Modell versucht, die korrekte Kennzeichnung der eingegebenen Daten vorherzusagen. Bei der Klassifizierung wird das Modell anhand der Trainingsdaten vollständig trainiert und dann anhand von Testdaten ausgewertet, bevor es für die Vorhersage neuer, ungesehener Daten verwendet wird.
Zum Beispiel kann ein Algorithmus lernen, vorherzusagen, ob eine bestimmte E-Mail Spam oder Ham (kein Spam) ist, wie unten dargestellt.
Bevor wir in das Klassifizierungskonzept eintauchen, wollen wir zunächst den Unterschied zwischen den beiden Arten von Lernenden bei der Klassifizierung verstehen: faule und eifrige Lernende. Dann werden wir das Missverständnis zwischen Klassifizierung und Regression klären.
Faule Lernende vs. Eifrige Lernende
Bei der Klassifizierung durch maschinelles Lernen gibt es zwei Arten von Lernenden: faule und eifrige Lernende.
Eager Learners sind Algorithmen für maschinelles Lernen, die zunächst ein Modell aus dem Trainingsdatensatz erstellen, bevor sie Vorhersagen für zukünftige Datensätze treffen. Sie benötigen mehr Zeit während des Trainingsprozesses, weil sie darauf bedacht sind, durch das Lernen der Gewichte eine bessere Generalisierung zu erreichen, aber sie benötigen weniger Zeit für die Vorhersage.
Die meisten Algorithmen für maschinelles Lernen sind eifrige Lerner, und hier sind einige Beispiele:
- Logistische Regression.
- Support Vector Machine.
- Entscheidungsbäume.
- Künstliche neuronale Netze.
Faule Lerner oder instanzbasierte Lerner hingegen erstellen kein Modell unmittelbar aus den Trainingsdaten, daher auch der Begriff "faul". Sie merken sich nur die Trainingsdaten und suchen jedes Mal, wenn sie eine Vorhersage treffen müssen, nach dem nächsten Nachbarn aus den gesamten Trainingsdaten, was sie bei der Vorhersage sehr langsam macht. Einige Beispiele dieser Art sind:
- K-Nächster Nachbar.
- Fallbasiertes Argumentieren.
Einige Algorithmen, wie z.B. BallTrees und KDTrees, können jedoch verwendet werden, um die Vorhersage-Latenzzeit zu verbessern.
Maschinelles Lernen - Klassifizierung vs. Regression
Es gibt vier Hauptkategorien von Algorithmen für maschinelles Lernen: überwachtes, unüberwachtes, halbüberwachtes und verstärkendes Lernen.
Auch wenn Klassifizierung und Regression beide zur Kategorie des überwachten Lernens gehören, sind sie nicht dasselbe.
- Die Vorhersageaufgabe ist eine Klassifizierung wenn die Zielvariable diskret ist. Eine Anwendung ist die Identifizierung der zugrunde liegenden Stimmung eines Textes.
- Die Vorhersageaufgabe ist eine Regression wenn die Zielvariable kontinuierlich ist. Ein Beispiel ist die Vorhersage des Gehalts einer Person anhand ihres Bildungsabschlusses, ihrer bisherigen Berufserfahrung, ihres geografischen Standorts und ihrer Dienstaltersstufe.
Wenn du mehr über Klassifizierung wissen möchtest, könnten die Kurse Supervised Learning mit scikit-learn und Supervised Learning in R hilfreich sein. Sie vermitteln dir ein besseres Verständnis dafür, wie die einzelnen Algorithmen an ihre Aufgaben herangehen und welche Python- und R-Funktionen für ihre Umsetzung erforderlich sind.
Zum Thema Regression helfen dir Introduction to Regression in R und Introduction to Regression with statsmodels in Python dabei, verschiedene Arten von Regressionsmodellen und ihre Implementierung in R und Python kennenzulernen.
für die Klassifizierung durch maschinelles Lernen im echten Leben
Überwachtes maschinelles Lernen Klassifizierung hat verschiedene Anwendungen in vielen Bereichen unseres täglichen Lebens. Im Folgenden findest du einige Beispiele.
Gesundheitswesen
Das Training eines maschinellen Lernmodells auf historischen Patientendaten kann Fachkräften im Gesundheitswesen helfen, ihre Diagnosen genau zu analysieren:
- Während der COVID-19-Pandemie wurden maschinelle Lernmodelle eingesetzt, um effizient vorherzusagen, ob eine Person COVID-19 hatte oder nicht.
- Forscherinnen und Forscher können mit Hilfe von Modellen des maschinellen Lernens neue Krankheiten vorhersagen, die in der Zukunft mit größerer Wahrscheinlichkeit auftreten werden.
Bildung
Der Bildungsbereich ist einer der Bereiche, in dem die meisten Text-, Video- und Audiodaten anfallen. Diese unstrukturierten Informationen können mit Hilfe von Technologien für natürliche Sprache analysiert werden, um verschiedene Aufgaben zu erfüllen, z. B:
- Die Klassifizierung der Dokumente nach Kategorien.
- Automatische Erkennung der zugrundeliegenden Sprache der Schülerdokumente während der Bewerbung.
- Analyse der Rückmeldungen von Studierenden über einen Professor.
Transport
Der Verkehr ist der Schlüssel für die wirtschaftliche Entwicklung vieler Länder. Infolgedessen setzen Branchen maschinelle und Deep-Learning-Modelle ein:
- Um vorherzusagen, an welchem geografischen Ort das Verkehrsaufkommen steigen wird.
- Sage mögliche Probleme voraus, die an bestimmten Orten aufgrund der Wetterbedingungen auftreten können.
Nachhaltige Landwirtschaft
Die Landwirtschaft ist eine der wichtigsten Säulen des menschlichen Überlebens. Die Einführung der Nachhaltigkeit kann dazu beitragen, die Produktivität der Landwirte auf einer anderen Ebene zu verbessern, ohne die Umwelt zu schädigen:
- Durch den Einsatz von Klassifizierungsmodellen lässt sich vorhersagen, welche Art von Land für eine bestimmte Art von Saatgut geeignet ist.
- Sage das Wetter voraus, damit sie die richtigen Präventionsmaßnahmen treffen können.
Verschiedene Arten von Klassifizierungsaufgaben beim maschinellen Lernen
Beim maschinellen Lernen gibt es vier Hauptklassifizierungsaufgaben: binäre, Mehrklassen-, Multi-Label- und unausgewogene Klassifizierungen.
Binäre Klassifizierung
Bei einer binären Klassifizierungsaufgabe besteht das Ziel darin, die Eingabedaten in zwei sich gegenseitig ausschließende Kategorien einzuordnen. Die Trainingsdaten werden in einer solchen Situation in einem binären Format gekennzeichnet: wahr und falsch; positiv und negativ; 0 und 1; Spam und nicht Spam usw., je nach dem zu lösenden Problem. Wir wollen zum Beispiel herausfinden, ob es sich bei einem bestimmten Bild um einen LKW oder ein Boot handelt.
Die Algorithmen der logistischen Regression und der Support Vector Machines sind von Natur aus für binäre Klassifizierungen konzipiert. Es können aber auch andere Algorithmen wie K-Nächste Nachbarn und Entscheidungsbäume für die binäre Klassifizierung verwendet werden.
Multi-Klassen-Klassifizierung
Bei der Mehrklassen-Klassifizierung hingegen gibt es mindestens zwei sich gegenseitig ausschließende Klassenlabels, wobei das Ziel darin besteht, vorherzusagen, zu welcher Klasse ein bestimmtes Eingabebeispiel gehört. Im folgenden Fall hat das Modell das Bild korrekt als Ebene klassifiziert.
Die meisten binären Klassifizierungsalgorithmen können auch für die Klassifizierung mehrerer Klassen verwendet werden. Zu diesen Algorithmen gehören unter anderem:
- Zufalls-Wald
- Naive Bayes
- K-Nächste Nachbarn
- Gradient Boosting
- SVM
- Logistische Regression.
Aber warte! Hast du nicht gesagt, dass SVM und Logistische Regression standardmäßig keine Mehrklassen-Klassifizierung unterstützen?
→ Das ist richtig. Wir können jedoch binäre Transformationsansätze wie Eins-gegen-Eins und Eins-gegen-Alle anwenden, um native binäre Klassifizierungsalgorithmen für Mehrklassen-Klassifizierungsaufgaben anzupassen.
Eins-gegen-eins: Bei dieser Strategie werden so viele Klassifikatoren trainiert, wie es Paare von Bezeichnungen gibt. Bei einer 3-Klassen-Klassifizierung haben wir drei Paare von Kennzeichnungen, also drei Klassifikatoren, wie unten dargestellt.
Im Allgemeinen haben wir für N Labels Nx(N-1)/2 Klassifikatoren. Jeder Klassifikator wird auf einem einzigen binären Datensatz trainiert, und die endgültige Klasse wird durch eine Mehrheitsabstimmung zwischen allen Klassifikatoren vorhergesagt. Der Eins-gegen-Eins-Ansatz funktioniert am besten für SVM und andere kernelbasierte Algorithmen.
Eins gegen den Rest: In dieser Phase betrachten wir zunächst jedes Label als unabhängiges Label und betrachten den Rest zusammen als ein einziges Label. Bei 3-Klassen haben wir drei Klassifikatoren.
Im Allgemeinen haben wir für N Labels N binäre Klassifikatoren.
Multi-Label-Klassifizierung
Bei Multi-Label-Klassifizierungsaufgaben versuchen wir, für jedes Eingabebeispiel 0 oder mehr Klassen vorherzusagen. In diesem Fall gibt es keinen gegenseitigen Ausschluss, weil das Eingabebeispiel mehr als ein Label haben kann.
Ein solches Szenario kann in verschiedenen Bereichen beobachtet werden, z. B. beim Auto-Tagging in der natürlichen Sprachverarbeitung, wo ein bestimmter Text mehrere Themen enthalten kann. Ähnlich wie beim Computersehen kann ein Bild mehrere Objekte enthalten, wie unten dargestellt: Das Modell sagte voraus, dass das Bild ein Flugzeug, ein Boot, einen LKW und einen Hund enthält.
Es ist nicht möglich, Mehrklassen- oder binäre Klassifizierungsmodelle zu verwenden, um eine Multi-Label-Klassifizierung durchzuführen. Die meisten Algorithmen, die für diese Standard-Klassifizierungsaufgaben verwendet werden, haben jedoch ihre speziellen Versionen für die Multi-Label-Klassifizierung. Wir können zitieren:
- Multi-Label Entscheidungsbäume
- Multi-Label Gradient Boosting
- Multi-Label Random Forests
Unausgewogene Klassifizierung
Bei der unausgewogenen Klassifizierung ist die Anzahl der Beispiele in jeder Klasse ungleich verteilt, d.h. wir können in den Trainingsdaten mehr von einer Klasse als von den anderen haben. Betrachten wir das folgende 3-Klassen-Klassifizierungsszenario, bei dem die Trainingsdaten Folgendes enthalten: 60% der Lastwagen, 25% der Flugzeuge und 15% der Boote.
Das Problem der unausgewogenen Klassifizierung könnte in folgendem Szenario auftreten:
- Aufdeckung von betrügerischen Transaktionen in der Finanzbranche
- Diagnose einer seltenen Krankheit
- Analyse der Kundenabwanderung
Herkömmliche Vorhersagemodelle wie Entscheidungsbäume, logistische Regression usw. sind bei einem unausgewogenen Datensatz möglicherweise nicht effektiv, da sie dazu neigen, die Klasse mit der höchsten Anzahl von Beobachtungen vorherzusagen und die mit weniger Beobachtungen als Rauschen zu betrachten.
Heißt das also, dass solche Probleme hinter uns liegen?
Natürlich nicht! Wir können mehrere Ansätze verwenden, um das Problem des Ungleichgewichts in einem Datensatz zu lösen. Zu den am häufigsten verwendeten Ansätzen gehören Stichprobenverfahren oder die Nutzung der Leistungsfähigkeit kostensensitiver Algorithmen.
Probenahmetechniken
Diese Techniken zielen darauf ab, die Verteilung des Originals auszugleichen, indem:
- Cluster-basiertes Oversampling:
- Random undersampling: zufällige Eliminierung von Beispielen aus der Mehrheitsklasse.
- SMOTE Oversampling: zufällige Wiederholung von Beispielen aus der Minderheitenklasse.
Kostenbewusste Algorithmen
Diese Algorithmen berücksichtigen die Kosten einer Fehlklassifizierung. Ihr Ziel ist es, die Gesamtkosten, die durch die Modelle entstehen, zu minimieren.
- Kostensensitive Entscheidungsbäume.
- Kostensensitive logistische Regression.
- Kostensensitive Support-Vektor-Maschinen.
Metriken zur Bewertung von Klassifizierungsalgorithmen des maschinellen Lernens
Nachdem wir nun eine Vorstellung von den verschiedenen Arten von Klassifizierungsmodellen haben, ist es entscheidend, die richtigen Bewertungsmaßstäbe für diese Modelle zu wählen. In diesem Abschnitt gehen wir auf die am häufigsten verwendeten Kennzahlen ein: Genauigkeit, Präzision, Wiedererkennung, F1-Score, Fläche unter der ROC-Kurve (Receiver Operating Characteristic) und AUC (Area Under the Curve).
Tiefes Eintauchen in Klassifizierungsalgorithmen
Wir haben jetzt alle Werkzeuge in der Hand, um mit der Implementierung einiger Algorithmen fortzufahren. In diesem Abschnitt werden vier Algorithmen und ihre Implementierung für den Darlehensdatensatz vorgestellt, um einige der zuvor behandelten Konzepte zu veranschaulichen, insbesondere für die unausgewogenen Datensätze mit einer binären Klassifizierungsaufgabe. Der Einfachheit halber konzentrieren wir uns auf nur vier Algorithmen.
Das Ziel ist nicht, das bestmögliche Modell zu haben, sondern zu zeigen, wie man jeden der folgenden Algorithmen trainiert. Der Quellcode ist auf DataLab verfügbar, wo du alles mit einem Klick ausführen kannst.
Verteilung der Kredite im Datensatz
- Schau dir die ersten fünf Beobachtungen im Datensatz an.
import pandas as pd
loan_data = pd.read_csv("loan_data.csv")
loan_data.head()
- Profil des Kreditnehmers im Datensatz.
import matplotlib.pyplot as plt
# Helper function for data distribution
# Visualize the proportion of borrowers
def show_loan_distrib(data):
count = ""
if isinstance(data, pd.DataFrame):
count = data["not.fully.paid"].value_counts()
else:
count = data.value_counts()
count.plot(kind = 'pie', explode = [0, 0.1],
figsize = (6, 6), autopct = '%1.1f%%', shadow = True)
plt.ylabel("Loan: Fully Paid Vs. Not Fully Paid")
plt.legend(["Fully Paid", "Not Fully Paid"])
plt.show()
# Visualize the proportion of borrowers
show_loan_distrib(loan_data)
Aus der obigen Grafik geht hervor, dass 84% der Kreditnehmer ihre Kredite zurückzahlten und nur 16% sie nicht zurückzahlten, was den Datensatz sehr unausgewogen macht.
Variable Typen
Bevor wir weitermachen, müssen wir den Typ der Variablen überprüfen, damit wir die Variablen kodieren können, die kodiert werden müssen.
Wir sehen, dass alle Spalten kontinuierliche Variablen sind, mit Ausnahme des Attributs " Zweck", das kodiert werden muss.
# Check column types
print(loan_data.dtypes)
encoded_loan_data = pd.get_dummies(loan_data, prefix="purpose",
drop_first=True)
print(encoded_loan_data.dtypes)
Trenne Daten in Training und Test
X = encoded_loan_data.drop('not.fully.paid', axis = 1)
y = encoded_loan_data['not.fully.paid']
X_train, X_test, y_train, y_test = train_test_split(X, y, test_size=0.30,
stratify = y, random_state=2022)
Anwendung der Probenahmestrategien
Wir werden hier zwei Stichprobenstrategien untersuchen: zufälliges Undersampling und SMOTE Oversampling.
Zufälliges Undersampling
Wir werden die Mehrheitsklasse, die den "Vollzahlern" (Klasse 0) entspricht, unterproben.
X_train_cp = X_train.copy()
X_train_cp['not.fully.paid'] = y_train
y_0 = X_train_cp[X_train_cp['not.fully.paid'] == 0]
y_1 = X_train_cp[X_train_cp['not.fully.paid'] == 1]
y_0_undersample = y_0.sample(y_1.shape[0])
loan_data_undersample = pd.concat([y_0_undersample, y_1], axis = 0)
# Visualize the proportion of borrowers
show_loan_distrib(loan_data_undersample)
SMOTE Oversampling
Oversampling in der Minderheitenklasse durchführen
smote = SMOTE(sampling_strategy='minority')
X_train_SMOTE, y_train_SMOTE = smote.fit_resample(X_train,y_train)
# Visualize the proportion of borrowers
show_loan_distrib(y_train_SMOTE)
Nach Anwendung der Stichprobenstrategien stellen wir fest, dass der Datensatz gleichmäßig auf die verschiedenen Arten von Kreditnehmern verteilt ist.
Anwendung einiger Klassifizierungsalgorithmen des maschinellen Lernens
In diesem Abschnitt werden wir diese beiden Klassifizierungsalgorithmen auf den SMOTE-Smote-Datensatz anwenden. Der gleiche Trainingsansatz kann auch auf unterabgetastete Daten angewendet werden.
Logistische Regression
Dies ist ein erklärbarer Algorithmus. Sie klassifiziert einen Datenpunkt, indem sie die Wahrscheinlichkeit der Zugehörigkeit zu einer bestimmten Klasse mithilfe der Sigmoid-Funktion modelliert.
X = loan_data_undersample.drop('not.fully.paid', axis = 1)
y = loan_data_undersample['not.fully.paid']
X_train, X_test, y_train, y_test = train_test_split(X, y, test_size=0.15, stratify = y, random_state=2022)
logistic_classifier = LogisticRegression()
logistic_classifier.fit(X_train, y_train)
y_pred = logistic_classifier.predict(X_test)
print(confusion_matrix(y_test,y_pred))
print(classification_report(y_test,y_pred))
Support-Vektor-Maschinen
Dieser Algorithmus kann sowohl für die Klassifizierung als auch für die Regression verwendet werden. Es lernt, die Hyperebene (Entscheidungsgrenze) zu zeichnen, indem es das Prinzip der Margenmaximierung anwendet. Diese Entscheidungsgrenze wird durch die beiden nächstgelegenen Stützvektoren gezogen.
Die SVM bietet eine Transformationsstrategie, die sogenannten Kernel-Tricks, mit denen nicht trennbare Daten auf einen höherdimensionalen Raum projiziert werden, um sie linear trennbar zu machen.
from sklearn.svm import SVC
svc_classifier = SVC(kernel='linear')
svc_classifier.fit(X_train, y_train)
# Make Prediction & print the result
y_pred = svc_classifier.predict(X_test)
print(classification_report(y_test,y_pred))
Diese Ergebnisse können natürlich noch verbessert werden, indem man die Merkmale weiter ausarbeitet und feiner abstimmt. Aber sie sind besser als die Verwendung der ursprünglichen unausgewogenen Daten.
XGBoost
Dieser Algorithmus ist eine Erweiterung eines bekannten Algorithmus namens Gradient-Boosted Trees. Sie ist nicht nur ein großartiger Kandidat für die Bekämpfung von Overfitting, sondern auch für Geschwindigkeit und Leistung.
Um es nicht länger zu machen, kannst du auch auf Machine Learning with Tree-Based Models in Python und Machine Learning with Tree-Based Models in R verweisen. In diesen Kursen lernst du, wie du mit Python und R baumbasierte Modelle implementieren kannst.
Aufkommende Klassifizierungsalgorithmen und -techniken
Mit der Weiterentwicklung des maschinellen Lernens sind neue Klassifizierungsalgorithmen und -techniken entstanden, die mehr Leistung, Skalierbarkeit und Interpretierbarkeit bieten. Hier werden wir einige der bemerkenswertesten Fortschritte untersuchen, die seit 2022 an Popularität gewonnen haben, darunter Transformatoren, Deep-Ensemble-Methoden und erklärbare KI-Techniken (XAI).
1. Transformatoren für die Klassifizierung
Transformatoren, die ursprünglich für Aufgaben der natürlichen Sprachverarbeitung wie Übersetzung und Texterstellung entwickelt wurden, sind in letzter Zeit für verschiedene Klassifizierungsaufgaben in unterschiedlichen Bereichen angepasst worden. Die wichtigste Innovation der Transformatoren ist die Verwendung von Selbstbeobachtungsmechanismen, die es den Modellen ermöglichen, die Bedeutung verschiedener Teile der Eingabedaten effektiv zu gewichten.
- Vision Transformers (ViT): ViTs haben die Bildklassifizierung revolutioniert, indem sie Bilder als Sequenzen von Flecken behandeln, ähnlich wie Wörter in Texten. Dieser Ansatz hat bei Benchmarks zur Bildklassifizierung zu Spitzenleistungen geführt.
- Tabellarische Transformatoren: Diese Modelle haben sich auch bei der Verarbeitung strukturierter Daten als vielversprechend erwiesen und bieten eine Alternative zu traditionellen Methoden wie Random Forests und Gradient Boosting Machines für tabellarische Klassifizierungsaufgaben.
Transformatoren zeichnen sich durch die Verarbeitung großer, komplexer Datensätze aus und werden in vielen Branchen wie dem Gesundheitswesen, dem Finanzwesen und dem E-Commerce für Aufgaben wie Bilderkennung, Betrugserkennung und Empfehlungssysteme eingesetzt.
2. Tiefe Ensemble-Methoden
Deep-Ensemble-Methoden kombinieren die Vorhersagen mehrerer Modelle, um die Robustheit, Genauigkeit und Unsicherheitsabschätzung zu verbessern. Indem sie die Stärken verschiedener Modelle nutzen, können diese Methoden oft besser abschneiden als einzelne Modelle, vor allem bei komplexen Klassifizierungsaufgaben.
- Stapeln und Mischen: Dabei handelt es sich um traditionelle Ensemble-Techniken, bei denen die Vorhersagen mehrerer Basisklassifikatoren mithilfe eines Metaklassifikators oder eines gewichteten Durchschnitts kombiniert werden. Jüngste Fortschritte haben Deep-Learning-Modelle in diese Ensembles integriert, was zu leistungsfähigeren Klassifikatoren führt.
- Ensemble von neuronalen Netzen: Bei diesem Ansatz werden mehrere neuronale Netze mit unterschiedlichen Initialisierungen oder Architekturen trainiert und ihre Vorhersagen gemittelt. Es hat sich als effektiv erwiesen, um die Überanpassung zu reduzieren und die Generalisierung zu verbessern, insbesondere bei anspruchsvollen Aufgaben wie der Bild- und Sprachklassifizierung.
- Diversitätsorientierte Ensembles: Diese Ensembles konzentrieren sich darauf, die Vielfalt zwischen den einzelnen Modellen zu maximieren, um die Korrelation ihrer Fehler zu verringern. Techniken wie Bagging, Boosting und die Dekorrelation von Ausgaben wurden an Deep-Learning-Modelle angepasst und bieten robuste Lösungen für unausgewogene oder verrauschte Datensätze.
3. Erklärbare KI-Techniken (XAI)
Da maschinelle Lernmodelle immer komplexer werden, ist der Bedarf an Interpretierbarkeit und Transparenz gestiegen. Erklärbare KI-Techniken (Explainable AI, XAI) wurden entwickelt, um den Entscheidungsprozess von Klassifizierungsmodellen für Menschen verständlicher zu machen, was für das Vertrauen in KI-Systeme von entscheidender Bedeutung ist, vor allem in Bereichen, in denen viel auf dem Spiel steht, wie im Gesundheits- und Finanzwesen.
- SHAP (SHapley Additive exPlanations): SHAP-Werte bieten ein einheitliches Maß für die Bedeutung von Merkmalen, indem sie jedem Merkmal in einer Vorhersage einen Beitragswert zuweisen. Diese Methode ist auf verschiedene Modelltypen anwendbar, einschließlich Deep-Learning-Modelle, und hilft zu verstehen, welche Merkmale die Entscheidungen des Modells am meisten beeinflussen.
- LIME (Local Interpretable Model-Agnostic Explanations): LIME erklärt einzelne Vorhersagen, indem es das Modell lokal mit einem interpretierbaren Modell approximiert. Diese Technik ist besonders nützlich, um komplexe Modelle wie neuronale Netze und Gradient-Boosting-Maschinen in einem Klassifizierungskontext zu verstehen.
- Kontrafaktische Erklärungen: Bei dieser Methode geht es darum, die kleinste Änderung an den Eingabedaten zu finden, die das Klassifizierungsergebnis verändern würde. Das ist ein praktischer Ansatz, um verwertbare Erkenntnisse zu gewinnen, zum Beispiel bei der Kreditwürdigkeitsprüfung, wenn man wissen möchte, welche Änderungen zu einer Kreditgenehmigung führen würden.
Diese XAI-Techniken werden zunehmend in Klassifizierungsmodelle integriert, um nicht nur die Transparenz zu verbessern, sondern auch um regulatorische Anforderungen zu erfüllen, wie z. B. die Allgemeine Datenschutzverordnung (GDPR) in Europa, die Erklärungen für automatisierte Entscheidungen vorschreibt.
Fazit
In diesem konzeptionellen Blog haben wir uns mit den wichtigsten Aspekten von Klassifizierungen beim maschinellen Lernen befasst und dir einige Beispiele für verschiedene Bereiche gegeben, in denen sie angewendet werden. Schließlich wurden die logistische Regression und die Support Vector Machine implementiert, nachdem die Strategien des undersampling und des SMOTE oversampling angewendet wurden, um einen ausgewogenen Datensatz für das Training der Modelle zu erzeugen.
Wir hoffen, es hat dir geholfen, das Thema Klassifizierung beim maschinellen Lernen besser zu verstehen. Du kannst dein Wissen im Kurs "Machine Learning Scientist with Python" vertiefen , der sowohl überwachtes als auch unüberwachtes und Deep Learning abdeckt. Es bietet auch eine gute Einführung in die Verarbeitung natürlicher Sprache, Bildverarbeitung, Spark und Keras.
Verdiene eine Top-KI-Zertifizierung
FAQs zur Klassifizierung
Was sind die verschiedenen Arten von SVM-Kernen?
Beliebte Kernel in der SVM sind Linearer Kernel, Polynomieller Kernel, Gaußscher Kernel, Radiale Basisfunktion (RBF), Laplace-RBF-Kernel, Sigmoid-Kernel, Anova-Kernel, Bessel-Funktions-Kernel.
Warum nutzen wir die Klassifizierung?
Die Klassifizierung ist eine überwachte maschinelle Lernmethode, die verwendet wird, um die richtige Kennzeichnung von Eingabedaten vorherzusagen.
Welche Algorithmen können sowohl für die Regression als auch für die Klassifizierung verwendet werden?
Wir können SVM und neuronale Netze verwenden.
Welcher Algorithmus eignet sich am besten für die Klassifizierung in mehreren Klassen?
Es gibt mehrere Algorithmen, aber zu den beliebtesten gehören k-Nächste Nachbarn, Entscheidungsbäume, Naive Bayes, Random Forest und Gradient Boosting.
Welcher Klassifizierungsalgorithmus ist am besten für einen kleinen Datensatz geeignet?
Bei der Arbeit mit kleinen Datensätzen haben logistische Regression, SVMs und Naive Bayes tendenziell eine bessere Generalisierung.
Kurse zum maschinellen Lernen
Course
Linear Classifiers in Python
Course
Machine Learning with Tree-Based Models in R
Der Blog