Maschinelles Lernen ist in aller Munde und wird oft in einem Atemzug mit Big Data genannt. Doch wie viele Trainingsbeispiele braucht es, um maschinelles Lernen zu ermöglichen?
Daten, Daten, Daten…. reicht das?
Das Zeitalter der digitalen Daten hat längst begonnen. Gerade in Unternehmen gibt es kaum noch Tätigkeiten, die nicht einen Haufen an Daten mit sich bringen. Doch nicht immer bringt die schiere Masse an Daten auch die Möglichkeit so mir nichts, dir nichts maschinelles Lernen zum Einsatz zu bringen. Denn die Daten müssen auch eine gewisse Güte haben.
Datenqualität > Datenmasse
Wie so oft im Leben gilt auch in diesem Fall, dass neben der Quantität der verfügbaren Daten eben auch deren Qualität stimmen muss. Doch ist die Qualität davon abhängig, was Sie mit den Daten machen wollen.
Ein kleines Beispiel
Ein Autohaus bietet im Jahr 10.000 Scheiben-Reparaturen an. Jedes Angebot ist ein wenig anders. Scheibentyp, Schadenstyp, genutztes Reparaturmaterial, Auftragsdauer, Monteur, Preis und Zeitpunkt der Reparatur unterscheiden sich. Die Business-Intelligence-Unit möchte herausfinden, ob bei Angebotsabgabe bestimmt werden kann, wie wahrscheinlich es ist, dass das Angebot angenommen wird.
In unserem Beispiel klingt die Zahl „10.000“ schon nach recht viel. Doch was machen Sie, wenn 9.990 Angebote angenommen werden? Die Vergleichsgruppe der abgelehnten Angebote ist dann sehr klein und lässt nur sehr unwahrscheinlich eine gute Aussage zu.
Leider gibt es daher auch keine einfache Antwort auf die eingangs gestellte Frage. Denn die Menge der benötigten Daten hängt neben der Anzahl der Eigenschaften – der Dimensionalität – der Daten, von der Struktur, und der Verteilung der Daten ab.
Je nach angewendeten Lernverfahren brauchen Sie dann jeweils eine gute oder sehr gute Datenlage. Mit den ganz schlechten funktioniert es eigentlich nie.
Man kann es zumindest theoretisch berechnen
Zumindest ein wenig Abhilfe biete die gute alte Computational Learning Theory. Hier werden ideale Lernverfahren angenommen, um zu mindestens eine Aussage über die benötigte Mindestmenge an Trainingsdaten treffen zu können. Mit recht wenigen (aber hier und da komplizierten) Handgriffen kann bestimmt werden, wieviel Trainingsfälle für ein optimales Lernverfahren benötigt werden. Das Problem: die optimalen Bedingungen finden Sie in der Praxis einfach nicht.
Eine Antwort muss es doch geben, oder?
Leider nicht. Doch gilt: Unter 50 Datenpunkten brauchen Sie nicht anzufangen. Doch reichen häufig schon 50 Beobachtungen, um überhaupt ein Gefühl für die Datenstruktur entwickeln zu können. Das ist viel Wert. Denn dann können Sie überlegen, welche Daten Sie brauchen und was Sie dafür tun müssen. In der Regel benötigen Sie jedoch weitaus mehr als 50 Beobachtungen. Unsere Erfahrung zeigt, dass alles über 1.000 in die richtige Richtung geht. Doch haben wir auch Probleme gesehen, bei denen selbst 1.000.000 Datenpunkte gerade so genug waren.
Dabei gibt es einige praktische Erfahrungen, die Ihnen helfen einzuschätzen, ob Sie viel oder wenig Beobachtungen benötigen:
- Je intuitiver Ihre Hypothese, desto weniger Daten brauchen Sie
- Je seltener das Event, desto mehr Daten brauchen Sie
- Je mehr Eigenschaften Ihre Daten haben, desto mehr Daten brauchen Sie
- Je mehr Modellparameter Ihr Lernmodel hat, desto mehr Daten brauchen Sie
- Nicht-Lineare Zusammenhänge brauchen mehr Daten
Zahlentricks helfen, um festzustellen, ob Sie viel oder wenig Datenpunkte haben
Wenn Ihnen die kleinen Hilfen oben noch nicht reichen, können Sie auch ein paar Taschenspielertricks anwenden:
- Faktor der Anzahl der untersuchten Gruppen: Für jede Gruppe muss es X unabhängige Beispiele geben, wobei X hundert oder tausend sein sollte (z.B. 500, 5000 usw.) Wenn Sie also zwei Gruppen vergleichen wollen, sollten Sie mindestens 500x2 = 1.000 Datenpunkte haben.
- Faktor der Anzahl der Eigenschaften: Es muss X% mehr Beispiele geben, als es Dateneigenschaften gibt, wobei X hundert sein sollte (z.B. 500) . Wenn Sie also ein Objekt untersuchen, das drei Eigenschaften hat (z.B. Größe, Farbe und Preis), dann sollten Sie mindestens 3x500% = 1.5-Mal so viele Daten haben wie aus Schritt eins mindestens bestimmt: also 1.5x1.000 = 1.500.
- Faktor der Anzahl der Modellparameter: Für jeden Parameter im Modell muss es X unabhängige Beispiele geben, wobei X Zehner sein sollte (z.B. 10, 20, 30 usw.). Wenn Sie nun Ihr Modell basteln und das Model wiederum drei Parameter hat, dann sollten Sie z.B. 3x10% = 30% mehr Datenpunkte haben als in Schritt 2 festgelegt. Also 1.500x1.3 = 1.950.
Wenn Sie bei den drei kleinen Tricks immer im oberen Bereich landen, dann könnte es gut klappen mit Ihrem Modell.
Was tun, wenn es keine Antwort gibt?
Die simple Antwort ist, einfach anfangen. Sie müssen einfach nur anfangen. Mehr können Sie in den meisten Fällen im Vorfeld nicht machen. Nur sollten Sie sich nicht auf das eine Modell und das eine Problem und die eine Datenmenge konzentrieren! Diversifizieren ist hier das Zauberwort. Daher ist es auch nicht selten, dass Sie mehrere Versuche gleichzeitig starten. Doch dann ist gutes Projekt-Management gefragt – und dabei kann Ihnen natürlich Falcon helfen! Interesse? Schreiben Sie uns via info@nordantech.com.