Salle d'étude Karinoya

Qualifications · Labo réussite Cloud / AI / Python

Méthodes et applications de l'apprentissage profond

Les questions et les explications sont disponibles en Français. Les cours (articles explicatifs) n'existent qu'en japonais.

Voir la version japonaise (avec les cours) →

Q1 | Perceptron simple

Quelle affirmation à propos du perceptron simple est exacte ?

  1. Il est composé uniquement d'une couche d'entrée et d'une couche de sortie, et ne peut résoudre que des problèmes linéairement séparables
  2. Il excelle à faire glisser un filtre sur une image pour en extraire des caractéristiques locales
  3. Il possède un câblage qui renvoie l'état dans le temps, ce qui lui permet de traiter des données séquentielles dans leur ordre
  4. Il possède plusieurs couches cachées et peut effectuer une séparation non linéaire, si bien qu'il peut représenter le OU exclusif
RéponseA. Il est composé uniquement d'une couche d'entrée et d'une couche de sortie, et ne peut résoudre que des problèmes linéairement séparables

Le perceptron simple est le réseau de neurones le plus simple, composé uniquement d'une couche d'entrée et d'une couche de sortie ; il ne peut résoudre que des problèmes linéairement séparables, c'est-à-dire séparables par une seule droite. Pour le OU exclusif (XOR), les points où la sortie vaut 1 et ceux où elle vaut 0 s'alternent en diagonale, si bien qu'aucune droite ne peut les séparer : le perceptron simple ne peut pas le représenter. Un perceptron multicouche, qui ajoute une couche cachée permettant de courber la frontière, peut représenter XOR ; la première option décrit justement ce perceptron multicouche. Renvoyer l'état du pas de temps précédent pour traiter une séquence relève du réseau de neurones récurrent, et faire glisser un filtre pour extraire des caractéristiques locales relève de la couche de convolution.

Q2 | Aptitude des GPU

Quelle est la raison la plus appropriée pour laquelle les GPU sont considérés adaptés à l'apprentissage en deep learning ?

  1. Parce que leur capacité de mémoire pour stocker les données d'apprentissage est bien plus grande que celle d'un CPU
  2. Parce qu'ils intègrent dès l'origine, comme circuit dédié, la règle de dérivation en chaîne utilisée par la rétropropagation
  3. Parce qu'ils peuvent exécuter séquentiellement et rapidement, avec un petit nombre de cœurs puissants, des traitements complexes comportant de nombreuses branches
  4. Parce qu'ils possèdent un grand nombre de petits cœurs de calcul, capables de traiter en parallèle et simultanément le même calcul
RéponseD. Parce qu'ils possèdent un grand nombre de petits cœurs de calcul, capables de traiter en parallèle et simultanément le même calcul

L'apprentissage en deep learning est un calcul qui répète un nombre considérable de fois des multiplications et additions de matrices et de vecteurs. Le GPU possède un grand nombre de petits cœurs effectuant des opérations simples, et est adapté à exécuter en parallèle et simultanément le même calcul, ce qui correspond bien à ce type de calcul. Exécuter séquentiellement et rapidement des traitements comportant de nombreuses branches avec un petit nombre de cœurs puissants est le domaine de prédilection du CPU, dont le nombre de cœurs n'est pas élevé. L'avantage du GPU n'est pas sa capacité de mémoire mais son degré de parallélisme. Il n'intègre pas la règle de dérivation en chaîne comme circuit dédié ; c'est plutôt le TPU qui est conçu spécifiquement pour les opérations tensorielles du deep learning.

Q3 | Cause de la disparition du gradient

Pourquoi l'utilisation de la fonction sigmoïde dans les couches cachées favorise-t-elle le problème de disparition du gradient ?

  1. Parce que la sortie reste comprise entre 0 et 1, si bien qu'en empilant les couches, la sortie elle-même tend vers 0
  2. Parce que la somme des sorties est normalisée à 1, ce qui fait diminuer les valeurs à chaque couche
  3. Parce que la valeur maximale de sa dérivée est de 0,25, et qu'elle se multiplie à chaque couche remontée
  4. Parce que la sortie est toujours nulle pour une entrée négative, ce qui empêche cette unité d'apprendre
RéponseC. Parce que la valeur maximale de sa dérivée est de 0,25, et qu'elle se multiplie à chaque couche remontée

Le problème de disparition du gradient est le phénomène où, au cours de la rétropropagation, le gradient tend vers 0, empêchant les couches du côté de l'entrée d'apprendre. La fonction sigmoïde a une dérivée dont la valeur maximale n'est que de 0,25, si bien qu'à chaque couche remontée, un nombre inférieur ou égal à 0,25 est multiplié, ne laissant presque plus de gradient dans un réseau profond. Ce qui pose problème n'est pas la valeur de sortie elle-même, mais l'ampleur de sa dérivée. Le fait que le gradient devienne nul pour une entrée négative, arrêtant l'apprentissage, est une faiblesse de la fonction ReLU, à laquelle la fonction Leaky ReLU apporte une réponse. Normaliser la somme des sorties à 1 est le rôle de la fonction softmax.

Q4 | Fonction ReLU

Quelle description correspond correctement à la fonction ReLU ?

  1. Une fonction en forme de S qui comprime l'entrée entre 0 et 1
  2. Une fonction qui normalise l'ensemble des sorties pour que leur somme vaille 1
  3. Une fonction qui comprime l'entrée entre -1 et 1, avec une forme symétrique par rapport à l'origine
  4. Une fonction qui renvoie l'entrée telle quelle si elle est positive, et 0 si elle est négative
RéponseD. Une fonction qui renvoie l'entrée telle quelle si elle est positive, et 0 si elle est négative

La fonction ReLU est une fonction simple qui renvoie l'entrée telle quelle si elle est positive, et 0 si elle est négative. Sur le domaine positif, sa dérivée vaut toujours 1, si bien que le gradient ne diminue pas en remontant les couches, ce qui atténue fortement le problème de disparition du gradient. Cependant, sur le domaine négatif, la dérivée vaut 0, si bien qu'une unité tombée du côté négatif peut cesser d'apprendre ; la fonction Leaky ReLU, qui donne une légère pente au côté négatif, a été introduite pour cela. La forme en S comprimant entre 0 et 1 est la sigmoïde, la symétrie par rapport à l'origine entre -1 et 1 est la fonction tanh, et la normalisation de la somme des sorties à 1 est la fonction softmax.

Q5 | Leaky ReLU

Quel problème de la fonction ReLU la fonction Leaky ReLU vise-t-elle à résoudre ?

  1. Le fait que la somme des sorties ne vaille pas 1, empêchant une interprétation probabiliste
  2. Le fait que le gradient devienne nul pour une entrée négative, empêchant cette unité d'apprendre
  3. Le fait que le calcul comporte une fonction exponentielle, alourdissant chaque traitement
  4. Le fait que le gradient reste égal à 1 pour une entrée positive, rendant la mise à jour excessive
RéponseB. Le fait que le gradient devienne nul pour une entrée négative, empêchant cette unité d'apprendre

