Brevet FR3134363A1 — publié le 20231013

Procédé de prédiction de trajectoires de piéton pour améliorer la conduite autonome d’un véhicule. Ce procédé comprenant l’acquisition de données d’observation sur un environnement du véhicule pendant un intervalle de temps d’observation, pour définir une trajectoire passée des piétons, le traitement, par un Transformer de type encodeur-décodeur, d’au moins certaines de ces données afin de prédire la suite des trajectoires, pendant un intervalle de temps, et la prise en compte de la trajectoire prédite par un système d’aide à la conduite du véhicule. Il comprend en outre une opération de génération de buts estimés de trajectoires de piétons, par un modèle entrainé par apprentissage auto-supervisé. Ce but estimé est transmis au décodeur pour obtenir les trajectoires prédites. Système pour la mise en œuvre de ce procédé. Figure 5 Procédé de prédiction de trajectoires de piétons pour le renforcement de la sécurité de la conduite autonome d’un véhicule, véhicule muni de moyens pour la mise en œuvre de ce procédé L'invention se rapporte au domaine des véhicules, des véhicules équipés de systèmes d'aide à la conduite, des véhicules intelligents aussi dits autonomes, etc. Plus particulièrement l’invention se rapporte au domaine des véhicules équipés d’un système d’aide à la conduite utilisant des données sur des trajectoires prédites de piétons. État de l’art La prédiction de la trajectoire des piétons est un problème de grande importance pour les véhicules autonomes. Plus particulièrement, le problème de la prédiction de la trajectoire en milieu urbain est crucial pour la construction des voitures autonomes de niveau 5. Il est abordé en utilisant de nombreuses approches. Ces approches sont classées en fonction de la façon dont le déplacement d'un piéton est représenté et dont les causes de ce déplacement sont formulées. La première approche est appelée « approche basée sur la physique » (« physics-based approach » en anglais). Dans cette approche, le mouvement du piéton est explicitement défini en utilisant des équations dynamiques. Cependant, la complexité et la nature chaotique des trajectoires des piétons ont clairement montré, à travers des études empiriques, que les règles basées sur la physique ne sont pas adéquates pour la prédiction du comportement. Même si un certain succès de ces méthodes a pu être constaté dans les problèmes de suivi et de filtrage (comme les filtres de Kalman), ces méthodes ne sont pas suffisantes pour résoudre des problèmes de prédiction. Un deuxième type d’approches est basé sur l'apprentissage en utilisant l'apprentissage automatique et l'apprentissage profond comme outils. En fait, l'une des méthodes les plus utilisées dans l'apprentissage est une méthode guidée par les données appelée « méthode basée sur les motifs » (« Pattern-based method » en anglais). Elle consiste à formuler une distribution de probabilité conditionnelle chargée de prédire le futur à partir des observations passées. Cette méthode permet d’approximer, par apprentissage et optimisation, des fonctions dynamiques à partir d'un ensemble de données d'entraînement en découvrant séquentiellement des modèles de comportement statistique dans les trajectoires observées. En outre, certaines de ces méthodes de l’art antérieur supposent que chaque piéton dans une scène se comporte de manière rationnelle et a un but bien défini. Ce but peut être considéré comme le point final de son parcours. Elles apprennent donc à estimer ce but final et le combinent avec les approches basées sur les motifs pour obtenir de meilleures prédictions. Les modèles d'apprentissage permettant de saisir un comportement statistique sont nombreux. Par exemple, nous pouvons citer les réseaux neuronaux récurrents (« RNN » ou « recurrent neural network » en anglais) et les réseaux de mémoire à long terme (« LSTM » ou « Long Short-Term Memory Network ») qui ont été pendant longtemps les méthodes de référence pour la prédiction séquentielle. Récemment, un nouveau type de méthode séquentielle basée sur les réseaux neuronaux de transformateurs (« Transformer Neural Network » en anglais) s’est répandu. Ci-dessous, nous appellerons « Transformers » les réseaux de ce type. Leur utilisation a permis une meilleure compréhension des séquences et la possibilité d’obtenir une prédiction sur un temps plus long. Ces méthodes utilisent l'apprentissage supervisé pour optimiser la fonction objective. Elles se définissent par l'utilisation d'ensembles de données étiquetées pour entraîner les algorithmes à prédire les résultats avec précision. À mesure que les données d'entrée sont introduites dans le modèle, celui-ci ajuste ses poids jusqu'à ce que le modèle soit ajusté de manière appropriée. Cependant, l’apprentissage supervisé nécessite beaucoup de données étiquetées, il peut facilement surestimer l'ensemble de données d'apprentissage (ce qui entraîne des erreurs de généralisation), et surtout, il ne ressemble pas aux méthodes d'apprentissage de l'humain. Ces dernières années, l'apprentissage auto-supervisé (« Self-supervised Learning » ou « SSL » en anglais) a remplacé l'apprentissage supervisé. L'apprentissage auto-supervisé obtient des signaux de supervision à partir des données elles-mêmes, en tirant souvent parti de la structure implicite des données. En d’autres termes, dans un apprentissage auto-supervisé, les données d’entrainement sont étiquetées automatiquement. L'apprentissage auto-supervisé a notamment beaucoup contribué à l’amélioration du traitement du langage naturel (« Natural Language Processing » ou « NLP » en anglais). On peut se référer à cette fin par exemple à l’article « BERT: Pre-training of Deep Bidirectional Transformers for Language Understanding », Jacob Devlin, Ming-Wei Chang, Kenton Lee, Kristina Toutanova, arXiv:1810.04805v2 [cs.CL], 24 May 2019. Dans le domaine de la prédiction de trajectoires à l’aide de Transformers, les mesures les plus utilisées dans la littérature sur la prédiction de trajectoire sont l'erreur de déplacement moyen (« Average displacement error » ou ADE en anglais) et l'erreur de déplacement final (« Final displacement error » ou FDE en anglais). Voir par exemple « Spatial-Channel Transformer Network for Trajectory Prediction on the Traffic Scenes », Jingwen Zhao, Xuanpeng Li, Qifan Xue, and Weigong Zhang, arXiv:2101.11472v2 [cs.CV], 27 Janaury 2021. Un problème rencontré dans l’utilisation de Transformers pour la prédiction de trajectoires peut être la divergence de l’erreur de déplacement final. Un but de l’invention est d’améliorer les performances de la prédiction de trajectoires pour les véhicules autonomes. A cette fin, il est proposé selon d’utiliser l'apprentissage auto-supervisé en utilisant des modèles de Transformers, par exemple de type BERT (« Birectional Encoder Representations from Transformers » en anglais), pour apprendre les buts finaux des piétons et améliorer ainsi la tâche de la prédiction de trajectoires de piéton. Cette estimation du but ou de l'intention à long terme du piéton permet d’éviter que l'erreur finale de déplacement diverge. Plus particulièrement, selon l’invention, il est proposé un procédé de prédiction d’au moins une trajectoire de piéton dans une scène d’observation pour améliorer la conduite autonome d’un véhicule (1), ce procédé comprenant a) une étape d’acquisition de données d’observation sur un environnement du véhicule (1), pendant un intervalle de temps d’observation (T_obs), ces données comprenant au moins des positions successives définissant une trajectoire passée d’au moins un piéton présent dans la scène d’observation, b) une étape de traitement d’au moins certaines des données acquises à l’étape a), par un Transformer de type encodeur-décodeur, afin d’obtenir une trajectoire prédite pour au moins un piéton, pendant un intervalle de temps (T_target), c) une étape de prise en compte de la trajectoire prédite par au moins un système d’aide à la conduite du véhicule. En outre, ce procédé comprend une opération de génération de buts estimés de trajectoires de piétons, par un modèle entrainé par apprentissage auto-supervisé, le but estimé de chaque piéton représentant une position finale de chaque piéton dans une trajectoire prédite pour ce piéton, et par le fait que le but estimé pour la trajectoire de chaque piéton est transmise au décodeur pour obtenir, à l’étape b), ladite trajectoire prédite pour au moins un piéton. Le procédé selon l’invention présente ainsi une architecture de type Transformer qui peut apprendre la probabilité conditionnelle et être capable d'apprendre les buts finaux des piétons. Le procédé selon l’invention comporte également éventuellement l’une et/ou l’autre des caractéristiques suivantes considérées chacune indépendamment l’une de l’autre ou en combinaison d’une ou plusieurs autres : - l’encodeur comprend un module d’intra-attention spatio-temporel et le décodeur comprend un module d’intra-attention spatio-temporel pour interpréter sa propre entrée, un module d’attention croisée spatio-temporel pour mettre à jour, en fonction de la sortie du module d’intra-attention de l’encodeur, son entrée interprétée et un module d’attention croisée spatial pour mettre à jour le résultat de la mise à jour précédente, pour une nouvelle mise à jour en fonction du but estimé pour chaque piéton ; - le modèle entrainé par apprentissage auto-supervisé est un Transformer de type Bert ; - le Transformer de type Bert comporte une procédure d’apprentissage pré-tâche qui optimise deux fonctions objectives : une fonction de perte d’entropie croisée entre des jetons d’entrée masqués et les jetons originaux correspondant dans une séquence et une fonction de perte de classification sur la prédiction du but ; - il comprend une étape de lissage géométrique sur au moins certaines des classes attribuées aux jetons ; - le Transformer de type Bert comporte une procédure d’apprentissage sous-tâche au cours de laquelle deux masques sont appliqués sur une séquence cible, un masque appliqué au module d’intra-attention spatio-temporel du décodeur et un masque appliqué sur le dernier pas temps de cette séquence cible ; - il comprend en outre une étape d’apprentissage de bout-en-bout, de manière supervisée pour obtenir au moins une trajectoire prédite. Selon un autre aspect l’invention concerne un système de prédiction d’au moins une trajectoire de piéton dans une scène d’observation pour améliorer la conduite autonome d’un véhicule, ce système comprenant des moyens de calcul et des moyens de mise en mémoire d’instructions de programme d’ordinateur qui quand elles sont exécutées par les moyens de calcul mettent en œuvre les étapes et opérations du procédé mentionné ci-dessus. Eventuellement, les moyens de mémoire et de calcul sont distribués entre des moyens de mémoire et de calcul embarqués, ainsi que des moyens de mémoire et de calcul débarqués. Selon un autre aspect l’invention concerne un programme d’ordinateur comprenant des instructions de code de programme pour l’exécution du procédé mentionné ci-dessus, lorsque ledit programme est exécuté par les moyens de calculs. Définitions - Par « véhicule », on entend tout type de véhicule, en particulier un véhicule automobile, comportant un habitacle adapté pour recevoir au moins un occupant transporté par le véhicule. - Selon leur nature, des opérations ou étapes du procédé selon l’invention peuvent être successives pour certaines et concomitantes pour d’autres. - Dans ce texte, l’expression « système d’assistance à la conduite » désigne un ou plusieurs dispositifs destinés à être activés séparément ou en même temps, de manière temporaire (ex : assistance au freinage d’urgence) ou permanente (ex : contrôle de la distance avec d’autres véhicules). Autrement dit, dans ce texte, on regroupe de manière générique dans « un système d’assistance à la conduite » un ou plusieurs systèmes qui peuvent éventuellement être considérés par ailleurs chacun individuellement comme un système d’aide à la conduite. D’autres caractéristiques et avantages apparaîtront dans l’exposé détaillé de différents modes de réalisation de l’invention, l’exposé étant assorti d’exemples et de références aux dessins joints. est une vue schématique d’un exemple de mode de réalisation d’un véhicule impliqué dans la mise en œuvre du procédé selon l’invention ; illustre schématiquement un exemple de scène avec des trajectoires passées de piétons, pour laquelle le procédé selon l’invention peut être mis en œuvre ; est une représentation schématique d’un exemple de Transformer d’encodeur-décodeur de l’art antérieur ; représente de manière analogue à la , l’introduction de buts estimés pour les trajectoires à prédire ; représente de manière analogue à la , un exemple de Transformer d’encodeur-décodeur modifié selon l’invention ; illustre schématiquement la quantification de l’espace d’entrée du Transformer de type Bert pour la prédiction des buts estimés ; illustre schématiquement l’architecture du modèle pré-tâche du Transformer de Type Bert pour la prédiction des buts estimés ; illustre schématiquement l’utilisation de la fonction de lissage utilisée dans le modèle pré-tâche ; illustre schématiquement l’architecture du modèle sous-tâche du Transformer de Type Bert pour la prédiction des buts estimés. Exposé détaillé des modes de réalisation Un exemple de mode de réalisation d’un véhicule 1 est représenté sur la . Celui-ci est équipé notamment d’un système d’aide à la conduite 2, de capteurs 3, de moyens d’enregistrement, de stockage de données et de mise en mémoire d’instructions de programme d’ordinateur 4, de moyens de calcul et de traitement des données 5, d’actionneurs 6 et de moyens d’échange de données 7 avec un réseau. Le système d’aide à la conduite gère par exemple une ou des fonctions comprises dans la liste suivante : adaptation de la vitesse du véhicule 1 à la circulation, aide au freinage, système anticollision, limiteur/régulateur de vitesse, etc. Les capteurs 3 sont choisis dans la liste comprenant par exemple un système d’acquisition d’images (comprenant lui-même au moins une caméra : une ou des caméras à vision de jour et une ou des caméras à vision de nuit), des capteurs à ultrasons, radars, lidars, etc. Les moyens d’enregistrement, de stockage de données et de mise en mémoire d’instructions de programme d’ordinateur 4 comprennent par exemple de la mémoire informatique. Les moyens de moyens de calcul et de traitement des données 5 comprennent par exemple au moins un calculateur ou ordinateur. Les actionneurs 6 du véhicule 1 participent à des systèmes ou fonctions choisis dans la liste comprenant par exemple : système de freinage, accélérateur, système de direction, etc. Les moyens d’échange de données 7 permettent la transmission et la réception d’informations, notamment par communication V2X. Selon un exemple de mode de mise en œuvre du procédé selon l’invention, celui-ci est utilisé pour la prédiction des trajectoires respectives de plusieurs piétons. Selon ce mode de mise en œuvre, une architecture de Transformer existante est modifiée pour gérer une étape intermédiaire d'estimation du but pour chaque piéton. L’entrée de cette architecture de Transformer est définie par exemple par une scène dans laquelle plusieurs piétons sont observés pendant un intervalle de temps d'observation de longueur ‘T_obs’. Sur la , la trajectoire « passée » des piétons observée pendant le temps d’observation T_Obs est représentée en traits pleins a, b, c sur la scène de gauche et en traits pointillés sur la scène de droite. Cette scène peut être dynamique, c'est-à-dire que le nombre de piétons peut varier dans le temps. Les modèles de prédiction des trajectoires dans une telle scène sont connus sous le nom de modèle de trajectoires multi-agents, chaque piéton étant un « agent ». Comme expliqué ci-dessous, un modèle est créé à partir d’une architecture de Transformer pour que celui-ci soit capable de prédire les prochaines étapes d’évolution de cette scène pour chaque piéton pendant un intervalle de temps ‘T_target’. Sur la , la trajectoire « future » des piétons, prédite pendant l’intervalle de temps ‘T_target’, est représentée en traits pleins a’, b’, c’ sur la scène de droite, à la suite des traits pointillés qui correspondent à chaque trajectoire passée. Comme représenté sur la , un Transformer est composé de 2 blocs : un bloc encodeur et un bloc décodeur. Le rôle de l'encodeur est d'intégrer la séquence d'observation. Le rôle du décodeur est de construire ensuite une distribution de probabilité conditionnelle en utilisant la mémoire de l'encodeur ainsi que le résultat du mécanisme d’intra-attention (« self-attention » en anglais) pour prédire les étapes composant la trajectoire de chaque piéton. L'entrée de l'encodeur est constituée d’un jeu d’entrée (« Input seed » en anglais) sous forme d’une matrice 3D : T_obs, N_agents, D, où T_obs est le temps d'observation, N_agents est le nombre de piétons dans la scène, et D est la dimension d'entrée (par exemple, D=2 pour les coordonnées de position d’un piéton, D=4 pour les coordonnées de position et la vitesse d’un piéton). Le composant principal du bloc encodeur est la couche ou module d’intra-attention spatio-temporel 100, qui calcule l'attention sur l'entrée de l'encodeur lui-même. Le décodeur comprend un module d’intra-attention spatio-temporel 200 et un module d’attention croisée spatio-temporel. En effet, comme il s’agit d’un problème dynamique à plusieurs piétons, les modules d'attention 100, 200, 210 sont conçus pour traiter les domaines spatiaux et temporels à la fois. L'entrée du décodeur est constituée de requêtes apprenables (« Learnable queries » en anglais) de la même forme que sa sortie : T_target, N_agents, D, où T_target correspond à l'intervalle de temps sur lequel s’effectue la prédiction. Le décodeur applique ensuite un mécanisme d’intra-attention à son entrée (à l’aide du module d’intra-attention 200), puis une attention croisée (« cross-attention » en anglais) entre le résultat de la première attention du décodeur et la sortie de la mémoire de l'encodeur (à l’aide du module d’attention croisée 210). La trajectoire prédite pour chaque piéton est obtenue à la sortie du Transformer. Conformément à l’invention, cette architecture (représentée sur la ) est modifiée pour gérer une étape intermédiaire d'estimation du but pour chaque piéton. En effet, selon l’invention, il est fait l’hypothèse que les trajectoires des piétons sont basées chacune sur un but à relativement long terme vers lequel les piétons se dirigent. Le but de chaque piéton peut être considéré comme la position finale de la trajectoire prédite. Ainsi, au lieu de prédire directement la trajectoire, le but du piéton est d’abord estimé, puis ce but estimé est utilisé pour la prédiction de la trajectoire. La représente schématiquement cette étape intermédiaire d'estimation du but de chaque piéton en introduisant un point noir dans la scène pour représenter le but pour chaque piéton, à la fin de l’intervalle de temps ‘T_target’. Comme représenté sur la , l’'architecture de Transformer est donc modifiée pour inclure les buts estimés de chaque piéton à l’aide d’un module de génération de buts estimés 300 qui sera décrit plus loin. En outre, la nouvelle architecture de Transformer inclut, dans le bloc décodeur, un nouveau module d'attention croisée 220 en plus des modules d'attentions 200, 210 précédemment décrits. La nouvelle solution peut être considérée comme une introduction hiérarchique de nouveaux composants. Le bloc décodeur interprète alors d'abord sa propre entrée, puis la met à jour en fonction de la sortie de l'encodeur, et enfin met à jour le résultat en fonction du but prédit pour chaque piéton. Le module de génération de buts estimés 300 est un Transformer auto-supervisé de type Bert. Il permet sur un apprentissage en deux étapes : une étape d’apprentissage de pré-tâche et une étape d’apprentissage de sous-tâche. L'étape d’apprentissage de pré-tâche utilise une approche très similaire aux approches d'apprentissage humain. Elle n'a pas besoin d'un signal de supervision externe. Au lieu de cela, le modèle exécute des tâches qui sont extraites des données elles-mêmes. Par ailleurs, les sous-tâches sont les tâches à réaliser de manière régulière comme la prédiction de trajectoires dans le cas présent. Pour illustrer ces deux étapes, on peut considérer l’exemple de la reconstitution d’images à partir de morceaux d’images. Dans cet exemple, la pré-tâche peut consister à prendre une image, à échanger des morceaux de cette image et à demander au modèle de les réorganiser. En faisant cela, le modèle apprend comment une image peut être construite et acquiert ainsi une idée implicite de la classe de chaque image. Cet apprentissage est ensuite utilisé dans la sous-tâche après un ajustement plus précis (« fine-tuning » en anglais). Ainsi, dans ce type de tâche, il n'est pas nécessaire d'étiqueter les données, puisque ce sont les données elles-mêmes qui sont utilisées comme étiquettes. Dans ce cas de la prédiction de trajectoires, la séquence d'observation est convertie en jetons (« tokens » en anglais). Cette opération de conversion est aussi connue sous le nom de « tokenisation ». Donc, selon l’invention, l'espace d'entrée est quantifié en un vocabulaire de jetons au lieu de coordonnées. Le jeton CLS prend la classe zéro : le jeton CLS (pour « Classification » en anglais) est un jeton artificiel utilisé dans les modèles de type BERT pour marquer le début de la première séquence. Le jeton SEP prend la classe 1 (le jeton SEP (pour « Separation » en anglais) est un jeton artificiel utilisé dans les modèles de type BERT pour marquer la fin d’une séquence et le début de la suivante. Le jeton MASK (pour « Mask » en anglais) prend la classe 2. Les jetons correspondant aux coordonnées d'entrée prennent les classes entre 3 et k (voir ). Le jeton PAD (pour « Padding » ou « Padded ») pour prend la classe k+1 pour les jetons de remplissage (« padded tokens » en anglais). Apprentissage de pré-tâche (Voir l’architecture du modèle d’apprentissage de pré-tâche sur la ): Selon un exemple de mise en œuvre dans le cas de l'estimation du but dans le modèle de prédiction de la trajectoire, la procédure suivante est utilisée pour cette étape d’apprentissage. Cette procédure met en œuvre deux fonctions objectives : la fonction MTM (« Masked Trajectory Model » en anglais) et la fonction NGP (« Next Goal prediction » en anglais). Comme représenté sur la , on a donc une séquence d’observation et une séquence cible (c’est-à-dire la séquence à prédire qui suit la séquence d’observation). La fonction MTM applique un masque aléatoire sur un pourcentage R% des jetons de la trajectoire d'entrée (c’est-à-dire de la séquence d'observation). Le masque peut par exemple représenter R% égal à 15 à 20 % de l'ensemble des jetons. Ensuite, il est demandé au modèle de prédire la reconstruction des jetons masqués. La fonction NGP applique d’abord un masque sur le module d'intra-attention qui traite la séquence cible. On appelle ce masque Target_Mask. Le masque est nul pour tous les pas de temps de la trajectoire, sauf pour le pas final. De cette façon, le modèle ne peut prêter attention qu'au dernier pas de temps et ne peut pas voir les pas précédents. Ensuite, une fonction de corruption est appliquée sur la séquence cible avec une probabilité de r = 50%. La fonction de corruption peut être réalisée de plusieurs manières. Par exemple, on peut utiliser la permutation des piétons, la rotation de séquences, le retournement de séquences, etc. De cette façon, on obtient une séquence cible modifiée (« (Séquence cible)’ ») qui est une combinaison de la séquence cible originale et de la séquence cible corrompue. Ce qui peut se traduire par : . Ensuite, il est demandé au modèle de prédire si la séquence cible modifiée correspond au but réel (non corrompu) ou non (corrompu). Le résultat de cette classification peut être calculé en appliquant une fonction sigmoïde sur le jeton CLS résultant (jeton IS_Goal). Les fonctions MTM et NGP sont donc deux fonctions de pertes (« loss function » en anglais) de classification : La fonction de perte NGP correspond à une perte de classification binaire entre la sortie Is_Goal et son étiquette correcte correspondante (autrement dit « 0 » correspond à l’étiquette « corrompue » et « 1 » correspond à l’étiquette « non-corrompue »). La fonction de perte MTM correspond à une perte d’entropie croisée (« Cross-Entropy » en anglais) entre chacun des jetons d'entrée masqués (en utilisant le masque MTM) et les jetons originaux correspondants dans la séquence. Où y est la séquence originale, ÿ est la séquence reconstruite, M est le nombre de jetons masqués dans une séquence, et sont les jetons masqués. En appliquant la fonction de perte MTM ci-dessus, le modèle est pénalisé si ses prédictions données par la fonction Softmax sont éloignées de la classe correcte du jeton original (avant masquage). Cependant, par exemple, si la classe correcte est 5, le modèle est pénalisé de la même manière s'il prédit 4 ou 60. En d'autres termes, il n'y a pas d'interprétation significative de la distance euclidienne dans la perte de classification. Pour remédier à ce problème, il est proposé d'effectuer un lissage géométrique des étiquettes (« Geometric Label Smoothing » en anglais) sur la vérité terrain (c’est-à-dire la séquence originale avant masquage). Ainsi, il est possible de donner du poids aux classes géométriquement proches au lieu d'avoir seulement une probabilité 1 pour la classe correcte et zéro sinon. La nouvelle étiquette de vérité terrain est alors 1 - g *λ pour la classe correcte, et λ pour les g classes les plus proches disponibles, où λ est un hyper-paramètre à ajuster. Voir la , à titre d’illustration. La proximité des voisins est définie en termes de distance euclidienne, d'où le nom de lissage géométrique. Le nombre de voisins g est un nombre entier positif qui peut être ajusté empiriquement, reflétant le nombre (c’est-à-dire combien) de classes (ou de jetons) que nous souhaitons considérer proches de la classe originale et éloignées des autres classes incorrectes. Le coefficient λ est alors un hyper-paramètre non-négatif à ajuster empiriquement. Intuitivement, λ = 0 nous ramènera au cas de l'étiquetage « grossier », où la probabilité de 1 ne va que vers la classe correcte. La probabilité 1 - g* λ doit être strictement positive pour s'assurer que la bonne classe est représentée. g est un entier positif, donc λ est limité par 1/g. On peut aussi imposer que la classe correcte ait toujours une probabilité plus grande que les classes proches, ce qui impose que λ soit borné par 1/(1+g). Ainsi, λ est supérieur ou égale à 0 et strictement inférieur à (1/1+g). L’ajustement de lambda peut être fait de manière heuristique, pour maximiser l'efficacité du modèle, en suivant une méthode de réglage standard en apprentissage automatique. Pour une étude sur le réglage des hyperparamètres voir par exemple l’article : « Hyper-Parameter Optimization: A Review of Algorithms and Applications; Tong Yu, Hong Zhu ; arXiv:2003.05689v1 [cs.LG] 12 Mar 2020 (https://arxiv.org/pdf/2003.05689.pdf). Apprentissage de sous-tâche : Dans la deuxième étape (c'est-à-dire l’apprentissage de sous-tâche), la connaissance du modèle acquise dans l'étape d’apprentissage de pré-tâche est utilisée pour prédire le but final des piétons. A cette fin, une séquence d'observation sans masque de type MTM est introduite dans le modèle (voir ). Par contre, deux masques sont appliqués concernant la séquence cible : - Le premier masque est le masque Target_mask appliqué au module d'intra-attention qui empêche le modèle de fuir des informations sur les premiers pas de temps de la séquence cible. - Le second masque est un masque de type MTM appliqué sur le dernier pas de temps de chaque piéton dans la séquence cible. De cette façon, le modèle prédit le but final de chaque piéton en optimisant la perte d’entropie croisée entre la cible prédite (ou but prédit) et la séquence cible de base. Enfin, après avoir entraîné le dernier modèle à prédire correctement les buts, il est inclus dans l’architecture du Transformer comme proposé précédemment ( ). Le modèle peut être entraîné d’une manière « bout-en-bout » (« end-to-end » en anglais) pour prédire toutes les étapes de la séquence cible. En utilisant les solutions décrites ci-dessus, on conçoit un système comprenant des moyens de calcul et des moyens de mise en mémoire d’instructions de programme d’ordinateur qui quand elles sont exécutées par les moyens de calcul mettent en œuvre les étapes et opérations du procédé de prédiction décrit ci-dessus. Ce système utilise des données obtenues sur l’environnement du véhicule à l’aide de capteurs 3 montés sur le véhicule lui-même ou disposés dans cet environnement. Ces données sont traitées par des moyens de mémoire 4 et de calcul 5 embarqués et/ou débarqués qui permettent l’exécution d’un programme d’ordinateur comprenant des instructions de code de programme pour l’exécution du procédé décrit ci-dessus, permettant ainsi de prédire l’avenir de la trajectoire respective de plusieurs piétons à la fois, tout en ayant moins d'erreurs de prédiction. Les articles suivants décrivent des exemples d’utilisation de Transformers : « Attention Is All You Need » ; Ashish Vaswani, Noam Shazeer, Niki Parmar, Jakob Uszkoreit, Llion Jones, Aidan N. Gomez, Lukasz Kaiser, Illia Polosukhin; arXiv:1706.03762v5 [cs.CL] 6 Dec 2017 (https://arxiv.org/pdf/1706.03762v5.pdf) « Transformer Networks for Trajectory Forecasting » ; Francesco Giuliari, Irtiza Hasan, Marco Cristani, Fabio Galasso ; arXiv:2003.08111v3 [cs.CV] 21 Oct 2020 (https://arxiv.org/pdf/2003.08111v3.pdf) Les articles suivants décrivent des exemples de prédiction de trajectoires à l'aide de Transformers : « AgentFormer: Agent-Aware Transformers for Socio-Temporal Multi-Agent Forecasting » ; Ye Yuan, Xinshuo Weng, Yanglan Ou, Kris Kitani ; arXiv:2103.14023v3 [cs.AI] 7 Oct 2021 (https://arxiv.org/pdf/2103.14023v3.pdf) « Transformer Networks for Trajectory Forecasting » ; Francesco Giuliari, Irtiza Hasan, Marco Cristani, Fabio Galass o; arXiv:2003.08111v3 [cs.CV] 21 Oct 2020 (https://arxiv.org/pdf/2003.08111v3.pdf) Les articles suivants décrivent des exemples d’apprentissage auto-supervisé : « Unsupervised Visual Representation Learning by Context Prediction » ; Carl Doersch, Abhinav Gupta, Alexei A. Efros ; arXiv:1505.05192v3 [cs.CV] 16 Jan 2016 (https://arxiv.org/pdf/1505.05192.pdf) « Unsupervised Learning of Visual Representations by Solving Jigsaw Puzzles » ; Mehdi Noroozi, Paolo Favaro ; arXiv:1603.09246v3 [cs.CV] 22 Aug 2017 (https://arxiv.org/pdf/1603.09246.pdf) « Decomposing Motion and Content for Natural Video Sequence Prediction » ; Ruben Villegas, Jimei Yang, Seunghoon Hong, Xunyu Lin, Honglak Lee; arXiv:1706.08033v2 [cs.CV] 8 Jan 2018 ( https://arxiv.org/pdf/1706.08033.pdf) L’article suivant décrit un exemple d’apprentissage auto-supervisé utilisant un Transformers de type BERT sur des tâches de traitement du langage naturel : « BERT: Pre-training of Deep Bidirectional Transformers for Language Understanding » ; Jacob Devlin, Ming-Wei Chang, Kenton Lee, Kristina Toutanova ; arXiv:1810.04805v2 [cs.CL] 24 May 2019 (https://arxiv.org/pdf/1810.04805.pdf) Procédé de prédiction d’au moins une trajectoire de piéton dans une scène d’observation pour améliorer la conduite autonome d’un véhicule (1), ce procédé comprenant a) une étape d’acquisition de données d’observation sur un environnement du véhicule (1), pendant un intervalle de temps d’observation (T_obs), ces données comprenant au moins des positions successives définissant une trajectoire passée d’au moins un piéton présent dans la scène d’observation, b) une étape de traitement d’au moins certaines des données acquises à l’étape a), par un Transformer de type encodeur-décodeur, afin d’obtenir une trajectoire prédite pour au moins un piéton, pendant un intervalle de temps (T_target), c) une étape de prise en compte de la trajectoire prédite par au moins un système d’aide à la conduite du véhicule, caractérisé par le fait qu’il comprend une opération de génération de buts estimés de trajectoires de piétons, par un modèle entrainé par apprentissage auto-supervisé, le but estimé de chaque piéton représentant une position finale de chaque piéton dans une trajectoire prédite pour ce piéton, et par le fait que le but estimé pour la trajectoire de chaque piéton est transmise au décodeur pour obtenir, à l’étape b), ladite trajectoire prédite pour au moins un piéton. Procédé selon la revendication 1, dans lequel dans l’encodeur comprend un module d’intra-attention spatio-temporel et le décodeur comprend un module d’intra-attention spatio-temporel pour interpréter sa propre entrée, un module d’attention croisée spatio-temporel pour mettre à jour, en fonction de la sortie du module d’intra-attention de l’encodeur, son entrée interprétée et un module d’attention croisée spatial pour mettre à jour le résultat de la mise à jour précédente, pour une nouvelle mise à jour en fonction du but estimé pour chaque piéton. Procédé selon la revendication 2, dans lequel le modèle entrainé par apprentissage auto-supervisé est un Transformer de type Bert. Procédé selon la revendication 3, dans lequel le Transformer de type Bert comporte une procédure d’apprentissage pré-tâche qui optimise deux fonctions objectives : une fonction de perte d’entropie croisée entre des jetons d’entrée masqués et les jetons originaux correspondant dans une séquence et une fonction de perte de classification sur la prédiction du but. Procédé selon la revendication 4, comprenant une étape de lissage géométrique sur au moins certaines des classes attribuées aux jetons. Procédé selon l’une des revendications 3 à 5, dans lequel le Transformer de type Bert comporte une procédure d’apprentissage sous-tâche au cours de laquelle deux masques sont appliqués sur une séquence cible, un masque appliqué au module d’intra-attention spatio-temporel du décodeur et un masque appliqué sur le dernier pas temps de cette séquence cible. Procédé selon l’une des revendications 2 à 6, comprenant en outre une étape d’apprentissage de bout-en-bout, de manière supervisée pour obtenir au moins une trajectoire prédite. Système de prédiction d’au moins une trajectoire de piéton dans une scène d’observation pour améliorer la conduite autonome d’un véhicule (1), ce système comprenant des moyens de calcul (5) et des moyens de mise en mémoire d’instructions de programme d’ordinateur (4) qui quand elles sont exécutées par les moyens de calcul (5) mettent en œuvre les étapes et opérations du procédé selon l’une des revendications précédentes. Système selon la revendication 8, dans lequel les moyens de mémoire (4) et de calcul (5) sont distribués entre des moyens de mémoire et de calcul embarqués, ainsi que des moyens de mémoire et de calcul débarqués. Programme d’ordinateur comprenant des instructions de code de programme pour l’exécution du procédé selon l’une des revendications 1 à 7, lorsque ledit programme est exécuté par des moyens de calculs.