FR3113273A1 - Compression automatisée de réseaux de neurones pour la conduite autonome - Google Patents
Compression automatisée de réseaux de neurones pour la conduite autonome Download PDFInfo
- Publication number
- FR3113273A1 FR3113273A1 FR2008291A FR2008291A FR3113273A1 FR 3113273 A1 FR3113273 A1 FR 3113273A1 FR 2008291 A FR2008291 A FR 2008291A FR 2008291 A FR2008291 A FR 2008291A FR 3113273 A1 FR3113273 A1 FR 3113273A1
- Authority
- FR
- France
- Prior art keywords
- neural network
- training
- vehicle
- application
- pruning
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Withdrawn
Links
- 238000013528 artificial neural network Methods 0.000 title claims abstract description 51
- 230000006835 compression Effects 0.000 title description 3
- 238000007906 compression Methods 0.000 title description 3
- 238000004422 calculation algorithm Methods 0.000 claims abstract description 11
- 238000012549 training Methods 0.000 claims description 42
- 238000000034 method Methods 0.000 claims description 31
- 238000013138 pruning Methods 0.000 claims description 24
- 230000006870 function Effects 0.000 claims description 18
- 230000004913 activation Effects 0.000 claims description 14
- 238000009738 saturating Methods 0.000 claims description 5
- 238000004590 computer program Methods 0.000 claims description 2
- 230000003213 activating effect Effects 0.000 claims 1
- 238000001994 activation Methods 0.000 description 11
- 238000013527 convolutional neural network Methods 0.000 description 5
- 238000010586 diagram Methods 0.000 description 5
- 210000002569 neuron Anatomy 0.000 description 4
- 238000012545 processing Methods 0.000 description 4
- 230000008901 benefit Effects 0.000 description 3
- 238000013135 deep learning Methods 0.000 description 2
- 230000007613 environmental effect Effects 0.000 description 2
- 238000012805 post-processing Methods 0.000 description 2
- 230000008569 process Effects 0.000 description 2
- 230000000306 recurrent effect Effects 0.000 description 2
- 241000283070 Equus zebra Species 0.000 description 1
- 206010047571 Visual impairment Diseases 0.000 description 1
- 230000001133 acceleration Effects 0.000 description 1
- 230000003044 adaptive effect Effects 0.000 description 1
- 238000007792 addition Methods 0.000 description 1
- 230000002776 aggregation Effects 0.000 description 1
- 238000004220 aggregation Methods 0.000 description 1
- 230000004075 alteration Effects 0.000 description 1
- 238000004458 analytical method Methods 0.000 description 1
- 238000013473 artificial intelligence Methods 0.000 description 1
- 238000004364 calculation method Methods 0.000 description 1
- 238000013461 design Methods 0.000 description 1
- SDJLVPMBBFRBLL-UHFFFAOYSA-N dsp-4 Chemical class ClCCN(CC)CC1=CC=CC=C1Br SDJLVPMBBFRBLL-UHFFFAOYSA-N 0.000 description 1
- 238000004880 explosion Methods 0.000 description 1
- 238000001914 filtration Methods 0.000 description 1
- 230000004927 fusion Effects 0.000 description 1
- 238000010191 image analysis Methods 0.000 description 1
- 238000005457 optimization Methods 0.000 description 1
- 230000009467 reduction Effects 0.000 description 1
- 238000012552 review Methods 0.000 description 1
- 238000012360 testing method Methods 0.000 description 1
- 238000002604 ultrasonography Methods 0.000 description 1
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06N—COMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
- G06N3/00—Computing arrangements based on biological models
- G06N3/02—Neural networks
- G06N3/08—Learning methods
- G06N3/082—Learning methods modifying the architecture, e.g. adding, deleting or silencing nodes or connections
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06N—COMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
- G06N3/00—Computing arrangements based on biological models
- G06N3/02—Neural networks
- G06N3/04—Architecture, e.g. interconnection topology
- G06N3/045—Combinations of networks
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06N—COMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
- G06N3/00—Computing arrangements based on biological models
- G06N3/02—Neural networks
- G06N3/04—Architecture, e.g. interconnection topology
- G06N3/048—Activation functions
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Physics & Mathematics (AREA)
- Data Mining & Analysis (AREA)
- General Health & Medical Sciences (AREA)
- Biomedical Technology (AREA)
- Biophysics (AREA)
- Computational Linguistics (AREA)
- Life Sciences & Earth Sciences (AREA)
- Evolutionary Computation (AREA)
- Artificial Intelligence (AREA)
- Molecular Biology (AREA)
- Computing Systems (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Mathematical Physics (AREA)
- Software Systems (AREA)
- Health & Medical Sciences (AREA)
- Image Analysis (AREA)
Abstract
L’invention concerne la conduite autonome d’un véhicule, et en particulier la génération d’une instruction de conduite à partir d’une donnée obtenue à partir d’au moins un capteur du véhicule, par exécution (34) sur un dispositif compris dans le véhicule d’un algorithme fondé sur un réseau de neurones FIG. 1
Description
La présente invention appartient au domaine de la conduite autonome, et en particulier aux réseaux de neurones utilisés dans ce domaine. Dans le détail, il concerne des réseaux neurones optimisés en taille et complexité par un compression automatisée obtenue lors de l’entrainement.
On entend par « véhicule terrestre à moteur » tout type de véhicule tel qu’un véhicule automobile, un cyclomoteur, une motocyclette, un robot de stockage dans un entrepôt, etc.
On entend par « réseau de neurones » tout type de réseau de neurones artificiels de la famille des méthodes de l’intelligence artificielle par apprentissage. Un réseau de neurones à convolution (CNN, convolutional neural networks), un réseau récursif à cascade de corrélation ou encore à rétropropagation sont des exemples de réseaux de neurones. Un réseau de neurones est aussi appelé réseau neuronal. Dans la présente invention, on utilise préférentiellement un réseau de neurones profonds, c’est-à-dire comportant au moins cinq couches.
Les véhicules autonomes utilisent des réseaux de neurones pour assurer les fonctions de conduite autonome. Ces réseaux nécessitent de nombreux paramètres se présentant sous forme de poids des connexions du réseau, et pour les réseaux à convolutions, sous forme de noyaux de convolutions, qui ont un coût en terme de mémoire embarquée.
En particulier, ces réseaux neuronaux nécessitent d’importantes ressources en calculs puisque riches en multiplications et additions tensorielles en virgule flottante : le réseau ResNet50, par exemple, peut requérir 3.8 milliards de FLOPS. De plus, ces réseaux peuvent requérir une mémoire importante : si le ResNet50 comporte environ 600 000 paramètres, les records en terme d’espace occupé peuvent atteindre la centaine de milliards de paramètres (la bibliothèque DeepSpeed de Microsoft, MARQUE DEPOSEE, vise à pouvoir entraîner de tels réseaux). De telles spécifications entraînent un besoin énergétique fort : les solutions connues peuvent consommer jusqu’à 30 Watts, ce qui peut nuire à l’autonomie du véhicule.
La raison de telles demandes en ressources provient du fait que les performances des réseaux neuronaux bénéficient grandement d’un accroissement de leur nombre de paramètres pour leur entraînement, ce qui explique l’explosion de la taille des réseaux durant la dernière décennie. Toutefois, cela ne veut pas dire que, une fois entraînés, tous ces paramètres soient utiles, d’où l’apparition des techniques d’élagage : elles permettent de bénéficier de la capacité des grands réseaux à trouver des solutions optimales tout en limitant l’impact de cette taille sur le besoin en ressources par l’élimination des paramètres inutiles après l’entraînement des réseaux.
Afin d’alléger un réseau neuronal profond, de sorte à réduire les ressources en calcul et en mémoire qu’il requiert, il est possible de supprimer, ou « élaguer », des connexions, parmi celles que l’on aura jugé les moins nécessaires d’après un critère qui peut varier en fonction des techniques.
L’un des critères les plus répandu se fonde sur la valeur de ces paramètres, c’est-à-dire leur « magnitude » : les paramètres de moindre magnitude sont jugés moins importants et sont donc ceux qui sont éliminés en priorité. Toutefois, afin que l’élagage de paramètres puisse engendrer une accélération matérielle, il faut pour ça élaguer des neurones entiers, ce qui est appelé « élagage structuré ».
Les documents suivants passent en revu diverses techniques d’élagage :
- The State of Sparsity in Deep Neural Networks (https://arxiv.org/pdf/1902.09574), Rethinking the Value of Network Pruning (https://arxiv.org/pdf/1810.05270) et What is the state of neural network pruning ? (https://arxiv.org/pdf/2003.03033.pdf ) ;
- Method and system for vision-centric deep-learning-based road situation analysis - US9760806B1 ;
- Systems and methods involving features of adaptive and/or autonomous traffic control - US20150134232A1 ;
- « AutoPrune: Automatic Network Pruning by Regularizing Auxiliary Parameters » (http://papers.nips.cc/paper /9521-autoprune-automatic-network-pruning- by-regularizing-auxiliary-parameters.pdf).
L’élagage des paramètres est habituellement le résultat d’un processus arbitraire imposé manuellement au réseau durant l’entraînement sans que cela soit de son fait. Généralement, s’il permet un gain en nombre de paramètres, ce procédé va toutefois à l’encontre de l’algorithme utilisé pour l’apprentissage du réseau (rétropropagation du gradient) ce qui se traduit par une perte de performances du réseau, qui doit être ensuite ré-entraîné pour compenser la perte (fine-tuning).
Quant à Autoprune, il utilise une technique, développée par « Binarized Neural Networks: Training Neural Networks with Weights and Activations Constrained to +1 or −1 » (https://arxiv.org/pdf/1602.02830.pdf) qui implique une altération arbitraire du gradient (outil mathématique utilisé durant l’entraînement des réseaux de neurones). Cette altération consiste à calculer les gradients sur les paramètres binarisés mais à les appliquer sur ces mêmes paramètres non-binarisés, ce qui introduit une incohérence entre ce sur quoi les gradients sont appliqués et comment ils ont été calculés.
Il existe donc un besoin d’économie de la mémoire et des ressources en calcul pour les réseaux de neurones embarqués sur véhicules autonomes. En outre, les coûts de calcul nécessaires pour l’entraînement du réseau par les techniques d’élagage de l’état de l’art sont trop importants.
La présente invention vient améliorer la situation.
A cet effet un premier aspect de l’invention concerne un procédé de conduite autonome d’un véhicule, pour la génération d’une instruction de conduite à partir d’une donnée obtenue à partir d’au moins un capteur du véhicule, par exécution sur un dispositif compris dans le véhicule d’un algorithme fondé sur l’application à la donnée d’un réseau de neurones, le procédé comportant les étapes de :
- réception de la donnée obtenue à partir du capteur ;
- génération de l’instruction de conduite par application de l’algorithme ;
caractérisé en ce que le réseau de neurones est simplifié lors de son entraînement par un élagage, l’élagage consistant à entrainer le réseau de neurones en lui appliquant des masques, l’application des masques lors de l’entrainement supprimant au moins un noyau de convolution du réseau de neurones.
L’élagage par simple application de masques configurés pour supprimer directement des noyaux de convolution se fait en un nombre réduit d’étape. En particulier, quand les procédés de compression habituels nécessitent trois étapes : entrainement – élagage – réentrainement (ces étapes pouvant être réitérées plusieurs fois), le procédé selon l’invention se limite à une seule étape (entrainement avec masques).
La seule intervention extérieure (celle d’élaguer les poids) est garantie d’être sans aucun impact sur le réseau et d’être ainsi purement transparente tout en permettant une diminution du temps de calcul pour l’entraînement.
Puisque les masques, qui sont des éléments du réseau constitués de paramètres, peuvent être appris lors de l’apprentissage, cela revient, pour le réseau, à apprendre de lui-même à réduire sa propre architecture durant l’entraînement de manière purement automatisée, naturelle et sans intervention extérieure pouvant dénaturer l’apprentissage.
Dans un mode de réalisation, l’application des masques lors de l’entrainement comporte les sous-étapes de :
- obtention de données d’entrainement prédéterminée ;
- application du réseau de neurones aux données d’entrainement prédéterminée, l’application comportant une application d’une fonction d’activation.
Dans un mode de réalisation, la fonction d’activation est une fonction d’activation non saturante.
Dans un mode de réalisation, la fonction d’activation non saturant est une unité de rectification linéaire, ReLu.
Ainsi, tous les paramètres négatifs des masques deviennent nuls. De cette manière, l’élagage est naturel, dérivable et ne rompt pas le graphe de calcul (utilisé par les frameworks, structure de conception informatique, de d’apprentissage profond pour effectuer l’apprentissage par rétropropagation de l’erreur, nécessaire à l’apprentissage). De plus, comme la dérivée de ReLU pour les termes négatifs est nulle, alors les feature maps (entrées/sorties entre les couches d’un réseau de neurones) annulées, du fait d’éléments négatifs des masques, ne peuvent être réactivés (comme ces paramètres négatifs ne peuvent plus apprendre). De ce fait, les neurones correspondants sont élagués pendant l’entraînement.
Un deuxième aspect de l’invention concerne un programme informatique comportant des instructions pour la mise en œuvre du procédé selon le premier ou le deuxième aspect de l’invention, lorsque ces instructions sont exécutées par un processeur.
Un troisième aspect de l’invention concerne un dispositif de conduite autonome d’un véhicule, pour la génération d’une instruction de conduite à partir d’une donnée obtenue à partir d’au moins un capteur du véhicule, par exécution sur un dispositif compris dans le véhicule d’un algorithme fondé sur l’application à la donnée d’un réseau de neurones, le dispositif comportant au moins un mémoire et au moins un processeur agencés pour effectuer les opérations de :
- réception de la donnée obtenue à partir du capteur ;
- génération de l’instruction de conduite par application de l’algorithme ;
caractérisé en ce que le réseau de neurones est simplifié lors de son entraînement par un élagage, l’élagage consistant à entrainer le réseau de neurones en lui appliquant des masques, l’application des masques lors de l’entrainement supprimant au moins un noyau de convolution du réseau de neurones.
Un quatrième aspect de l’invention concerne un véhicule configuré pour comprendre le dispositif selon le troisième aspect de l’invention.
D’autres caractéristiques et avantages de l’invention apparaîtront à l’examen de la description détaillée ci-après, et des dessins annexés sur lesquels :
L’invention est décrite ci-après dans son application, non limitative, au cas d’un réseau de neurones de type réseau neuronal convolutif, CNN ou encore ConvNet, utilisé pour analyse une image acquise par une caméra d’un véhicule autonome. D’autres applications sont naturellement envisageables pour la présente invention. Par exemple, le procédé selon l’invention peut être mis en œuvre par le véhicule autonome pour des étapes de fusion de données de capteurs (agrégation des images acquises par les caméras, des données des radars, lidars, ultrasons ou encore laser) ou encore pour des étapes de décisions de conduite.
Lafigure 1illustre un procédé, selon un mode de réalisation de l’invention.
A une étape 30, une donnée Img est obtenue à partir d’au moins un capteur d’un véhicule autonome. Dans le présent mode de réalisation, Img correspond à une pluralité d’images acquises par une caméra, telle qu’une caméra multifonction située en haut au centre du pare-brise du véhicule.
A une étape 32, un traitement d’Img est effectué pour extraire des données P_Img exploitables par un réseau de neurones. Un tel traitement consiste par exemple à effectuer un premier filtrage des images pour accentuer des contrastes ou enlever des perturbations visuelles, par exemple introduites par des saletés sur la caméra. Un autre traitement consiste à une fusion avec des données d’autres capteurs, tels qu’un radar ou un laser, pour enrichir les images d’informations complémentaires ou d’informations de fiabilité relatives aux images.
A une étape 34, un algorithme fondé sur un réseau de neuronesNest appliqué à P_Img. Dans un mode de réalisation particulier,Nest directement appliqué à Img et conduit à l’obtention d’une donnée S.
Dans le cas d’une reconnaissance d’image, S comprend des données relatives à l’environnement du véhicule et typiquement d’identification d’objets pertinents pour la conduite autonome. Par exemple, S comprend l’information selon laquelle deux camions sont présents dans telle zone de l’image, un piéton proche d’un passage clouté, etc.
Le réseau de neurones est simplifié lors de son entraînement par un élagage. L’élagage consiste à entrainer le réseau de neurones en lui appliquant des masques. L’application des masques lors de l’entrainement supprime au moins un noyau de convolution du réseau de neurones.
En particulier, l’application des masques lors de l’entrainement comporte les sous-étapes de :
- obtention de données d’entrainement prédéterminée ;
- application du réseau de neurones aux données d’entrainement prédéterminée, l’application comportant une application d’une fonction d’activation.
L’application de la fonction d’activation est mise en œuvre, classiquement, entre des couches du réseau. En outre, la fonction d’activation est configurée pour que les paramètres négatifs des neurones auxquels sont appliqués les données ainsi activées deviennent nuls.
La fonction d’activation est une fonction d’activation non saturante telle qu’une unité de rectification linéaire, ReLu.
Ainsi, l’apprentissage consiste à apprendre des masques constitués de paramètres tout à fait normaux et, avant d’effectuer le produit avec les feature maps, d’appliquer une fonction d’activation ReLU aux masques de sorte que tous les paramètres négatifs des masques deviennent nuls. Des explications relatives à l’annulation des paramètres négatifs sont données ci-après en référence aux figures 3 et 4.
Dans la présente description, on entend par « paramètre » un paramètre appris. En effet, on distingue entre paramètres appris et paramètres non-appris. Il est courant, comme dans la présente description, de nommer les paramètres appris comme « paramètres » et les paramètres non-appris comme « meta-paramètres », ou encore « hypermaramètre ». Les paramètres de profondeur, pas et de marge ne sont pas appris, ce sont des méta-paramètres. Par contre, les poids des connexions ainsi que les éléments des noyaux de convolution sont des paramètres appris, que la présente invention se propose de compresser.
A une étape 36, un post-traitement est appliqué à S et conduit à l’obtention de P_S. Par exemple, le post-traitement comporte l’application d’un bloc de décision, qui peut également être fondé sur l’application d’un réseau de neurones, traduisant les informations environnementales en instructions de conduite (angle volant, accélération, clignotants, etc.).
A une étape 38, l’instruction de conduite est appliquée aux composants en charge de la conduite autonome. Par exemple, l’angle volant est transmis au calculateur ESP, Electronic Stability Program, pour correcteur électronique de trajectoire, pour application de l’angle volant.
Lafigure 2illustre l’application des masques conduisant à l’annulation de feature map.
Le réseau de neuronesNest constitué de couches appliquant une fonction sur une entrée et renvoyant une sortie, ces entrées et sorties pouvant être de dimensions différentes. L’exemple que nous allons prendre ici est celui de la couche de convolution, mais nous étendrons ce principe aux couches denses ou n’importe quel autre type de couche. Pour une autre couche, il suffit de faire en sorte que chaque paramètre du masque soit associé aux connections d’entrées ou aux sorties d’un même neurone.
Considérons, comme illustré à la figure 2 une convolution prenant en entréef in « feature maps » (en quelque sorte, des images àf in canaux) de taillein w xin h et renvoyant en sortief out des feature maps de tailleout w ×out h .
Sur la figure 2, à chaque feature map d’entrée et de sortie de la convolution 16 est associé un paramètre d’un masque. Il y a un produit 14 entre ces paramètres et leur feature map correspondante. De même en sortie avec le produit 18. Comme les paramètres des masques peuvent être nuls (grisés, références 10 et 12), cela revient à annuler ces feature maps (également en rouge).
De ce fait, une telle annulation revient à faire comme illustré à lafigure 3. La figure 3 représente un résultat sur la convolution, représentée par l’opération 20. Nous pouvons alors considérer que les dimensions de sortie ne sont plusf in etf out maisf in ’etf out ’, ces dimensions valant alors la norme 0 (le nombre d’éléments non nuls) des masques correspondants : le réseau a bel et bien apprisf in ’etf out ’, alors que ces dimensions sont, sans cette technique, des hyperparamètres (paramètres utilisés pour contrôler le procédé d’entrainement) dont le réseau dépend sans pouvoir les apprendre.
Lafigure 4est un schéma illustrant des résultats expérimentaux pour un mode de réalisation de l’invention.
Afin d’inciter les masques à avoir un maximum d’éléments nuls (donc en fait négatifs pour notre implémentation), un terme de régularisation est ajouté à la fonction de perte. Ce terme de régularisation cherche à estimer le nombre de paramètres dédiés au traitement de chaque feature map. Pour un réseauN, de paramètresw, entraîné sur le jeu de donnéesDavec la fonction de perteLet composé de couches indexées pari, le problème d’optimisation résolu par l’entraînement et auquel on a ajouté notre terme de régularisation s’écrit comme suit :
Dans cette formule,sest la taille du noyau de convolution. C’est pourquoi elle est au carré, pour un noyau de taille 3, on a 3x3 paramètres.
En faisant augmenter lambda (le coefficient caractérisant l’importance de la régularisation lors de l’entraînement), on force le réseau à réduire son nombre de paramètres.
Le rapport entre nombre de paramètres et précision du réseau est montré à la Figure 4. Sur cette figure, la partie gauche correspond aux résultats expérimentaux sur l’ensemble de données CIFAR-10 avec un réseau ResNet20 et la partie droite aux résultats expérimentaux sur l’ensemble de données CIFAR-10 avec un réseau ResNet18. En particulier, sur ces deux parties, l’axe des ordonnées 40 correspond à un indice de précision de test et l’axe des abscisses 42 au nombre de paramètres.
Le point avec le plus grand nombre de paramètres est celui pour lequel lambda était nul. Les autres points correspondent aux cas où lambda était non nul (et plus grand inversement proportionnellement au nombre de paramètres à la fin de l’entraînement).
Dans un autre mode de réalisation, si le terme ajouté à l’équation précédente pénalise le nombre de paramètres, il est possible de pénaliser le nombre d’opérations en multipliant le terme de pénalisation, pour chaque couche, par . Ces deux types de pénalisation (mémoire et calcul) peuvent être combinées de sorte à laisser à l’entraînement le choix de quel aspect minimiser pour impacter le moins négativement les performances du réseau, puisque pénaliser les opérations risque d’inciter l’entraînement à élaguer le plus les premières couches qui sont pourtant les plus importantes à conserver pour les performances.
Lafigure 5représente un exemple de dispositif D compris dans le véhicule VEH, dans le réseau CLD ou dans le serveur SRVR. Ce dispositif D peut être utilisé en tant que dispositif centralisé en charge d’au moins certaines étapes du procédé décrit ci-avant en référence à la figure 1. Dans un mode de réalisation, il correspond à un calculateur de conduite autonome.
Dans la présente invention, le dispositif D est compris dans le véhicule.
Ce dispositif D peut prendre la forme d’un boitier comprenant des circuits imprimés, de tout type d’ordinateur ou encore d’un smartphone.
Le dispositif D comprend une mémoire vive 1 pour stocker des instructions pour la mise en œuvre par un processeur 2 d’au moins une étape des procédés tels que décrits ci-avant. Le dispositif comporte aussi une mémoire de masse 3 pour le stockage de données destinées à être conservées après la mise en œuvre du procédé.
Le dispositif D peut en outre comporter un processeur de signal numérique (DSP) 4. Ce DSP 4 reçoit des données pour mettre en forme, démoduler et amplifier, de façon connue en soi ces données.
Le dispositif comporte également une interface d’entrée 5 pour la réception des données mises en œuvre par des procédés selon l’invention et une interface de sortie 6 pour la transmission des données mises en œuvre par le procédé.
La présente invention ne se limite pas aux formes de réalisation décrites ci-avant à titre d’exemples ; elle s’étend à d’autres variantes.
Ainsi, il a été décrit un mode de réalisation correspondant à l’application d’un réseau de neurones de type CNN pour une analyse d’image. D’autres applications sont envisageables et par exemple l’application d’un réseau de neurones récurrents, RNN pour Recurrent Neural Network, pour la prise de décision d’instructions de conduite autonome à partir d’informations environnementales.
Claims (7)
- Procédé de conduite autonome d’un véhicule, pour la génération d’une instruction de conduite à partir d’une donnée obtenue à partir d’au moins un capteur du véhicule, par exécution sur un dispositif compris dans le véhicule d’un algorithme fondé sur un réseau de neurones, le procédé comportant les étapes de :
- réception (30) de la donnée obtenue à partir du capteur ;
- génération de l’instruction de conduite à partir de la donnée obtenue par application de l’algorithme ;
- Procédé selon la revendication 1, dans lequel l’application des masques lors de l’entrainement comporte les sous-étapes de :
- obtention de données d’entrainement prédéterminée ;
- application du réseau de neurones aux données d’entrainement prédéterminée, l’application comportant une application d’une fonction d’activation.
- Procédé selon la revendication 2, dans lequel la fonction d’activation est une fonction d’activation non saturante.
- Procédé selon la revendication 3, dans lequel la fonction d’activation non saturant est une unité de rectification linéaire, ReLu.
- Programme informatique comportant des instructions pour la mise en œuvre du procédé selon l’une quelconque des revendications précédentes, lorsque ces instructions sont exécutées par un processeur (2).
- Dispositif (D) de conduite autonome d’un véhicule, pour la génération d’une instruction de conduite à partir d’une donnée obtenue à partir d’au moins un capteur du véhicule, par exécution sur un dispositif compris dans le véhicule d’un algorithme fondé sur un réseau de neurones, le dispositif comportant au moins un mémoire et au moins un processeur agencés pour effectuer les opérations de :
- réception de la donnée obtenue à partir du capteur ;
- génération de l’instruction de conduite à partir de la donnée obtenue par application de l’algorithme ;
- Véhicule configuré pour comprendre le dispositif selon la revendication 6.
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
FR2008291A FR3113273A1 (fr) | 2020-08-05 | 2020-08-05 | Compression automatisée de réseaux de neurones pour la conduite autonome |
Applications Claiming Priority (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
FR2008291A FR3113273A1 (fr) | 2020-08-05 | 2020-08-05 | Compression automatisée de réseaux de neurones pour la conduite autonome |
FR2008291 | 2020-08-05 |
Publications (1)
Publication Number | Publication Date |
---|---|
FR3113273A1 true FR3113273A1 (fr) | 2022-02-11 |
Family
ID=74125290
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
FR2008291A Withdrawn FR3113273A1 (fr) | 2020-08-05 | 2020-08-05 | Compression automatisée de réseaux de neurones pour la conduite autonome |
Country Status (1)
Country | Link |
---|---|
FR (1) | FR3113273A1 (fr) |
Citations (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20150134232A1 (en) | 2011-11-22 | 2015-05-14 | Kurt B. Robinson | Systems and methods involving features of adaptive and/or autonomous traffic control |
US9760806B1 (en) | 2016-05-11 | 2017-09-12 | TCL Research America Inc. | Method and system for vision-centric deep-learning-based road situation analysis |
-
2020
- 2020-08-05 FR FR2008291A patent/FR3113273A1/fr not_active Withdrawn
Patent Citations (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20150134232A1 (en) | 2011-11-22 | 2015-05-14 | Kurt B. Robinson | Systems and methods involving features of adaptive and/or autonomous traffic control |
US9760806B1 (en) | 2016-05-11 | 2017-09-12 | TCL Research America Inc. | Method and system for vision-centric deep-learning-based road situation analysis |
Non-Patent Citations (4)
Title |
---|
CHARLES HERRMANN ET AL: "An end-to-end approach for speeding up neural network inference", ARXIV.ORG, CORNELL UNIVERSITY LIBRARY, 201 OLIN LIBRARY CORNELL UNIVERSITY ITHACA, NY 14853, 11 December 2018 (2018-12-11), XP081200078 * |
HUANG GAO ET AL: "CondenseNet: An Efficient DenseNet Using Learned Group Convolutions", 2018 IEEE/CVF CONFERENCE ON COMPUTER VISION AND PATTERN RECOGNITION, IEEE, 18 June 2018 (2018-06-18), pages 2752 - 2761, XP033476242, DOI: 10.1109/CVPR.2018.00291 * |
JELENA KOCIC ET AL: "An End-to-End Deep Neural Network for Autonomous Driving Designed for Embedded Automotive Platforms", SENSORS, vol. 19, no. 9, 3 May 2019 (2019-05-03), pages 2064, XP055759335, DOI: 10.3390/s19092064 * |
XU SHENG ET AL: "Convolutional Neural Network Pruning: A Survey", 2020 39TH CHINESE CONTROL CONFERENCE (CCC), TECHNICAL COMMITTEE ON CONTROL THEORY, CHINESE ASSOCIATION OF AUTOMATION, 27 July 2020 (2020-07-27), pages 7458 - 7463, XP033821456, DOI: 10.23919/CCC50068.2020.9189610 * |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN111275711B (zh) | 基于轻量级卷积神经网络模型的实时图像语义分割方法 | |
EP3152675B1 (fr) | Procédé d'analyse d'une scène dynamique, module d'analyse et programme d'ordinateur associés | |
US9286524B1 (en) | Multi-task deep convolutional neural networks for efficient and robust traffic lane detection | |
EP3633552B1 (fr) | Procédés d'apprentissage de paramètres d'un réseau de neurones à convolution et de détection d'éléments d'intérêt visibles dans une image | |
JP2022547460A (ja) | コンピュートインメモリアレイの列しきい値を調整することによってxnor等価演算を実施すること | |
EP3953662B1 (fr) | Procede de definition d'un chemin | |
Maniyath et al. | RETRACTED ARTICLE: Learning-based approach to underwater image dehazing using CycleGAN | |
US20240020808A1 (en) | Method and apparatus with image restoration | |
EP3633545A1 (fr) | Procedes d'apprentissage de parametres d'un reseau de neurones a convolution, de detection d'elements d'interet visibles dans une image et d'association d'elements d'interet visibles dans une image | |
WO2013153288A1 (fr) | Procede permettant la fusion de croyances semantiques | |
WO2022008605A1 (fr) | Dispositif électronique et procédé de traitement de données à base de réseaux génératifs inversibles, système électronique de détection et programme d'ordinateur associés | |
FR3113273A1 (fr) | Compression automatisée de réseaux de neurones pour la conduite autonome | |
WO2021231839A1 (fr) | Système de traitement d'image | |
CN112016670A (zh) | 一种面向轻量级神经网络的模型优化和压缩方法 | |
Pranav et al. | DeepRecog: Threefold underwater image deblurring and object recognition framework for AUV vision systems | |
CN116524379A (zh) | 基于注意力机制和自适应特征融合的航拍目标检测方法 | |
CN113378704B (zh) | 一种多目标检测方法、设备及存储介质 | |
FR3114420A1 (fr) | Compression par régularisation sélective de réseaux de neurones pour la conduite autonome | |
FR3113272A1 (fr) | Compression par régularisation sélective de réseaux de neurones pour la conduite autonome | |
CN114450720A (zh) | 一种目标检测的方法、装置和车载雷达 | |
EP4322061A1 (fr) | Dispositif électronique et procédé de traitement de données comportant au moins un modèle d'intelligence artificielle auto-adaptatif avec apprentissage local, système électronique et programme d'ordinateur associés | |
FR3134363A1 (fr) | 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é | |
WO2024060112A1 (fr) | Amplificateur de ligne adaptatif basé sur un réseau neuronal | |
FR3139383A1 (fr) | Procédé et dispositif de détection d’objets matériels dans un espace environnant un robot autonome | |
EP4187445A1 (fr) | Procédé d'apprentissage de valeurs de poids synaptique d'un réseau de neurones, procédé de traitement de données, programme d'ordinateur, calculateur et système de traitement associés |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PLFP | Fee payment |
Year of fee payment: 2 |
|
PLSC | Publication of the preliminary search report |
Effective date: 20220211 |
|
PLFP | Fee payment |
Year of fee payment: 3 |
|
ST | Notification of lapse |
Effective date: 20240405 |