La fonction ReLU a une sortie et une dérivée nulles sur le domaine négatif ; si l'entrée d'une unité reste continuellement négative, aucun gradient ne circule et cette unité cesse définitivement d'apprendre. La fonction Leaky ReLU évite cette impasse en donnant aussi une légère pente au côté négatif. Le fait que le gradient vaille 1 sur le domaine positif est un avantage de ReLU et non un défaut : c'est précisément cette propriété qui prévient la disparition du gradient. Le fait que la somme des sorties ne vaille pas 1 est normal pour une fonction d'activation ; on utilise la fonction softmax pour la couche de sortie que l'on souhaite interpréter comme une probabilité. Le calcul comportant une fonction exponentielle correspond à la sigmoïde ou à tanh ; ReLU est au contraire léger à calculer.

Q6 | Softmax

Quel est l'usage typique de la fonction softmax ?

  1. La placer en couche de sortie d'un problème de régression, pour produire directement une valeur continue
  2. L'utiliser comme fonction d'activation d'une couche cachée, pour lui donner de la non-linéarité
  3. La placer en couche de sortie d'une classification binaire, pour produire la probabilité de l'une des classes
  4. La placer en couche de sortie d'une classification multiclasse, pour produire la probabilité de chaque classe
RéponseD. La placer en couche de sortie d'une classification multiclasse, pour produire la probabilité de chaque classe

La fonction softmax normalise l'ensemble de manière à ce que la somme des sorties vaille exactement 1 ; on la place donc en couche de sortie d'une classification multiclasse comportant trois classes ou plus, pour interpréter chaque valeur comme la probabilité d'appartenance à cette classe. On la combine typiquement avec l'entropie croisée comme fonction d'erreur. Produire une probabilité en couche de sortie d'une classification binaire relève de la fonction sigmoïde, et les fonctions d'activation largement utilisées en couche cachée sont ReLU ou tanh. Pour un problème de régression, la couche de sortie produit directement une valeur, avec l'erreur quadratique moyenne comme fonction d'erreur.

Q7 | Fonction d'erreur en régression

Dans un problème de régression prédisant une valeur continue comme le prix d'un logement, quelle fonction d'erreur est fondamentalement choisie ?

  1. L'entropie croisée, qui mesure l'écart entre la distribution de probabilité prédite et la distribution correcte
  2. Le Triplet Loss, qui fait apprendre les relations de distance sur un triplet
  3. Le Contrastive Loss, qui fait apprendre par la distance si deux éléments sont identiques ou non
  4. L'erreur quadratique moyenne, qui met au carré puis fait la moyenne des écarts entre prédiction et bonne réponse
RéponseD. L'erreur quadratique moyenne, qui met au carré puis fait la moyenne des écarts entre prédiction et bonne réponse

La régression étant un problème visant à prédire une valeur continue, l'erreur quadratique moyenne, qui met directement au carré puis fait la moyenne des écarts entre prédiction et bonne réponse, en est le choix naturel. L'entropie croisée est une fonction mesurant l'écart entre des distributions de probabilité, utilisée pour les problèmes de classification ; pour une classification multiclasse, la combiner avec la fonction softmax en couche de sortie est la forme de base. Le Triplet Loss fait apprendre les relations de distance sur un triplet référence-exemple positif-exemple négatif, et le Contrastive Loss fait apprendre par la distance si deux données sont identiques ou non ; ce sont toutes deux des fonctions d'erreur destinées à obtenir une représentation mesurant la ressemblance. Choisir la fonction d'erreur en fonction de la tâche est justement l'objectif de cette sous-section.

Q8 | Erreur sur un triplet

Quelle description de la fonction d'erreur Triplet Loss est appropriée ?

  1. Elle met au carré puis fait la moyenne des écarts entre prédiction et bonne réponse, mesurant directement l'écart d'amplitude des valeurs
  2. Elle mesure l'écart entre la distribution de probabilité prédite et la distribution correcte, largement utilisée pour l'apprentissage de la classification
  3. Elle utilise un triplet référence-exemple positif-exemple négatif, pour que l'exemple positif soit plus proche que l'exemple négatif
  4. Elle mesure l'écart entre deux distributions de probabilité et agit pour les rapprocher
RéponseC. Elle utilise un triplet référence-exemple positif-exemple négatif, pour que l'exemple positif soit plus proche que l'exemple négatif

Le Triplet Loss est une fonction d'erreur qui utilise un triplet composé d'une donnée de référence, d'une donnée de même nature (exemple positif) et d'une donnée de nature différente (exemple négatif), et fait apprendre de sorte que la distance entre la référence et l'exemple positif soit plus petite que celle entre la référence et l'exemple négatif. Elle est utilisée pour construire un espace exprimant par la distance si deux éléments se ressemblent. Mesurer l'écart entre deux distributions de probabilité relève de la divergence de Kullback-Leibler (KL), mettre au carré et faire la moyenne des écarts relève de l'erreur quadratique moyenne, et mesurer l'écart de distributions de probabilité largement utilisé pour la classification relève de l'entropie croisée. Notons que le Contrastive Loss, qui fait apprendre par paire si deux données sont identiques ou non, figure dans la même sous-section.

Q9 | Rétropropagation de l'erreur

Quelle description de la rétropropagation de l'erreur (backpropagation) est la plus appropriée ?

  1. La procédure de mise à jour elle-même, qui réécrit directement les poids en partant de la couche de sortie
  2. La procédure qui déplace les poids un peu au hasard et retient la direction où l'erreur a diminué
  3. La procédure qui fait avancer le calcul de l'entrée vers la sortie, pour obtenir la sortie
  4. La procédure qui, en utilisant la règle de dérivation en chaîne, remonte de la sortie vers l'entrée pour calculer le gradient
RéponseD. La procédure qui, en utilisant la règle de dérivation en chaîne, remonte de la sortie vers l'entrée pour calculer le gradient

La rétropropagation est une méthode qui utilise la règle de dérivation en chaîne, décomposant la dérivée d'une fonction composée en un produit de dérivées élémentaires, pour calculer efficacement le gradient de chaque poids en remontant de la sortie vers l'entrée. Ce qui est obtenu ici n'est que le gradient ; c'est la descente de gradient qui se charge de réellement déplacer les poids à l'aide de ce gradient. Il faut donc se garder d'affirmer sans nuance que la rétropropagation met à jour les poids, ce qui serait inexact. Déplacer les poids au hasard et retenir une bonne direction relève d'une approche de recherche n'utilisant pas le gradient, et faire avancer le calcul de l'entrée vers la sortie est la propagation avant, c'est-à-dire la procédure d'inférence.

Q10 | Problème d'attribution du crédit

Comment appelle-t-on le problème consistant à déterminer, pour l'erreur finale, quelle unité de quelle couche en porte quelle part de responsabilité ?

  1. Le problème d'attribution du crédit
  2. Le problème d'explosion du gradient
  3. Le problème de disparition du gradient
  4. Le fléau de la dimension
RéponseA. Le problème d'attribution du crédit

Le problème d'attribution du crédit est le problème de déterminer à quelle unité, de quelle couche intermédiaire, il faut attribuer quelle part de responsabilité pour l'erreur apparue en sortie. La rétropropagation est présentée comme ayant rendu ce calcul possible grâce à la règle de dérivation en chaîne. Le problème de disparition du gradient est le phénomène où, en remontant, le gradient tend vers 0 et empêche les couches du côté entrée d'apprendre ; le problème d'explosion du gradient est l'inverse, où le gradient devient trop grand et diverge ; les deux surviennent lors de l'application de la rétropropagation. Le fléau de la dimension est le phénomène où la quantité de données nécessaire augmente brusquement avec la dimension des caractéristiques, et le programme le place dans la sous-section de l'apprentissage automatique.

