‫Der vierte Teil des Modellierens ist der letzte Teil des Modellierens, und hier ist der Vergleich, wie wird sich
‫unser Modell in der realen Welt verhalten?
‫Nachdem Sie also die Leistung Ihres Modells durch Hyperparameter-Optimierung verbessert haben, ist es an der Zeit, zu
‫sehen, wie es in den Tests abschneidet.
‫Im Test-Set ist wie die Abschlussprüfung für Machine-Learning-Modelle.
‫Wenn Sie Ihre Datenaufteilungen korrekt erstellt haben, sollte Ihnen dies einen Hinweis auf die Leistung Ihres Modells
‫geben.
‫Einmal in der Produktion bereitgestellt, bedeutet dies, dass Sie mit dem Kunden konfrontiert sind, anstatt nur auf Ihrem lokalen Computer zu sein.
‫Da Ihr Modell noch nie Daten in der Testreihe gesehen hat, ist die Bewertung Ihres Modells eine gute Möglichkeit, um zu sehen,
‫wie es verallgemeinert wird.
‫Und denken Sie daran, mit Verallgemeinerung meine ich, sich
‫an Daten anzupassen, die es noch nie zuvor
‫gesehen hat, z einstellen.
‫Ein gutes Modell führt zu ähnlichen Ergebnissen in den Trainings-, Validierungs- und Testsätzen, und es ist nicht
‫ungewöhnlich, dass die Leistung des Modells leicht nachlässt.
‫Auf dem Trainings- und Validierungssatz des Testsatzes kann Ihr Modell beispielsweise eine Genauigkeit von 98 %
‫im Trainingsdatensatz und eine Genauigkeit von 96 % auf dem Testsatz erreichen.
‫Sie sollten sich Sorgen machen, wenn die Leistung des Trainingssatzes dramatisch höher ist als die
‫des Testsatzes, auch bekannt als Unterernährung, und wenn die Leistung des Testsatzes höher ist als die
‫Leistung des Trainingssatzes, auch bekannt als ÜBERFITTING.
‫Overfitting und Underfeeding sind beides Beispiele dafür, dass ein Modell nicht gut verallgemeinern kann, was wir
‫nicht wollen.
‫Das ideale Modell zeigt sich in der Goldlöckchen-Zone.
‫Es passt genau, nicht zu gut, aber auch nicht zu schlecht.
‫Sie sehen hier dieses Machine-Learning-Modell.
‫Wenn dies Ihre Daten waren, diese grünen Datenpunkte, diese Linie hier, sie passt irgendwie zur Form.
‫Aber gerade dies würde als Unterernährung eingestuft werden.
‫Das ist nicht das, was wir heute modellieren wollen.
‫Und dieser hier.
‫Nun, es macht einen guten Job, alle Datenpunkte zu füllen, aber es geht viel zu nahe.
‫Es ist fast zu perfektes Modell.
‫Es schlängelt sich nur zwischen ihnen.
‫Dieses Beispiel würde also bedeuten, dass das Modell die Muster in diesem Datensatz zu gut gelernt hat.
‫Es wäre, als ob Sie die Abschlussprüfung sehen würden, bevor Sie die Abschlussprüfung tatsächlich ablegen.
‫Dieser hier ist die Goldlöckchen-Zone.
‫Rechts.
‫Dies ist ein iterativer Prozess, bei dem genau diese Goldlöckchen-Zone wie ein ausgewogenes Modell ist, und hängt wirklich von Ihren
‫Daten und dem Problem ab, das Sie lösen möchten.
‫Deshalb ist es wieder ein iterativer Prozess, diese ausgeglichene Zone zu finden.
‫Und jetzt, nach einiger Erfahrung und Übung mit verschiedenen Problemen des maschinellen Lernens, werden Sie in der
‫Lage sein zu erkennen, ob Ihr Modell über- oder unterfüttert ist.
‫Nun, es gibt mehrere Gründe, warum es zu einer Unterversorgung einer Öffnung kommen kann, aber die
‫wichtigsten sind Datenlecks und Datenkonflikte.
‫Datenverlust tritt auf, wenn einige Ihrer Testdaten in Ihre Trainingsdaten eindringen, und dies führt oft zu einer Überanpassung oder
‫einem Modell, das auf dem Testsatz besser abschneidet als auf den genannten Trainingsdaten.
‫Es ist so, als ob Sie sich die Abschlussprüfung ansehen oder jeder
‫die Abschlussprüfung als Übungsprüfung ansehen müsste, Ihr Machine-Learning-Modell hat gerade gelernt, worauf es
‫ankommt.
‫Wenn es um die Modellierung geht, ist es einfach viel zu gut gelernt und fängt an, so an die Daten zu
‫passen.
‫Aus diesem Grund ist es wichtig, dass Sie Ihre Aufteilungen richtig durchführen und sicherstellen, dass
‫das Modelltraining für maschinelles Lernen nur für die Validierung des Trainingsdatensatzes und die Modelloptimierung nur für den
‫Validierungs- oder Trainingsdatensatz erfolgt und dass Tests und Modellvergleiche an den Testdaten erfolgen einstellen.
‫Und ich erinnere mich an einige unterschiedliche Ansätze, die nur im Trainings- und Testset verwendet werden
‫und Modelltraining auf dem Trainingsset durchführen, aber das Testen bleibt immer gleich.
‫Es ist, als ob Sie an der Universität einen Kurs machen.
‫Sie möchten sicherstellen, dass die Abschlussprüfung ein Hinweis darauf ist, wie gut Sie die Dinge verstehen.
‫Sprichwort Beim Testdatensatz für maschinelles Lernen wird der Testdatensatz als Hinweis darauf verwendet, wie gut Ihr
‫Modell in der realen Welt verallgemeinert.
‫Sie möchten also Datenlecks vermeiden.
‫Ein Datenkonflikt tritt auf, wenn sich die Daten, mit denen Sie testen, von den Daten unterscheiden, mit denen
‫Sie trainieren, z. B. wenn die Trainingsdaten andere Funktionen als die Testdaten aufweisen.
‫Diese Art von Nichtübereinstimmung kann dazu führen, dass Modelle bei Testdaten im Vergleich zu Trainingsdaten schlecht abschneiden.
‫Aus diesem Grund ist es wichtig sicherzustellen, dass das Training mit der gleichen Art von Daten durchgeführt wird, mit der Sie
‫testen, und so nah wie möglich an den Daten, die Sie in Ihren zukünftigen Anwendungen verwenden werden.
‫Andere Möglichkeiten zur Bekämpfung von Unterernährung sind die Verwendung eines fortgeschritteneren Modells. Dies kann ein völlig anderes Modell
‫bedeuten oder die Anzahl der Hyperparameter Ihres aktuellen Modells erhöhen.
‫Denken Sie daran, wenn wir unser Hühnchengericht kochen, können wir einen der Hyperparameter unseres Ofens ändern, indem
‫wir ihn aufdrehen.
‫Dies könnte etwas sein, das Sie mit einem Modell für maschinelles Lernen tun könnten, anstatt nur zwei Schichten in einem neuronalen
‫Netzwerk zu verwenden, für das Sie es verwenden könnten.
‫Wir werden mehr davon in einem zukünftigen Projekt sehen.
‫Sie können auch die Anzahl der zu modellierenden Features reduzieren. Möglicherweise enthalten Ihre Daten zu viele Features
‫und das von Ihnen verwendete Modell hat Schwierigkeiten, darin Muster zu finden.
‫Schließlich könnten Sie Ihr Modell länger trainieren. Manchmal dauert das Training von Modellen oder das Lernen
‫länger als erwartet.
‫Eines Ihrer Experimente kann eine längere Trainingsphase beinhalten.
‫Und um Overfitting zu reduzieren, bestehen nützliche Lösungen darin, mehr Daten zu sammeln. Mehr Daten bieten mehr
‫potenzielle Muster, die ein Modell finden kann, und verringern somit das Potenzial, alle zu finden.
‫Oder Sie könnten versuchen, ein weniger fortschrittliches Modell zu verwenden.
‫Dies ist ungewöhnlich, aber es ist eine Möglichkeit.
‫Das von Ihnen verwendete Modell ist zu gut im Lernen, und es modelliert Ihre Daten, um vorsichtig zu sein, wenn
‫Modelle zu gut funktionieren, da sie zu falschen Vorhersagen führen können.
‫Denken Sie daran, dass kein Modell perfekt ist. Überprüfen Sie daher Ihre guten Ergebnisse genauso wie Ihre schlechten
‫Ergebnisse.
‫Schließlich ist es beim Vergleich zweier verschiedener Modelle wichtig, dass Sie Äpfel mit
‫Äpfeln und Orangen mit Orangen vergleichen.
‫Beispiel: Modell zwei, trainiert mit Daten, Set eins im Vergleich zu Modell drei, trainiert mit Datensatz eins.
‫Dauerhafter Vergleich.
‫Sie möchten sicherstellen, dass Sie nicht nur das Endergebnis berücksichtigen, sondern auch, was es brauchte, um dorthin zu gelangen.
‫Wenn Modell zwei eine Sekunde braucht, um eine Vorhersage mit einer Genauigkeit von dreiundneunzig Komma eins zu machen, benötigt Modell drei
‫vier Sekunden, um eine Vorhersage mit einer Genauigkeit von vierundneunzig Komma sieben zu treffen.
‫Ist das eine zusätzliche Genauigkeit von drei Prozent die zusätzlichen drei Sekunden der Vorhersage wert?
‫Zeit jetzt.
‫Und das hängt davon ab, was das Ziel ist.
‫Wenn Sie jedoch die Vorhersagezeit optimieren, möchten Sie Vorhersagen so schnell wie möglich treffen.
‫Ich wähle Modell zwei, weil es Vorhersagen viermal schneller macht als Modell drei.
‫Dies wiederum ist bei einer höheren Genauigkeitsstufe unterschiedlich, je nachdem, welche Art von Anwendung oder
‫Produktionsanwendungsfall Sie verwenden möchten.
‫Aber nur einige Dinge, die Sie beachten sollten, sind mehr als nur die Leistung eines Modells, das bei der Auswahl des zu verwendenden
‫Modells eine Rolle spielt.
‫Ein paar Dinge, an die Sie sich aus dieser Lektion erinnern sollten, vermeiden Sie Überanpassung und Unterfütterung, Sie möchten ein
‫Modell entwickeln, das in Richtung Allgemeinheit geht.
‫Es ist, als ob Sie bei Ihrer Übungsprüfung, wenn Sie die Abschlussprüfung gesehen haben, eher ein Experte im Auswendiglernen
‫werden als jemand, der das Wissen in der realen Welt anwenden kann.
‫Bewahren Sie das Testset unbedingt getrennt auf.
‫Wenn Sie Ihre Daten aufteilen, möchten Sie einen Trainingssatz haben und dann den Testdatensatz wegwerfen und
‫einsperren.
‫Und wenn Ihr Modell trainiert ist, können Sie den Testdatensatz öffnen, entsperren, aus dem Safe
‫nehmen und sehen, wie sich Ihr Modell schlägt.
‫Wenn Sie Modelle vergleichen, vergleichen Sie Äpfel mit Äpfeln, verwenden Sie Modell eins und Modell zwei auf Daten, setzen Sie
‫eins und Datensatz eins.
‫Sie möchten sicherstellen, dass die beiden Modelle, die Sie vergleichen, in derselben Umgebung erstellt wurden, damit
‫Sie sicherstellen können, dass es sich bei dem Vergleich um legitime Vergleiche handelt.
‫Schließlich entspricht eine basierte Leistungsmetrik nicht dem besten Modell.
‫Denken Sie jetzt an das Beispiel, Sie optimieren möglicherweise für die Vorhersagezeit.
‫Obwohl also ein Modell, das eine schnellere Vorhersage macht, nicht so hohe Genauigkeit erreicht wie ein anderes Modell,
‫dauert dies etwas länger.
‫Es kann für Sie egal sein, weil Sie etwas brauchen, das so schnell wie möglich vorhersagen kann.
‫Wer weiß schon viel, aber davon werden wir im Laufe des Kurses noch viel mehr in Aktion sehen.
‫Sie werden es auch während Ihrer gesamten Karriere im Bereich maschinelles Lernen verwenden.
‫Es ist daher wichtig, sich an diese Konzepte zu erinnern.
‫Lassen Sie uns zum nächsten Schritt übergehen und sehen, wie wir all diese vorherigen Schritte in Schritt sechs des
‫Experimentierens zusammenfassen können.