Wann sind unausgeglichene Daten beim maschinellen Lernen wirklich ein Problem?

53

Wir hatten bereits mehrere Fragen zu unausgeglichenen Daten bei der Verwendung von logistischer Regression , SVM , Entscheidungsbäumen , Absacken und einer Reihe anderer ähnlicher Fragen, was es zu einem sehr beliebten Thema macht! Leider scheint jede der Fragen algorithmenspezifisch zu sein, und ich habe keine allgemeinen Richtlinien für den Umgang mit unausgeglichenen Daten gefunden.

Zitiert eine der Antworten von Marc Claesen zum Umgang mit unausgeglichenen Daten

(...) hängt stark von der Lernmethode ab. Die meisten allgemeinen Ansätze haben eine (oder mehrere) Möglichkeiten, um damit umzugehen.

Aber wann genau sollten wir uns um unausgeglichene Daten kümmern? Welche Algorithmen sind am häufigsten davon betroffen und welche sind in der Lage, damit umzugehen? Welche Algorithmen benötigen wir, um die Daten auszugleichen? Mir ist bewusst, dass es unmöglich ist, die einzelnen Algorithmen auf einer solchen Q & A-Site zu diskutieren. Ich suche eher nach allgemeinen Richtlinien, wann dies ein Problem sein könnte.

Tim
quelle
@MatthewDrury danke, das ist eine interessante Frage, aber meiner Meinung nach hat es einen anderen Umfang. Ich bitte um Richtlinien, wenn dies wirklich ein Problem ist. Sicherlich führt die Beantwortung der Warum- Frage zur Beantwortung der Wann- Frage, aber ich suche nach einer präzisen Antwort auf die Wann- Frage.
Tim
9
Fair genug! Ich bin bei dir. In der "Literatur" geht es anscheinend nur darum, wie man ein Problem behebt, ohne sich die Mühe zu machen, Sie davon zu überzeugen, dass tatsächlich ein Problem zu lösen ist, oder Ihnen sogar mitzuteilen, in welchen Situationen ein Problem auftritt oder nicht. Einer der frustrierendsten Teile des Themas für mich.
Matthew Drury
2
@MatthewDrury das ist genau das Problem!
Tim
1
Eine Gesamtübersicht der Methoden fällt nicht in den Rahmen einer SE-Frage. Möchten Sie die Frage verfeinern?
AdamO

Antworten:

29

Keine direkte Antwort, aber es ist erwähnenswert, dass in der statistischen Literatur einige Vorurteile gegen unausgeglichene Daten historische Wurzeln haben.

Viele klassische Modelle vereinfachen sich unter der Annahme ausgewogener Daten, insbesondere für Methoden wie ANOVA, die eng mit dem experimentellen Design verwandt sind - eine traditionelle / originelle Motivation für die Entwicklung statistischer Methoden.

Aber die statistische / probabilistische Arithmetik wird mit unausgeglichenen Daten ziemlich hässlich, ziemlich schnell. Vor dem weitverbreiteten Einsatz von Computern waren die Berechnungen von Hand so umfangreich, dass die Schätzung von Modellen für unausgeglichene Daten praktisch unmöglich war.

Natürlich haben Computer dies im Grunde genommen zu einem Nicht-Problem gemacht. Ebenso können wir Modelle auf massiven Datensätzen abschätzen, hochdimensionale Optimierungsprobleme lösen und Proben aus analytisch hartnäckigen Gelenkwahrscheinlichkeitsverteilungen ziehen, die alle vor fünfzig Jahren funktionell unmöglich waren.

Es ist ein altes Problem, und die Wissenschaftler haben viel Zeit darauf verwendet, sich mit dem Problem zu befassen. In der Zwischenzeit haben viele angewandte Probleme diese Forschung überholt / umgangen, aber alte Gewohnheiten sterben schwer.

Zum Hinzufügen bearbeiten:

Mir ist klar, dass ich nicht herausgekommen bin und es einfach gesagt habe: Es gibt kein geringes Problem mit der Verwendung von unausgeglichenen Daten. Nach meiner Erfahrung ist der Ratschlag, "unausgeglichene Daten zu vermeiden", entweder algorithmenspezifisch oder ererbt. Ich stimme mit AdamO überein, dass unausgeglichene Daten für ein gut spezifiziertes Modell im Allgemeinen kein konzeptionelles Problem darstellen.

