lbourdois/en-fr-nyu-dl-course-corpus huggingface dataset:
English: Designing the pretext task is tricky. if you design the task too easy, the network won’t learn good representation. But if you design the task hard, it can become harder than the downstream task and the network wouldn’t be trained well. Also, the representations generated via this method will be tailored to the specific downstream task.
French: La conception de la tâche de prétexte est délicate. Si vous la concevez trop facile, le réseau n’apprendra pas une bonne représentation. Mais si vous la concevez trop difficile, elle peut devenir plus difficile que la tâche en aval et le réseau ne sera pas bien entraîné. En outre, les représentations générées par cette méthode seront adaptées à la tâche spécifique en aval.
English: As an example, as shown in the image below, for an image of a dog, you take two distorted versions of the image, then encode them with your backbone network to generate representations and you make them to be close to each other. Thus, ensuring the two images share some semantic information.
French: Par exemple, comme le montre l’image ci-dessous, pour l’image d’un chien, vous prenez deux versions déformées de l’image, puis vous les passez dans les backbones pour générer des représentations et vous faites en sorte qu’elles soient proches les unes des autres. Ainsi, vous vous assurez que les deux images partagent certaines informations sémantiques.
English: They also prevent trivial solutions. The network could collapse with just the above condition, as the network can become invariant not only to distortions but to the input altogether i.e., irrespective of the input, it could generate the same output. JEMs try to prevent this trivial solution in different ways.
French: Le réseau pourrait s’effondrer avec la seule condition ci-dessus car il peut devenir invariant non seulement aux distorsions mais aussi à l’entrée dans son ensemble, c’est-à-dire que, quelle que soit l’entrée, il pourrait générer la même sortie. Les JEMs essaient d’empêcher cette solution triviale de différentes manières.
English: Instead of considering only local energy ( between two pairs of distorted images ), these methods get a batch of the images and ensure that the collection of the representation, HxHx​, doesn’t have the same rows or columns. ( which is the trivial solution )
French: Au lieu de considérer uniquement l’énergie locale (entre deux paires d’images déformées), ces méthodes ont un batch d’images et s’assurent que la collection de la représentation, HxHx​, n’a pas les mêmes lignes ou colonnes (ce qui correspond à la solution triviale).
English: 2. An (implicit) term that prevents the trivial solution (constant output) - implicit because a lot of “other methods” do not have an explicit term to prevent the trivial solution.
French: 2. Un terme (implicite) qui empêche la solution triviale (sortie constante). Le terme est implicite car beaucoup d’« autres méthodes » n’ont pas de terme explicite pour empêcher la solution triviale.
English: To make the training stable, people usually normalize the embeddings or put a hinge on the loss function to prevent the norm of embeddings from becoming too large or too small
French: Pour rendre l’entraînement stable, les gens normalisent généralement les enchâssements ou mettent un seuil sur la fonction de perte pour empêcher la norme des enchâssements de devenir trop grande ou trop petite.
English: Contrastive methods push positive pairs closer and negative pairs away. More details about the contrastive methods including MoCo, PIRL, and SimCLR have been discussed here.
French: Les méthodes contrastives rapprochent les paires positives et éloignent les paires négatives. Plus de détails sur les méthodes contrastives, y compris MoCo, PIRL et SimCLR, sont disponibles dans l’édition 2020 du cours.
English: Notice that it gives different weights to different negative samples. The negative pair that has high similarity is pushed much harder than the negative pair with low similarity because there’s a softmax. Also, the similarity measurement here is the inner product between the two representations, and to prevent the gradient explosion, the norm is normalized. Thus, even if the vector grew long, the term ensures that it is a unit vector.
French: Remarquons qu’elle donne des poids différents aux différents échantillons négatifs. La paire négative qui a une forte similarité est poussée beaucoup plus fort que la paire négative avec une faible similarité parce qu’il y a la softmax. De plus, la mesure de similarité est ici le produit scalaire hermitien entre les deux représentations que l’on normalise pour éviter l’explosion du gradient. Ainsi, même si le vecteur est devenu long, le terme garantit qu’il s’agit d’un vecteur unitaire.
English: To handle this, SimCLR and MoCO use large batch sizes to find the samples. The difference between SimCLR and MoCO is the way they deal with the large batch size. SimCLR uses 8192 as the batch size. However, MoCO tries to solve the requirement of a large batch size without actually using a large batch size by using a memory bank. It uses a small batch size but instead of using negative samples from only the current batch, it collects them even from previous batches. For example: with a 256 batch size, aggregating the previous 32 batches of negative samples results essentially in a batch size of 8192. This method saves memory and avoids the effort to generate the negative samples again and again.
French: Pour résoudre ce problème, SimCLR et MoCo utilisent des batchs de grande taille pour trouver les échantillons. La différence entre SimCLR et MoCo est la façon dont ils traitent la grande taille des batchs. SimCLR utilise une taille de batchs de 8192. Cependant, MoCo essaie de résoudre l’exigence d’une grande taille de batch sans en utiliser réellement une grâce à une banque mémoire. Au lieu d’utiliser des échantillons négatifs provenant uniquement du batch actuel, on en collecte dans les batchs précédents. Par exemple : pour un batch de taille 256, l’agrégation des 32 batchs précédents d’échantillons négatifs donne une taille de 8192. Cette méthode permet d’économiser de la mémoire et évite d’avoir à générer les échantillons négatifs encore et encore.
English: Issue: Because B is updated every step, the backbone is updated every step, and thus, after a while, the old negative samples are not valid anymore and can lead to a decrease in performance. To avoid this, MoCO uses a momentum backbone that slows down the training of the right backbone. In that case, the difference between the older momentum backbone and the new momentum backbone is not that different, retaining the validitiy of the negative sample even after a while.
French: Problème : Parce que B est mis à jour à chaque pas de temps, le backbone est mis à jour à chaque pas de temps, alors après un certain temps, les vieux échantillons négatifs ne sont plus encore valides ce qui peut mener à une baisse des performances. Pour éviter cela, MoCo utilise un backbone avec momentum qui ralentit l’entraînement du backbone de droite. Dans ce cas, la différence entre le vieux backbone avec momentum et le nouveau backbone avec momentum n’est pas grande, conservant la validité des échantillons négatifs même après un certain temps.
English: In practice, people found out that contrastive methods need a lot of setup to make them work. They require techniques such as weight sharing between the branches, batch normalization, feature-wise normalization, output quantization, stop gradient, memory banks etc.,.This makes it hard to analyze. Also, they are not stable without the use of those techniques.
French: En pratique, les méthodes contrastives nécessitent une énorme configuration pour fonctionner. Elles requièrent des techniques comme le partage de poids entre les branches, de la normalisation par batch, normalisation par caractéristiques, quantification de sortie, arrêt du gradient, banque mémoire, etc. Ces méthodes sont difficiles à analyser et sont instables sans toutes ces techniques.
English: Most of the non-contrastive methods are based on information theory. For example: Redundancy reduction ( Barlow Twins ) and Information. They don’t require special architectures or engineering techniques.
French: La plupart des méthodes non contrastives sont basées sur la théorie de l’information. Par exemple la réduction de la redondance (Barlow Twins) et de l’information. Elles ne nécessitent pas d’architectures spéciales ou de techniques d’ingénierie.
English: It tries to maximize the information content of the embeddings by producing embedding variables that are decorrelated to each other. If the variables are correlated to each other, they covariate together and the information content is reduced. Thus, it prevents an informational collapse in which the variables carry redundant information. Also, this method requires a comparatively small batch size.
French: La méthode essaie de maximiser le contenu informationnel des enchâssements en produisant des variables d’enchâssement qui sont décorrélées les unes des autres. Si les variables sont corrélées les unes aux autres, elles covarient ensemble et le contenu informationnel est réduit. Ainsi, cette méthode empêche un effondrement informationnel dans lequel les variables portent des informations redondantes. De plus, cette méthode nécessite une taille de batch relativement faible.
English: 2. Applies sinkhorn clustering method to each of the stacked representation to generate corresponding clustered Q matrices where each row ( qx​ ) represents a one hot vector indicating the cluster the corresponding representation belongs to
French: 2. On applique la méthode de clustering de l’algorithme de Sinkhorn à chacune des représentations empilées afin de générer les matrices Q correspondantes. Chaque ligne (qx) de ces matrices représente un vecteur one-hot indiquant le cluster auquel appartient la représentation correspondante.
English: 4. Minimizes the loss function which is the sum of two crossentropy functions between qxqx​ and qx​~​ and qy​ and qy​~​.
French: 4. on minimise la fonction de perte qui est la somme de deux fonctions d’entropie croisée entre qxqx​ et qx~​ et qy et qy​~​.
English: Sinkhorn algorithm: Sinkhorn algorithm can distribute samples to not just one cluster but to every cluster. Thus, it can help us prevent all the data clustering into a single centroid or any such nonuniform distribution. It takes in hyperparameters that allow us to deploy different levels of uniform distribution across clusters degenerating to K-means algorithm on one extreme and to the perfectly uniform distribution on the other extreme
French: L’algorithme de Sinkhorn : L’algorithme de Sinkhorn permet de distribuer les échantillons non pas à un seul cluster mais à tous les clusters. Ainsi, il peut nous aider à éviter que toutes les données se regroupent en un seul centroïde ou toute autre distribution non uniforme. Il prend en compte des hyperparamètres qui nous permettent de déployer différents niveaux de distribution uniforme entre les clusters, revenant à équivaloir à l’algorithme K-means à un extrême et à la distribution uniforme à l’autre extrême.
English: Softargmax clustering: Each hy​ is normalized. Why​ indicates similarity between hy and all other centroids. Softargmax turns the cosine similarly ( positive or negative ) into a probability.
French: Clustering softargmax : Chaque hy​ est normalisé. L’indice Why indique la similarité entre hy​ et tous les autres centroïdes. La fonction softargmax transforme la similarité cosinus (positif ou négatif) en une probabilité.
English: This method partitions latent space into a few clusters automatically without labels and the hope is that these clusters will be related to the actual classes. Thus, later, we would just need a few labeled data samples to assign each cluster to the corresponding label under supervised learning.
French: Cette méthode partitionne automatiquement l’espace latent en quelques clusters sans étiquettes et notre espoir est que ces clusters seront liés aux classes réelles. Ainsi, plus tard, nous n’aurons besoin que de quelques échantillons de données étiquetées pour affecter chaque cluster à l’étiquette correspondante dans le cadre de l’apprentissage supervisé.
English: In a trivial solution, all the representations will be the same and thus belong to the same centroid. However, with sinkhorn, different clusters have an equal number of samples, thus the representations can’t be put into one centroid, preventing a trivial solution.
French: Dans une solution triviale, toutes les représentations sont identiques et appartiennent donc au même centroïde. Cependant, avec Sinkhorn, les différents clusters ont un nombre égal d’échantillons, de ce fait les représentations ne peuvent pas être placées dans un seul centroïde. Cela empêche ainsi une solution triviale.
English: The loss function for all the previous methods including contrasting methods needs a batch or pool of negative samples, thus creating problems with distributed training. However, the loss functions of these methods are local. These methods perform well but an understanding of why they don’t collapse is not yet available. Probably there’s some implicit regularization happening in these networks to prevent them from converging to a trivial solution.
French: La fonction de perte de toutes les méthodes précédentes, y compris les méthodes contrastives, nécessite un batch ou un pool d’échantillons négatifs, ce qui pose des problèmes pour l’entraînement distribué. Cependant, les fonctions de perte de ces méthodes sont locales. Ces méthodes sont performantes mais on ne comprend pas encore pourquoi elles ne s’effondrent pas. Il y a probablement une régularisation implicite dans ces réseaux qui les empêche de converger vers une solution triviale.
English: BYOL adds a predictor, predicting hy from hx​. The energy function (D) is a cosine similarity between hy and predicted hy​. There is no term for negative samples i.e., this method only pushes positive pairs closer and has no enforcement on negative pairs. It is thought that asymmetrical architecture with extra layers makes this method work.
French: BYOL ajoute un prédicteur, prédisant hy à partir de hx​. La fonction d’énergie (D) est une similarité cosinus entre hy​ et le hy prédit. Il n’y a pas de terme pour les échantillons négatifs, c’est-à-dire que cette méthode ne fait que rapprocher les paires positives et n’a aucune action sur les paires négatives. On pense que l’architecture asymétrique avec des couches supplémentaires permet à cette méthode de fonctionner.
English: The two softargmax components used have different coldness or temperature. The energy function is the cross entropy between these two, pushing them together. Even this method doesn’t enforce anything on negative samples.
French: Les deux composants softargmax utilisés ont une froideur/température différente. La fonction d’énergie est l’entropie croisée entre ces deux, rapprochant ces composants. Cette méthode n’impose rien sur les échantillons négatifs.
English: If you initialize the network with a trivial solution, then that network will never work. This is because if the trivial solution is already achieved, the loss function will produce a zero gradient and thus, can never escape from the trivial solution. However, in other cases, the training dynamic is adjusted in a way that they never converge in these methods.
French: Si vous initialisez le réseau avec une solution triviale, alors ce réseau ne fonctionnera jamais. En effet, si la solution triviale est déjà atteinte, la fonction de perte produira un gradient nul et ne pourra donc jamais s’échapper de la solution triviale. Cependant, dans d’autres cas, la dynamique d’entraînement est ajustée de telle sorte qu’ils ne convergent jamais dans ces méthodes.
English: We can further improve these models by experimenting with data augmentation and network architecture. We don’t have a good understanding of these but they are very important. In fact, finding good augmentation may boost more performance than changing the loss function.
French: Nous pouvons encore améliorer ces modèles en faisant des expériences sur l’augmentation des données et l’architecture du réseau. Nous n’avons pas une bonne compréhension de ces éléments, mais ils sont très importants. En fait, trouver une bonne augmentation peut améliorer les performances plus que la modification de la fonction de perte.
English: It has been found empirically that random crop is the most critical one. It might be because the random crop is the only we can change the spatial information about the images. Flip does the same partly but is weak. Color jitter and gaussian blur change channels.
French: Il a été constaté empiriquement que le recadrage aléatoire est le plus critique. Cela pourrait être dû au fait que le recadrage aléatoire est le seul moyen de modifier l’information spatiale des images. Le retournement fait la même chose en partie, mais il est faible. La variation de couleur et le flou gaussien changent les canaux.
English: Recently people are moving towards masking augmentation instead of traditional augmentation in which we mask out most ( ~75% in the below image ) of the patches. It can replace random crop since it’s another way to remove the redundancy of the spatial information
French: Récemment, les chercheurs se sont tournés vers l’augmentation par masquage au lieu de l’augmentation traditionnelle dans laquelle nous masquons la plupart (~75% dans l’image ci-dessous) des patchs. Elle peut remplacer le recadrage aléatoire car c’est une autre façon de supprimer la redondance de l’information spatiale.
English: Issues: This works well only with transformer type of architecture and not with convnet. This is because masking introduces too many random artificial edges. For any transformer, the first layer is the conv layer, with kernel size equal to the patch size and thus, this never experiences artificial edges. For convnets which have sliding windows, the artificial edges can’t be ignored and will result in noise.
French: Problèmes : Cela ne fonctionne bien qu’avec une architecture de type transformer et non avec de type ConvNet. En effet, le masquage introduit trop de bords artificiels aléatoires. Pour n’importe quel transformer, la première couche est la couche ConvNet, avec une taille de noyau égale à la taille du patch, ce qui fait qu’il n’y a jamais de bords artificiels. Pour les ConvNets qui ont des fenêtres glissantes, les bords artificiels ne peuvent pas être ignorés et se traduiront par du bruit.
English: The projector is used to project into a lower dimension and the expander is used to project into a higher dimension. A projector is used only during the pretraining and removed while performing the downstream task. This is because the projector removes a lot of information even if the output dimension of the projector and the backbone are the same.
French: Le projecteur est utilisé pour projeter dans une dimension inférieure et l’extenseur est utilisé pour projeter dans une dimension supérieure. Le projecteur n’est utilisé que pendant le pré-entraînement et est supprimé pendant l’exécution de la tâche en aval. En effet, le projecteur supprime beaucoup d’informations même si la dimension de sortie du projecteur et du backbone est la même.