Q11 | Régularisation L1

Quelle caractéristique correspond à la régularisation L1 ?

  1. Elle prend comme pénalité la somme des carrés des poids, ce qui réduit uniformément leurs valeurs mais les amène difficilement à 0
  2. Elle prend comme pénalité la somme des valeurs absolues des poids, ce qui les amène facilement exactement à 0
  3. Elle désactive aléatoirement des unités à chaque apprentissage, pour éviter une dépendance déséquilibrée
  4. Elle interrompt l'apprentissage lui-même dès que l'erreur sur les données de validation commence à se dégrader
RéponseB. Elle prend comme pénalité la somme des valeurs absolues des poids, ce qui les amène facilement exactement à 0

La régularisation L1 ajoute à la fonction d'erreur, comme pénalité, la somme des valeurs absolues des poids, ce qui a tendance à pousser les poids exactement jusqu'à 0. Il en résulte que le coefficient d'une caractéristique inutilisée devient nul et disparaît automatiquement, produisant un effet de sélection de caractéristiques. On appelle cet état la parcimonie (sparsity). Prendre comme pénalité la somme des carrés des poids relève de la régularisation L2, qui réduit uniformément les valeurs mais les amène difficilement à 0. Désactiver aléatoirement des unités pendant l'apprentissage relève du dropout, et interrompre l'apprentissage en observant la dégradation de l'erreur de validation relève de l'arrêt précoce ; ce sont toutes deux des réponses au surapprentissage, mais avec des mécanismes différents.

Q12 | Régression ridge

Quelle régularisation est utilisée dans la régression ridge ?

  1. La régularisation L0, qui prend comme pénalité le nombre de poids non nuls
  2. La régularisation L2, qui ajoute la somme des carrés des poids comme pénalité
  3. La régularisation L1, qui prend comme pénalité la somme des valeurs absolues des poids
  4. Le dropout, qui désactive aléatoirement des unités pendant l'apprentissage
RéponseB. La régularisation L2, qui ajoute la somme des carrés des poids comme pénalité

La régression ridge est une méthode combinant la régression linéaire avec la régularisation L2. En ajoutant la somme des carrés des poids comme pénalité, l'ensemble des coefficients est maintenu à des valeurs faibles, ce qui prévient le surapprentissage. Combiner la régression linéaire avec la régularisation L1 donne la régression lasso, qui amène facilement les coefficients exactement à 0 et fournit une solution parcimonieuse. L'association L1-lasso et L2-ridge prête facilement à confusion ; il convient de les retenir absolument comme des paires. La régularisation L0 est l'idée de prendre comme pénalité le nombre même de poids non nuls, mais comme ce nombre n'est pas dérivable, elle s'intègre difficilement dans un apprentissage fondé sur le gradient. Le dropout est une méthode de régularisation destinée aux réseaux de neurones.

Q13 | Dropout

Quelle description du dropout est appropriée ?

  1. Retourner ou découper des images pour augmenter artificiellement les données d'apprentissage elles-mêmes
  2. Désactiver aléatoirement une certaine proportion d'unités pendant l'apprentissage, pour limiter le surapprentissage
  3. Interrompre l'apprentissage dès que l'erreur sur les données de validation commence à augmenter, pour prévenir le surapprentissage
  4. Ajuster, au sein d'un mini-lot, la sortie d'une couche intermédiaire à une moyenne de 0 et une variance de 1, pour stabiliser l'apprentissage
RéponseB. Désactiver aléatoirement une certaine proportion d'unités pendant l'apprentissage, pour limiter le surapprentissage

Le dropout est une méthode qui désactive aléatoirement, à chaque apprentissage, une certaine proportion des unités d'une couche cachée. L'apprentissage se fait ainsi chaque fois avec une forme de réseau légèrement différente, ce qui empêche de trop dépendre d'une combinaison particulière d'unités et produit un effet équivalent à la moyenne d'un grand nombre de modèles. La désactivation ne se fait que pendant l'apprentissage ; toutes les unités sont utilisées lors de l'inférence. Malgré la ressemblance des noms, le programme classe le dropout dans la sous-section 14 de régularisation, et non dans la sous-section 19 des couches de normalisation. Ajuster la distribution au sein d'un mini-lot relève de la normalisation par lots, augmenter artificiellement les données relève de l'augmentation de données, et interrompre en observant la dégradation de l'erreur relève de l'arrêt précoce.

Q14 | Apprentissage par mini-lots

Quelle description de l'apprentissage par mini-lots est appropriée ?

  1. Une manière de procéder qui ne met pas à jour les poids et continue d'utiliser une valeur fixée à l'avance
  2. Une manière de procéder qui calcule le gradient sur l'ensemble des données d'entraînement et ne met à jour les poids qu'une seule fois
  3. Une manière de procéder qui met à jour les poids groupe par groupe, de quelques dizaines à quelques centaines d'exemples
  4. Une manière de procéder qui met à jour les poids à chaque exemple de données d'entraînement utilisé
RéponseC. Une manière de procéder qui met à jour les poids groupe par groupe, de quelques dizaines à quelques centaines d'exemples

L'apprentissage par mini-lots divise les données d'entraînement en groupes de quelques dizaines à quelques centaines d'exemples, et met à jour les poids en calculant le gradient pour chaque groupe. Il possède une propriété intermédiaire : le gradient est moins bruité que dans l'apprentissage en ligne, qui met à jour à chaque exemple, et le calcul est moins lourd que dans l'apprentissage par lots, qui ne met à jour qu'une fois sur l'ensemble des données ; c'est pourquoi il constitue l'essentiel de la pratique. La descente de gradient stochastique (SGD) calcule le gradient sur une partie seulement des données, si bien que ce bruit présente l'avantage de faciliter la sortie des points de selle ou des minima locaux peu profonds. Ne pas mettre à jour les poids ne constitue pas un apprentissage, mais une simple inférence.

Q15 | Époque

Quelle relation entre l'époque (epoch) et l'itération est appropriée ?

  1. L'époque désigne la taille du mini-lot, l'itération désigne l'ampleur du taux d'apprentissage
  2. L'époque désigne un parcours complet des données, l'itération désigne une mise à jour des poids
  3. L'époque désigne une mise à jour des poids, l'itération désigne un parcours complet des données
  4. L'époque et l'itération désignent toutes deux un parcours complet des données
RéponseB. L'époque désigne un parcours complet des données, l'itération désigne une mise à jour des poids

L'époque désigne un parcours complet de l'ensemble des données d'entraînement, et l'itération désigne une mise à jour des poids. Les deux sont liées par la taille du mini-lot : le nombre d'itérations par époque est égal au nombre d'exemples de données divisé par la taille du mini-lot. Par exemple, pour 3000 exemples de données traités par lots de taille 50, une époque correspond à 60 itérations. Augmenter la taille du mini-lot stabilise le gradient à chaque fois mais réduit le nombre de mises à jour par époque, tandis que la réduire augmente le nombre de mises à jour mais accroît le bruit. La taille du mini-lot comme le taux d'apprentissage sont des hyperparamètres décidés à l'avance par l'humain, des notions distinctes de l'époque et de l'itération.