Henry
quelle
4
Während ich Ihren Standpunkt zu verstehen scheine, fehlen Ihren Prämissen Argumente, die sie stützen. Könnten Sie einige Argumente und / oder Beispiele zu den Vorurteilen anführen und wie hat sich dies auf das maschinelle Lernen ausgewirkt?
Tim
1
Während das, was Sie sagen, meistens wahr ist, es ist auch der Fall , dass Methoden wie anova robustere mit symmetrischen Daten, nonnormality ist weniger ein Problem mit ausgewogen Daten, zum Beispiel. Aber ich glaube, all dies ist orthogonal zur Absicht dieser Frage ...
kjetil b halvorsen
7
Mir ist klar, dass ich nicht herausgekommen bin und es einfach gesagt habe: Es gibt kein geringes Problem bei der Verwendung unausgeglichener Daten. Nach meiner Erfahrung ist der Ratschlag, "unausgeglichene Daten zu vermeiden", entweder algorithmenspezifisch oder ererbt. Ich stimme mit AdamO überein, dass unausgeglichene Daten für ein gut spezifiziertes Modell im Allgemeinen kein konzeptionelles Problem darstellen.
Henry
1
@ M.HenryL. Dieser Kommentar ist es wert, der Vollständigkeit halber Ihrer Antwort hinzugefügt zu werden.
Tim
16

Mit WLOG können Sie sich auf ein Ungleichgewicht in einem einzelnen Faktor konzentrieren, anstatt auf ein differenzierteres Konzept der "Datensparsität" oder der Anzahl kleiner Zellen.

In statistischen Analysen, die sich nicht auf das Lernen konzentrieren, stellen wir häufig fest, dass eine ähnliche oder bessere Leistung erzielt wird, wenn Neigungsbewertungen verwendet werden, um die kleinere Gruppe mit der größeren Gruppe abzustimmen. Dies liegt zum Teil daran, dass Matching einem ähnlichen Zweck dient wie die Anpassung von Confoundern, um die Determinanten der Gruppenzugehörigkeit "auszugleichen" und so deren verwirrende Effekte zu blockieren. Die Gründe für die Anzahl der Störfaktoren, die bei einer multivariaten Analyse möglicherweise berücksichtigt werden müssen, hängen von der Stichprobengröße ab. Einige Faustregeln besagen eine Variable pro 10 bis 20 Beobachtungen. Bei unausgeglichenen Daten glauben Sie naiv, dass Ihre Daten ausreichend groß sind, aber nur eine geringe Anzahl von Personen leidet unter der selteneren Bedingung: Die Varianzinflation verringert die Leistung erheblich. Sie sind in der Tat über die Anpassung.

Daher besteht das einzige Problem mit unausgeglichenen Daten zumindest bei der Regression (aber ich vermute unter allen Umständen) darin, dass Sie effektiv eine kleine Stichprobengröße haben . Wenn eine Methode für die Anzahl der Personen in der selteneren Klasse geeignet ist, sollte es kein Problem geben, wenn ihre proportionale Mitgliedschaft unausgewogen ist.

AdamO
quelle
13

Unausgeglichene Daten sind je nach Anwendung nur ein Problem. Wenn zum Beispiel Ihre Daten anzeigen, dass A 99,99% der Zeit und 0,01% der Zeit B passiert und Sie versuchen, ein bestimmtes Ergebnis vorherzusagen, wird Ihr Algorithmus wahrscheinlich immer A sagen. Dies ist natürlich richtig! Es ist unwahrscheinlich, dass Ihre Methode eine bessere Vorhersagegenauigkeit als 99,99% erzielt. In vielen Anwendungen interessiert uns jedoch nicht nur die Richtigkeit der Vorhersage, sondern auch, warum B manchmal vorkommt. Hier werden unausgeglichene Daten zum Problem. Weil es schwierig ist, Ihre Methode davon zu überzeugen, dass sie zu mehr als 99,99% korrekt ist. Die Methode ist korrekt, aber nicht für Ihre Frage. Das Lösen von unausgeglichenen Daten führt also im Grunde dazu, dass Ihre Daten absichtlich zu interessanten Ergebnissen anstatt zu genauen Ergebnissen führen.

