Traducteur | Bugatti
Reviewer | Sun Shujuan
Comme nous le savons tous, les modèles d'apprentissage profond ont une forte demande de données. Plus vous alimentez les modèles d’apprentissage profond en données, meilleures sont leurs performances. Malheureusement, dans la plupart des situations pratiques, cela n’est pas possible. Il se peut que vous ne disposiez pas de suffisamment de données ou que leur collecte soit trop coûteuse.
Cet article abordera quatre façons d'améliorer les modèles d'apprentissage en profondeur sans utiliser plus de données.
Les modèles d'apprentissage profond sont convaincants car ils peuvent apprendre à comprendre des relations complexes. Les modèles d'apprentissage profond contiennent plusieurs couches. Chaque couche apprend à comprendre des représentations de données de complexité croissante. La première couche pourrait apprendre à détecter des motifs simples, tels que des bords. Un deuxième calque pourrait apprendre à voir des motifs sur ces bords, tels que des formes. Une troisième couche pourrait apprendre à reconnaître les objets composés de ces formes, et ainsi de suite.
Chaque couche est constituée d'une série de neurones, qui à leur tour sont connectés à chaque neurone de la couche précédente. Toutes ces couches et neurones impliquent de nombreux paramètres à optimiser. La bonne nouvelle est que les modèles d’apprentissage profond ont de puissantes capacités. Mais l’inconvénient signifie qu’ils sont sujets au surapprentissage. Le surajustement signifie que le modèle capture trop de signaux d'interférence dans les données d'entraînement et ne peut pas être appliqué à de nouvelles données.
Avec suffisamment de données, les modèles d'apprentissage profond peuvent apprendre à détecter des relations très complexes. Cependant, si vous ne disposez pas de suffisamment de données, les modèles d’apprentissage profond ne seront pas en mesure de comprendre ces relations complexes. Nous devons disposer de suffisamment de données pour que le modèle d’apprentissage profond puisse apprendre.
Mais si collecter davantage de données n'est pas possible, nous disposons de plusieurs techniques pour y remédier.
L'apprentissage par transfert est une technique d'apprentissage automatique dans laquelle vous pouvez prendre un modèle formé sur un problème et l'utiliser comme point de départ pour résoudre différents problèmes connexes.
Par exemple, vous pouvez prendre un modèle formé sur un énorme ensemble de données d'images de chiens et l'utiliser comme point de départ pour entraîner un modèle à identifier les races de chiens.
J'espère que les fonctionnalités apprises par le premier modèle pourront être réutilisées, économisant ainsi du temps et des ressources. Il n’existe pas de règle empirique quant à la différence entre les deux applications. Cependant, l’apprentissage par transfert peut toujours être utilisé même si l’ensemble de données d’origine et le nouvel ensemble de données sont très différents.
Par exemple, vous pouvez prendre un modèle formé sur des images de chats et l'utiliser comme point de départ pour entraîner un modèle à reconnaître les types de chameaux. Espérons que comprendre la fonction des quatre pattes du premier modèle pourrait aider à identifier les chameaux.
Si vous souhaitez en savoir plus sur l'apprentissage par transfert, vous pouvez vous référer à "Apprentissage par transfert pour le traitement du langage naturel". Si vous êtes un programmeur Python, "Apprentissage pratique par transfert avec Python" vous sera peut-être également utile.
L'augmentation des données est une technique dans laquelle vous pouvez utiliser des données existantes et générer de nouvelles données synthétiques.
Par exemple, si vous disposez d'un ensemble de données d'images de chiens, vous pouvez utiliser l'augmentation des données pour générer de nouvelles images de chiens. Vous pouvez le faire en recadrant l'image de manière aléatoire, en la retournant horizontalement, en ajoutant du bruit et plusieurs autres techniques.
Si vous disposez d'un petit ensemble de données, l'augmentation des données peut être très bénéfique. En générant de nouvelles données, vous pouvez augmenter artificiellement la taille de votre ensemble de données, donnant ainsi à votre modèle d'apprentissage en profondeur plus de données avec lesquelles travailler.
Cesdocumentssur l'apprentissage profond vous aideront à mieux comprendre l'augmentation des données.
Un encodeur automatique est un modèle d'apprentissage en profondeur utilisé pour apprendre des représentations de données de faible dimension.
Les encodeurs automatiques sont utiles lorsque vous disposez d'un petit ensemble de données, car ils peuvent apprendre à compresser vos données dans un espace de faible dimension.
Il existe de nombreux types d'encodeurs automatiques. Les auto-encodeurs variationnels (VAE) sont un type d’encodeur automatique populaire. Les VAE sont des modèles génératifs, ce qui signifie qu’elles peuvent générer de nouvelles données. Cela aide beaucoup car vous pouvez utiliser VAE pour générer de nouveaux points de données similaires aux données d'entraînement. C'est un excellent moyen d'augmenter la taille de votre ensemble de données sans collecter davantage de données.
Titre original : Comment améliorer les modèles d'apprentissage en profondeur avec de petits ensembles de données
Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!