Klassifizierung mehrerer Klassen - Multiclass classification

In maschinellem Lernen , Klassenkombinationen oder multinomial Klassifizierung ist das Problem der Klassifizierung von Fällen in eine von drei oder mehr Klassen (Instanzen in eine von zwei Klassen zu klassifizieren heißt binäre Klassifikation ).

Während viele Klassifizierungsalgorithmen (insbesondere multinomiale logistische Regression ) natürlich die Verwendung von mehr als zwei Klassen erlauben, sind einige von Natur aus binäre Algorithmen; Diese können jedoch durch eine Vielzahl von Strategien in multinomiale Klassifikatoren umgewandelt werden.

Die Klassifizierung mehrerer Klassen sollte nicht mit der Klassifizierung mehrerer Labels verwechselt werden, bei der für jede Instanz mehrere Labels vorhergesagt werden müssen.

Allgemeine Strategien

Die vorhandenen Klassifikationstechniken für mehrere Klassen können in (i) Transformation zur binären (ii) Erweiterung von binärer und (iii) hierarchischer Klassifikation kategorisiert werden.

Umwandlung in eine Binärdatei

In diesem Abschnitt werden Strategien zur Reduzierung des Problems der Klassifizierung mehrerer Klassen auf Probleme mit mehreren binären Klassifizierungen erläutert. Es kann in eins gegen Ruhe und eins gegen eins eingeteilt werden . Die Techniken, die basierend auf der Reduzierung des Mehrklassenproblems in mehrere Binärprobleme entwickelt wurden, können auch als Problemtransformationstechniken bezeichnet werden.

Eins gegen Ruhe

Die One-vs.-Rest-Strategie (OvR oder One-vs.-All , OvA oder One-vs.- All , OAA) beinhaltet das Training eines einzelnen Klassifikators pro Klasse, wobei die Proben dieser Klasse als positive Proben und alle anderen Proben als negative Proben gelten . Diese Strategie erfordert, dass die Basisklassifizierer einen real bewerteten Konfidenzwert für ihre Entscheidung erstellen und nicht nur ein Klassenlabel. Diskrete Klassenbezeichnungen allein können zu Mehrdeutigkeiten führen, bei denen mehrere Klassen für eine einzelne Stichprobe vorhergesagt werden.

Im Pseudocode ist der Trainingsalgorithmus für einen OvR-Lernenden, der aus einem binären Klassifizierungslerner L aufgebaut ist, wie folgt:

Eingaben:
  • L , ein Lernender (Trainingsalgorithmus für binäre Klassifikatoren)
  • Proben X.
  • Beschriftungen y wobei y i ∈ {1,… K } die Beschriftung für die Probe X i ist
Ausgabe:
  • eine Liste von Klassifikatoren f k für k ∈ {1,…, K }
Verfahren:
  • Für jedes k in {1,…, K }
    • Konstruieren Sie einen neuen Beschriftungsvektor z mit z i = y i, wenn y i = k und z i = 0, andernfalls
    • Wende L auf X , z an, um f k zu erhalten

Entscheidungen zu treffen bedeutet, alle Klassifikatoren auf eine unsichtbare Stichprobe x anzuwenden und das Label k vorherzusagen, für das der entsprechende Klassifikator den höchsten Konfidenzwert meldet:

Obwohl diese Strategie beliebt ist, handelt es sich um eine Heuristik , die unter mehreren Problemen leidet. Erstens kann sich die Skala der Konfidenzwerte zwischen den binären Klassifizierern unterscheiden. Zweitens sehen die Lernenden der binären Klassifizierung, selbst wenn die Klassenverteilung im Trainingssatz ausgeglichen ist, unausgeglichene Verteilungen, da die Menge der Negative, die sie sehen, normalerweise viel größer ist als die Menge der Positiven.

Eins gegen eins

Bei der Eins-gegen-Eins- Reduktion (OvO) trainiert man K ( K - 1) / 2- Binärklassifikatoren für ein K- Wege-Mehrklassenproblem; Jeder erhält die Stichproben eines Klassenpaares aus dem ursprünglichen Trainingssatz und muss lernen, diese beiden Klassen zu unterscheiden. Zur Vorhersagezeit wird ein Abstimmungsschema angewendet: Alle K ( K - 1) / 2- Klassifizierer werden auf eine unsichtbare Stichprobe angewendet, und die Klasse, die die höchste Anzahl von "+1" -Vorhersagen erhalten hat, wird vom kombinierten Klassifizierer vorhergesagt.

Wie OvR leidet OvO unter Unklarheiten, da einige Regionen seines Eingaberaums möglicherweise die gleiche Anzahl von Stimmen erhalten.

Erweiterung von binär

In diesem Abschnitt werden Strategien zum Erweitern der vorhandenen binären Klassifizierer zur Lösung von Klassifizierungsproblemen mit mehreren Klassen erläutert. Es wurden verschiedene Algorithmen entwickelt, die auf neuronalen Netzen , Entscheidungsbäumen , k-nächsten Nachbarn , naiven Bayes , Support-Vektor-Maschinen und extremen Lernmaschinen basieren , um Klassifizierungsprobleme mehrerer Klassen anzugehen. Diese Arten von Techniken können auch als Algorithmusanpassungstechniken bezeichnet werden.

