Klassifikatoren für maschinelles Lernen

Klassifizierung ist der Prozess der Vorhersage der Klasse bestimmter Datenpunkte. Klassen werden manchmal als Ziele / Labels oder Kategorien bezeichnet. Klassifikation Prädiktive Modellierung ist die Aufgabe, eine Abbildungsfunktion (f) von Eingangsvariablen (X) zu diskreten Ausgangsvariablen (y) zu approximieren.

Beispielsweise kann die Spam-Erkennung bei E-Mail-Dienstanbietern als Klassifizierungsproblem identifiziert werden. Dies ist eine binäre Klassifizierung, da es nur 2 Klassen als Spam und nicht als Spam gibt. Ein Klassifikator verwendet einige Trainingsdaten, um zu verstehen, wie sich gegebene Eingabevariablen auf die Klasse beziehen. In diesem Fall müssen bekannte Spam- und Nicht-Spam-E-Mails als Trainingsdaten verwendet werden. Wenn der Klassifikator genau trainiert wird, kann er verwendet werden, um eine unbekannte E-Mail zu erkennen.

Klassifizierung gehört zu der Kategorie des überwachten Lernens, wo die Ziele auch mit den Eingabedaten zur Verfügung gestellt. Es gibt viele Anwendungen in der Klassifizierung in vielen Bereichen wie in der Kreditgenehmigung, medizinische Diagnose, Zielmarketing usw.

Es gibt zwei Arten von Lernenden in der Klassifizierung als faule Lernende und eifrige Lernende.

  1. Faule Lernende

Faule Lernende speichern einfach die Trainingsdaten und warten, bis Testdaten angezeigt werden. Wenn dies der Fall ist, wird die Klassifizierung basierend auf den am meisten verwandten Daten in den gespeicherten Trainingsdaten durchgeführt. Im Vergleich zu eifrigen Lernenden haben faule Lernende weniger Trainingszeit, aber mehr Zeit für Vorhersagen.

Beispiel. k-nächster Nachbar, Fallbasiertes Denken

2. Eifrige Lernende

Eifrige Lernende konstruieren ein Klassifikationsmodell basierend auf den gegebenen Trainingsdaten, bevor sie Daten zur Klassifizierung erhalten. Es muss in der Lage sein, sich auf eine einzelne Hypothese festzulegen, die den gesamten Instanzraum abdeckt. Aufgrund der Modellkonstruktion benötigen eifrige Lernende viel Zeit für den Zug und weniger Zeit für die Vorhersage.

Beispiel. Entscheidungsbaum, Naive Bayes, Künstliche Neuronale Netze

Klassifizierungsalgorithmen

Es gibt jetzt viele Klassifizierungsalgorithmen, aber es ist nicht möglich zu schließen, welcher anderen überlegen ist. Dies hängt von der Anwendung und der Art des verfügbaren Datensatzes ab. Wenn die Klassen beispielsweise linear trennbar sind, können die linearen Klassifikatoren wie die logistische Regression und die lineare Diskriminante von Fisher anspruchsvolle Modelle übertreffen und umgekehrt.

Entscheidungsbaum

Decision tree erstellt Klassifikations- oder Regressionsmodelle in Form einer Baumstruktur. Es verwendet einen Wenn-Dann-Regelsatz, der sich gegenseitig ausschließt und für die Klassifizierung erschöpfend ist. Die Regeln werden nacheinander unter Verwendung der Trainingsdaten nacheinander gelernt. Jedes Mal, wenn eine Regel erlernt wird, werden die von den Regeln abgedeckten Tupel entfernt. Dieser Prozess wird auf dem Trainingssatz fortgesetzt, bis eine Beendigungsbedingung erfüllt ist.

Der Baum ist in einer rekursiven Divide-and-Conquer-Methode von oben nach unten aufgebaut. Alle Attribute sollten kategorisch sein. Andernfalls sollten sie im Voraus diskretisiert werden. Attribute an der Spitze des Baums haben mehr Einfluss als in der Klassifizierung und werden mithilfe des Informationsgewinnkonzepts identifiziert.

Ein Entscheidungsbaum kann leicht zu viele Zweige erzeugen und Anomalien aufgrund von Rauschen oder Ausreißern widerspiegeln. Ein überangepasstes Modell hat eine sehr schlechte Leistung für die unsichtbaren Daten, obwohl es eine beeindruckende Leistung für Trainingsdaten liefert. Dies kann durch Vorschnitt vermieden werden, der den Bau des Baumes frühzeitig stoppt, oder durch Nachschnitt, bei dem Äste vom ausgewachsenen Baum entfernt werden.