Q16 | Point de selle

Quelle description du point de selle est appropriée ?

  1. Un point qui est un minimum local vu d'une certaine direction, mais un maximum local vu d'une autre direction
  2. Un point où l'erreur est la plus faible dans son voisinage immédiat, mais où de meilleurs points existent ailleurs
  3. Une région où la valeur de l'erreur est constante sur toute la plage, sans pente dans aucune direction
  4. Un point où l'erreur est la plus faible sur l'ensemble de la plage de valeurs possibles
RéponseA. Un point qui est un minimum local vu d'une certaine direction, mais un maximum local vu d'une autre direction

Un point de selle est un point qui, vu d'une certaine direction, est le fond d'une vallée, mais qui, vu d'une autre direction, est le sommet d'une colline. Son nom vient de sa forme rappelant une selle de cheval. Dans le deep learning, où le nombre de paramètres est très élevé, on considère qu'il est plus fréquent de rester bloqué dans un point de selle que dans un minimum local qui serait simultanément un fond de vallée dans toutes les directions. Le point où l'erreur est la plus faible sur l'ensemble de la plage est l'optimum global, et celui qui n'est le plus faible que localement est un minimum local. La descente de gradient stochastique (SGD), dont le gradient comporte du bruit, permet plus facilement de sortir de ce type de blocage.

Q17 | Adam

Quelles idées Adam combine-t-il en tant que méthode d'optimisation ?

  1. Il combine deux types de pénalités : la somme des valeurs absolues des poids et la somme de leurs carrés
  2. Il combine une astuce utilisant l'inertie avec une astuce adaptant le taux d'apprentissage
  3. Il alterne entre deux manières de procéder : l'apprentissage par lots et l'apprentissage en ligne
  4. Il combine deux types de recherche : la recherche par grille (grid search) et la recherche aléatoire
RéponseB. Il combine une astuce utilisant l'inertie avec une astuce adaptant le taux d'apprentissage

Adam est une méthode d'optimisation combinant l'idée de la momentum, qui ajoute la mise à jour précédente comme inertie, avec l'idée de RMSprop, qui ajuste automatiquement le taux d'apprentissage pour chaque paramètre ; c'est souvent le choix par défaut en pratique. La lignée adaptant le taux d'apprentissage commence avec AdaGrad, qui réduit le taux d'apprentissage d'autant plus qu'un paramètre a subi de grandes mises à jour, mais continue de le réduire indéfiniment ; RMSprop a assoupli cela au moyen d'une moyenne mobile exponentielle. La même lignée comprend aussi AdaDelta, AdaBound et AMSBound. La pénalité sur les poids relève de la régularisation, et la recherche par grille comme la recherche aléatoire relèvent de la recherche d'hyperparamètres ; aucun des deux n'est la règle de mise à jour elle-même.

Q18 | No Free Lunch

Que dit le théorème du No Free Lunch ?

  1. Qu'il n'existe aucun algorithme universel supérieur aux autres pour tous les problèmes
  2. Que le besoin en données d'apprentissage augmente brusquement avec la dimension des caractéristiques
  3. Qu'en continuant de réduire le taux d'apprentissage, on atteint nécessairement l'optimum global
  4. Que l'agrandissement d'un modèle fait d'abord se dégrader l'erreur avant qu'elle ne redescende
RéponseA. Qu'il n'existe aucun algorithme universel supérieur aux autres pour tous les problèmes

Le théorème du No Free Lunch affirme qu'en moyenne sur tous les problèmes envisageables, il n'existe pas d'algorithme universel supérieur à tous les autres. Le choix d'une méthode doit donc se faire au cas par cas pour chaque problème, et il n'existe pas de réponse valable pour tous les cas. Le fait que l'agrandissement d'un modèle fasse d'abord se dégrader l'erreur avant qu'elle ne redescende est le phénomène de double descente, également recensé dans la même sous-section. Le fait que le besoin en données augmente brusquement avec la dimension des caractéristiques est le fléau de la dimension. Il n'y a aucune garantie qu'en continuant de réduire le taux d'apprentissage on atteigne nécessairement l'optimum global : on peut rester bloqué dans un minimum local ou un point de selle.

Q19 | Recherche aléatoire

Quelle description de la recherche aléatoire (random search), méthode de recherche d'hyperparamètres, est appropriée ?

  1. Aligner les valeurs candidates en grille et essayer toutes les combinaisons dans l'ordre
  2. Désactiver aléatoirement des unités à chaque apprentissage pour obtenir un comportement moyen
  3. Interrompre l'apprentissage lui-même dès que l'erreur sur les données de validation commence à se dégrader
  4. Choisir des points au hasard dans la plage explorée et tester ces combinaisons
RéponseD. Choisir des points au hasard dans la plage explorée et tester ces combinaisons

La recherche aléatoire est une méthode qui choisit des points au hasard dans la plage de recherche des hyperparamètres et les teste. Contrairement à la recherche par grille, qui aligne les candidats en grille pour tout essayer exhaustivement, elle a l'avantage de moins gaspiller d'essais sur des hyperparamètres inefficaces, et permet, avec le même nombre d'essais, d'explorer plus finement les axes qui comptent. Des valeurs décidées à l'avance par l'humain comme le taux d'apprentissage, la taille du mini-lot ou le nombre de couches sont des hyperparamètres. Interrompre l'apprentissage en observant la dégradation de l'erreur de validation relève de l'arrêt précoce, et désactiver aléatoirement des unités pendant l'apprentissage relève du dropout ; ni l'un ni l'autre n'est une méthode de recherche.

Q20 | Phénomène de double descente

Comment appelle-t-on le phénomène où, en augmentant la taille du modèle ou le volume d'apprentissage, l'erreur de validation se dégrade d'abord avant de redescendre à nouveau ?

  1. Le problème d'explosion du gradient
  2. L'acquisition de l'invariance
  3. Le phénomène de double descente
  4. Le problème d'attribution du crédit
RéponseC. Le phénomène de double descente

Le phénomène de double descente est le fait qu'en augmentant la taille du modèle ou le volume d'apprentissage, l'erreur de validation se dégrade d'abord, puis recommence à descendre lorsqu'on augmente encore davantage. Ce nom vient du fait que la courbe d'erreur descend deux fois. Cela va à l'encontre de l'intuition naïve selon laquelle agrandir un modèle conduit toujours à un surapprentissage et donc à une dégradation ; le programme le recense parmi les méthodes d'optimisation comme l'un des cadres expliquant l'observation récente selon laquelle un modèle plus grand peut donner de meilleurs résultats. Le problème d'attribution du crédit est la question de savoir à quelle unité attribuer la responsabilité de l'erreur, le problème d'explosion du gradient est le problème où le gradient diverge lors de la rétropropagation, et l'acquisition de l'invariance est le rôle de la couche de pooling.

Q21 | Couche de convolution

Quelle caractéristique de la couche de convolution, comparée à une couche entièrement connectée, est appropriée ?

  1. Elle se connecte à toutes les unités de la couche précédente, si bien que plus l'entrée est grande, plus les poids augmentent
  2. Elle réutilise le même filtre à différentes positions, ce qui permet d'extraire des caractéristiques avec peu de poids
  3. Elle renvoie l'état du pas de temps précédent en entrée, ce qui lui permet de traiter des données séquentielles ordonnées
  4. Elle ne possède aucun poids appris, et réduit la sortie en prenant une valeur représentative de chaque région