Im Allgemeinen gibt es drei Fälle:

  1. Sie sind ausschließlich an einer genauen Vorhersage interessiert und glauben, dass Ihre Daten repräsentativ sind. In diesem Fall müssen Sie überhaupt nicht korrigieren. Erfreuen Sie sich an Ihren 99,99% genauen Vorhersagen :).

  2. Sie interessieren sich für Vorhersagen, aber Ihre Daten stammen aus einer angemessenen Stichprobe, aber irgendwie haben Sie eine Reihe von Beobachtungen verloren. Wenn Sie Ihre Beobachtungen auf völlig zufällige Weise verloren haben, ist alles in Ordnung. Wenn Sie sie auf voreingenommene Weise verloren haben, aber nicht wissen, wie voreingenommen Sie sind, benötigen Sie neue Daten. Wenn diese Beobachtungen jedoch nur auf der Grundlage einer Charakteristik verloren gehen. (Zum Beispiel haben Sie die Ergebnisse in A und B sortiert, aber nicht auf andere Weise, sondern haben die Hälfte von B verloren.) Ypu kann Ihre Daten booten.

  3. Sie sind nicht an einer genauen globalen Vorhersage interessiert, sondern nur in seltenen Fällen. In diesem Fall können Sie die Daten dieses Falls aufblasen, indem Sie die Daten booten oder wenn Sie genügend Daten haben, um die Daten der anderen Fälle auszuwerfen. Beachten Sie, dass hierdurch Ihre Daten und Ergebnisse verzerrt werden und daher die Wahrscheinlichkeit besteht, dass solche Ergebnisse falsch sind!

Im Allgemeinen kommt es hauptsächlich darauf an, was das Ziel ist. Einige Ziele leiden unter unausgeglichenen Daten, andere nicht. Alle allgemeinen Vorhersagemethoden leiden darunter, weil sie sonst im Allgemeinen schreckliche Ergebnisse liefern würden.

Zen
quelle
7
Wie verändert sich diese Geschichte, wenn wir unsere Modelle probabilistisch bewerten?
Matthew Drury
@MatthewDrury Die Wahrscheinlichkeiten aus dem Originalmodell sind für die Fälle 1 und 3 meist korrekt. Das Problem ist, dass nur bei sehr großen Datensätzen B korrekt von A trennbar wird und die Wahrscheinlichkeit von B langsam zu seinem tatsächlichen Wert konvergiert. Die Ausnahme ist, dass, wenn B sehr klar von A getrennt oder völlig zufällig von A getrennt ist, die Wahrscheinlichkeiten jeweils fast sofort oder nie konvergieren.
Zen
@zen Ich bin eher anderer Meinung, dass logistische Regression weniger anfällig ist. Die logistische Regression ist sehr anfällig für Datenungleichgewichte, sie führt zu einer geringen Stichprobenverschiebung und die Log-Odds-Ratios tendieren zu einem Faktor 2. Die bedingte logistische Regression ist eine Alternative zur Schätzung derselben ORs ohne Verschiebung.
AdamO
@AdamO Ja, die logistische Regression ist immer noch anfällig. Aber für Bäume können kleine Fälle völlig ignoriert werden. es ist nicht nur eine kleine Stichprobengröße. Selbst für große n und zum Beispiel 80% -20% Verteilung zwischen Optionsbäumen kann sich immer noch für die 80% -Option entscheiden, selbst wenn der Anteil der 20% -Option mit einer Variablen x deutlich zunimmt. Wenn eine neue extremere Beobachtung gefunden wird oder wenn die Anzahl der Zweige für einen extremen Punkt zu niedrig ist, sagt der Baum die 80% -Option voraus, während eine logistische Regression dies weniger wahrscheinlich macht. Sie haben Recht mit der bedingten logistischen Regression
Zen
2
@MatthewDrury Stephen Senn hat eine ausgezeichnete Diskussion über diesen Punkt in einem Artikel, den ich oft gelesen habe . Heuristisch gesehen wird das Quotenverhältnis aus einer 2x2-Tabelle mit Einträgen abcd durch ad / (bc) geschätzt und hat die Varianz 1 / a + 1 / b + 1 / c + 1 / d. Sie können beliebig wenige Fälle (a und c) abtasten und das Odds Ratio ist immer noch unbefangen, aber die Varianz ist unendlich. Es ist ein Präzisionsproblem.
AdamO
8

