Ansätze beim Lernen aus riesigen Datensätzen?


10

Grundsätzlich gibt es zwei gängige Methoden, um gegen große Datenmengen zu lernen (wenn Sie mit zeitlichen / räumlichen Einschränkungen konfrontiert sind):

  1. Betrug :) - Verwenden Sie nur eine "überschaubare" Teilmenge für das Training. Der Genauigkeitsverlust kann aufgrund des Gesetzes zur Verringerung der Rendite vernachlässigbar sein - die Vorhersageleistung des Modells wird häufig lange bevor alle Trainingsdaten in das Modell aufgenommen werden, flacher.
  2. Paralleles Rechnen - Teilen Sie das Problem in kleinere Teile auf und lösen Sie jedes auf einem separaten Computer / Prozessor. Sie benötigen zwar eine parallele Version des Algorithmus, aber eine gute Nachricht ist, dass viele gängige Algorithmen von Natur aus parallel sind: nächster Nachbar, Entscheidungsbäume usw.

Gibt es andere Methoden? Gibt es eine Faustregel, wann jeder verwendet werden soll? Was sind die Nachteile jedes Ansatzes?

Antworten:


10

Stream Mining ist eine Antwort. Es heißt auch:


vereinbart, wäre die MOA-Toolbox ein guter Startpunkt
tdc

7

Anstatt nur eine Teilmenge zu verwenden, können Sie wie beim Mini-Batch-Lernen mehrere Teilmengen verwenden (z. B. stochastischer Gradientenabstieg). Auf diese Weise würden Sie immer noch alle Ihre Daten nutzen.


Aha, das ist ein guter Punkt - ich habe die Frage geklärt. Ich interessiere mich für ein Szenario, in dem Sie mit zeitlichen / räumlichen Einschränkungen konfrontiert sind und sich Mini-Batch-Lernen nicht leisten können.
andreister

1

Ensembles wie Absacken oder Mischen - es werden keine Daten verschwendet, das Problem wird automatisch trivial parallel und es kann zu erheblichen Genauigkeits- / Robustheitsgewinnen kommen.

Durch die Nutzung unserer Website bestätigen Sie, dass Sie unsere Cookie-Richtlinie und Datenschutzrichtlinie gelesen und verstanden haben.
Licensed under cc by-sa 3.0 with attribution required.