RéponseB. Elle réutilise le même filtre à différentes positions, ce qui permet d'extraire des caractéristiques avec peu de poids

La couche de convolution fait glisser un petit filtre sur l'entrée en réutilisant les mêmes poids, pour en extraire des caractéristiques locales. Le fait que chaque connexion se limite aux éléments proches, combiné à la réutilisation des mêmes poids à différentes positions, permet de traiter une image avec beaucoup moins de paramètres qu'une couche entièrement connectée. Un effet secondaire de cette réutilisation est que le sujet peut être reconnu comme la même caractéristique quel que soit l'endroit où il apparaît dans l'image. Se connecter à toutes les unités de la couche précédente décrit la couche entièrement connectée, ne pas avoir de poids appris et prendre une valeur représentative décrit la couche de pooling, et renvoyer l'état du pas de temps précédent décrit la couche récurrente. Le résultat du passage d'un filtre est appelé carte de caractéristiques, la largeur de déplacement est appelée le pas (stride), et le remplissage des bords est appelé le padding.

Q22 | Normalisation par lots

Quelle description de la normalisation par lots (batch normalization) est appropriée ?

  1. Elle ajoute la somme des carrés des poids comme pénalité à la fonction d'erreur, pour uniformiser des poids faibles
  2. Elle désactive une certaine proportion d'unités à chaque apprentissage, pour éliminer une dépendance déséquilibrée
  3. Elle ajuste, au sein d'un seul échantillon, l'ensemble des valeurs de la couche, sans dépendre de la taille du mini-lot
  4. Elle regroupe, au sein d'un mini-lot, les valeurs d'un même canal et les ajuste à une moyenne de 0 et une variance de 1
RéponseD. Elle regroupe, au sein d'un mini-lot, les valeurs d'un même canal et les ajuste à une moyenne de 0 et une variance de 1

La normalisation par lots est une couche de normalisation qui regroupe, au sein d'un mini-lot, les valeurs d'un même canal et les ajuste à une moyenne de 0 et une variance de 1, stabilisant et accélérant l'apprentissage. Sa faiblesse est que les statistiques deviennent peu fiables lorsque la taille du mini-lot est petite. Ajuster l'ensemble des valeurs d'une couche au sein d'un seul échantillon relève de la normalisation par couche (layer normalization), qui, n'étant pas dépendante de la taille du mini-lot, est souvent utilisée dans les modèles traitant des séquences. Il existe aussi la normalisation par instance et la normalisation par groupe ; ces quatre méthodes figurent ensemble dans les couches de normalisation du programme. Notons que cette sous-section a changé de nom, passant de « couches de régularisation » à « couches de normalisation » dans la version 1.1. La régularisation L2, qui prend la somme des carrés des poids comme pénalité, et le dropout, qui désactive des unités, sont classés non pas parmi les couches de normalisation mais parmi la régularisation.

Q23 | Couche de pooling

Quel est le rôle le plus approprié assuré par la couche de pooling ?

  1. Sauter des couches pour ajouter l'entrée à une couche ultérieure, créant un chemin par lequel le gradient peut passer
  2. Uniformiser la distribution des sorties d'une couche intermédiaire pour stabiliser et accélérer l'apprentissage
  3. Réduire une région à une valeur représentative, pour rendre le modèle robuste à de légers décalages de position
  4. Compresser l'entrée vers une dimension réduite, puis permettre de reconstruire l'entrée d'origine
RéponseC. Réduire une région à une valeur représentative, pour rendre le modèle robuste à de légers décalages de position

La couche de pooling réduit une région de taille fixe à une seule valeur représentative ; il existe le max pooling, qui prend la valeur maximale de la région, et l'average pooling, qui prend la moyenne. Non seulement la résolution diminue, allégeant le calcul, mais en plus la valeur représentative change peu même si le sujet se décale de quelques pixels, ce qui rend le modèle robuste aux décalages de position. On appelle cela l'acquisition de l'invariance. Le global average pooling (GAP), qui réduit une carte de caractéristiques entière en une seule valeur par simple moyenne, permet de réduire fortement le nombre de paramètres lorsqu'on l'utilise à la place d'une couche entièrement connectée finale. L'absence de poids appris dans la couche de pooling est aussi une différence par rapport à la couche de convolution. Sauter des couches pour ajouter l'entrée relève de la connexion résiduelle (skip connection), uniformiser la distribution relève d'une couche de normalisation, et compresser puis reconstruire relève de l'autoencodeur.

Q24 | Connexion résiduelle

Pourquoi l'adoption de connexions résiduelles (skip connections) permet-elle à l'apprentissage de progresser même dans des réseaux très profonds ?

  1. Parce qu'un chemin sautant des couches se crée, permettant au gradient de suivre une voie plus courte jusqu'au côté de l'entrée
  2. Parce que les unités sont désactivées aléatoirement, ce qui évite de dépendre d'un chemin particulier
  3. Parce que la distribution des sorties de chaque couche est uniformisée, réduisant la variation des valeurs couche par couche
  4. Parce que le nombre de poids diminue, réduisant le risque de surapprentissage même avec des données limitées
RéponseA. Parce qu'un chemin sautant des couches se crée, permettant au gradient de suivre une voie plus courte jusqu'au côté de l'entrée

Une connexion résiduelle est un câblage qui saute plusieurs couches pour ajouter l'entrée telle quelle à la sortie d'une couche ultérieure. Lors de la rétropropagation, le gradient parvient jusqu'au côté de l'entrée non seulement par le long chemin traversant de nombreuses couches, mais aussi par le chemin court qui saute des couches, ce qui rend le gradient moins susceptible de disparaître même pour un empilement profond. ResNet est l'exemple représentatif qui a rendu possible, en adoptant cette idée, une profondeur dépassant les 100 couches ; dans le programme, le seul mot-clé placé dans la sous-section des connexions résiduelles est ResNet. Désactiver aléatoirement des unités relève du dropout, et uniformiser la distribution de chaque couche relève d'une couche de normalisation ; ce sont des mécanismes distincts de la connexion résiduelle. La connexion résiduelle n'est pas non plus une astuce visant à réduire le nombre de poids.

Q25 | LSTM et GRU

Quelle combinaison correcte concernant les portes de LSTM et de GRU ?

  1. LSTM et GRU possèdent tous deux en commun deux portes : réinitialisation et mise à jour
  2. LSTM et GRU possèdent tous deux en commun trois portes : entrée, sortie et oubli
  3. LSTM en a trois, entrée, sortie et oubli ; GRU en a deux, réinitialisation et mise à jour
  4. LSTM en a deux, réinitialisation et mise à jour ; GRU en a trois, entrée, sortie et oubli
RéponseC. LSTM en a trois, entrée, sortie et oubli ; GRU en a deux, réinitialisation et mise à jour