Nehmen wir an, wir haben zwei Klassen:

  • A , was 99,99% der Bevölkerung entspricht
  • B , was 0,01% der Bevölkerung entspricht

Nehmen wir an, wir sind an der Identifizierung von Elementen der Klasse B interessiert, bei denen es sich um Personen handeln könnte, die von einer seltenen Krankheit oder einem Betrüger betroffen sind.

Nur durch das Erraten von A würden die Lernenden hohe Punktzahlen für ihre Verlustfunktionen erzielen, und die wenigen falsch klassifizierten Elemente könnten die Nadel (in diesem Fall im Heuhaufen) numerisch nicht bewegen. In diesem Beispiel steckt die Intuition hinter einem der "Tricks", mit denen das Problem des Klassenungleichgewichts gemildert werden kann: die Kostenfunktion zu optimieren.

Ich bin der Meinung, dass unausgeglichene Daten ein Problem darstellen, wenn Modelle eine Empfindlichkeit nahe Null und eine nahe Eins aufweisen. Sehen Sie sich das Beispiel in diesem Artikel im Abschnitt "Ignorieren des Problems" an .

Probleme haben oft eine Lösung. Neben dem oben genannten Trick gibt es noch andere Möglichkeiten . Sie haben jedoch einen Preis: eine Erhöhung der Modell- und Rechenkomplexität.

In der Frage wird gefragt, bei welchen Modellen eine Empfindlichkeit nahe Null und eine Spezifität nahe Eins wahrscheinlicher ist. Ich habe das Gefühl, dass es auf ein paar Dimensionen ankommt:

  • Wie gewohnt weniger Kapazität.
  • Einige Kostenfunktionen haben möglicherweise mehr Probleme als andere: Der mittlere Fehlerquadrat (MSE) ist weniger exponiert als Huber - MSE sollte gegenüber falsch klassifizierten Elementen der B- Klasse weniger harmlos sein .
IcannotFixThis
quelle
1
Dies setzt implizit voraus, dass (1) der KPI, den wir zu maximieren versuchen, Genauigkeit ist, und (2) dass Genauigkeit ein geeigneter KPI für die Bewertung des Klassifizierungsmodells ist. Ist es nicht.
S. Kolassa - Wiedereinsetzung von Monica
5

Wenn Sie darüber nachdenken: Auf einem perfekt trennbaren, stark unausgeglichenen Datensatz wird fast jeder Algorithmus fehlerfrei ausgeführt.

Daher ist es eher ein Problem des Rauschens in Daten und weniger an einen bestimmten Algorithmus gebunden. Und Sie wissen vorher nicht, welcher Algorithmus eine bestimmte Art von Rauschen am besten kompensiert.

Am Ende muss man nur noch verschiedene Methoden ausprobieren und sich durch Gegenvalidierung entscheiden.

Gerenuk
quelle
Ich bin der Meinung, dass dieser Kommentar etwas unterschätzt wird. Ich verbringe nur ein bisschen Zeit damit, jemanden davon zu überzeugen, dass ein Klassenungleichgewicht nicht immer ein Problem ist.
RDK
Dies beantwortet die Frage nicht. Wie sind unausgeglichene Klassen "eher ein Problem des Datenrauschens"?
S. Kolassa - Wiedereinsetzung von Monica
2
@StephanKolassa Dies ist eine Antwort, da es heißt, dass unausgeglichene Daten kein (direktes) Problem sind. Daher kann man nicht fragen, wie es ist. Bei der allgemeineren Frage "Wie gehe ich mit Rauschproblemen bei der Datenanalyse um?" Lautet die Antwort, dass sie spezifisch für einzelne Datensätze ist und dass Sie nur die Validierung einrichten und versuchen können, was auch immer funktioniert. Wenn Sie wirklich eine Diskussion wünschen, dann hat ele.uri.edu/faculty/he/PDFfiles/ImbalancedLearning.pdf meiner Meinung nach Ideen. Aber am Ende würden Sie Sampling / Reweighting / Thresholding durchführen und es lohnt sich nicht zu wissen, was genau in diesem Datensatz passiert ist.
Gerenuk