Neuronale Netze

Perzeptrone mit mehreren Klassen bieten eine natürliche Erweiterung des Problems mit mehreren Klassen. Anstatt nur ein Neuron in der Ausgabeschicht mit binärer Ausgabe zu haben, könnte man N binäre Neuronen haben, die zu einer Klassifizierung mehrerer Klassen führen. In der Praxis ist die letzte Schicht eines neuronalen Netzwerks normalerweise eine Softmax-Funktionsschicht , bei der es sich um die algebraische Vereinfachung von N logistischen Klassifikatoren handelt, die pro Klasse durch die Summe der N-1 anderen logistischen Klassifikatoren normalisiert werden.

Extreme Lernmaschinen

Extreme Learning Machines (ELM) ist ein Sonderfall von Single-Hidden-Layer-Feed-Forward-Neuronalen Netzen (SLFNs), bei denen die Eingangsgewichte und die Hidden-Node-Vorspannungen zufällig ausgewählt werden können. Viele Varianten und Entwicklungen werden für die Mehrklassenklassifizierung an der ELM vorgenommen.

k-nächste Nachbarn

k-nächste Nachbarn kNN wird als einer der ältesten nichtparametrischen Klassifizierungsalgorithmen angesehen. Um ein unbekanntes Beispiel zu klassifizieren, wird der Abstand von diesem Beispiel zu jedem anderen Trainingsbeispiel gemessen. Die k kleinsten Abstände werden identifiziert, und die von diesen k nächsten Nachbarn am meisten vertretene Klasse wird als Ausgabeklassenbezeichnung betrachtet.

Naive Bayes

Naive Bayes ist ein erfolgreicher Klassifikator, der auf dem Prinzip des Maximum a posteriori (MAP) basiert. Dieser Ansatz ist natürlich auf den Fall von mehr als zwei Klassen erweiterbar und hat sich trotz der zugrunde liegenden vereinfachenden Annahme der bedingten Unabhängigkeit als gut erwiesen .

Entscheidungsbäume

Das Lernen von Entscheidungsbäumen ist eine leistungsstarke Klassifizierungstechnik. Der Baum versucht, eine Aufteilung der Trainingsdaten basierend auf den Werten der verfügbaren Merkmale abzuleiten, um eine gute Verallgemeinerung zu erzielen. Der Algorithmus kann natürlich Binär- oder Mehrklassenklassifizierungsprobleme behandeln. Die Blattknoten können sich auf jede der betroffenen K-Klassen beziehen.

Support-Vektor-Maschinen

Unterstützungsvektormaschinen basieren auf der Idee, den Rand zu maximieren, dh den Mindestabstand von der trennenden Hyperebene zum nächsten Beispiel zu maximieren. Die grundlegende SVM unterstützt nur die binäre Klassifizierung, es wurden jedoch Erweiterungen vorgeschlagen, um auch den Fall der Klassifizierung mehrerer Klassen zu behandeln. In diesen Erweiterungen werden dem Optimierungsproblem zusätzliche Parameter und Einschränkungen hinzugefügt, um die Trennung der verschiedenen Klassen zu handhaben.

Hierarchische Klassifikation

Die hierarchische Klassifizierung löst das Problem der Klassifizierung mehrerer Klassen, indem der Ausgaberaum, dh in einen Baum unterteilt wird . Jeder übergeordnete Knoten ist in mehrere untergeordnete Knoten unterteilt, und der Vorgang wird fortgesetzt, bis jeder untergeordnete Knoten nur noch eine Klasse darstellt. Basierend auf der hierarchischen Klassifizierung wurden verschiedene Methoden vorgeschlagen.

Paradigmen lernen

Basierend auf Lernparadigmen können die vorhandenen Klassifikationstechniken für mehrere Klassen in Batch-Lernen und Online-Lernen unterteilt werden . Für Batch-Lernalgorithmen müssen alle Datenproben im Voraus verfügbar sein. Es trainiert das Modell unter Verwendung der gesamten Trainingsdaten und sagt dann die Testprobe unter Verwendung der gefundenen Beziehung voraus. Die Online-Lernalgorithmen hingegen bauen ihre Modelle schrittweise in sequentiellen Iterationen auf. In der Iteration t empfängt ein Online-Algorithmus eine Stichprobe x t und sagt ihre Bezeichnung ŷ t unter Verwendung des aktuellen Modells voraus ; Der Algorithmus empfängt dann y t , das wahre Label von x t, und aktualisiert sein Modell basierend auf dem Sample-Label-Paar: (x t , y t ). Kürzlich wurde ein neues Lernparadigma namens progressive Lerntechnik entwickelt. Die progressive Lerntechnik kann nicht nur aus neuen Stichproben lernen, sondern auch neue Datenklassen lernen und dennoch das bisher erlernte Wissen behalten.

Siehe auch

Anmerkungen

Verweise