LSTM possède un chemin de mémoire appelé CEC où l'information est conservée, et contrôle les entrées et sorties au moyen de trois portes : la porte d'entrée, qui décide ce qui y est écrit, la porte d'oubli, qui décide ce qui est jeté, et la porte de sortie, qui décide ce qui en sort. Ce mécanisme permet de conserver des dépendances longues, atténuant fortement le problème de disparition du gradient des réseaux de neurones récurrents. GRU est une simplification de LSTM, avec seulement deux portes : la porte de réinitialisation et la porte de mise à jour. Il a moins de paramètres et un calcul plus léger, mais n'est pas toujours plus performant que LSTM. Le fait que le nombre de portes soit de 3 et 2, et que CEC soit un terme propre à LSTM, sont des distinctions récurrentes dans les questions.

Q26 | Jordan

Quelle structure correspond correctement au réseau de Jordan ?

  1. Il renvoie la sortie de la couche de sortie en entrée de la couche cachée du pas de temps suivant
  2. Il renvoie la sortie de la couche cachée en entrée de la couche cachée du pas de temps suivant
  3. Il renvoie la sortie de la couche de sortie en entrée de la couche d'entrée du même pas de temps
  4. Il fait sauter directement la valeur de la couche d'entrée jusqu'à la couche de sortie, en l'y ajoutant
RéponseA. Il renvoie la sortie de la couche de sortie en entrée de la couche cachée du pas de temps suivant

Le réseau de Jordan est un réseau de neurones récurrent qui renvoie la sortie de la couche de sortie en entrée de la couche cachée du pas de temps suivant. À l'inverse, celui qui renvoie la sortie de la couche cachée à la couche cachée du pas de temps suivant est le réseau d'Elman ; ce qui est renvoyé fait la différence entre les deux. Les deux sont des structures destinées à traiter des données temporelles dans leur ordre, et leur apprentissage utilise le BPTT, qui déroule le réseau dans la direction temporelle avant d'y appliquer la rétropropagation. Pour les séquences longues, les problèmes de disparition et d'explosion du gradient apparaissent fortement, d'où l'usage de LSTM ou GRU dotés d'un mécanisme de portes. Sauter des couches pour ajouter une valeur relève de la connexion résiduelle, sans rapport avec la dimension temporelle.

Q27 | Attention

Quelle description du Source-Target Attention est appropriée ?

  1. Un mécanisme qui calcule la force du lien entre les éléments d'une même séquence
  2. Un mécanisme qui calcule la force du lien entre deux séquences distinctes
  3. Un mécanisme qui fait fonctionner en parallèle plusieurs façons de porter attention, puis en agrège les résultats
  4. Un mécanisme qui ajoute un signal propre à chaque position, pour donner l'information de l'ordre des mots
RéponseB. Un mécanisme qui calcule la force du lien entre deux séquences distinctes

L'Attention est un mécanisme qui calcule sous forme de poids l'endroit de l'entrée sur lequel se concentrer, exprimé au moyen d'une requête (query), d'une clé (key) et d'une valeur (value). Parmi ces mécanismes, le Source-Target Attention calcule la force du lien entre deux séquences distinctes, dans des situations comme la traduction où la séquence d'entrée et la séquence de sortie sont séparées. Celui qui calcule le lien entre les éléments d'une même séquence est le Self-Attention, un composant central du Transformer. Ajouter un signal propre à chaque position pour donner l'ordre des mots est l'encodage positionnel, et faire fonctionner en parallèle plusieurs façons de porter attention avant d'en agréger les résultats est le Multi-Head Attention ; ce sont là d'autres composants distincts du Transformer.

Q28 | Encodage positionnel

Quelle description du Transformer est appropriée ?

  1. Un modèle qui compresse l'entrée vers une dimension réduite, puis apprend à reconstruire l'entrée d'origine
  2. Un modèle empilant alternativement convolution et pooling, pour rassembler progressivement des caractéristiques locales
  3. Un modèle construit sans connexion récurrente, avec l'Attention, où l'ordre des mots est donné par l'encodage positionnel
  4. Une structure empilant des connexions récurrentes, transmettant successivement l'état du pas de temps précédent
RéponseC. Un modèle construit sans connexion récurrente, avec l'Attention, où l'ordre des mots est donné par l'encodage positionnel

Le Transformer est un modèle de séquence construit sans connexion récurrente, centré sur l'Attention. N'ayant pas besoin d'attendre le calcul du pas de temps précédent, il peut traiter l'ensemble d'une séquence en parallèle, et saisir directement, en un seul calcul, la relation entre des mots éloignés. Cependant, comme le traitement en parallèle fait disparaître l'information de l'ordre des mots, l'encodage positionnel, qui ajoute un signal propre à chaque position, fournit cet ordre. Le point piège est que le Transformer n'est pas un type de réseau de neurones récurrent. Empiler des connexions récurrentes en transmettant l'état du pas de temps précédent correspond au RNN, empiler convolution et pooling correspond au CNN, et compresser puis reconstruire correspond à l'autoencodeur.

Q29 | VAE

En quoi l'autoencodeur variationnel (VAE) diffère-t-il d'un autoencodeur ordinaire ?

  1. Le fait de compresser l'entrée vers une dimension réduite avant de reconstruire l'entrée d'origine
  2. Le fait d'apprendre l'espace compressé non pas comme un point unique mais comme une distribution de probabilité, permettant de créer de nouvelles données
  3. Le fait de pouvoir apprendre sans préparer d'étiquette de bonne réponse
  4. Le fait d'apprendre couche par couche successivement, pour construire les valeurs initiales d'un réseau profond
RéponseB. Le fait d'apprendre l'espace compressé non pas comme un point unique mais comme une distribution de probabilité, permettant de créer de nouvelles données

L'autoencodeur variationnel (VAE) apprend l'espace compressé non pas comme un point unique mais comme une distribution de probabilité. En tirant une valeur de cette distribution pour la reconstruire, on peut créer de nouvelles données absentes des données d'apprentissage, ce qui en fait un modèle génératif. Compresser vers une dimension réduite avant de reconstruire, ainsi que la capacité à apprendre sans étiquette de bonne réponse, sont des propriétés partagées avec un autoencodeur ordinaire, et non spécifiques au VAE. Apprendre couche par couche successivement pour construire les valeurs initiales d'un réseau profond relève du pré-entraînement par autoencodeur empilé. Le programme cite aussi, dans la même sous-section, VQ-VAE, info VAE et β-VAE.

Q30 | Mixup

Parmi les méthodes d'augmentation de données pour les images, quelle opération effectue Mixup ?

  1. Découper une partie de l'image et l'agrandir pour en faire un nouvel exemple
  2. Superposer deux images pour créer un seul nouvel exemple
  3. Retourner l'image horizontalement, pour créer des exemples orientés différemment
  4. Recouvrir d'un carré une partie de l'image, masquant l'information de cette zone
RéponseB. Superposer deux images pour créer un seul nouvel exemple

Mixup est une méthode d'augmentation de données qui superpose deux images selon un certain ratio, en mélangeant les étiquettes de bonne réponse selon le même ratio, pour créer de nouvelles données d'apprentissage. CutMix, au nom proche, ne superpose pas les images mais découpe et colle une partie de chacune des deux images en une seule. Recouvrir d'un carré une partie de l'image relève de Cutout ou de Random Erasing, retourner horizontalement relève de Random Flip, et découper une partie relève de Crop. Il existe aussi Rotate pour la rotation, Brightness pour la luminosité, Contrast pour le contraste, et RandAugment qui décide automatiquement quelles transformations appliquer et dans quelle mesure ; pour le texte, on cite paraphrasing et noising. Dans tous les cas, il est important de ne pas choisir une transformation qui détruirait le sens.

