Mit Sammlungen den Überblick behalten Sie können Inhalte basierend auf Ihren Einstellungen speichern und kategorisieren.
Im vorherigen Abschnitt wurde das folgende Modell vorgestellt, das viele Bäume im Testsatz falsch kategorisiert hat:
Abbildung 16. Das komplexe Modell mit Fehlverhalten aus dem vorherigen Block.
Das vorherige Modell enthält viele komplexe Formen. Würde ein einfacheres Modell mit neuen Daten besser umgehen? Angenommen, Sie ersetzen das komplexe Modell durch ein lächerlich einfaches Modell – eine gerade Linie.
Abbildung 17: Ein viel einfacheres Modell.
Das einfache Modell kann neue Daten besser verallgemeinern als das komplexe Modell. Das einfache Modell hat also bessere Vorhersagen für den Testsatz geliefert als das komplexe Modell.
Einfachheit schlägt Komplexität schon seit langem. Die Vorliebe für Einfachheit reicht sogar bis ins antike Griechenland zurück. Jahrhunderte später formalisierte ein Franziskanermönch aus dem 14. Jahrhundert namens Wilhelm von Ockham die Vorliebe für Einfachheit in einer Philosophie, die als Ockhamsches Rasiermesser bekannt ist. Diese Philosophie ist nach wie vor ein wesentliches Grundprinzip vieler Wissenschaften, einschließlich des Machine Learning.
Übungen: Wissen testen
Sie entwickeln eine physikalische Gleichung. Welche der folgenden Formeln entspricht eher dem Occam'schen Rasiermesser?
Eine Formel mit drei Variablen.
Drei Variablen sind ockhamscher als zwölf Variablen.
Eine Formel mit zwölf Variablen.
Zwölf Variablen erscheinen übermäßig kompliziert, oder? Die beiden berühmtesten Formeln der Physik aller Zeiten (F=ma und E=mc2) enthalten jeweils nur drei Variablen.
Sie arbeiten an einem brandneuen Projekt für maschinelles Lernen und stehen kurz davor, Ihre ersten Funktionen auszuwählen. Wie viele Funktionen sollten Sie auswählen?
Wählen Sie ein bis drei Merkmale aus, die eine hohe Vorhersagekraft haben.
Am besten beginnen Sie mit nur einem oder zwei Features. So können Sie prüfen, ob das ML-Modell wie beabsichtigt funktioniert. Wenn Sie eine Baseline aus mehreren Funktionen erstellen, haben Sie außerdem das Gefühl, Fortschritte zu machen.
Wählen Sie vier bis sechs Merkmale aus, die eine hohe Vorhersagekraft haben.
Möglicherweise verwenden Sie diese vielen Funktionen irgendwann, aber es ist besser, mit weniger zu beginnen. Weniger Funktionen bedeuten in der Regel weniger unnötige Komplikationen.
Wählen Sie so viele Funktionen wie möglich aus, damit Sie beobachten können, welche Funktionen die höchste Vorhersagekraft haben.
Fangen Sie klein an. Jede neue Funktion fügt Ihrem Trainingsdatensatz eine neue Dimension hinzu. Wenn die Dimensionalität zunimmt, steigt das Volumen des Raums so schnell an, dass die verfügbaren Trainingsdaten spärlich werden. Je spärlicher die Daten sind, desto schwieriger ist es für ein Modell, die Beziehung zwischen den tatsächlich relevanten Merkmalen und dem Label zu lernen. Dieses Phänomen wird als „der Fluch der Dimensionalität“ bezeichnet.
Regularisierung
Modelle für maschinelles Lernen müssen gleichzeitig zwei widersprüchliche Ziele erfüllen:
Sie passen gut zu den Daten.
Passen Sie die Daten so einfach wie möglich an.
Eine Möglichkeit, ein Modell einfach zu halten, besteht darin, komplexe Modelle zu bestrafen, d. h. das Modell während des Trainings zu zwingen, einfacher zu werden. Die Bestrafung komplexer Modelle ist eine Form der Regelmäßigkeitsherstellung.
Verlust und Komplexität
Bisher wurde in diesem Kurs davon ausgegangen, dass das einzige Ziel des Trainings darin besteht, den Verlust zu minimieren. Das bedeutet:
$$\text{minimize(loss)}$$
Wie Sie gesehen haben, neigen Modelle, die sich ausschließlich auf die Minimierung des Verlusts konzentrieren, dazu, zu überfitten. Ein besserer Algorithmus zur Trainingsoptimierung minimiert eine Kombination aus Verlust und Komplexität:
$$\text{minimize(loss + complexity)}$$
Leider stehen Verlust und Komplexität in der Regel in umgekehrtem Verhältnis zueinander. Mit zunehmender Komplexität nimmt die Ausfallrate ab. Je geringer die Komplexität, desto höher der Verlust. Sie sollten einen vernünftigen Mittelweg finden, bei dem das Modell sowohl mit den Trainingsdaten als auch mit den Realdaten gute Vorhersagen macht. Das Modell sollte also einen angemessenen Kompromiss zwischen Verlust und Komplexität finden.
Was ist Komplexität?
Sie haben bereits einige Möglichkeiten zur Quantifizierung von Verlusten kennengelernt. Wie würden Sie Komplexität quantifizieren? Beginnen Sie mit der folgenden Übung:
Übung: Ihre Intuition überprüfen
Bisher haben wir uns ziemlich vage darüber geäußert, was Komplexität eigentlich ist. Welche der folgenden Ideen wären Ihrer Meinung nach sinnvolle Komplexitätsmesswerte?
Die Komplexität ist eine Funktion der Gewichte des Modells.
Ja, das ist eine Möglichkeit, die Komplexität einiger Modelle zu messen. Dieser Messwert wird als L1-Regularisierung bezeichnet.
Die Komplexität ist eine Funktion des Quadrats der Gewichte des Modells.
Ja, Sie können die Komplexität einiger Modelle so messen. Dieser Messwert wird als L2-Regularisierung bezeichnet.
Die Komplexität ist eine Funktion der Voreingenommenheit aller Merkmale im Modell.
[null,null,["Zuletzt aktualisiert: 2024-11-14 (UTC)."],[[["\u003cp\u003eSimpler models often generalize better to new data than complex models, even if they perform slightly worse on training data.\u003c/p\u003e\n"],["\u003cp\u003eOccam's Razor favors simpler explanations and models, prioritizing them over more complex ones.\u003c/p\u003e\n"],["\u003cp\u003eRegularization techniques help prevent overfitting by penalizing model complexity during training.\u003c/p\u003e\n"],["\u003cp\u003eModel training aims to minimize both loss (errors on training data) and complexity for optimal performance on new data.\u003c/p\u003e\n"],["\u003cp\u003eModel complexity can be quantified using functions of model weights, like L1 and L2 regularization.\u003c/p\u003e\n"]]],[],null,["# Overfitting: Model complexity\n\nThe previous unit introduced the following model, which miscategorized a lot\nof trees in the test set:\n**Figure 16.** The misbehaving complex model from the previous unit.\n\nThe preceding model contains a lot of complex shapes. Would a simpler\nmodel handle new data better? Suppose you replace the complex model with\na ridiculously simple model--a straight line.\n**Figure 17.** A much simpler model.\n\nThe simple model generalizes better than the complex model on new data. That is,\nthe simple model made better predictions on the test set than the complex model.\n\nSimplicity has been beating complexity for a long time. In fact, the\npreference for simplicity dates back to ancient Greece. Centuries later,\na fourteenth-century friar named William of Occam formalized the preference\nfor simplicity in a philosophy known as [Occam's\nrazor](https://wikipedia.org/wiki/Occam%27s_razor). This philosophy\nremains an essential underlying principle of many sciences, including\nmachine learning.\n| **Note:** Complex models typically outperform simple models on the training set. However, simple models typically outperform complex models on the test set (which is more important).\n\n### Exercises: Check your understanding\n\nYou are developing a physics equation. Which of the following formulas conform more closely to Occam's Razor? \nA formula with three variables. \nThree variables is more Occam-friendly than twelve variables. \nA formula with twelve variables. \nTwelve variables seems overly complicated, doesn't it? The two most famous physics formulas of all time (F=ma and E=mc^2^) each involve only three variables. \nYou're on a brand-new machine learning project, about to select your first features. How many features should you pick? \nPick 1--3 features that seem to have strong predictive power. \nIt's best for your data collection pipeline to start with only one or two features. This will help you confirm that the ML model works as intended. Also, when you build a baseline from a couple of features, you'll feel like you're making progress! \nPick 4--6 features that seem to have strong predictive power. \nYou might eventually use this many features, but it's still better to start with fewer. Fewer features usually means fewer unnecessary complications. \nPick as many features as you can, so you can start observing which features have the strongest predictive power. \nStart smaller. Every new feature adds a new dimension to your training dataset. When the dimensionality increases, the volume of the space increases so fast that the available training data become sparse. The sparser your data, the harder it is for a model to learn the relationship between the features that actually matter and the label. This phenomenon is called \"the curse of dimensionality.\"\n\nRegularization\n--------------\n\nMachine learning models must simultaneously meet two conflicting goals:\n\n- Fit data well.\n- Fit data as simply as possible.\n\nOne approach to keeping a model simple is to penalize complex models; that is,\nto force the model to become simpler during training. Penalizing complex\nmodels is one form of **regularization**.\n| **A regularization analogy:** Suppose every student in a lecture hall had a little buzzer that emitted a sound that annoyed the professor. Students would press the buzzer whenever the professor's lecture became too complicated. Annoyed, the professor would be forced to simplify the lecture. The professor would complain, \"When I simplify, I'm not being precise enough.\" The students would counter with, \"The only goal is to explain it simply enough that I understand it.\" Gradually, the buzzers would train the professor to give an appropriately simple lecture, even if the simpler lecture isn't as sufficiently precise.\n\n### Loss and complexity\n\nSo far, this course has suggested that the only goal when training was to\nminimize loss; that is: \n$$\\\\text{minimize(loss)}$$\n\nAs you've seen, models focused solely on minimizing loss tend to overfit.\nA better training optimization algorithm minimizes some combination of\nloss and complexity: \n$$\\\\text{minimize(loss + complexity)}$$\n\nUnfortunately, loss and complexity are typically inversely related. As\ncomplexity increases, loss decreases. As complexity decreases, loss increases.\nYou should find a reasonable middle ground where the model makes good\npredictions on both the training data and real-world data.\nThat is, your model should find a reasonable compromise\nbetween loss and complexity.\n\nWhat is complexity?\n-------------------\n\nYou've already seen a few different ways of quantifying loss. How would\nyou quantify complexity? Start your exploration through the following exercise:\n\n### Exercise: Check your intuition\n\nSo far, we've been pretty vague about what *complexity* actually is. Which of the following ideas do you think would be reasonable complexity metrics? \nComplexity is a function of the model's weights. \nYes, this is one way to measure some models' complexity. This metric is called [**L~1~ regularization.**](/machine-learning/glossary#L1_regularization) \nComplexity is a function of the square of the model's weights. \nYes, you can measure some models' complexity this way. This metric is called [**L~2~ regularization**](/machine-learning/glossary#L2_regularization). \nComplexity is a function of the biases of all the features in the model. \nBias doesn't measure complexity.\n| **Key terms:**\n|\n| - [L~1~ regularization](/machine-learning/glossary#L1_regularization)\n| - [L~2~ regularization](/machine-learning/glossary#L2_regularization)\n- [Regularization](/machine-learning/glossary#regularization) \n[Help Center](https://support.google.com/machinelearningeducation)"]]