• Mon Shot de Data Science
  • Posts
  • Pourquoi est-il important de mélanger les données avant d'entraîner un modèle de ML ?

Pourquoi est-il important de mélanger les données avant d'entraîner un modèle de ML ?

#131 - Regarde ce qu'il se passe si tu ne le fais pas !

Données non mélangés vs mélangés pour l'entraînement du modèle

Les modèles de ML peuvent ne pas converger pour de nombreuses raisons. Voici l'une d'entre elles que de nombreuses personnes négligent souvent.

Si tes données sont classées par étiquettes, cela peut avoir un impact négatif sur la convergence et la précision du modèle. Il s'agit d'une erreur qui peut généralement passer inaperçue.

Dans la démonstration ci-dessus, j'ai entraîné deux réseaux de neurones sur les mêmes données. Les deux réseaux avaient les mêmes poids initiaux, le même taux d'apprentissage et d'autres paramètres.

Toutefois, dans l'un d'entre eux, les données étaient classées par étiquettes, tandis que dans l'autre, elles étaient mélangées de manière aléatoire.

Comme on peut le voir, le modèle recevant un ensemble de données ordonné par étiquettes (= labels) ne converge pas. Cependant, le mélange de l'ensemble de données permet au réseau d'apprendre à partir d'un échantillon de données plus représentatif dans chaque lot (batch). La généralisation et les performances s'en trouvent améliorées.

En général, c'est une bonne pratique de mélanger l'ensemble de données avant l’entraînement. Cela permet d'éviter que le modèle n'identifie des modèles (patterns) spécifiques à l'étiquette mais en réalité inexistants.

En fait, il est également recommandé de modifier les données spécifiques du batch à chaque epoch.

P.S. : Il s'agit d'une erreur que j'ai commise il y a quelques années, et il ne m'est jamais venu à l'esprit que le remaniement/mélange des données était si important.

Qu'en penses-tu ? Dis-le moi en commentaire :)

Ça t'a plu ? 😎

Connexion ou S'abonner pour participer aux sondages.

Reply

or to participate.