Q31 | GoogLeNet

Quelle caractéristique correspond à GoogLeNet ?

  1. Il utilise le module Inception, qui applique en parallèle des filtres de tailles différentes
  2. Il a remporté l'ILSVRC de 2012, utilisant la fonction ReLU et l'apprentissage sur GPU
  3. Il introduit des connexions résiduelles sautant des couches, atteignant une profondeur dépassant 100 couches
  4. Il empile uniquement des convolutions 3 par 3 de petite taille, pour adopter une architecture profonde
RéponseA. Il utilise le module Inception, qui applique en parallèle des filtres de tailles différentes

GoogLeNet est un modèle qui utilise le module Inception, appliquant en parallèle des filtres de tailles différentes puis agrégeant les résultats, ce qui lui permet une architecture profonde tout en limitant le nombre de paramètres. Celui qui a adopté une architecture simple et profonde en n'empilant que des convolutions 3 par 3 de petite taille est VGG, arrivé en bonne position à l'ILSVRC 2014, la même année que GoogLeNet. Celui qui a rendu possible une profondeur dépassant 100 couches grâce à des connexions résiduelles sautant des couches est ResNet, et celui qui a remporté l'ILSVRC 2012 en combinant la fonction ReLU, le dropout et l'apprentissage sur GPU est AlexNet. Par la suite, la lignée s'est étendue avec Wide ResNet, DenseNet, SENet, EfficientNet, MobileNet, etc., et le programme recense aussi Vision Transformer, qui abandonne la convolution pour adopter l'idée du Transformer.

Q32 | Détection en une étape

Quelle caractéristique commune à YOLO et SSD est appropriée ?

  1. Détecter les objets par une procédure en deux étapes : proposer des régions candidates, puis les classer
  2. Attribuer une classe à chaque pixel, pour colorer différemment les régions de l'image
  3. Effectuer en une seule inférence l'extraction des régions candidates et la classification, en privilégiant la vitesse
  4. Viser à estimer la position des points articulaires du corps humain pour en déduire la posture
RéponseC. Effectuer en une seule inférence l'extraction des régions candidates et la classification, en privilégiant la vitesse

YOLO et SSD sont des modèles de détection d'objets en une seule étape, qui effectuent en une seule inférence l'extraction des régions candidates et le jugement de classe, avec la vitesse comme point fort. À l'inverse, la lignée débutant avec R-CNN, puis évoluant vers Fast R-CNN et Faster R-CNN, adopte une méthode en deux étapes, proposant d'abord des régions candidates avant de les classer, plus lente mais tendant vers une meilleure précision. Attribuer une classe à chaque pixel relève de la segmentation sémantique, dont FCN, SegNet, U-Net, PSPNet et DeepLab sont des exemples représentatifs. La segmentation d'instances, qui distingue les objets d'une même classe individu par individu, est assurée par Mask R-CNN, et l'estimation de posture, qui estime les points articulaires du corps humain, est représentée par OpenPose.

Q33 | BERT

Quelle description de BERT est appropriée ?

  1. Il associe une image et sa légende dans un même espace vectoriel, pour relier les deux
  2. Il remonte le processus d'ajout de bruit en sens inverse, pour générer les données progressivement
  3. Il utilise l'encodeur du Transformer, en observant le contexte dans les deux directions, avant et après
  4. Il empile des couches récurrentes et lit les mots un par un dans l'ordre pour construire le contexte
RéponseC. Il utilise l'encodeur du Transformer, en observant le contexte dans les deux directions, avant et après

BERT est un modèle de langage utilisant l'encodeur du Transformer, dont la particularité est de se pré-entraîner en observant le contexte dans les deux directions, avant et après une phrase. Il a popularisé l'usage consistant à se pré-entraîner sur un grand volume de texte avant de s'adapter à des tâches spécifiques. Empiler des couches récurrentes et lire les mots un par un dans l'ordre correspond à un modèle utilisant un réseau de neurones récurrent ; le Transformer, lui, ne possède pas de connexion récurrente. Associer une image et sa légende dans un même espace vectoriel correspond à CLIP, que le programme place dans le multimodal. Remonter en sens inverse un processus d'ajout de bruit pour générer les données correspond au modèle de diffusion, qui relève de la sous-section de la génération de données.

Q34 | CBOW

Dans quel sens le CBOW de word2vec apprend-il ?

  1. Il apprend à prédire, à partir des mots apparaissant autour, le mot central
  2. Il apprend à prédire, à partir du mot central, les mots apparaissant autour de lui
  3. Il apprend à prédire, à partir de l'ensemble d'une phrase, si celle-ci est positive ou négative
  4. Il apprend à prédire, à partir de la première moitié d'une phrase, si la seconde moitié la suit
RéponseA. Il apprend à prédire, à partir des mots apparaissant autour, le mot central

Le CBOW est une méthode qui apprend à prédire le mot central à partir des mots qui l'entourent. À l'inverse, le skip-gram apprend à prédire les mots environnants à partir du mot central ; le sens étant inversé, il faut prendre garde à ne pas les confondre. Les deux sont des méthodes de word2vec, dont l'objectif est d'obtenir une représentation distribuée exprimant les mots par des vecteurs denses. Le vecteur one-hot, qui attribue une dimension à chaque mot, a une dimension égale à la taille du vocabulaire et ne peut pas exprimer la proximité entre mots, tandis que dans une représentation distribuée, les mots de sens proche sont placés proches les uns des autres dans l'espace vectoriel. Prédire si une phrase est positive ou négative est une tâche d'application appelée analyse de sentiment, distincte de la méthode d'apprentissage des représentations de mots.

Q35 | RLHF

Quelle méthode construit un modèle de récompense à partir de retours humains, puis ajuste le modèle par apprentissage par renforcement ?

  1. DQN
  2. A3C
  3. PPO
  4. RLHF
RéponseD. RLHF

Le RLHF est une méthode qui construit un modèle de récompense à partir des évaluations de préférence données par des humains, puis ajuste le modèle par apprentissage par renforcement en utilisant cela comme récompense. Il est connu pour l'ajustement des modèles de langage, mais le programme le place, ce qui est assez surprenant à retenir, non pas dans le traitement du langage naturel mais dans la sous-section de l'apprentissage par renforcement profond. DQN est la méthode représentative de l'apprentissage par renforcement profond qui approxime la fonction de valeur d'action par un réseau de neurones, PPO est une méthode d'apprentissage de politique qui limite l'amplitude de mise à jour de la politique pour la stabiliser, et A3C est une méthode qui fait progresser l'apprentissage en exécutant plusieurs environnements en parallèle. La même sous-section recense aussi Double DQN, Dueling Network, Rainbow, APE-X, Agent57, etc.

Q36 | Diffusion

Quelle description du modèle de diffusion (Diffusion Model) est appropriée ?

  1. Il apprend une perception tridimensionnelle à partir de photos prises sous plusieurs angles, pour créer une image sous un nouvel angle
  2. Il apprend l'espace compressé comme une distribution de probabilité, dont il extrait une valeur pour reconstruire
  3. Il fait s'affronter deux réseaux pour générer des données ressemblant au réel
  4. Il remonte en sens inverse le processus d'ajout progressif de bruit, pour générer des données
