Brevet FR3149408A1 — publié le 20241206

Procédé et dispositif de traitement d'événement à faible latence La présente description concerne un procédé de génération, par un dispositif de traitement de données, d'une prédiction basée sur des données d'événements capturées par un détecteur basé sur événement, le procédé comprenant : la réception, en provenance du détecteur basé sur événement, d'un nouvel événement ( ) comprenant un horodatage et une valeur de données d'événements ayant une ou plusieurs dimensions ; la détermination d'événements passés qui tombent dans une distance temporelle ( ) par rapport à l'horodatage et dans une distance de valeur de données ( ) de la valeur de données d'événements ; la construction d'un sous-graphe d'événements comprenant un premier nœud représentant le nouvel événement ( ), des nœuds supplémentaires représentant chacun les événements passés déterminés, et des bords unidirectionnels reliant chaque nœud supplémentaire au premier nœud ; le calcul d'incorporations de nœud pour le premier nœud sur la base de bords constitués uniquement desdits bords unidirectionnels ; et la génération de la prédiction en appliquant une fonction aux incorporations de nœud. Figure pour l'abrégé : Fig. 6 Procédé et dispositif de traitement d'événement à faible latence La présente description concerne de façon générale le domaine des processeurs de données et des procédés de traitement de données et, en particulier, un processeur de données pour traiter des données basées sur un événement générées par un détecteur basé sur événement. Des détecteurs basés sur événement sont utilisés dans de nombreuses applications et sont particulièrement adaptés à des environnements où les données d'entrée sont rares. En effet, un détecteur basé sur événement assure une économie d'énergie importante dans de tels environnements par rapport à un détecteur synchrone qui échantillonne périodiquement des données d'entrée, même lorsqu'il n'y a pas de signal d'entrée important. En outre, des détecteurs basés sur événement permettent un taux de compression de données élevé. Par exemple, des caméras d'événement sont différentes de caméras normales à base de trames en ce qu'au lieu que chaque pixel n'intègre une charge et n'enregistre une intensité lumineuse, des pixels d'événement génèrent des événements binaires de façon asynchrone lorsque l'intensité lumineuse change. Cela permet de comprimer de façon importante les informations concernant un mouvement dans une scène. Le même principe peut être également appliqué à d'autres modalités de détection – par exemple, audio basé sur événement. Bien que des réseaux neuronaux à convolution (CNN) et, plus récemment, des transformateurs de vision constituent d'excellents moyens pour résoudre des taches de vision par ordinateur sur la base de trames, ils ne sont pas naturellement compatibles avec des données d'événements. Afin de traiter des données d'événements en utilisant de tels modèles, les événements sont souvent intégrés dans ce qu'on appelle des trames compactes en, par exemple, comptant le nombre d'événements générés par pixel dans une fenêtre de temps donnée. Toutefois, cela ne permet pas de profiter de la nature rare et de la faible latence des données d'événements. En outre, bien que ces approches permettent de réutiliser des architectures de CNN existantes, et leurs mises en œuvre matérielles optimisées, les détails spatiotemporels précis capturés par des caméras d'événement sont en pratique ignorés. Cela peut conduire à une dégradation des performances, en particulier pour des applications telles qu'une prédiction de flux optique. En outre, des CNN à trame compacte ne profitent pas facilement de la rareté inhérente des données d'événements pour réduire les contraintes de calcul. On a proposé d'utiliser des réseaux neuronaux graphiques afin de traiter des données d'événements asynchrones. Un tel exemple est la publication de Schaefer, Simon, Daniel Gehrig et Davide Scaramuzza intitulée "AEGNN : Asynchronous Event-based Graph Neural Networks." Proceedings of the IEEE/CVF Conference on Computer Vision and Pattern Recognition, 2022. Toutefois, une difficulté technique avec cette solution est que la génération d'un graphe est relativement lente, conduisant à une latence relativement élevée. Il existe un besoin dans l'état de l'art d'un dispositif et d'un procédé améliorés qui puissent traiter des données d'événements en temps réel ou presque en temps réel pour permettre un traitement étroitement lié au détecteur d'événement. Selon un mode de réalisation, on prévoit un procédé de génération, par un dispositif de traitement de données, d'une prédiction basée sur des données d'événements capturées par un détecteur basé sur événement, le procédé comprenant : la réception, par le dispositif de traitement de données, d'un nouvel événement provenant du détecteur basé sur événement, le nouvel événement comprenant un horodatage et une valeur de données d'événements ayant une ou plusieurs dimensions ; la détermination, par le dispositif de traitement de données dans une liste d'événements passés, de ceux des événements passés qui tombent dans une distance temporelle par rapport à l'horodatage et dans une distance de valeur de données de la valeur de données d'événements ; la construction, par le dispositif de traitement de données, d'un sous-graphe d'événements comprenant un premier nœud représentant le nouvel événement, des nœuds supplémentaires représentant chacun des événements passés déterminés, et des bords unidirectionnels reliant chaque nœud supplémentaire au premier nœud ; le calcul, par le dispositif de traitement de données, d'incorporations de nœud pour le premier nœud sur la base de bords constitués uniquement desdits bords unidirectionnels reliant chaque nœud supplémentaire au premier nœud ; et la génération de la prédiction en appliquant une fonction aux incorporations de nœud. Selon un mode de réalisation, le procédé comprend en outre la commande d'un ou de plusieurs actionneurs sur la base de la prédiction. Selon un mode de réalisation, la détermination des événements passés comprend la mise en œuvre d'une recherche des K événements voisins les plus proches dans un volume de recherches passées ayant un rayon de valeur de données d'événements dans les une ou plusieurs dimensions de la valeur de données d'événements, et un rayon temporel dans le domaine temporel. Selon un mode de réalisation, le détecteur basé sur événement est une caméra d'événement, et la prédiction est une prédiction de flux optique. Selon un mode de réalisation, le dispositif de traitement de données est configuré pour mettre en œuvre un traitement en temps réel du nouvel événement, le dispositif de traitement de données étant par exemple configuré pour générer la prédiction pendant un délai de traitement de moins de 100 microsecondes, et, de préférence, de moins de 5 microsecondes, après un temps du nouvel événement. Selon un mode de réalisation, la génération de la prédiction comprend le passage du sous-graphe d'événements dans un réseau neuronal graphique. Selon un mode de réalisation, le réseau neuronal graphique comprend une pluralité de couches, et le passage du sous-graphe d'événements dans le réseau neuronal graphique comprend : le calcul d'un vecteur d'incorporation pour le premier nœud et pour les nœuds supplémentaires du sous-graphe en utilisant les incorporations de tous les événements connectés par lesdits bords unidirectionnels, le vecteur d'incorporation comprenant un sous-vecteur pour chacune desdites couches ; et l'application d'une transformation au vecteur d'incorporation de chaque nœud, ou aux données d'événements d'entrée dans le cas d'une première couche du réseau neuronal graphique, afin de générer un vecteur d'incorporation résultant. Selon un aspect supplémentaire, on prévoit un dispositif de traitement de données pour générer une prédiction basée sur des données d'événements capturées par un détecteur basé sur événement, le dispositif de traitement de données étant configuré pour : recevoir un nouvel événement en provenance du détecteur basé sur événement, le nouvel événement comprenant un horodatage et une valeur de données d'événements ayant une ou plusieurs dimensions ; déterminer, dans une liste d'événements passés, ceux des événements passés qui tombent dans une distance temporelle par rapport à l'horodatage et dans une distance de valeur de données de la valeur de données d'événements ; construire un sous-graphe d'événements comprenant un premier nœud représentant le nouvel événement, des nœuds supplémentaires représentant chacun des événements passés déterminés, et des bords unidirectionnels reliant chaque nœud supplémentaire au premier nœud ; calculer des incorporations de nœuds pour le premier nœud sur la base de bords constitués uniquement desdits bords unidirectionnels reliant chaque nœud supplémentaire au premier nœud ; et générer la prédiction en appliquant une fonction aux incorporations de nœud. Selon un mode de réalisation, le dispositif de traitement de données est en outre configuré pour commander un ou plusieurs actionneurs sur la base de la prédiction. Selon un mode de réalisation, le dispositif de traitement de données est configuré pour déterminer lesdits événements passés en effectuant une recherche des K événements voisins les plus proches dans un volume de recherches passées ayant un rayon de valeur de données d'événements dans les une ou plusieurs dimensions de la valeur de données d'événements, et un rayon temporel dans le domaine temporel. Selon un mode de réalisation, le détecteur basé sur événement est une caméra d'événement, et la prédiction est une prédiction de flux optique. Selon un mode de réalisation, le dispositif de traitement de données est configuré pour effectuer un traitement en temps réel du nouvel événement, le dispositif de traitement de données étant par exemple configuré pour générer la prédiction dans un délai de traitement de moins de 100 microsecondes, et, de préférence, de moins de cinq microsecondes, après un instant du nouvel événement. Selon un mode de réalisation, le dispositif de traitement de données est configuré pour générer la prédiction en faisant passer le sous-graphe d'événements dans un réseau neuronal graphique. Selon un mode de réalisation, le réseau neuronal graphique comprend une pluralité de couches, et le passage du sous-graphe d'événements dans le réseau neuronal graphique comprend : le calcul, par le réseau neuronal graphique, d'un vecteur d'incorporation pour le premier nœud et pour les nœuds supplémentaires du sous-graphe en utilisant les incorporations de tous les événements connectés par lesdits bords unidirectionnels, le vecteur d'incorporation comprenant un sous-vecteur pour chacune desdites couches ; et l'application, par le réseau neuronal graphique, d'une transformation au vecteur d'incorporation de chaque nœud, ou aux données d'événements d'entrée dans le cas d'une première couche du réseau neuronal graphique, afin de générer un vecteur d'incorporation résultant. Selon encore un autre mode de réalisation, on prévoit un système de commande comprenant : le dispositif de traitement de données précédent ; un détecteur basé sur événement relié au dispositif de traitement de données et configuré pour générer le nouvel événement et pour transmettre le nouvel événement au dispositif de traitement de données ; et les un ou plusieurs actionneurs. Ces caractéristiques et avantages, ainsi que d'autres, seront exposés en détail dans la description suivante de modes de réalisation particuliers faite à titre non limitatif en relation avec les figures jointes parmi lesquelles : la représente schématiquement un système de traitement et de détection basé sur événement selon un exemple de mode de réalisation de la présente description ; la représente schématiquement un dispositif de traitement d'événements de la plus en détail selon un exemple de mode de réalisation de la présente description ; la est un graphe représentant un exemple du nuage d'événements généré à partir d'un enregistrement de caméra d'événements ; la est un graphe représentant un exemple de création de graphe d'événements sur la base de k sauts entre des événements connectés indirectement ; la est un organigramme représentant un exemple d'étapes d'un procédé de détermination d'une prédiction de flux optique ; la est un graphe représentant un exemple de création d'un graphe d'événements selon un exemple de mode de réalisation de la présente description ; la est un organigramme représentant un exemple d'étapes d'un procédé de détermination d'une prédiction de flux optique selon un mode de réalisation de la présente description ; la représente la génération d'un vecteur d'incorporation dans chaque couche d'un graphe d'événements selon un exemple de mode de réalisation de la présente description ; La représente la concaténation de vecteurs d'incorporation et leur application à un réseau neuronal ; et la représente une tête de réseau neuronal pour effectuer une prédiction selon un exemple de mode de réalisation de la présente description. De mêmes éléments ont été désignés par de mêmes références dans les différentes figures. En particulier, les éléments structurels et/ou fonctionnels communs aux différents modes de réalisation peuvent présenter les mêmes références et peuvent disposer de propriétés structurelles, dimensionnelles et matérielles identiques. Par souci de clarté, seuls les étapes et éléments utiles à la compréhension des modes de réalisation décrits ont été représentés et sont détaillés. En particulier, des dispositifs et procédés de détection basée sur événement sont connus dans l'état de la technique et n'ont pas été décrits en détail. En outre, l'apprentissage d'un réseau neuronal graphique et l'utilisation d'un réseau neuronal graphique pour générer une détection ou une prédiction basée sur événements est bien connu de la personne du métier et ne seront pas décrits en détail. Sauf précision contraire, lorsque l'on fait référence à deux éléments connectés entre eux, cela signifie directement connectés sans éléments intermédiaires autres que des conducteurs, et lorsque l'on fait référence à deux éléments reliés (en anglais "coupled") entre eux, cela signifie que ces deux éléments peuvent être connectés ou être reliés par l'intermédiaire d'un ou plusieurs autres éléments. Dans la description qui suit, lorsque l'on fait référence à des qualificatifs de position absolue, tels que les termes "avant", "arrière", "haut", "bas", "gauche", "droite", etc., ou relative, tels que les termes "dessus", "dessous", "supérieur", "inférieur", etc., ou à des qualificatifs d'orientation, tels que les termes "horizontal", "vertical", etc., il est fait référence sauf précision contraire à l'orientation des figures. Sauf précision contraire, les expressions "environ", "approximativement", "sensiblement", et "de l'ordre de" signifient à 10 % près, de préférence à 5 % près. La représente schématiquement un système de détection et de traitement basé sur événement 100 selon un exemple de mode de réalisation de la présente description. Le système 100 comprend un détecteur basé sur événement (EVENT-BASED SENSOR) 102 configuré pour générer des données d'événements temporelles (TEMPORAL EVENT DATA), et un dispositif de traitement d'événements (EVENT PROCESSING DEVICE) 104 configuré pour recevoir les données d'événements temporelles et pour les traiter afin de générer une prédiction basée sur événements (EVENT-BASED PREDICTION). Par exemple, le détecteur basé sur événement 102 est une caméra basée sur événement, ou caméra d'événement, telle qu'une caméra d'événement en lumière visible ou infra-rouge. Selon une variante, le détecteur basé sur événement pourrait être un détecteur audio basé sur événement, tel qu'un microphone basé sur événement. D'autres types de détecteur basé sur événement seraient également possible. Les données d'évènements temporelles comprennent par exemple des événements asynchrones, chaque événement comprenant par exemple un horodatage et une valeur de données d'événements ayant une ou plusieurs dimensions. Par exemple, dans le cas où le détecteur basé sur événement 102 est une caméra, la valeur de données d'événements pourraient être l'adresse x et y du pixel qui a capturé l'événement, et l'événement est, par exemple, généré au moment où une modification de niveau de lumière dépasse un seuil par rapport au niveau de lumière au moment où l'événement précédent a été généré au niveau du pixel. De plus, un niveau de lumière détecté du pixel pourrait fournir une dimension supplémentaire de la valeur de données d'événements, par exemple la polarité de la modification ou le niveau de lumière absolu au moment où l'événement a été généré. Dans le cas où le détecteur basé sur événement 102 est un microphone, des événements sont générés par exemple en raison de modifications relatives du signal analogique généré par le microphone et les caractéristiques de chaque événement peuvent également comprendre un horodatage, la valeur absolue du signal et/ou, si le signal est filtré en plusieurs bandes de fréquence, la plage de la bande de fréquence de l'événement. Le dispositif de traitement basé sur événement 104 est par exemple configuré pour traiter les données d'événements temporelles en temps réel ou en temps quasi réel, par exemple avec un retard de traitement de moins d'une centaine de microsecondes, et de préférence moins de cinq microsecondes. Dans le cas où les données temporelles sont des données d'image, la prédiction basée sur événements fournie en sortie du dispositif de traitement d'événements 104 est par exemple une prédiction de flux optique par événement généré, ou une classification d'objet pour tout le flux d'événements, ou une détection d'objet par événement. Dans le cas où les données temporelles sont des données audio, la prédiction basée sur événements fournie en sortie du dispositif de traitement d'événements 104 est par exemple un repérage de mots clefs par groupe d'événements ou une reconnaissance de classe sonore. La représente schématiquement le dispositif de traitement d'événements 104 de la plus en détail selon un exemple de mode de réalisation de la présente description. Le dispositif 104 comprend par exemple un dispositif de traitement (P) 202 comprenant un ou plusieurs processeurs, et un ou plusieurs dispositifs mémoire, tels qu'une mémoire volatile (RAM) 204 et/ou une mémoire non volatile (FLASH) 206. Dans certains modes de réalisation, la mémoire volatile 204 est une mémoire vive, et/ou la mémoire non volatile 206 est une mémoire Flash, bien que d'autres types de mémoire volatile et non volatile puissent être présentes. Le dispositif de traitement 202 et les mémoires 204, 206 sont par exemple reliés par un bus 208. La mémoire non volatile 206 stocke par exemple un code logiciel, qui est exécuté par le dispositif de traitement 202. Le dispositif de traitement d'événements 104 comprend en outre, par exemple, une interface de détecteur (SENSOR INTERFACE) 210 reliée au bus 208, l'interface de détecteur 210 étant par exemple configurée pour communiquer avec le détecteur basé sur événement 102 sur une interface de communications câblée ou sans fil. Dans certains modes de réalisation, le dispositif de traitement d'événements 104 comprend en outre un réseau neuronal graphique (GRAPH NEURAL NETWORK) 212, qui est par exemple également relié au bus 208, et est configuré pour générer la prédiction basée sur événements (EVENT-BASED PREDICTION) au niveau d'une sortie du dispositif de traitement d'événements 104. Par exemple, bien que cela ne soit pas représenté en , la prédiction basée sur événements est fournie par le réseau neuronal graphique à une interface de sortie du dispositif 104 reliée au bus 208. Le réseau neuronal graphique 212 est par exemple un circuit matériel configuré pour mettre en œuvre un procédé de génération d'une prédiction basée sur des données d'événements capturées par le détecteur basé sur événement 102 décrit plus en détail ici. Selon des variantes de mode de réalisation, le réseau neuronal graphique est mis en œuvre dans un logiciel, et le procédé de génération d'une prédiction basée sur des données d'événements capturées par le détecteur basé sur événement 102 est mis en œuvre par un logiciel stocké dans la mémoire 204 ou 206 et exécuté par le dispositif de traitement 202. Selon une variante, le processeur lit des données provenant du détecteur à base d'événements, traite ces données puis fournit ces données au réseau neuronal graphique dans le format approprié pour effectuer une prédiction basée sur événements. Dans certains modes de réalisation, la prédiction basée sur événements générée par le réseau neuronal graphique 212 est utilisée pour commander un ou plusieurs actionneurs (ACTUATOR(S)) 214 reliés au dispositif 104. Les un ou plusieurs actionneurs 214 comprennent par exemple un système robotisé, tel qu'un bras robotisé entraîné pour arracher des mauvaises herbes ou pour cueillir un fruit pourri sur un arbre, des systèmes automatiques de direction ou de freinage dans un véhicule, ou un actionneur électronique, qui est par exemple configuré pour commander le fonctionnement d'un ou de plusieurs circuits, tel qu'un réveil d'un circuit depuis un mode de veille, l'action d'amener un circuit à entrer en mode de veille, l'action d'amener un circuit à générer une sortie textuelle, à effectuer une opération de codage ou de décodage de données, etc. Selon un autre exemple, le dispositif 104 est une unité de poursuite oculaire qui détermine la zone dans une scène que regarde un utilisateur et commande les actionneurs en fonction de la zone déterminée, par exemple afin de modifier le foyer du stéréogramme. La est un graphe représentant un exemple du nuage d'événements généré par un enregistrement de caméra d'événement. En particulier, le graphe de la est un graphe 3D représentant, sur un axe x, une coordonnée de pixel (X PIXEL) dans une direction x d'une matrice de pixels de la caméra, sur un axe y, une coordonnée de pixel (Y PIXEL) dans une direction y de la matrice de pixels et, sur un axe z, le temps en secondes (TIME(s)). La spirale des données représentée en résulte d'un déplacement circulaire d'une main d'une personne dans l'image. En analysant la structure de données 3D des événements de données de la , ou de façon similaire en analysant une structure de données 2D, 4D ou de dimension supérieure de données d'événements, il est possible d'effectuer des opérations de prédiction, telles qu'une classification afin de déterminer quel type d'objet a créé les événements, ou une prédiction de flux optique, par exemple pour déterminer le vecteur de vitesse de l'objet, ou la détection, par exemple, de si un certain objet est présent dans la scène. La est un graphe représentant un exemple d'un graphe d'événements dans lequel le nombre de k sauts entre des événements connectés indirectement est indiqué. La création du graphe d'événements implique, en particulier, la génération d'une structure d'arbre, suivie d'une recherche de voisins les plus proches dans l'arbre qui permet à des bords entre des événements (c'est-à-dire des sommets) d'être définis. Par exemple, la création d'une structure d'arbre KD est décrite plus en détail dans la publication de Zhou, Kun et al. intitulée "Real-time KD-Tree Construction on Graphics Hardware”, ACM Transactions on Graphics (TOG) 27.5 (2008) :1-11. Un ensemble d'événements est enregistré et la structure d'arbre est créée. Cette structure d'arbre est utilisée pour rechercher un ensemble de voisins les plus proches pour chaque événement. Des bords sont formés entre ces événements (c'est-à-dire des nœuds) sur la base d'une mesure de distance dans les dimensions de pixels (par exemple, x,y) et la dimension temporelle (t). Par exemple, un bord dirigé est connecté entre les M événements les plus proches dans un rayon de recherche fixe. Ce procédé est illustré en figure 4, qui montre le temps (TIME) sur l'axe x et une position x,y (XY POSITION) de données de pixel sur l'axe y. Un nouvel événement pour un pixel donné est détecté par un détecteur basé sur événement à un instant . D'autres événements (EVENTS) sont également représentés sur ce graphe. Un volume de recherche est défini comme étant dans une distance temporelle par rapport à l'instant du nouvel événement, et dans une distance spatiale par rapport au nouvel événement, comme cela est représenté par une ellipse S. La moitié de ce volume de recherche S est antérieure à l'instant du nouvel événement , et l'autre moitié du volume de recherche S est postérieure à l'instant d'arrivée du nouvel événement . Ainsi, comme cela est représenté en figure 4, le volume de recherche comprend des événements dans un rayon du nouvel événement . Parmi les événements qui rentrent dans le volume de recherche, les K voisins les plus proches sont connectés au nouvel événement par des bords. Ces bords peuvent être bidirectionnels ou unidirectionnels de façon inhérente, bien que souvent deux bords unidirectionnels formeront entre des paires d'événements avec un tel paradigme de recherche à base euclidienne. En outre, surtout, dans la mesure où de nombreux événements sont générés, les configurations de bord des événements existants dans l'arbre sont également mis à jour dans le cas où de nouveaux événements deviennent un des voisins les plus proches des évènements existants. Comme cela sera expliqué plus en détail ci-après en relation avec la figure 5, le graphique d'événements est ensuite mis à jour au vu du nouvel événement et des nouveaux bords. En particulier, l'effet du nouvel événement sur des incorporations de nœuds du graphe d'événements existantes est évalué pour toutes les L couches du réseau neuronal graphique d'événements et éventuellement un grand nombre de fois. En fonction du procédé de mise à jour des incorporations de nœuds, cela peut être très coûteux en termes de calcul et impliquer une latence importante. Pour éviter la mise à jour des incorporations de nœuds de tout le graphe d'événements actif chaque fois qu'un nouvel événement est généré, une fonction de recherche graphique à k sauts récursive peut par exemple être appliquée afin de trouver le sous-ensemble clairsemé de nœuds impactés dans chacune des L couches. Seulement ce sous-ensemble de nœuds sera mis à jour au moment de l'arrivée de chaque nouvel événement, ce qui peut faciliter légèrement la charge de calcul. Comme cela est représenté, en figure 4, les connexions directes avec le nouvel événement sont connectées par un seul saut, correspondant à k=0, et un nombre entier K de sauts supplémentaires est déterminé au moyen de nœuds connectés intermédiaires. Dans l'exemple de la figure 4, K=4 entre l'événement central et l'événement dans le coin le plus en haut à gauche du diagramme. La est un organigramme représentant un exemple d'étapes d'un procédé de détermination d'une prédiction de flux optique selon l'approche représentée par le graphe de la . Dans une étape 501, un nouvel événement est reçu. Dans une étape 502, un sous-ensemble d'événements passés est déterminé dans la distance et de l'événement . En d'autres termes, les événements passés qui tombent dans le volume de recherche S de la sont identifiés. Dans une étape 503, pour chaque événement passé , une recherche des K voisins les plus proches est effectuée , et des bords sont créés. En particulier, des bords sont créés depuis chaque événement passé des K voisins les plus proches jusqu'au nouvel événement . En outre, des bords sont créés depuis le nouvel événement jusqu'à chacun des K voisins les plus proches dans le passé, et les incorporations de nœuds de tous les nœuds impactés sur un nombre entier de K sauts à partir d'un événement doivent être mises à jour. L'événement sera dans la suite susceptible d'être modifié plusieurs fois lorsque plusieurs évènements nouveaux sont générés dans un délai égal au rayon de recherche temporel, ce qui forme des connections directes K=0 avec des événements futurs, multipliés par le nombre de couches (par l'intermédiaire de modifications au travers de nœuds connectés par un certain nombre de K sauts). Dans une étape 504, l'effet d'un nouvel événement sur des incorporations de nœuds de graphe d'événements existantes pour toutes les L couches du réseau neuronal graphique d'événements est évalué. Cela implique la fonction de recherche graphique à k sauts récursive , qui trouve le sous-ensemble clairsemé de nœuds impacté dans chaque couche l du graphe d'évènements, comme cela est représenté en . Dans une étape 505, des incorporations de nœuds affectés dans chaque couche sont mis à jour en utilisant une fonction de convolution graphique. La fonction de convolution graphique, , peut être par exemple la convolution graphique spectrale proposée dans la publication "SEMI-SUPERVISED CLASSIFICATION WITH GRAPH CONVOLUTIONAL NETWORKS" Kipf 2017, , où , A est la matrice de contiguïté qui stocke le 0 ou 1 dans chaque cellule de matrice indiquant si des nœuds sont connectés et D est la matrice des degrés. Dans une étape 506, après un retard égal au rayon de la fenêtre de recherche multiplié par le nombre de couches du réseau neuronal graphique, temps pendant lequel de nouveaux événements supplémentaires qui impactent l'événement peuvent être reçus et traités, une fonction est appliquée aux incorporations de nœuds pour générer une prédiction de sortie , par exemple une prédiction de flux optique, en relation avec le nouvel événement . Le procédé de la peut par exemple être représenté par l'algorithme suivant. où est le nouvel événement, , sont des valeurs de données de la valeur de données d'événements, est l'horodatage de l'événement, est la polarité d'événement, est le graphe d'événements, est un sous-ensemble égal à , sont les bords du graphe d'événements connectant les événements , est une fonction utilisée pour extraire le sous-ensemble de l'étape 502 précédente, est la recherche des K voisins les plus proches, est une fonction qui prend comme entrée l'état du graphe précédent, le nouvel événement, et des bords nouveaux et recalculés et fournit en sortie un graphe d'événements mis à jour, est la fonction de recherche graphique à k sauts récursive, et sont les incorporations de nœud dans une couche donnée l. Un inconvénient majeur du procédé de la figure 5 est qu'il en résulte un nombre excessif de calculs et une latence relativement importante entre l'instant d'apparition du nouvel événement et la fourniture en sortie de la prédiction. Cela est dû en partie à la complexité du traitement, et également à la latence de construction d'un graphe, comprenant le retard , qui est typiquement de plusieurs centaines de millisecondes. La figure 6 est un graphe représentant un exemple de création de graphe d'événements selon un exemple de mode de réalisation de la présente description. Le graphe de la figure 6 est similaire à celui de la figure 4 si ce n'est que le volume de recherche S est remplacé par un volume de recherche S', et les bords (EDGES) entre des évènements passés (EVENTS) et le nouvel événement sont strictement unidirectionnels, comme cela sera expliqué maintenant plus en détail. Selon le mode de réalisation représenté en , la latence de construction d'un graphe est réduite en limitant la création de bords dans des graphes d'événements de sorte que des bords unidirectionnels dirigés soient formés seulement depuis des événements passés jusqu'à un événement nouvellement arrivé dans un rayon de recherche hémisphérique ou hémi-elliptique S' autour de l'événement nouvellement arrivé. Autrement dit, lorsqu'un nouvel événement arrive, des évènements avec lesquels il se connectera et à partir desquels il obtiendra de données sont recherchés seulement dans le voisinage passé. Les bords vers les événements passés, qui étaient créés selon le procédé précédent, ne sont plus créés, et par conséquent les bords sont unidirectionnels dans le temps, depuis le passé vers le futur, comme cela est représenté en par des flèches pointant vers l'avant dans le temps uniquement. Cela permet de calculer une prédiction pour un événement immédiatement pour un événement généré. En effet, on peut garantir que ni les incorporations de nœud de cet événement, ni ses bords, ne changeront dans le futur. Cela réduit grandement la latence ainsi que la quantité de calcul. Dans le cas d'un réseau neuronal graphique, ces bords sont utilisés pour calculer immédiatement les incorporations de nœuds uniquement de l'événement nouvellement généré pour chaque couche du réseau. Des événements passés ne modifient maintenant plus leur incorporation une fois calculée. Cela diffère des approches précédentes dans lesquelles un grand nombre d'événements passés doivent être recalculés au moment de l'arrivée de chaque événement. Seules les incorporations provenant des événements passés dans un certain rayon de recherche de temps et d'espace auquel il est connecté sont utilisées dans ce procédé. Selon l'approche de la , les bords, c'est-à-dire les identités de deux événements reliés par le bord ainsi que toutes les propriétés de bord telles qu'une différence temporelle, ne sont par exemple pas stockés explicitement dans la mémoire car les informations relatives à ces bords sont représentées implicitement par les incorporations de nœuds d'événements générés précédemment. Ainsi, cette approche permet d'économiser du stockage mémoire, tel que la mémoire 204 et/ou 206 de la , qui peut être considérablement plus petit. De plus, les événements passés qui tombent à l'extérieur du rayon de recherche de temps ne sont par exemple pas stockés. Cela diffère des approches précédentes dans lesquelles des événements dans une fenêtre temporelle égale au rayon de recherche multiplié par le nombre de couches du réseau neuronal sont stockés, et tous les bords reliant ces événements sont également stockés. Les facteurs précédents permettent une mise en œuvre avec une empreinte mémoire réduite de façon importante par rapport à d'autres approches. Plus particulièrement, une mise en œuvre en temps réel des modes de réalisation décrits ici incorporent par exemple une fonctionnalité dans laquelle la mémoire du système dans lequel l'algorithme est incorporé est nettoyée en continu de sorte des événements plus vieux qu'un certain temps soient retirés. Dans certains modes de réalisation, afin de maintenir un certain nombre d'événements détectés qui soit relativement similaire à l'approche de la figure 4, le rayon est par exemple augmenté par rapport à une valeur typique utilisée selon cette approche. Typiquement, cela est obtenu en augmentant, par exemple sensiblement en doublant, le rayon de sorte que les volumes de recherche soient équivalents. Par exemple, le rayon dans le cas de la figure 4 est par exemple entre 10 et 20 ms, et le rayon dans le cas de la est par exemple entre 20 et 40 ms. La est un organigramme d'un exemple d'étapes d'un procédé de détermination d'une prédiction de flux optique selon un mode de réalisation de la présente description. Ce procédé pourrait également être utilisé pour déterminer d'autres types de prédictions, tels qu'une classification ou une détection d'objet. Dans le cas d'une classification, dans lequel une sortie événement par événement peut ne pas être requise, l'incorporation de nœud de tous les événements générés dans une certaine fenêtre temporelle peut être agrégée, par exemple en utilisant une mise en commun maximale ou moyenne, et c'est cette incorporation de nœud agrégée qui est, par exemple, donnée de façon périodique à la fonction de prédiction de sortie. Le procédé de la est par exemple mis en œuvre par le dispositif de traitement d'événements 104 de la . Dans une étape 701, un nouvel événement reçu par le dispositif de traitement d'événements 104, par exemple en provenance du détecteur basé sur événement 102. Dans une étape 702, une recherche des K événements voisins les plus proches est par exemple effectuée dans un volume de recherche passée de rayon dans les une ou plusieurs dimensions de la valeur de données d'événements, et du rayon dans le domaine temporel. Par exemple, cela est obtenu en effectuant une mesure de distance entre le nouvel événement et les événements passés, le calcul de distance étant par exemple basé sur la norme L2. Il serait également possible d'utiliser d'autres métriques de distance telles que la norme L1 ou simplement la fonction de distance maximale, correspondant à l'utilisation du maximum de toutes les dimensions (telles que le maximum de l'ensemble des trois dimensions dans le cas où elles sont trois). Dans une étape 703, un sous-graphe est créé contenant le nouvel événement et, pour chaque voisin parmi les K voisins les plus proches, un bord unidirectionnel . Dans une étape 704, L incorporations de nœuds sont calculées pour l'événement en utilisant une fonction de convolution graphique . Cette fonction est par exemple identique à la fonction , si ce n'est que l'entrée de cette fonction est un graphe seulement passé similaire à celui représenté en , et ainsi les bords qui sont utilisés pour le calcul des L incorporations de nœuds sont constitués seulement de bords strictement unidirectionnels (passé vers présent). Dans une étape 705, une fonction est par exemple appliquée aux incorporations de nœuds pour générer une prédiction de flux optique pour le nouvel événement . Par exemple, la fonction est appliquée en faisant passer le sous-graphe dans un réseau neuronal tel que celui décrit en relation avec la . Le procédé de la peut par exemple être représenté par l'algorithme suivant. où est le nouvel événement, , sont des valeurs de données de la valeur de données d'événements, est l'horodatage de l'événement, est la polarité d'événement, sont les événements voisins les plus proches connectés par des bords unidirectionnels , est le sous graphe, et est la recherche des K voisins les plus proches. La figure 8 représente la génération d'un vecteur d'incorporation dans chaque couche d'un graphe d'événements selon un exemple de mode de réalisation de la présente description. En particulier, un réseau neuronal graphique est utilisé pour calculer les incorporations de nœuds. La figure 8 représente un exemple dans lequel le réseau neuronal graphique d'événements, appliqué au graphe d'événements , comprend cinq couches l1 à l5. Dans chaque couche, un vecteur d'incorporation est calculé pour un événement en utilisant les incorporations des événements connectés. Par exemple, la figure 8 représente un exemple d'une matrice d'incorporation pour un événement j associée à un des événements connectés du nouvel événement , la matrice d'incorporation comprenant des sous-vecteurs à pour chaque couche 1 à 5. Le vecteur d'incorporation de la première couche est par exemple constitué de l'événement correspondant, comprenant par exemple les informations temporelles sous forme d'un horodatage, et la valeur des données d'événements ayant une ou plusieurs dimensions. Dans l'exemple de la figure 8, chaque vecteur d'incorporation comprend trois valeurs, qui peuvent, par exemple, dans la première couche correspondre respectivement à l'horodatage et les coordonnées de pixel dans X et Y et dans des couches ultérieures correspondent à une représentation vectorielle abstraite de l'événement. Pour obtenir l'incorporation dans chacune de ces couches ultérieures, dans chaque couche ultérieure, une transformation est appliquée au vecteur incorporé de chaque nœud, ou aux données d'événements d'entrée dans le cas de la première couche, afin de générer un vecteur d'incorporation résultant . Cette transformation prend également en compte les incorporations d'autres nœuds auxquels le nœud est connecté par un bord. Par exemple, la transformation pourrait être une somme ou une moyenne des vecteurs d'incorporation ou encore quelque chose de plus complexe basé sur des informations de bord. Les couches du réseau neuronal graphique d'événements sont par exemple chaînés séquentiellement comme c'est le cas pour des réseaux neuronaux graphiques. La figure 9 représente la concaténation de vecteurs d'incorporation et leur application à un réseau neuronal selon un exemple de mode de réalisation de la présente description. En particulier, les vecteurs d'incorporation de chaque couche du réseau neuronal associé au nouvel événement sont par exemple traités en les passant dans un réseau neuronal afin de générer une prédiction associée au nouvel événement . Dans l'exemple de la figure 9, cela implique une concaténation des vecteurs d'incorporation pour former un vecteur unique , et un traitement de ce vecteur par un perceptron multicouche. Par exemple, dans une première couche L1 du réseau neuronal perceptron multicouche, une normalisation d'instance peut être appliquée afin de produire une première représentation vectorielle v1 pour l'événement. Pour générer la prédiction , qui est par exemple une prédiction de flux optique, cette première représentation vectorielle v1 est par exemple traitée par une ou plusieurs couches supplémentaires comportant une couche de sortie (OUTPUT LAYER), qui fournit en sortie deux valeurs de sortie et , qui correspondent par exemple aux composantes x et y du vecteur de flux optique d'événements . La représente schématiquement une tête de réseau neuronal 1100 pour effectuer une prédiction selon un exemple de mode de réalisation de la présente description. La représente en particulier un exemple dans lequel il y a cinq couches l1 à l5 dans le réseau neuronal graphique, et l'état des sorties de chaque couche, pour chaque nœud, est fourni en entrée de la tête de réseau neuronal 1100. Pour les couches l2 à l5, l'entrée de chaque couche est la sortie de la couche précédente, tout en appliquant, par exemple, de nouvelles pondérations et de nouveaux paramètres de passage de messages. Par exemple, dans chaque couche, la même pondération partagée est appliquée à tous les nœuds. La pondération est différente pour chaque couche. Un passage d'un message dépend du type de la convolution. Pour de nombreux types de convolution, il n'y a aucun paramètre. Pour des types plus complexes, comme une convolution B-spline, il y a par exemple le nombre de fonctions/noyaux de base à définir comme paramètre qui pourrait changer d'une couche à une autre. Le réseau neuronal graphique 1000 comprend par exemple, dans l'exemple de la , une couche L de quatre neurones recevant une concaténation des incorporations de nœuds d'un nœud donné de chacune des couches l1 à l5 du réseau neuronal graphique. Par exemple, les neurones de la couche L sont configurés pour appliquer une fonction d'activation linéaire de redressement. Une normalisation d'instance peut être appliquée aux activations de cette couche. Les sorties des neurones de la couche L sont par exemple fournies à un seul neurone de sortie Nout, qui est par exemple configuré pour générer une prédiction correspondant, par exemple, à une probabilité comprise entre 0 et 1. Un avantage de l'algorithme de création de graphe décrit ici est qu'il permet d'obtenir une latence considérablement plus petite, typiquement d'environ quatre ordres de grandeur, et une charge de calcul totale plus petite, par exemple de deux ordres de grandeur, par rapport aux approches antérieures. En outre, les bords ne sont par exemple plus stockés dans une mémoire, et des événements qui sont plus anciens qu'un temps égal au rayon temporel de recherche sont par exemple retirés de la mémoire. Divers modes de réalisation et variantes ont été décrits. La personne du métier comprendra que certaines caractéristiques de ces divers modes de réalisation et variantes pourraient être combinées, et d’autres variantes apparaîtront à la personne du métier. Par exemple, dans le cas d'un réseau neuronal graphique, des opérations de mise en commun peuvent être utilisées pour faire croître le graphe, réduisant ainsi le nombre de nœuds ainsi que la quantité de calcul nécessaire. Par exemple, une opération de mise en commun est déclenchée périodiquement pour des couches du réseau neuronal graphique données en utilisant, par exemple, une dimension de grille de voxels donnée, c'est-à-dire une grille périodique dans les dimensions spatiales (xy) et temporelle (t) du nuage d'événements d'entrée. Des événements dans un seul voxel ont par exemple leurs caractéristiques agrégées en un seul super-événement et les connexions entre ces super-événements sont par exemple basées soit en conservant des connexions entre voxels qui existaient précédemment ou en effectuant une nouvelle recherche, dans le passé seulement, et en définissant un nouvel ensemble de bords. En outre, bien que des modes de réalisation aient été essentiellement décrits dans le contexte de données de caméra, c'est-à-dire des valeurs de données d'événements en deux dimensions, x et y, les techniques décrites ici pourraient être appliquées à d'autres types de détecteurs basés sur événement, tels qu'une cochlée ou un écouteur en silicone basé sur événements. Dans un tel cas, plutôt que de coder des événements dans l'espace et le temps, l'oreille en silicone code par exemple des événements en temps et énergie de bande de fréquence – résultant en un plan de points 2D au lieu d'un nuage de points 3D dans le cas de caméras d'événements. Par exemple, un tel écouteur en silicone est décrit plus en détail dans la publication de Chan, Vincent, Shih-Chii Liu, et Andr van Schaik. "AER EAR : A matched silicon cochlea pair with address event representation interface." IEEE Transactions on Circuits and Systems I : Regular Papers 54.1 (2007) : 48-59. De plus, les modes de réalisation décrits ici pourraient être appliqués à toute application avec une dimension temporelle ou causale. Par exemple, ils pourraient être appliqués à des structures de données qui peuvent être graduellement explorées, avec la limite possible qu'aucune boucle ne soit créée (transposition de la condition "des bords connectent seulement le passé au futur", ce qui signifie que le graphe obtenu avec des bords unidirectionnels n'a aucune boucle). De plus, une quelconque étape pourrait être appliquée aux données avant et/ou après la construction de graphe proposée. Par exemple, un filtrage de données pourrait être appliqué, d'où il résulte qu'un événement au niveau d'un pixel donné de la même polarité émis dans une certaine fenêtre temporelle sera éliminé avant le traitement. D'autres options sont la normalisation de caractéristiques d'entrée et le codage du temps utilisant une seule ou une paire de fonctions périodiques, telles qu'une onde en dents de scie, au lieu du temps absolu qui pourrait imposer une certaine charge mémoire. De plus, la distance entre des nœuds peut être calculée avec une quelconque métrique de distance – norme L2, norme L1, également connue comme étant la distance Manhattan, la distance euclidienne, etc. De plus, les caractéristiques contenues dans chaque nœud peuvent par exemple être modifiées. Certaines des possibilités qui peuvent être utilisées sont le temps, les coordonnées x et y de l'événement, un vecteur normalisé approché vers un plan local d'événements (voir la publication de Mitrokhin, Anton, et al. "Learning visual motion segmentation using event surfaces." Proceedings of the IEEE/CVF Conference on Computer Vision and Pattern Recognition. 2020.), la polarité de l'événement, etc. Des schémas de normalisation d'incorporation de nœuds peuvent être utilisés pour normaliser les caractéristiques de nœuds dans des couches intermédiaires du réseau neuronal graphique. L'utilisation d'instance de normalisation est particulièrement intéressante car c'est une technique utilisant seulement des statistiques de niveau de nœud plutôt qu'une norme de lot ou une norme de couche, qui requièrent le regroupement de statistiques provenant de plusieurs nœuds ou même de plusieurs graphes. Les caractéristiques stockées dans les bords créés peuvent également être modifiées. Par exemple, un drapeau binaire simple peut être utilisé pour indiquer une connexion ou les différences dans les coordonnées spatiales et temporelles entre des événements connectés, ce qui a été déterminé comme étant particulièrement performant. Des rayons de recherche peuvent être modifiés, autrement dit de la même façon pour tous les graphes, ou dynamiquement, par exemple conformément à certaines règles. Par exemple, pour une densité élevée d'événements dans le temps, qui suggère un bord se déplaçant rapidement, dans une certaine région de la scène, le rayon de recherche pourrait être réduit afin de préserver des relations spatiales entre des événements générés par un objet indépendamment de sa vitesse. Autrement, le vecteur normal approché d'un événement peut être utilisé pour adapter le rayon de recherche – un vecteur plus grand dans des dimensions données peut être utilisé pour diminuer le rayon de recherche dans la mesure où il implique également un objet se déplaçant rapidement. Au contraire, pour un vecteur normal évalué petit, le rayon de recherche pourrait être élargi. Dans certains modes de réalisation, le nombre de voisins peut être limité, peut être fixe ou dynamique, ou peut ne pas être limité. Le traitement effectué n'est pas nécessairement un réseau neuronal graphique, comme cela est discuté dans la publication intitulée " Graph Convolutional Neural Network (GCN), with the gconv and spline layers ", disponible à https ://pytorch-geometric.readthedocs.io/en/latest/modules/nn.html. Par exemple, des schémas de traitement qui ne sont pas basés sur IA peuvent être appliqués, inclus des algorithmes de recherche graphique. Enfin, la mise en oeuvre pratique des modes de réalisation et variantes décrits est à la portée de la personne du métier à partir des indications fonctionnelles données ci-dessus. Procédé de génération, par un dispositif de traitement de données (104), d'une prédiction basée sur des données d'événements capturées par un détecteur basé sur événement (102), le procédé comprenant : - la réception, par le dispositif de traitement de données (104), d'un nouvel événement ( ) provenant du détecteur basé sur événement (102), le nouvel événement comprenant un horodatage et une valeur de données d'événements ayant une ou plusieurs dimensions ; - la détermination, par le dispositif de traitement de données (104) dans une liste d'événements passés, de ceux des événements passés ( ) qui tombent dans une distance temporelle ( ) par rapport à l'horodatage et dans une distance de valeur de données ( ) de valeur de données d'événements ; - la construction, par le dispositif de traitement de données (104), d'un sous-graphe d'événements comprenant un premier nœud représentant le nouvel événement ( ), des nœuds supplémentaires représentant chacun des événements passés déterminés ( ), et des bords unidirectionnels reliant chaque nœud supplémentaire au premier nœud ; - le calcul, par le dispositif de traitement de données (104), d'incorporations de nœud ( ) pour le premier nœud sur la base de bords constitués uniquement desdits bords unidirectionnels reliant chaque nœud supplémentaire au premier nœud ; et - la génération de la prédiction ( ) en appliquant une fonction ( ) aux incorporations de nœud ( ). Procédé selon la revendication 1, comprenant en outre la commande d'un ou de plusieurs actionneurs (214) sur la base de la prédiction ( ). Procédé selon la revendication 1 ou 2, dans lequel la détermination des événements passés ( ) comprend la mise en œuvre d'une recherche de K événements voisins les plus proches dans un volume de recherches passées ayant un rayon de valeur de données d'événements ( ) dans les une ou plusieurs dimensions de la valeur de données d'événements, et un rayon temporel ( ) dans le domaine temporel. Procédé selon l'une quelconque des revendications 1 à 3, dans lequel le détecteur basé sur événement (102) est une caméra d'événement, et dans lequel la prédiction ( ) est une prédiction de flux optique. Procédé selon l'une quelconque des revendications 1 à 4, dans lequel le dispositif de traitement de données (104) est configuré pour mettre en œuvre un traitement en temps réel du nouvel événement ( ), le dispositif de traitement de données est par exemple configuré pour générer la prédiction ( ) pendant un délai de traitement de moins de 100 microsecondes, et, de préférence, de moins de 5 microsecondes, après un temps du nouvel événement ( ). Procédé selon l'une quelconque des revendications 1 à 5, dans lequel la génération de la prédiction ( ) comprend le passage du sous-graphe d'événements dans un réseau neuronal graphique (212). Procédé selon la revendication 6, dans lequel le réseau neuronal graphique (212) comprend une pluralité de couches, et le passage du sous-graphe d'événements dans le réseau neuronal graphique (212) comprend : - le calcul d'un vecteur d'incorporation ( ) pour le premier nœud et pour les nœuds supplémentaires du sous-graphe en utilisant les incorporations de tous les événements connectés par lesdits bords unidirectionnels, le vecteur d'incorporation ( ) comprenant un sous-vecteur ( à ) pour chacune desdites couches ; et - l'application d'une transformation au vecteur d'incorporation ( ) de chaque nœud, ou aux données d'événements d'entrée dans le cas d'une première couche du réseau neuronal graphique, afin de générer un vecteur d'incorporation résultant ( ). Dispositif de traitement de données pour générer une prédiction basée sur des données d'événements capturées par un détecteur basé sur événement (102), le dispositif de traitement de données étant configuré pour : - recevoir un nouvel événement ( ) en provenance du détecteur basé sur événement (102), le nouvel événement comprenant un horodatage et une valeur de données d'événements ayant une ou plusieurs dimensions ; - déterminer, dans une liste d'événements passés, ceux des événements passés ( ) qui tombent dans une distance temporelle ( ) par rapport à l'horodatage et dans une distance de valeur de données ( ) de la valeur de données d'événements ; - construire un sous-graphe d'événements comprenant un premier nœud représentant le nouvel événement ( ), des nœuds supplémentaires représentant chacun des événements passés déterminés ( ), et des bords unidirectionnels reliant chaque nœud supplémentaire au premier nœud ; - calculer des incorporations de nœud ( ) pour le premier nœud sur la base de bords constitués seulement desdits bords unidirectionnels reliant chaque nœud supplémentaire au premier nœud ; et - générer la prédiction ( ) en appliquent une fonction ( ) aux incorporations de nœud ( ). Dispositif de traitement de données selon la revendication 8, configuré en outre pour commander un ou plusieurs actionneurs (214) sur la base de la prédiction ( ). Dispositif de traitement de données selon la revendication 8 ou 9, configuré pour déterminer lesdits événements passés ( ) en effectuant une recherche des K événements voisins les plus proches dans un volume de recherche ayant un rayon de valeur de données d'événements ( ) dans les une ou plusieurs dimensions de la valeur de données d'événements, et un rayon temporel ( ) dans le domaine temporel. Dispositif de traitement de données selon l'une quelconque des revendications 8 à 10, dans lequel le détecteur basé sur événement (102) est une caméra d'événement, et dans lequel la prédiction ( ) est une prédiction de flux optique. Dispositif de traitement de données selon l'une quelconque des revendications 8 à 11, dans lequel le dispositif de traitement de données (104) est configuré pour effectuer un traitement en temps réel du nouvel événement ( ), le dispositif de traitement de données étant par exemple configuré pour générer la prédiction ( ) dans un délai de traitement de moins de 100 microsecondes, et, de préférence, de moins de cinq microsecondes, après un instant du nouvel événement ( ). Dispositif de traitement de données selon l'une quelconque des revendications 8 à 12, configuré pour générer la prédiction ( ) en faisant passer le sous-graphe d'événements dans un réseau neuronal graphique (212). Dispositif de traitement de données selon la revendication 13, dans lequel le réseau neuronal graphique (212) comprend une pluralité de couches, et le passage du sous-graphe d'événements dans un réseau neuronal graphique (212) comprend : - le calcul, par le réseau neuronal graphique (212), d'un vecteur d'incorporation ( ) pour le premier nœud et pour les nœuds supplémentaires du sous-graphe en utilisant les incorporations de tous les événements connectés par lesdits bords unidirectionnels, le vecteur d'incorporation ( ) comprenant un sous-vecteur ( à ) pour chacune desdites couches ; et - l'application, par le réseau neuronal graphique (212), d'une transformation au vecteur d'incorporation ( ) de chaque nœud, ou aux données d'événements d'entrée dans le cas d'une première couche du réseau neuronal graphique, afin de générer un vecteur d'incorporation résultant ( ). Système de commande comprenant : - le dispositif de traitement de données selon l'une quelconque des revendications 8 à 14 ; - un détecteur basé sur événement (102) relié au dispositif de traitement de données et configuré pour générer le nouvel événement ( ) et pour transmettre le nouvel événement au dispositif de traitement de données ; et - les un ou plusieurs actionneurs (214).