Surapprentissage: complexité du modèle

Dans le module précédent, nous avons présenté le modèle suivant, qui comportait de nombreuses erreurs de catégorisation des arbres de l'ensemble de test:

Figure 16. Même image que celle de la figure 13. Il s'agit d'une forme complexe qui
            fait mal catégoriser 
de nombreux arbres.
Figure 16 : Modèle complexe du module précédent présentant des problèmes de fonctionnement

Le modèle précédent contient de nombreuses formes complexes. Est-ce plus simple pour mieux gérer les nouvelles données ? Supposons que vous remplaciez le modèle complexe par un modèle ridiculement simple : une ligne droite.

Figure 17. Un modèle en ligne droite très performant
            séparer les arbres malades 
des arbres sains.
Figure 17 : Un modèle beaucoup plus simple.

Le modèle simple se prête mieux à la généralisation que le modèle complexe sur de nouvelles données. En d'autres termes, le modèle simple a fait de meilleures prédictions sur l'ensemble de test que le modèle complexe.

Depuis longtemps, la simplicité a éliminé la complexité. En fait, leur préférence pour la simplicité remonte à la Grèce antique. Des siècles plus tard, un moine du XIVe siècle nommé Guillaume d'Ockham a formalisé la préférence par souci de simplicité, dans une philosophie connue sous le nom de d'Ockham rasoir. Cette philosophie reste un principe sous-jacent essentiel de nombreuses sciences, le machine learning.

Exercices: tester vos connaissances

Vous développez une équation physique. Laquelle des formules suivantes se rapprochent davantage du Rasoir d'Occam ?
Formule à trois variables.
Trois variables sont plus compatibles avec Ockham que douze.
Formule à douze variables.
Douze variables semblent trop compliquées, n'est-ce pas ? Les deux formules physiques les plus célèbres de tous les temps (F=ma et E=mc2), chacune n'implique que trois variables.
Vous êtes sur un tout nouveau projet de machine learning et vous êtes sur le point de sélectionner votre les premières caractéristiques. Combien de fonctionnalités devez-vous choisir ?
Choisissez une à trois caractéristiques qui semblent offrir de solides performances prédictives.
Il est préférable que votre pipeline de collecte de données commence avec un seul ou deux caractéristiques. Vous pourrez ainsi vérifier que le modèle de ML fonctionne comme prévu. De plus, lorsque vous créez une référence à partir de quelques caractéristiques, vous aurez l'impression de progresser !
Choisissez quatre à six caractéristiques qui semblent offrir de solides performances prédictives.
Vous pourriez éventuellement utiliser autant de fonctionnalités, mais il est toujours préférable de commencez avec moins. En général, moins de fonctionnalités sont nécessaires, ou de complications.
Choisissez autant de caractéristiques que possible, afin de pouvoir présentent les meilleures performances prédictives.
Commencez plus petit. Chaque nouvelle fonctionnalité donne une nouvelle dimension à votre entraînement ensemble de données. Lorsque la dimensionnalité augmente, le volume de l'espace augmente si rapidement que les données d'entraînement disponibles deviennent creuses. La plus creuses, plus il est difficile pour un modèle d'apprendre la relation entre les caractéristiques qui comptent réellement et l'étiquette. Ce phénomène s'appelle "la malédiction de la dimensionnalité".

Régularisation

Les modèles de machine learning doivent atteindre simultanément deux objectifs contradictoires:

  • Adapter les données.
  • La taille des données est la plus simple possible.

Pour garder un modèle simple, une approche consiste à pénaliser les modèles complexes. c'est-à-dire pour simplifier l'entraînement du modèle. Complexe pénalisant est une forme de régularisation.

Perte et complexité

Jusqu'à présent, ce cours a suggéré que le seul objectif de la formation était minimiser la perte ; c'est-à-dire:

$$\text{minimize(loss)}$$

Comme vous l'avez vu, les modèles axés uniquement sur la minimisation de la perte ont tendance à entraîner un surapprentissage. Un meilleur algorithme d'optimisation de l'entraînement minimise certaines combinaisons la perte et la complexité:

$$\text{minimize(loss + complexity)}$$

Malheureusement, la perte et la complexité sont généralement inversement liées. En tant que la complexité augmente, la perte diminue. Plus la complexité diminue, plus la perte augmente. Vous devez trouver un terrain d'entente raisonnable des prédictions à la fois sur les données d'entraînement et sur les données réelles. Autrement dit, votre modèle doit trouver un compromis raisonnable entre perte et complexité.

Qu'est-ce que la complexité ?

Vous avez déjà vu différentes manières de quantifier la perte. Comment pour quantifier la complexité ? Commencez votre exploration par l'exercice suivant:

Exercice: testez votre intuition

Jusqu'à présent, nous n'avons pas beaucoup compris la complexité l'adresse IP interne. Parmi les idées suivantes, lesquelles pensez-vous qu'il serait raisonnable de le faire ? de complexité ?
La complexité est une fonction des pondérations du modèle.
Oui, c'est une façon de mesurer les performances la complexité. Cette métrique s'appelle Régularisation L1.
La complexité est une fonction du carré des pondérations du modèle.
Oui, il est possible de mesurer les performances la complexité de cette façon. Cette métrique s'appelle Régularisation L2
La complexité est fonction des biais de toutes les caractéristiques du modèle de ML.
Les préjugés ne mesurent pas la complexité.