RéponseD. Il remonte en sens inverse le processus d'ajout progressif de bruit, pour générer des données

Le modèle de diffusion est un modèle génératif qui remonte en sens inverse un processus ajoutant progressivement du bruit aux données, pour produire les données visées à partir du bruit. Son mécanisme est totalement différent du réseau antagoniste génératif (GAN), qui fait s'affronter deux réseaux pendant l'apprentissage ; ce n'est pas un type de GAN. Du GAN dérivent DCGAN, CycleGAN et Pix2Pix. Apprendre une perception tridimensionnelle à partir de photos sous plusieurs angles correspond à NeRF, et apprendre l'espace compressé comme une distribution de probabilité correspond à l'autoencodeur variationnel (VAE). Il convient de retenir GAN, VAE et modèle de diffusion comme trois lignées distinctes placées côte à côte.

Q37 | Apprentissage par transfert

Quelle différence entre l'apprentissage par transfert et le fine-tuning est appropriée ?

  1. L'apprentissage par transfert réapprend l'ensemble des poids, le fine-tuning n'apprend que la couche de sortie
  2. L'apprentissage par transfert et le fine-tuning apprennent tous deux les poids à partir de zéro, sans pré-entraînement
  3. L'apprentissage par transfert apprend principalement les environs de la couche de sortie, le fine-tuning réapprend une plage plus large
  4. L'apprentissage par transfert ne s'applique qu'aux images, le fine-tuning uniquement au langage
RéponseC. L'apprentissage par transfert apprend principalement les environs de la couche de sortie, le fine-tuning réapprend une plage plus large

L'apprentissage par transfert est une méthode qui fixe la partie extrayant les caractéristiques d'un modèle pré-entraîné, et n'apprend sur la nouvelle tâche que les environs de la couche de sortie. Le fine-tuning réapprend sur les nouvelles données l'ensemble ou une large plage des poids, ce qui demande davantage de données et de calcul, mais peut mieux progresser lorsque le domaine cible diffère fortement des données du pré-entraînement. Avec le fine-tuning, un oubli catastrophique peut survenir, où les capacités que possédait le modèle d'origine sont perdues. Les deux approches présupposent un modèle pré-entraîné, et n'apprennent pas à partir de zéro. Ce n'est pas non plus le type de données traitées qui détermine le choix entre les deux.

Q38 | Modèle de fondation

Dans quelle sous-section du programme le terme modèle de fondation (foundation model) est-il placé ?

  1. Dans l'apprentissage par transfert et le fine-tuning, aux côtés du Few-shot
  2. Dans le multimodal, aux côtés de CLIP et DALL-E
  3. Dans l'apprentissage par renforcement profond, aux côtés de DQN et RLHF
  4. Dans le traitement du langage naturel, aux côtés des grands modèles de langage (LLM)
RéponseB. Dans le multimodal, aux côtés de CLIP et DALL-E

Le modèle de fondation est un terme désignant un grand modèle pré-entraîné sur un vaste volume de données, réutilisable pour diverses tâches en aval ; le programme le place dans la sous-section 32, le multimodal, aux côtés de CLIP, DALL-E, Flamingo, Unified-IO, Zero-shot, etc. Les termes liés à l'IA générative sont dispersés dans le programme : le grand modèle de langage (LLM) est recensé dans la sous-section 27, le traitement du langage naturel, et RLHF dans la sous-section 29, l'apprentissage par renforcement profond. Aux côtés de la sous-section 31, l'apprentissage par transfert et le fine-tuning, figurent Few-shot, One-shot, l'apprentissage auto-supervisé, le modèle pré-entraîné, l'oubli catastrophique, etc. Retenir dans quelle sous-section chaque terme est placé aide à saisir la vue d'ensemble du programme.

Q39 | SHAP

Quelle idée correspond à SHAP, une méthode d'IA explicable (XAI) ?

  1. Échanger délibérément la valeur d'une caractéristique et mesurer l'importance à partir de la baisse de précision
  2. Montrer, sous forme de carte de chaleur, l'endroit d'une image sur lequel s'est basé le jugement
  3. Ajuster un modèle simple au voisinage d'une prédiction et l'expliquer par ses coefficients
  4. L'idée de la théorie des jeux coopératifs, répartissant et montrant la contribution de chaque caractéristique
RéponseD. L'idée de la théorie des jeux coopératifs, répartissant et montrant la contribution de chaque caractéristique

SHAP est une méthode qui emprunte une idée utilisée en théorie des jeux coopératifs, pour répartir de manière équitable et montrer la contribution de chaque caractéristique à une prédiction. Montrer sous forme de carte de chaleur l'endroit d'une image sur lequel s'est basé le jugement correspond à CAM ou Grad-CAM, échanger délibérément la valeur d'une caractéristique et mesurer l'importance à partir de la baisse de précision correspond à Permutation Importance, et ajuster un modèle simple au voisinage d'une prédiction individuelle pour l'expliquer par ses coefficients correspond à LIME. Ces méthodes figurent toutes dans la sous-section 33, interprétabilité des modèles, du programme, et l'ensemble des démarches visant à présenter la base d'un jugement sous une forme compréhensible par l'humain est appelé IA explicable (XAI).

Q40 | Hypothèse du billet de loterie

Quel est le contenu de l'hypothèse du billet de loterie (lottery ticket hypothesis) concernant l'allègement des modèles ?

  1. L'idée selon laquelle faire apprendre à un petit modèle la sortie d'un grand modèle enseignant permet de conserver la performance
  2. L'idée selon laquelle un grand réseau contient une partie qui, entraînée seule, atteint une performance équivalente
  3. L'idée selon laquelle plus un modèle est grand, plus le besoin en données d'apprentissage augmente exponentiellement
  4. L'idée selon laquelle réduire la précision numérique représentant les poids n'entraîne qu'une baisse de précision minime
RéponseB. L'idée selon laquelle un grand réseau contient une partie qui, entraînée seule, atteint une performance équivalente

L'hypothèse du billet de loterie est l'hypothèse selon laquelle un grand réseau contient un sous-réseau gagnant qui, extrait seul et entraîné indépendamment, atteint une performance équivalente à celle de l'ensemble. Elle est évoquée comme contexte expliquant pourquoi l'élagage (pruning), qui retire les connexions ou les couches à faible contribution, fonctionne. Faire apprendre à un petit modèle la sortie d'un grand modèle enseignant est la distillation, et réduire la précision numérique représentant les poids est la quantification ; ces trois méthodes, avec le pruning, constituent les techniques d'allègement du programme, regroupées sous le terme de compression de modèle. L'augmentation brusque du besoin en données d'apprentissage relève du fléau de la dimension. Le cas typique où l'allègement est requis est l'IA embarquée (edge AI), qui exécute l'inférence côté terminal.

Entraînement : répondez aux questions de cette page

Cet outil d'entraînement pose les questions dans un ordre aléatoire (il fonctionne lorsque JavaScript est activé). Vous pouvez de toute façon lire toutes les questions et explications ci-dessus.

* Les explications sont fournies à titre d'information pour l'étude. Le programme et le système des examens changent selon les années : vérifiez toujours les annonces officielles de l'organisme qui organise l'examen.

Cette page est une traduction du texte original japonais. En cas de différence entre la traduction et l'original, la version japonaise fait foi. Voir l'original en japonais