lbourdois/en-fr-nyu-dl-course-corpus huggingface dataset:
English: This was originally used to train an image search system for Google. At that time, you would type a query into Google and it would encode that query into a vector. It would then compare that vector to a bunch of vectors from images that were previously indexed. Google would then retrieve the images that were the closest to your vector.
French: Elle a été utilisée à l’origine pour l’entraînement d’un système de recherche d’images pour Google. À l’époque, il fallait taper une requête dans Google et celui-ci l’encodait dans un vecteur. Il comparait ensuite ce vecteur à un ensemble de vecteurs provenant d’images qui avaient été précédemment indexées. Google récupère alors les images qui sont les plus proches de votre vecteur.
English: This softmax version of a margin loss. You have a bunch of positives and a bunch of negatives you want to pass through a softmax. This loss function then tries to make exp(−y[i]∗x[i]) for the correct x[i] smaller than for any other.
French: C’est la version softmax de la perte avec marge. Nous avons un tas de positifs et un tas de négatifs que nous voulons faire passer par une softmax. Cette fonction de perte tente alors de rendre exp(−y[i]∗x[i]) plus petit que les autres pour le bon x[i].
English: This loss function wants to pull the positive values of y[i]∗x[i] closer together and push the negative values far apart but, as opposed to a hard margin, with some continuous, exponentially decaying effect on the loss .
French: Cette fonction de perte veut rapprocher les valeurs positives de y[i]∗x[i] et éloigner les valeurs négatives, mais par opposition à une marge fixe, avec un effet continu de décroissance exponentielle sur la perte.
English: This margin-base loss allows for different inputs to have variable amounts of targets. In this case you have several categories for which you want high scores and it sums the hinge loss over all categories. For EBMs, this loss function pushes down on desired categories and pushes up on non-desired categories.
French: Cette perte permet à différentes entrées d’avoir des quantités variables d’objectifs. Dans ce cas, nous avons plusieurs catégories pour lesquelles nous souhaitons obtenir des scores élevés et elle additionne la perte sur toutes les catégories. Pour les EBMs, cette fonction de perte pousse vers le bas les catégories souhaitées et vers le haut les catégories non souhaitées.
English: Hinge embedding loss used for semi-supervised learning by measuring whether two inputs are similar or dissimilar. It pulls together things that are similar and pushes away things are dissimilar. The y variable indicates whether the pair of scores need to go in a certain direction. Using a hinge loss, the score is positive if y is 1 and some margin Δ if y is -1.
French: Cette perte est utilisée pour l’apprentissage semisupervisé en mesurant si deux entrées sont similaires ou dissemblables. Elle rassemble les choses qui sont similaires et repousse celles qui sont dissemblables. La variable y indique si la paire de notes doit aller dans une certaine direction. En utilisant une telle perte, le score est positif si y est égal à 1 et une certaine marge Δ si y est égal à −1.
English: This loss is used for measuring whether two inputs are similar or dissimilar, using the cosine distance, and is typically used for learning nonlinear embeddings or semi-supervised learning.
French: Cette perte est utilisée pour mesurer si deux entrées sont similaires ou dissemblables, en utilisant la distance cosinusoïdale et est généralement utilisée pour l’apprentissage d’enchâssements non linéaires ou pour l’apprentissage semisupervisé.
English: The advantage of this is that whenever you have two vectors and you want to make their distance as large as possible, it is very easy to make the network achieve this by make the vectors very long. Of course this is not optimal. You don’t want the system to make the vectors big but rotate vectors in the right direction so you normalise the vectors and calculate the normalised Euclidean distance.
French: L’avantage de cette méthode est que lorsque nous avons deux vecteurs et que voulons rendre leur distance aussi grande que possible, il est très facile de faire en sorte que le réseau y parvienne en rendant les vecteurs très longs. Bien sûr, ce n’est pas optimal. Nous ne voulons pas que le système fabrique des vecteurs de grande taille, mais qu’il fasse tourner les vecteurs dans la bonne direction, de sorte que nous normalisons les vecteurs et calculons la distance euclidienne normalisée.
English: For positive cases, this loss tries to make the vectors as aligned as possible. For negative pairs, this loss tries to make the cosine smaller than a particular margin. The margin here should be some small positive value.
French: Pour les cas positifs, cette perte essaie de rendre les vecteurs aussi alignés que possible. Pour les paires négatives, cette perte essaie de rendre le cosinus plus petit qu’une marge particulière. La marge doit ici être une petite valeur positive.
English: In a high dimensional space, there is a lot of area near the equator of the sphere. After normalisation, all your points are now normalised on the sphere. What you want is samples that are semantically similar to you to be close. The samples that are dissimilar should be orthogonal. You don’t want them to be opposite each other because there is only one point at the opposite pole. Rather, on the equator, there is a very large amount of space so you want to make the margin some small positive value so you can take advantage of all this area.
French: Dans un espace de grande dimension, il y a beaucoup de régions près de l’équateur de la sphère. Après la normalisation, tous nos points sont maintenant normalisés sur la sphère. Ce que nous voulons, c’est que les échantillons qui nous ressemblent sémantiquement soient proches. Les échantillons qui sont dissemblables doivent être orthogonaux. Nous ne voulons pas qu’ils soient opposés entre eux car il n’y a qu’un seul point au pôle opposé. Au contraire, sur l’équateur, il y a une très grande quantité d’espace, donc nous voulons que la marge ait une petite valeur positive afin de pouvoir profiter de toute cette zone.
English: The alignment of input to target is assumed to be “many-to-one”, which limits the length of the target sequence such that it must less than or equal to the input length.
French: L’alignement de l’entrée sur la cible est supposé être « plusieurs vers un », ce qui limite la longueur de la séquence cible de sorte qu’elle doit être inférieure ou égale à la longueur d’entrée.
English: This loss function simply pushes down on the energy of the correct answer. If the network is not designed properly, it might end up with a mostly flat energy function as you only trying to make the energy of the correct answer small but not pushing up the energy elsewhere. Thus, the system might collapses.
French: Cette fonction de perte pousse simplement vers le bas l’énergie de la bonne réponse. Si le réseau n’est pas conçu correctement, il peut se retrouver avec une fonction de perte d’énergie pratiquement nulle car nous essayons seulement de rendre l’énergie de la bonne réponse faible mais nous ne poussons pas l’énergie vers le haut ailleurs. Ainsi, le système peut s’effondrer.
English: This loss function pushes down on the energy of the correct answer while pushing up on the energies of all answers in proportion to their probabilities. This reduces to the perceptron loss when β→∞. It has been used for a long time in many communities for discriminative training with structured outputs.
French: Cette fonction de perte pousse vers le bas l’énergie de la bonne réponse tout en poussant vers le haut les énergies de toutes les réponses en proportion de leurs probabilités. Cela se réduit à la perte de perceptron lorsque β→∞. Elle est utilisée depuis longtemps pour un entraînement discriminant avec des sorties structurés.
English: This loss makes the energy of the correct answer small, and at the same time, makes the energy for all other answers as large as possible. However, this loss does not prevent the function from giving the same value to every incorrect answer Yi, so in this sense, it is a bad loss function for non-linear systems. To improve this loss, we define the most offending incorrect answer.
French: Cette perte rend l’énergie de la bonne réponse faible et en même temps rend aussi grande que possible l’énergie pour toutes les autres réponses. Cependant, cette perte n’empêche pas la fonction de donner la même valeur à chaque réponse incorrecte Yi, donc dans ce sens, c’est une mauvaise fonction de perte pour les systèmes non linéaires. Pour améliorer cette perte, nous définissons la réponse incorrecte la plus offensante.
English: Most offending incorrect answer: discrete case Let y be a discrete variable. Then for a training sample (Xi,Yi), the most offending incorrect answer Yˉi is the answer that has the lowest energy among all possible answers that are incorrect:
French: Réponse incorrecte la plus offensante : cas discret. Soit y une variable discrète. Ensuite, pour un jeu d’entraînement (Xi,Yi), la réponse incorrecte la plus offensante Yˉi est la réponse qui a la plus faible énergie parmi toutes les réponses possibles qui sont incorrectes :
English: Most offending incorrect answer: continuous case Let y be a continuous variable. Then for a training sample (Xi,Yi), the most offending incorrect answer Yˉi is the answer that has the lowest energy among all answers that are at least ϵ away from the correct answer:
French: Réponse incorrecte la plus offensante : cas continu. Soit y une variable continue. Ensuite, pour un échantillon d’entraînement (Xi,Yi), la réponse incorrecte la plus offensante Yˉi est la réponse qui a la plus faible énergie parmi toutes les réponses qui sont au moins à ϵ de la bonne réponse :
English: In the discrete case, the most offending incorrect answer is the one with smallest energy that isn’t the correct answer. In the continuous case, the energy for y extremely close to Yi should be close to E(W,Yi,Xi). Furthermore, the argminargmin evaluated over y not equal to Yi would be 0. As a result, we pick a distance ϵ and decide that only Y’s at least ϵ from Yi​ should be considered the “incorrect answer”. This is why the optimization is only over Y’s of distance at least ϵ from Yi.
French: Dans le cas discret, la réponse incorrecte la plus offensante est celle dont l’énergie est la plus faible et qui n’est pas la bonne réponse. Dans le cas continu, l’énergie pour y extrêmement proche de Yi devrait être proche de E(W,Yi,Xi). De plus, le argminargmin évalué sur y non égal à Yi serait 0. En conséquence, nous choisissons une distance ϵ et décidons que seul y est au moins ϵ de Yi​ doit être considéré comme la mauvaise réponse. C’est pourquoi l’optimisation ne porte que sur les y de distance au moins égale à ϵ de Yi.
English: If the energy function is able to ensure that the energy of the most offending incorrect answer is higher than the energy of the correct answer by some margin, then this energy function should work well.
French: Si la fonction d’énergie est capable de garantir que l’énergie de la réponse incorrecte la plus offensante est supérieure à l’énergie de la bonne réponse d’une certaine marge, alors cette fonction d’énergie devrait bien fonctionner.
English: This can be thought of as a “soft” hinge loss. Instead of composing the difference of the correct answer and the most offending incorrect answer with a hinge, it’s now composed with a soft hinge. This loss tries to enforce an “infinite margin”, but because of the exponential decay of the slope it doesn’t happen.
French: On peut considérer cela comme une Hinge Loss douce. Cette perte tente d’imposer une marge infinie, mais en raison de la décroissance exponentielle de la pente, cela ne se produit pas.
English: This loss combines the square of the energy with a square hinge. The combination tries to minimize the energy and but enforce margin at least mm on the most offending incorrect answer. This is very similar to the loss used in Siamese nets.
French: Cette perte combine le carré de l’énergie avec une hinge au carrée. La combinaison tente de minimiser l’énergie et d’appliquer une marge d’au moins m à la mauvaise réponse la plus offensante. Cette méthode est très similaire à la perte utilisée dans les réseaux siamois.
English: The right-hand column indicates if the energy function enforces a margin. The plain old energy loss does not push up anywhere, so it doesn’t have a margin. The energy loss doesn’t work for every problem. The perceptron loss works if you have a linear parametrisation of your energy but not in general. Some of them have a finite margin like the hinge loss, and some have an infinite margin like the soft hinge.
French: La colonne de droite indique si la fonction d’énergie impose une marge. La simple perte d’énergie ne pousse nulle part donc elle n’a pas de marge. La perte d’énergie ne fonctionne pas pour tous les problèmes. La perte de perceptron fonctionne si nous avons une paramétrisation linéaire de notre énergie mais pas en général. Certaines ont une marge finie comme la perte hinge et d’autres une marge infinie comme la charnière souple.
English: You want to push up on a point that is sufficiently far from Yi, because if it’s too close, the parameters may not move much since the function defined by a neural net is “stiff”. But in general, this is hard and this is the problem that methods selecting contrastive samples try to solve. There’s no single correct way to do it.
French: Vous voulez pousser sur un point qui est suffisamment éloigné de Yi car s’il est trop proche, les paramètres peuvent ne pas bouger beaucoup puisque la fonction définie par un réseau neuronal est « raide ». Mais en général, c’est difficile et c’est le problème que les méthodes de sélection d’échantillons contrastifs tentent de résoudre. Il n’y a pas une seule façon correcte de le faire.
English: We assume that y is discrete, but if it were continuous, the sum would be replaced by an integral. Here, E(W,Yi,Xi)−E(W,y,Xi) is the difference of E evaluated at the correct answer and some other answer. C(Yi,y) is the margin, and is generally a distance measure between Yi and y. The motivation is that the amount we want to push up on a incorrect sample y should depend on the distance between y and the correct sample Yi​. This can be a more difficult loss to optimize.
French: Nous supposons que y est discret, mais s’il était continu, la somme serait remplacée par une intégrale. Ici, E(W,Yi,Xi)−E(W,y,Xi) est la différence entre E évaluée à la bonne réponse et une autre réponse. C(Yi,y) est la marge et est généralement une mesure de distance entre Yi et y. La motivation est que le montant que nous voulons pousser vers le haut sur un échantillon incorrect y devrait dépendre de la distance entre y et l’échantillon correct Yi​. Il peut s’agir d’une perte plus difficile à optimiser.
English: Let us say we want to learn how to drive in a model-free Reinforcement learning way. We train models in RL by letting the model make mistakes and learn from them. But this is not the best way since mistakes might take us to heaven/hell where there is no point in learning.
French: Disons que nous voulons apprendre à conduire dans un modèle d’apprentissage par renforcement (RL pour Reinforcement learning). Nous entraînons des modèles en RL en laissant le modèle faire des erreurs et en apprenant de celles-ci. Mais ce n’est pas la meilleure façon de procéder car les erreurs peuvent nous conduire au paradis ou en enfer où il est inutile d’apprendre.
English: So, let us talk about a more ‘human’ way to learn how to drive a car. Consider an example of lane switching. Assuming the car is moving at 100 km/h, which roughly translates to 30 m/s, if we look 30 m in front of us, we are roughly looking 1 s into the future.
French: Parlons donc d’une méthode plus « humaine » pour apprendre à conduire une voiture. Prenons un exemple de changement de voie. En supposant que la voiture roule à 100 km/h, ce qui correspond à peu près à 30 m/s, si nous regardons à 30 m devant nous, nous regardons en gros 1 s dans le futur.
English: If we were turning, we need to make a decision based on the near future. To take a turn in a few meters, we take an action now, which in this context is turning the steering wheel. Making a decision not only depends on your driving but also the surrounding vehicles in the traffic. Since everyone around us is not so deterministic, it is very hard to take every possibility into account.
French: Si nous devons tourner, nous devons prendre une décision en fonction de l’avenir proche. Pour prendre un virage dans quelques mètres, nous prenons une mesure maintenant, qui dans ce contexte est de tourner le volant. Prendre une décision ne dépend pas seulement de notre conduite, mais aussi des véhicules environnants dans la circulation. Comme tout le monde autour de nous n’est pas aussi déterministe, il est très difficile de prendre en compte toutes les possibilités.
English: Let us now break down what is happening in this scenario. We have an agent(represented here by a brain) that takes the input st​ (position, velocity and context images) and produces an action at ​(steering control, acceleration and braking). The environment takes us to a new state and returns a cost ct​.
French: Décomposons maintenant ce qui se passe dans ce scénario. Nous avons un agent (représenté ici par un cerveau) qui prend l’entrée st​ (images de la position, de la vitesse et du contexte) et produit une action at​ (contrôle de la direction, accélération et freinage). L’environnement nous amène à un nouvel état et nous renvoie un coût ct​.
English: This is like a simple network where you take actions given a specific state and the world gives us the next state and the next consequence. This is model-free because with every action we are interacting with the real world. But can we train an agent without actually interacting with the real world?
French: C’est comme un réseau où nous prenons des actions étant donné un état spécifique et où le monde nous donne l’état suivant et la conséquence suivante. C’est un modèle libre, car chaque action nous fait interagir avec le monde réel. Mais pouvons-nous entraîner un agent sans interagir avec le monde réel ?
English: Before discussing how to learn the world model, let us explore the dataset we have. We have 7 cameras mounted on top of a 30 story building facing the interstate. We adjust the cameras to get the top-down view and then extract bounding boxes for each vehicle. At a time t, we can determine ptpt​ representing the position, vt​ representing the velocity and itit​ representing the current traffic state around the vehicle.
French: Avant de discuter de la manière d’apprendre le modèle du monde, explorons le jeu de données dont nous disposons. Nous avons 7 caméras montées sur le toit d’un bâtiment de 30 étages qui fait face à une autoroute. Nous ajustons les caméras pour obtenir une vue de haut en bas et extrayons ensuite des boîtes de délimitation pour chaque véhicule. Au temps t, nous pouvons déterminer ptpt​ représentant la position, vt​ représentant la vitesse et itit​ représentant l’état actuel de la circulation autour du véhicule.
English: Since we know the kinematics of the driving, we can invert them to figure out what are the actions that the driver is taking. For example, if the car is moving in a rectilinear uniform motion, we know that the acceleration is zero(meaning there is no action)
French: Comme nous connaissons les cinématiques de la conduite, nous pouvons les inverser pour déterminer quelles sont les actions que le conducteur effectue. Par exemple, si la voiture se déplace dans un mouvement rectiligne uniforme, nous savons que l’accélération est nulle (ce qui signifie qu’il n’y a pas d’action).
English: The illustration in blue is the feed and the illustration in green is what we can call the machine representation. To understand this better, we have isolated a few vehicles(marked in the illustration). The views we see below are the bounding boxes of the field-of-view of these vehicles.
French: L’illustration en bleu est le flux et l’illustration en vert est ce que l’on peut appeler la représentation de la machine. Pour mieux comprendre cela, nous avons isolé quelques véhicules (marqués dans l’illustration). Les vues que nous voyons ci-dessus sont les boites délimitant le champ de vision de ces véhicules.
English: There are two different types of costs here: lane cost and proximity cost. Lane cost tells us how well we are within a lane and proximity cost tells us how close we are to the other cars.
French: Il y a deux types de coûts différents ici : le coût de la voie et le coût de proximité. Le coût de la voie nous indique dans quelle mesure nous sommes à l’intérieur d’une voie et le coût de proximité nous indique dans quelle mesure nous sommes proches des autres voitures.
English: In the above figure, dotted lines represent actual lanes and red lines help us figure out the lane cost given the current position of our car. Red lines move as our car moves. The height of the intersection of the red lines with the potential curve (in cyan) gives us the cost. If the car is in the centre of the lane, both the red lines overlap with the actual lanes resulting in zero cost. On the other hand, as the car moves away from the centre, the red lines also move to result in a non-zero cost.
French: Dans la figure ci-dessus, les lignes pointillées représentent les voies réelles et les lignes rouges nous aident à calculer le coût de la voie compte tenu de la position actuelle de notre voiture. Les lignes rouges se déplacent en fonction de la position de notre voiture. La hauteur de l’intersection des lignes rouges avec la courbe potentielle (en cyan) nous donne le coût. Si la voiture est au centre de la voie, les deux lignes rouges se chevauchent avec les voies réelles, ce qui donne un coût nul. D’autre part, lorsque la voiture s’éloigne du centre, les lignes rouges se déplacent également, ce qui entraîne un coût non nul.
English: Proximity cost has two components (Lx​ and Ly​). Ly is similar to the lane cost and Lx​ depends on the speed of our car. The Orange curve in Figure 6 tells us about the safety distance. As the speed of the car increases, the orange curve widens. So faster the car is travelling, the more you will need to look ahead and behind. The height of the intersection of a car with the orange curve determines Lx​.
French: Le coût de proximité a deux composantes (Lx​ et Ly​). Ly​ est similaire au coût de la voie et LxLx​ dépend de la vitesse de notre voiture. La courbe orange de la figure 6 nous renseigne sur la distance de sécurité. Plus la vitesse de la voiture augmente, plus la courbe orange s’élargit. Plus la voiture roule vite, plus il faut regarder devant et derrière. La hauteur de l’intersection d’une voiture avec la courbe orange détermine Lx​.
English: The world model is fed with an action atat​ (steering, brake, and acceleration) and s1:t​ (sequence of states where each state is represented by position, velocity and context images at that time) and it predicts the next state s^t+1​. On the other hand, we have the real world which tells us what actually happened (st+1​). We optimize MSE (Mean Squared Error) between prediction (s^t+1​) and target (st+1​) to train our model.
French: Le modèle du monde est alimenté par une action atat​ (direction, freinage et accélération) et s1:t​ (séquence d’états où chaque état est représenté par des images de position, de vitesse et de contexte à ce temps) et il prédit l’état suivant s^t+1​. D’autre part, nous avons le monde réel qui nous dit ce qui s’est réellement passé (st+1​). Nous optimisons la MSE entre la prédiction (s^t+1​) et la cible (st+1​) pour entraîner notre modèle.