Naive Bayes

Naive Bayes ist ein probabilistischer Klassifikator, der vom Bayes-Theorem unter einer einfachen Annahme inspiriert ist, dass die Attribute bedingt unabhängig sind.

st das Maximum P (Ci / X), wobei die obige Annahme für den Bayes-Satz gilt. Diese Annahme reduziert die Rechenkosten erheblich, indem nur die Klassenverteilung gezählt wird. Obwohl die Annahme in den meisten Fällen nicht gültig ist, da die Attribute abhängig sind, konnte Naive Bayes überraschend beeindruckend abschneiden.Naive Bayes ist ein sehr einfacher Algorithmus zu implementieren und gute Ergebnisse haben in den meisten Fällen erhalten. Es kann leicht auf größere Datensätze skalierbar sein, da es lineare Zeit benötigt, anstatt durch teure iterative Approximation, wie sie für viele andere Arten von Klassifikatoren verwendet wird.Naive Bayes kann unter einem Problem leiden, das als Nullwahrscheinlichkeitsproblem bezeichnet wird. Wenn die bedingte Wahrscheinlichkeit für ein bestimmtes Attribut Null ist, gibt es keine gültige Vorhersage. Dies muss explizit mit einem Laplace-Schätzer behoben werden.

Künstliche Neuronale Netze

Künstliches neuronales Netzwerk ist ein Satz verbundener Ein- / Ausgabeeinheiten, bei denen jeder Verbindung ein Gewicht zugeordnet ist, das von Psychologen und Neurobiologen begonnen wurde, um Computeranaloga von Neuronen zu entwickeln und zu testen. Während der Lernphase lernt das Netzwerk durch Anpassen der Gewichte, um die korrekte Klassenbezeichnung der Eingabetupel vorhersagen zu können.

Es gibt jetzt viele Netzwerkarchitekturen wie Feed-Forward, Convolutional, Recurrent usw. Die geeignete Architektur hängt von der Anwendung des Modells ab. In den meisten Fällen liefern Feed-Forward-Modelle einigermaßen genaue Ergebnisse, und insbesondere für Bildverarbeitungsanwendungen sind Faltungsnetzwerke besser geeignet.

Das Modell kann mehrere ausgeblendete Ebenen enthalten, abhängig von der Komplexität der Funktion, die vom Modell abgebildet werden soll. Mit mehr versteckten Ebenen können komplexe Beziehungen wie tiefe neuronale Netze modelliert werden.

Wenn es jedoch viele versteckte Ebenen gibt, dauert es viel Zeit, die Gewichte zu trainieren und anzupassen. Der andere Nachteil ist die schlechte Interpretierbarkeit des Modells im Vergleich zu anderen Modellen wie Entscheidungsbäumen aufgrund der unbekannten symbolischen Bedeutung hinter den gelernten Gewichten.

Aber künstliche neuronale Netze haben in den meisten realen Anwendungen beeindruckende Leistungen erbracht. Es ist eine hohe Toleranz gegenüber verrauschten Daten und in der Lage, untrainierte Muster zu klassifizieren. Normalerweise schneiden künstliche neuronale Netze mit kontinuierlich bewerteten Ein- und Ausgängen besser ab.

Alle oben genannten Algorithmen sind eifrige Lernende, da sie ein Modell im Voraus trainieren, um die Trainingsdaten zu verallgemeinern und später für Vorhersagen zu verwenden.

k-Nächster Nachbar (KNN)

k-Nearest Neighbor ist ein fauler Lernalgorithmus, der alle Instanzen speichert, die Trainingsdatenpunkten im n-dimensionalen Raum entsprechen. Wenn unbekannte diskrete Daten empfangen werden, analysiert es die nächstgelegene k Anzahl gespeicherter Instanzen (nächste Nachbarn) und gibt die häufigste Klasse als Vorhersage zurück.

Im entfernungsgewichteten Algorithmus für den nächsten Nachbarn wird der Beitrag jedes der k Nachbarn anhand ihrer Entfernung anhand der folgenden Abfrage gewichtet, wodurch die nächsten Nachbarn stärker gewichtet werden.

Distance calculating query

Usually KNN is robust to noisy data since it is averaging the k-nearest neighbors.

Schreibe einen Kommentar

Deine E-Mail-Adresse wird nicht veröffentlicht. Erforderliche Felder sind mit * markiert.