DE102021208877A1 - Training of neural networks for equivariance or invariance against changes in the input image - Google Patents
Training of neural networks for equivariance or invariance against changes in the input image Download PDFInfo
- Publication number
- DE102021208877A1 DE102021208877A1 DE102021208877.5A DE102021208877A DE102021208877A1 DE 102021208877 A1 DE102021208877 A1 DE 102021208877A1 DE 102021208877 A DE102021208877 A DE 102021208877A DE 102021208877 A1 DE102021208877 A1 DE 102021208877A1
- Authority
- DE
- Germany
- Prior art keywords
- neural network
- input
- transformations
- images
- outputs
- 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 48
- 238000012549 training Methods 0.000 title claims abstract description 37
- 230000009466 transformation Effects 0.000 claims abstract description 50
- 238000000844 transformation Methods 0.000 claims abstract description 43
- 238000000034 method Methods 0.000 claims abstract description 30
- 230000006870 function Effects 0.000 claims abstract description 25
- 230000002776 aggregation Effects 0.000 claims abstract description 18
- 238000004220 aggregation Methods 0.000 claims abstract description 18
- 238000012545 processing Methods 0.000 claims abstract description 9
- 230000008569 process Effects 0.000 claims abstract description 8
- 230000006399 behavior Effects 0.000 claims abstract description 5
- 238000004590 computer program Methods 0.000 claims description 6
- 230000001419 dependent effect Effects 0.000 claims description 3
- 238000012544 monitoring process Methods 0.000 claims description 3
- 238000003908 quality control method Methods 0.000 claims description 3
- 230000004931 aggregating effect Effects 0.000 claims description 2
- 238000006073 displacement reaction Methods 0.000 claims description 2
- 238000011156 evaluation Methods 0.000 abstract description 5
- 238000012360 testing method Methods 0.000 description 6
- 239000011159 matrix material Substances 0.000 description 4
- 230000000694 effects Effects 0.000 description 3
- 210000002569 neuron Anatomy 0.000 description 3
- 208000037170 Delayed Emergence from Anesthesia Diseases 0.000 description 2
- 230000004913 activation Effects 0.000 description 2
- 230000004075 alteration Effects 0.000 description 2
- 238000002372 labelling Methods 0.000 description 2
- 238000005259 measurement Methods 0.000 description 2
- 238000005457 optimization Methods 0.000 description 2
- 230000001131 transforming effect Effects 0.000 description 2
- 238000010200 validation analysis Methods 0.000 description 2
- BUHVIAUBTBOHAG-FOYDDCNASA-N (2r,3r,4s,5r)-2-[6-[[2-(3,5-dimethoxyphenyl)-2-(2-methylphenyl)ethyl]amino]purin-9-yl]-5-(hydroxymethyl)oxolane-3,4-diol Chemical compound COC1=CC(OC)=CC(C(CNC=2C=3N=CN(C=3N=CN=2)[C@H]2[C@@H]([C@H](O)[C@@H](CO)O2)O)C=2C(=CC=CC=2)C)=C1 BUHVIAUBTBOHAG-FOYDDCNASA-N 0.000 description 1
- 108010014172 Factor V Proteins 0.000 description 1
- 230000009471 action Effects 0.000 description 1
- 201000009310 astigmatism Diseases 0.000 description 1
- 230000009286 beneficial effect Effects 0.000 description 1
- 230000008901 benefit Effects 0.000 description 1
- 230000008859 change Effects 0.000 description 1
- 239000012141 concentrate Substances 0.000 description 1
- 238000012937 correction Methods 0.000 description 1
- 238000013461 design Methods 0.000 description 1
- 238000002474 experimental method Methods 0.000 description 1
- 239000011521 glass Substances 0.000 description 1
- 230000004305 hyperopia Effects 0.000 description 1
- 238000003384 imaging method Methods 0.000 description 1
- 239000000203 mixture Substances 0.000 description 1
- 208000001491 myopia Diseases 0.000 description 1
- 230000004379 myopia Effects 0.000 description 1
- 238000010606 normalization Methods 0.000 description 1
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06V—IMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
- G06V10/00—Arrangements for image or video recognition or understanding
- G06V10/70—Arrangements for image or video recognition or understanding using pattern recognition or machine learning
- G06V10/82—Arrangements for image or video recognition or understanding using pattern recognition or machine learning using neural networks
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06V—IMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
- G06V10/00—Arrangements for image or video recognition or understanding
- G06V10/40—Extraction of image or video features
- G06V10/44—Local feature extraction by analysis of parts of the pattern, e.g. by detecting edges, contours, loops, corners, strokes or intersections; Connectivity analysis, e.g. of connected components
- G06V10/443—Local feature extraction by analysis of parts of the pattern, e.g. by detecting edges, contours, loops, corners, strokes or intersections; Connectivity analysis, e.g. of connected components by matching or filtering
- G06V10/449—Biologically inspired filters, e.g. difference of Gaussians [DoG] or Gabor filters
- G06V10/451—Biologically inspired filters, e.g. difference of Gaussians [DoG] or Gabor filters with interaction between the filter responses, e.g. cortical complex cells
- G06V10/454—Integrating the filters into a hierarchical structure, e.g. convolutional neural networks [CNN]
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Evolutionary Computation (AREA)
- General Physics & Mathematics (AREA)
- Artificial Intelligence (AREA)
- Multimedia (AREA)
- Health & Medical Sciences (AREA)
- General Health & Medical Sciences (AREA)
- Physics & Mathematics (AREA)
- Computer Vision & Pattern Recognition (AREA)
- Software Systems (AREA)
- Medical Informatics (AREA)
- Databases & Information Systems (AREA)
- Computing Systems (AREA)
- Life Sciences & Earth Sciences (AREA)
- Biodiversity & Conservation Biology (AREA)
- Biomedical Technology (AREA)
- Molecular Biology (AREA)
- Image Analysis (AREA)
Abstract
Verfahren (100) zum Trainieren eines neuronalen Netzwerks (1), das zur Verarbeitung von Eingabe-Bildern (2) ausgebildet ist und mehrere Faltungsschichten umfasst, wobei jede dieser Faltungsschichten dazu ausgebildet ist, die Eingabe f der jeweiligen Faltungsschicht durch Anwenden mindestens eines Filterkerns κ auf mindestens eine Merkmalskarte Φ(f,κ) abzubilden, mit den Schritten:• es wird eine Menge T von Transformationen T bereitgestellt (110), bezüglich derer das neuronale Netzwerk (1) beim Training in die Lage versetzt werden soll, bei Anwendung dieser Transformationen auf die Eingabe f mindestens einer Faltungsschicht die Erzeugung mindestens einer äquivarianten oder invarianten Merkmalskarte Φ(f,κ) zu erlernen;• diese Merkmalskarte Φ(f, κ) wird durch eine mit Parametern (5a) parametrisierte Aggregation (5) von Merkmalskarten Φj(f, Tj[κ]) ausgedrückt (120), die jeweils durch das Anwenden von Transformationen Tj∈ T auf den mindestens einen Filterkern κ erhalten werden;• es werden Lern-Bilder (2a) sowie Lern-Ausgaben (3a), auf die das trainierte neuronale Netzwerk (1) diese Lern-Bilder (2a) idealerweise abbilden soll, bereitgestellt (130);• die Lern-Bilder (2a) werden von dem neuronalen Netzwerk (1) auf Ausgaben (3) abgebildet (140);• Abweichungen dieser Ausgaben (3) von den Lern-Ausgaben (3a) werden mit einer vorgegebenen Kostenfunktion (4) bewertet (150);• Parameter (5a) der parametrisierten Aggregation (5) sowie weitere Parameter (1a), die das Verhalten des neuronalen Netzwerks (1) charakterisieren, werden optimiert (160) mit dem Ziel, dass sich bei weiterer Verarbeitung von Lern-Bildern (2a) die Bewertung (4a) durch die Kostenfunktion (4) voraussichtlich verbessert.Method (100) for training a neural network (1) which is designed to process input images (2) and comprises a plurality of convolution layers, each of these convolution layers being designed to filter the input f of the respective convolution layer by applying at least one filter kernel κ onto at least one feature map Φ(f,κ), with the steps:• a set T of transformations T is provided (110) with respect to which the neural network (1) is to be enabled during training when these are applied Transformations to the input f of at least one convolution layer to learn how to generate at least one equivariant or invariant feature map Φ(f,κ);• this feature map Φ(f, κ) is parameterized by an aggregation (5) of feature maps Φj with parameters (5a). (f, Tj[κ]) expressed (120), each obtained by applying transformations Tj∈ T to the at least one filter kernel κ;• L ern images (2a) and learning outputs (3a) to which the trained neural network (1) should ideally map these learning images (2a), provided (130); • the learning images (2a) are provided by the neural network (1) on outputs (3) mapped (140);• Deviations of these outputs (3) from the learning outputs (3a) are evaluated with a predetermined cost function (4) (150);• Parameters (5a) of the parameterized Aggregation (5) and other parameters (1a), which characterize the behavior of the neural network (1), are optimized (160) with the aim that, with further processing of learning images (2a), the evaluation (4a) by the Cost function (4) expected to improve.
Description
Die vorliegende Erfindung betrifft das Training neuronaler Netzwerke, die Bilder verarbeiten und beispielsweise auf Klassifikations-Scores in Bezug auf Klassen einer vorgegebenen Klassifikation abbilden.The present invention relates to the training of neural networks that process images and map them, for example, to classification scores in relation to classes of a given classification.
Stand der TechnikState of the art
Viele Fahrassistenzsysteme und Systeme für das zumindest teilweise automatisierte Fahren verarbeiten die von Sensoren eines Fahrzeugs aufgenommenen Messdaten mit Klassifikatoren zu Klassifikations-Scores in Bezug auf eine oder mehrere Klassen einer vorgegebenen Klassifikation. Auf der Basis dieser Klassifikations-Scores werden dann beispielsweise Entscheidungen über Eingriffe in die Fahrdynamik des Fahrzeugs getroffen.Many driver assistance systems and systems for at least partially automated driving process the measurement data recorded by sensors of a vehicle with classifiers to form classification scores in relation to one or more classes of a specified classification. On the basis of these classification scores, for example, decisions are then made about interventions in the driving dynamics of the vehicle.
Das Training derartiger Klassifikatoren erfordert Trainingsdaten mit einer großen Variabilität, damit der Klassifikator gut auf im Training bislang ungesehene Messdaten generalisieren kann. Das Aufnehmen von Trainingsdaten auf Testfahrten mit dem Fahrzeug und erst recht das größtenteils manuelle Labeln dieser Trainingsdaten mit Soll-Klassifikations-Scores sind zeitaufwändig und teuer.The training of such classifiers requires training data with a high degree of variability, so that the classifier can generalize well to measurement data previously unseen in the training. The recording of training data on test drives with the vehicle and especially the largely manual labeling of this training data with target classification scores are time-consuming and expensive.
Daher werden die Trainingsdaten häufig mit synthetisch generierten Trainingsdaten angereichert. So offenbart etwa die
Offenbarung der ErfindungDisclosure of Invention
Im Rahmen der Erfindung wurde ein Verfahren zum Trainieren eines neuronalen Netzwerks entwickelt. Dieses neuronale Netzwerk ist zur Verarbeitung von Eingabe-Bildern ausgebildet und umfasst mehrere Faltungsschichten. Hierbei ist jede Faltungsschicht dazu ausgebildet, ihre jeweilige Eingabe f durch Anwenden mindestens eines Filterkerns κ auf mindestens eine Merkmalskarte Φ(f,κ) abzubilden. Typischerweise weist diese Merkmalskarte Φ(f,κ) eine im Vergleich zu der Eingabe f deutlich reduzierte Dimensionalität auf.A method for training a neural network was developed as part of the invention. This neural network is designed to process input images and includes multiple layers of convolution. Here, each convolution layer is designed to map its respective input f to at least one feature map Φ(f,κ) by applying at least one filter kernel κ. Typically, this feature map Φ(f,κ) has a significantly reduced dimensionality compared to the input f.
Beispielsweise kann ein Bildklassifikator, der Eingabe-Bilder auf Klassifikations-Scores bezüglich einer oder mehreren Klassen einer vorgegebenen Klassifikation abbildet, als neuronales Netzwerk gewählt werden. Insbesondere die von der letzten Faltungsschicht in einer Abfolge von Faltungsschichten gelieferten Merkmalskarten können im Hinblick auf die Klassifikations-Scores ausgewertet werden.For example, an image classifier that maps input images to classification scores related to one or more classes of a given classification can be chosen as the neural network. In particular, the feature maps supplied by the last convolutional layer in a sequence of convolutional layers can be evaluated with regard to the classification scores.
Im Rahmen des Verfahrens wird eine Menge T von Transformationen T bereitgestellt, bezüglich derer das neuronale Netzwerk beim Training in die Lage versetzt werden soll, bei Anwendung dieser Transformationen auf die Eingabe f mindestens einer Faltungsschicht die Erzeugung mindestens einer äquivarianten oder invarianten Merkmalskarte Φ(f,κ) zu erlernen. Dies bedeutet nicht, dass die Merkmalskarte Φ(f,κ) immer gegen alle Transformationen T aus der eine Menge T äquivariant bzw. invariant wird. Vielmehr wird angestrebt, die Merkmalskarte Φ(f,κ) in dem Umfang äquivariant bzw. invariant gegen Transformationen zu machen, in dem derartige Transformationen in den beim Training verwendeten Lern-Bildern vorkommen.As part of the method, a set T of transformations T is provided, with respect to which the neural network is to be enabled during training, when these transformations are applied to the input f of at least one convolutional layer, the generation of at least one equivariant or invariant feature map Φ(f, k) to learn. This does not mean that the feature map Φ(f,κ) is always equivariant or invariant to all transformations T from the set T. Rather, the aim is to make the feature map Φ(f,κ) equivariant or invariant to transformations to the extent that such transformations occur in the learning images used during training.
Zu diesem Zweck wird die äquivariant bzw. invariant zu machende Merkmalskarte Φ(f,κ) durch eine mit Parametern parametrisierte Aggregation von Merkmalskarten Φj (f,Tj [κ]) ausgedrückt, die jeweils durch das Anwenden von Transformationen Tj ∈ T auf den mindestens einen Filterkern κ erhalten werden. Diese Parameter werden beim Training des neuronalen Netzwerks als zusätzliche Freiheitsgrade verwendet.For this purpose, the feature map Φ(f,κ) to be made equivariant or invariant is expressed by an aggregation of feature maps Φ j (f,T j [κ]) parameterized with parameters, which are each obtained by applying transformations T j ∈ T can be obtained on the at least one filter kernel κ. These parameters are used as additional degrees of freedom when training the neural network.
Für das überwachte Training werden Lern-Bilder sowie Lern-Ausgaben, auf die das trainierte neuronale Netzwerk diese Lern-Bilder idealerweise abbilden soll, bereitgestellt. Die Lern-Bilder werden von dem neuronalen Netzwerk auf Ausgaben abgebildet, und Abweichungen dieser Ausgaben von den Lern-Ausgaben werden mit einer vorgegebenen Kostenfunktion bewertet.Learning images and learning outputs, onto which the trained neural network should ideally map these learning images, are provided for the monitored training. The learning images are mapped onto outputs by the neural network, and deviations of these outputs from the learning outputs are evaluated using a predetermined cost function.
Es werden nun Parameter der parametrisierten Aggregation sowie weitere Parameter, die das Verhalten des neuronalen Netzwerks charakterisieren, optimiert mit dem Ziel, dass sich bei weiterer Verarbeitung von Lern-Bildern die Bewertung durch die Kostenfunktion voraussichtlich verbessert. Diese weiteren Parameter können insbesondere beispielsweise Gewichte sein, mit denen Eingaben, die Neuronen oder anderen Verarbeitungseinheiten des neuronalen Netzwerks zugeführt werden, gewichtet zu einer Aktivierung dieses Neurons, bzw. dieser Verarbeitungseinheit, summiert werden.Parameters of the parameterized aggregation and other parameters that characterize the behavior of the neural network are now optimized with the aim that the evaluation by the cost function will probably improve with further processing of learning images. These further parameters can in particular be weights, for example, with which inputs that are fed to neurons or other processing units of the neural network are weighted and summed to result in an activation of this neuron or this processing unit.
Der Begriff „voraussichtlich“ ist in diesem Zusammenhang so zu verstehen, dass iterative numerische Optimierungsalgorithmen die neuen Werte der Parameter für die nächste Iteration auf Grund der Vorgeschichte an Iterationen auswählen in der Erwartung, dass sich hiermit die Bewertung durch die Kostenfunktion verbessert. Diese Erwartung muss sich jedoch nicht für jede Iteration erfüllen, d.h., eine Iteration kann sich auch als „Rückschritt“ erweisen. Der Optimierungsalgorithmus kann jedoch auch ein Feedback dieser Art nutzen, um so letztendlich zu Werten der Parameter zu gelangen, für die sich die Bewertung durch die Kostenfunktion verbessert.The term "probably" in this context is to be understood in such a way that iterative numerical optimization algorithms select the new values of the parameters for the next iteration on the basis of the history of iterations in the expectation that this will improve the evaluation by the cost function. However, this expectation does not have to be fulfilled for every iteration, ie an iteration can also turn out to be a "step backwards". However, the optimization algorithm can also use this type of feedback to ultimately arrive at values of the parameters for which the evaluation by the cost function improves.
Indem die Parameter der parametrisierten Aggregation als zusätzliche Freiheitsgrade für das Training verwendet werden, lernt das neuronale Netzwerk, Merkmalskarten genau in dem Umfang äquivariant oder invariant gegen Transformationen der Eingabe zu machen, wie dies der Leistung des neuronalen Netzwerks in Bezug auf die jeweilige konkrete Anwendung tatsächlich förderlich ist. Dies ist ein Stück weit analog zum Anpassungsprozess einer Brille bei einem Augenoptiker. Den Transformationen T entsprechen hier den verschiedenen Korrekturlinsen für Kurzsichtigkeit, Weitsichtigkeit, Astigmatismus und andere Abbildungsfehler des Auges. Es werden genau diejenigen Korrekturen angewendet, mit denen der Kunde die zum Testen vorgelegten Zahlen und Buchstaben am besten erkennen kann.By using the parameters of the parameterized aggregation as additional degrees of freedom for training, the neural network learns to make feature maps equivariant or invariant to transformations of the input to exactly the extent that the neural network's performance with respect to the particular concrete application actually does is beneficial. This is somewhat analogous to the fitting process for glasses at an optician. The transformations T here correspond to the various corrective lenses for short-sightedness, long-sightedness, astigmatism and other imaging errors of the eye. Precisely those corrections are applied that allow the customer to best recognize the numbers and letters presented for testing.
Der Nutzeffekt der trainierten Äquivarianzen und Invarianzen beim Training ist insbesondere, dass das neuronale Netzwerk Objekte und Sachverhalte in verschiedenen Eingabe-Bildern, die sich nur um eine Anwendung der besagten Transformationen unterscheiden und ansonsten inhaltlich gleich sind, als gleich erkennt. Die Erkenntnis, dass beispielsweise ein gedrehtes, skaliertes oder aus einer anderen Perspektive betrachtetes Fahrzeug immer noch ein Fahrzeug ist, muss dem neuronalen Netzwerk daher nicht mehr implizit vermittelt werden, indem ihm eine Vielzahl derartiger abgewandelter Lern-Bilder vorgelegt wird und all diese Lern-Bilder mit der gleichen Lern-Ausgabe gelabelt werden.The useful effect of the trained equivariances and invariances during training is, in particular, that the neural network recognizes as the same objects and facts in different input images that differ only by an application of the said transformations and are otherwise the same in content. The realization that, for example, a vehicle that has been rotated, scaled, or viewed from a different perspective is still a vehicle, therefore no longer has to be implicitly conveyed to the neural network by presenting it with a large number of such modified learning images and all of these learning images be labeled with the same learning output.
Dementsprechend kann sich die Variabilität der verwendeten Lern-Bilder auf diejenigen Eigenschaften konzentrieren, die mit dem neuronalen Netzwerk untersucht werden sollen. Ein bestimmtes quantitatives Maß an Leistung in Bezug auf die Aufgabe des neuronalen Netzwerks, bei einem Bildklassifikator beispielsweise gemessen an der Klassifikationsgenauigkeit auf einem Satz von Test- oder Validierungsdaten, lässt sich dann insgesamt mit einer geringeren Menge an Lern-Bildern erzielen. Gerade mit Lern-Ausgaben gelabelte Lern-Bilder von Verkehrssituationen sind besonders teuer zu beschaffen, da lange Testfahrten erforderlich sind und das Labeln manuelle Arbeit erfordert.Accordingly, the variability of the learning images used can concentrate on those properties that are to be examined with the neural network. A certain quantitative measure of performance in relation to the task of the neural network, for example in the case of an image classifier measured by the classification accuracy on a set of test or validation data, can then be achieved overall with a smaller amount of training images. Learning images of traffic situations labeled with learning outputs are particularly expensive to obtain, since long test drives are required and the labeling requires manual work.
Dabei reicht eine nur ungefähre Kenntnis derjenigen Transformationen, bezüglich derer das Lernen einer Äquivarianz oder Invarianz vorteilhaft sein könnte, um in Bezug auf die an das neuronale Netzwerk gestellte Aufgabe hiervon profitieren zu können. Insofern trägt auch hier die Analogie zum Augenoptiker, der zunächst einmal nur weiß, von welcher Art Abbildungsfehler überhaupt sein können, und die Art und Stärke von Abbildungsfehlern eines konkreten Auges erst durch den iterativen Anpassungsprozess herausfindet.In this case, only approximate knowledge of those transformations, with respect to which learning an equivariance or invariance could be advantageous, is sufficient in order to be able to benefit from this in relation to the task assigned to the neural network. In this respect, the analogy to the optician also applies here, who initially only knows what type of aberrations can actually be and only finds out the type and strength of aberrations in a specific eye through the iterative adjustment process.
In einer besonders vorteilhaften Ausgestaltung wird der Filterkern κ als mit Parametern wi parametrisierte Linearkombination Σi wiψi von Basisfunktionen ψi ausgedrückt. Die Wirkung der Transformationen T auf die Basisfunktionen ψi kann dann vorausberechnet und immer wieder verwendet werden. Während des Trainings werden nur die Parameter wi variiert, um die Linearkombination anzupassen. Somit zieht jede Anpassung der Linearkombination im Zuge eines Trainingsschritts einen geringeren Rechenaufwand nach sich.In a particularly advantageous embodiment, the filter kernel κ is expressed as a linear combination Σ i w i ψ i of basis functions ψ i parameterized with parameters w i . The effect of the transformations T on the basis functions ψ i can then be calculated in advance and used again and again. During training, only the parameters w i are varied to fit the linear combination. Thus, each adjustment of the linear combination in the course of a training step entails a lower computational effort.
Die Anwendung einer Transformation T auf die Eingabe f der Faltungsschicht macht die Merkmalskarte Φ(f,κ) zu einer Merkmalskarte Φ(T[f],κ). Wenn K eine Matrixdarstellung des Filterkerns κ und f eine Matrixdarstellung der Eingabe f ist, ist Φ(f,κ) = K × f. Das Anwenden der Transformation T mit der Matrixdarstellung T bewirkt hier, dass T mit f zu multiplizieren ist, bevor der Filterkern κ angewendet wird. Nach dem Assoziativgesetz für die Multiplikation gilt:
Das Transformieren der Eingabe f ist also äquivalent zum Transformieren des Filterkerns κ. Die Bezeichnungen T'[f] einerseits und T[κ] andererseits drücken aus, dass die Multiplikation mit der Matrix T nicht kommutativ ist. Das heißt, die Multiplikation mit T von links führt nicht zum gleichen Ergebnis wie die Multiplikation mit T von rechts.So transforming the input f is equivalent to transforming the filter kernel κ. The notations T'[f] on the one hand and T[κ] on the other hand express that the multiplication with the matrix T is not commutative. That is, multiplying by T from the left does not produce the same result as multiplying by T from the right.
Die Merkmalskarte Φj(f,Tj [κ]), die sich durch Anwendung der Transformation Tj auf einen Filterkern κ ergibt, lässt sich schreiben als:
Die Gewichtung der Merkmalskarten untereinander in der Aggregation kann dann insbesondere beispielsweise mit von der Eingabe f abhängigen Gewichten βj(f) erfolgen. Eine Merkmalskarte Φ(f, T[κ]), die durch Anwenden einer oder mehrerer Transformationen Tj ∈ T entsteht, lässt sich dann schreiben als:
Hierin ist σ eine beliebige Aggregationsfunktion, und die Tj sind die Transformationen aus der Menge T. Diese Menge T kann insbesondere beispielsweise auch die Identität als Transformation enthalten. Das Training lässt sich dann beispielsweise so initialisieren, dass zunächst nur das Gewicht βj(f) für die Identität gleich 1 ist und die Gewichte βj(f) für alle anderen Transformationen Tj gleich 0 sind.Here σ is any aggregation function, and the T j are the transformations from the set T. This set T can in particular also contain the identity as a transformation, for example. The training can then be initialized, for example, such that initially only the weight β j (f) for the identity is equal to 1 and the weights β j (f) for all other transformations T j are equal to 0.
Als Basisfunktionen ψ für die Filterkerne κ können insbesondere beispielsweise Funktionen gewählt werden, die mindestens über Hermitesche Polynome Hm, Hn von Ortskoordinaten x, y in der Eingabe f abhängen:
In einer besonders vorteilhaften Ausgestaltung wird mindestens eine Merkmalskarte Φ(f,κ) gewählt, die eine Summe aus der Eingabe f und einem Verarbeitungsprodukt, das durch sukzessive Anwendung mehrerer Filterkerne κ1, κ2, ... auf die Eingabe f entsteht, beinhaltet. Auf diese Weise können die Anpassungen, die für die verschiedenen Faltungsschichten in einer Stapelung in einem so genannten „Residual Block“ gelernt werden, miteinander koordiniert werden. Eine Merkmalskarte Φ(f, T[κ1, κ2, ... ]), die durch Anwenden einer oder mehrerer Transformationen Tj ∈ T entsteht, lässt sich dann schreiben als:
Hierin sind ψ1, ψ2, ... die Basisfunktionen, aus denen die Filterkerne κ1, κ2, ... gebildet sind.Here ψ 1 , ψ 2 , ... are the basis functions from which the filter kernels κ 1 , κ 2 , ... are formed.
Die Transformationen können insbesondere beispielsweise elastische Transformationen sein. Dies sind Transformationen, die zumindest näherungsweise als Feld von Auslenkungen τ in räumlichen Koordinaten x des Eingabe-Bildes f mit einer Stärke ε beschreibbar sind:
Hiermit lässt sich eine große Klasse von Transformationen annähern, die sich ergeben, wenn etwa eine für eine Bildaufnahme verwendete Kamera ihre Perspektive relativ zur Szenerie ändert.This can be used to approximate a large class of transformations that result when, for example, a camera used to take an image changes its perspective relative to the scenery.
Die elastischen Transformationen können insbesondere beispielsweise lineare Streckungen und/oder Rotationsskalierungen umfassen. Dies sind Transformationen, die beispielsweise durch eine Änderung der Perspektive einer Kamera relativ zu einem Objekt bewirkt werden.The elastic transformations can in particular include, for example, linear stretching and/or rotational scaling. These are transformations that are caused, for example, by changing the perspective of a camera relative to an object.
Koordinaten x', y' im Eingabe-Bild nach einer linearen Streckung können beispielsweise gemäß
Koordinaten x', y' im Eingabe-Bild nach einer Rotationsskalierung können beispielsweise gemäß
Bei diesen Transformationen wird jeweils angenommen, dass das Zentrum des Filterkerns κ im Punkt (0, 0) liegt und ein Fixpunkt der Transformation ist.In these transformations it is assumed that the center of the filter kernel κ is at the point (0, 0) and is a fixed point of the transformation.
Die Aggregationsfunktion σ für die Aggregation der Merkmalskarten Φj(f,Tj [K]) kann insbesondere beispielsweise für jedes Element der Merkmalskarten
- • ein elementweises Maximum,
- • ein geglättetes elementweises Maximum oder
- • ein elementweiser Mittelwert
- • an elementwise maximum,
- • a smoothed elementwise maximum or
- • an element-wise average
Wenn beispielsweise ein Eingabe-Bild f eine Höhe H, eine Breite W und eine Anzahl C von Farbkanälen hat, kann es als Tensor der Form C × H × W vorliegen. Die K Transformationen T aus der Menge T fügen eine weitere Dimension hinzu. Die Aggregationsfunktion σ kann nun beispielsweise aus einem Raum der Dimension K × C × H × W zurück in den Raum der Dimension C × H × W abbilden und hierbei insbesondere beispielsweise diejenige Transformation Tj auswählen, die am besten zu den verfügbaren Trainingsdaten passt. Dies kann beispielsweise daran gemessen werden, wie groß jeweils die Aktivierungen von Neuronen sind, die für bestimmte Transformationen zuständig sind.For example, if an input image f has height H, width W, and number C of color channels, it can exist as a tensor of the form C×H×W. The K transformations T from the set T add another dimension. The aggregation function σ can now, for example, map from a space of the dimension K×C×H×W back into the space of the dimension C×H×W and, in particular, select the transformation T j that best matches the available training data. This can be measured, for example, by the level of activation of neurons that are responsible for certain transformations.
Unter einem elementweisen Maximum, bzw. einem elementweisen Mittelwert, wird in diesem Zusammenhang insbesondere beispielsweise verstanden, dass für jeden Eintrag in den Dimensionen C × H × W separat ein Maximum, bzw. ein Mittelwert, entlang der Dimension K der Transformationen gebildet wird. Ein geglättetes Maximum kann beispielsweise mit der Logsumexp-Funktion
In einer weiteren vorteilhaften Ausgestaltung beinhaltet das Aggregieren von Merkmalskarten Φj(f,Tj[κ]), eine Norm über eine oder mehrere räumliche Dimensionen einer jeden Merkmalskarte zu bilden und eine oder mehrere Merkmalskarten anhand dieser Norm auszuwählen. Beispielsweise können lp-Normen entlang der Dimensionen C, H × W oder C × H × W gebildet werden. Es kann dann entlang der K-Dimension ermittelt werden, für welche Transformationen sich die größten Normen ergeben. Es kann also eine Merkmalskarte und somit auch eine Transformation ausgewählt werden, die am besten zu den vorhandenen Daten passt.In a further advantageous embodiment, the aggregation of feature maps Φ j (f,T j [κ]) includes forming a norm over one or more spatial dimensions of each feature map and selecting one or more feature maps based on this norm. For example, l p -norms can be formed along the dimensions C, H×W, or C×H×W. It can then be determined along the K-dimension for which transformations the largest norms result. A feature map and thus also a transformation can be selected that best fits the existing data.
Wie zuvor erläutert, wird das neuronale Netzwerk durch das Training, das Invarianzen und Äquivarianzen einbezieht, in die Lage versetzt, seine übliche Aufgabe besser zu erfüllen. Dies schlägt sich beispielsweise bei einem Bildklassifikator in einer höheren Klassifikationsgenauigkeit auf Test-Bildern oder Validierungs-Bildern nieder.As previously discussed, training involving invariances and equivariances enables the neural network to do its usual job better. In the case of an image classifier, for example, this is reflected in a higher classification accuracy on test images or validation images.
Daher werden in einer weiteren vorteilhaften Ausgestaltung dem trainierten neuronalen Netzwerk Eingabe-Bilder zugeführt, die mit mindestens einem Sensor aufgenommen wurden, so dass diese Eingabe-Bilder von dem neuronalen Netzwerk auf Ausgaben abgebildet werden. Aus den Ausgaben wird ein Ansteuersignal ermittelt. Ein Fahrzeug, und/oder ein System für die Qualitätskontrolle von Produkten, und/oder ein System für die Überwachung von Bereichen, wird mit diesem Ansteuersignal angesteuert.Therefore, in a further advantageous embodiment, the trained neural network is supplied with input images that were recorded with at least one sensor, so that these input images are mapped onto outputs by the neural network. A control signal is determined from the outputs. A vehicle and/or a system for product quality control and/or a system for monitoring areas is controlled with this control signal.
Auf Grund der zutreffenden Ausgabe des neuronalen Netzwerks ist dann die Wahrscheinlichkeit, dass die von dem jeweils angesteuerten System ausgeführte Aktion der mit dem Sensor erfassten Situation angemessen ist, vorteilhaft erhöht.Due to the correct output of the neural network, the probability that the action carried out by the respectively controlled system is appropriate to the situation detected by the sensor is then advantageously increased.
Das Verfahren kann insbesondere ganz oder teilweise computerimplementiert sein. Daher bezieht sich die Erfindung auch auf ein Computerprogramm mit maschinenlesbaren Anweisungen, die, wenn sie auf einem oder mehreren Computern ausgeführt werden, den oder die Computer dazu veranlassen, das beschriebene Verfahren auszuführen. In diesem Sinne sind auch Steuergeräte für Fahrzeuge und Embedded-Systeme für technische Geräte, die ebenfalls in der Lage sind, maschinenlesbare Anweisungen auszuführen, als Computer anzusehen.In particular, the method can be fully or partially computer-implemented. The invention therefore also relates to a computer program with machine-readable instructions which, when executed on one or more computers, cause the computer or computers to carry out the method described. In this sense, control devices for vehicles and embedded systems for technical devices that are also able to execute machine-readable instructions are also to be regarded as computers.
Ebenso bezieht sich die Erfindung auch auf einen maschinenlesbaren Datenträger und/oder auf ein Downloadprodukt mit dem Computerprogramm. Ein Downloadprodukt ist ein über ein Datennetzwerk übertragbares, d.h. von einem Benutzer des Datennetzwerks downloadbares, digitales Produkt, das beispielsweise in einem Online-Shop zum sofortigen Download feilgeboten werden kann.The invention also relates to a machine-readable data carrier and/or a download product with the computer program. A downloadable product is a digital product that can be transmitted over a data network, i.e. can be downloaded by a user of the data network and that can be offered for sale in an online shop for immediate download, for example.
Weiterhin kann ein Computer mit dem Computerprogramm, mit dem maschinenlesbaren Datenträger bzw. mit dem Downloadprodukt ausgerüstet sein.Furthermore, a computer can be equipped with the computer program, with the machine-readable data carrier or with the downloadable product.
Weitere, die Erfindung verbessernde Maßnahmen werden nachstehend gemeinsam mit der Beschreibung der bevorzugten Ausführungsbeispiele der Erfindung anhand von Figuren näher dargestellt.Further measures improving the invention are presented in more detail below together with the description of the preferred exemplary embodiments of the invention with the aid of figures.
Ausführungsbeispieleexemplary embodiments
Es zeigt:
-
1 Ausführungsbeispiel des Verfahrens 100 zum Trainieren eines neuronalen Netzwerks 1; -
2 Beispielhafte Wirkung des Trainingsmit dem Verfahren 100 auf die Klassifikationsgenauigkeit eines Bildklassifikators.
-
1 Embodiment of themethod 100 for training aneural network 1; -
2 Exemplary effect of training with themethod 100 on the classification accuracy of an image classifier.
In Schritt 110 wird eine Menge T von Transformationen T bereitgestellt. Das neuronale Netzwerk 1 kann im Rahmen des hier beschriebenen Trainings lernen, bei Anwendung einer oder mehrerer dieser Transformationen T auf die Eingabe f mindestens einer Faltungsschicht des Netzwerks 1 die Erzeugung mindestens einer äquivarianten oder invarianten Merkmalskarte Φ(f,κ) zu erlernen.In
Gemäß Block 111 können insbesondere beispielsweise elastische Transformationen, die als Feld von Auslenkungen in räumlichen Koordinaten des Eingabe-Bildes beschreibbar sind, als Transformationen T ∈ T gewählt werden. Diese elastischen Transformationen können insbesondere beispielsweise gemäß Block 111a lineare Streckungen und/oder Rotationsskalierungen umfassen.According to block 111, elastic transformations, for example, which can be described as a field of deflections in spatial coordinates of the input image, can be selected as transformations T∈T. In particular, these elastic transformations can include linear stretching and/or rotational scaling according to
In Schritt 120 wird diese Merkmalskarte Φ(f,κ) durch eine mit Parametern 5a parametrisierte Aggregation 5 von Merkmalskarten Φj(f,Tj[κ]) ausgedrückt 120, die jeweils durch das Anwenden von Transformationen Tj ∈ T auf den mindestens einen Filterkern κ erhalten werden. Das heißt, die Ausgabe der entsprechenden Faltungsschicht ändert sich in Abhängigkeit der Parameter 5a.In
Gemäß Block 121 kann der Filterkern κ als mit Parametern wi parametrisierte Linearkombination Σi wiψi von Basisfunktionen ψi ausgedrückt werden. Hierbei können insbesondere beispielsweise gemäß Block 121a Basisfunktionen ψi gewählt werden, die mindestens über Hermitesche Polynome von Ortskoordinaten x, y in der Eingabe f abhängen.According to block 121, the filter kernel κ can be expressed as a linear combination Σ i w i ψ i of basis functions ψ i parameterized with parameters w i . In this case, for example, according to
Gemäß Block 122 können die Merkmalskarten Φj (f,Tj [κ]) in der Aggregation 5 untereinander mit von der Eingabe f abhängigen Gewichten βj(f) gewichtet werden.According to block 122, the feature maps Φ j (f,T j [κ]) in the aggregation 5 can be weighted among one another with weights β j (f) dependent on the input f.
Gemäß Block 123 kann für das Parametrisieren mit den Parametern 5a mindestens eine Merkmalskarte Φ(f, κ) gewählt werden, die eine Summe aus der Eingabe f und einem Verarbeitungsprodukt, das durch sukzessive Anwendung mehrerer Filterkerne κ1, κ2, ... auf die Eingabe f entsteht, beinhaltet. Eine derartige Merkmalskarte ist das Arbeitsergebnis eines „Residual Blocks“.According to block 123, at least one feature map Φ(f, κ) can be selected for the parameterization with the
Das Aggregieren der Merkmalskarten Φj(f,Tj [κ]) kann gemäß Block 124 beinhalten, für jedes Element dieser Merkmalskarten
- • ein elementweises Maximum,
- • ein geglättetes elementweises Maximum oder
- • ein elementweiser Mittelwert
- • an elementwise maximum,
- • a smoothed elementwise maximum or
- • an element-wise average
Alternativ oder auch in Kombination hierzu kann das Aggregieren der Merkmalskarten Φj(f,Tj [κ]) gemäß Block 125 beinhalten, eine Norm über eine oder mehrere räumliche Dimensionen einer jeden Merkmalskarte zu bilden und eine oder mehrere Merkmalskarten anhand dieser Norm auszuwählen.Alternatively or in combination with this, the aggregation of the feature maps Φ j (f,T j [κ]) according to block 125 can include forming a norm over one or more spatial dimensions of each feature map and selecting one or more feature maps based on this norm.
In Schritt 130 werden Lern-Bilder 2a sowie Lern-Ausgaben 3a, auf die das trainierte neuronale Netzwerk 1 diese Lern-Bilder 2a idealerweise abbilden soll, bereitgestellt.In
In Schritt 140 werden die Lern-Bilder 2a von dem neuronalen Netzwerk 1 auf Ausgaben 3 abgebildet.In
Abweichungen dieser Ausgaben 3 von den Lern-Ausgaben 3a werden in Schritt 150 mit einer vorgegebenen Kostenfunktion 4 bewertet.Deviations of these outputs 3 from the
In Schritt 160 werden Parameter 5a der parametrisierten Aggregation 5 sowie weitere Parameter 1a, die das Verhalten des neuronalen Netzwerks 1 charakterisieren, optimiert mit dem Ziel, dass sich bei weiterer Verarbeitung von Lern-Bildern 2a die Bewertung 4a durch die Kostenfunktion 4 voraussichtlich verbessert. Die fertig trainierten Zustände der Parameter 1a und 5a sind mit den Bezugszeichen 1a* bzw. 5a* bezeichnet. Das fertig trainierte neuronale Netzwerk 1, dessen Verhalten durch die Parameter 1a* und 5a* charakterisiert ist, ist mit dem Bezugszeichen 1* bezeichnet.In
In Schritt 170 werden dem trainierten neuronalen Netzwerk 1* Eingabe-Bilder 2 zugeführt, die mit mindestens einem Sensor 51 aufgenommen wurden. Diese Eingabe-Bilder 2 werden von dem neuronalen Netzwerk 1 auf Ausgaben 3 abgebildet.In
In Schritt 180 wird aus den Ausgaben 3 ein Ansteuersignal 180a ermittelt.In
In Schritt 190 wird ein Fahrzeug 50, und/oder ein System 60 für die Qualitätskontrolle von Produkten, und/oder ein System 70 für die Überwachung von Bereichen, mit diesem Ansteuersignal 180a angesteuert.In
In
Kurve a bezieht sich auf das herkömmliche Training. Die Kurven b bis e beziehen sich auf verschiedene Beispiele des Trainings nach dem hier beschriebenen Verfahren 100. Der durch die verrauschten Eingabe-Bilder verursachte Verlust an Genauigkeit kann durch das verbesserte Training zumindest teilweise wieder ausgeglichen werden. Für einige Konfigurationen zeigt sich auch bei unverrauschten Eingabe-Bildern bereits ein Gewinn (Kurvenverlauf oberhalb der Kurve a).Curve a refers to conventional training. The curves b to e relate to different examples of training according to the
ZITATE ENTHALTEN IN DER BESCHREIBUNGQUOTES INCLUDED IN DESCRIPTION
Diese Liste der vom Anmelder aufgeführten Dokumente wurde automatisiert erzeugt und ist ausschließlich zur besseren Information des Lesers aufgenommen. Die Liste ist nicht Bestandteil der deutschen Patent- bzw. Gebrauchsmusteranmeldung. Das DPMA übernimmt keinerlei Haftung für etwaige Fehler oder Auslassungen.This list of documents cited by the applicant was generated automatically and is included solely for the better information of the reader. The list is not part of the German patent or utility model application. The DPMA assumes no liability for any errors or omissions.
Zitierte PatentliteraturPatent Literature Cited
- DE 102018204494 B3 [0004]DE 102018204494 B3 [0004]
Claims (14)
Priority Applications (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
DE102021208877.5A DE102021208877A1 (en) | 2021-08-12 | 2021-08-12 | Training of neural networks for equivariance or invariance against changes in the input image |
PCT/EP2022/071667 WO2023016859A1 (en) | 2021-08-12 | 2022-08-02 | Training neural networks for equivariance or invariance with respect to changes in the input image |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
DE102021208877.5A DE102021208877A1 (en) | 2021-08-12 | 2021-08-12 | Training of neural networks for equivariance or invariance against changes in the input image |
Publications (1)
Publication Number | Publication Date |
---|---|
DE102021208877A1 true DE102021208877A1 (en) | 2023-02-16 |
Family
ID=83115415
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
DE102021208877.5A Withdrawn DE102021208877A1 (en) | 2021-08-12 | 2021-08-12 | Training of neural networks for equivariance or invariance against changes in the input image |
Country Status (2)
Country | Link |
---|---|
DE (1) | DE102021208877A1 (en) |
WO (1) | WO2023016859A1 (en) |
Citations (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
DE102018204494B3 (en) | 2018-03-23 | 2019-08-14 | Robert Bosch Gmbh | Generation of synthetic radar signals |
DE102019214402A1 (en) | 2019-09-20 | 2021-03-25 | Robert Bosch Gmbh | METHOD AND DEVICE FOR PROCESSING DATA BY MEANS OF A NEURONAL CONVOLUTIONAL NETWORK |
-
2021
- 2021-08-12 DE DE102021208877.5A patent/DE102021208877A1/en not_active Withdrawn
-
2022
- 2022-08-02 WO PCT/EP2022/071667 patent/WO2023016859A1/en unknown
Patent Citations (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
DE102018204494B3 (en) | 2018-03-23 | 2019-08-14 | Robert Bosch Gmbh | Generation of synthetic radar signals |
DE102019214402A1 (en) | 2019-09-20 | 2021-03-25 | Robert Bosch Gmbh | METHOD AND DEVICE FOR PROCESSING DATA BY MEANS OF A NEURONAL CONVOLUTIONAL NETWORK |
Non-Patent Citations (5)
Title |
---|
FOLLMANN, P.;BOTTGER, T.:A Rotationally-Invariant Convolution Module by Feature Map Back-Rotation. IEEE Winter Conference on Applications of Computer Vision (WACV), 2018, pp. 784-792 |
MARCOS, D.; VOLPI, M.; KOMODAKIS, N.; TUIA, D.: Rotation equivariant vector field networks. In: Proceedings of the IEEE International Conference on Computer Vision. 2017. S. 5048-5057. |
MUMUNI, A.; MUMUNI, F.: CNN architectures for geometric transformation-invariant feature representation in computer vision: a review. SN Computer Science, 2021, 2. Jg., Nr. 5, S. 1-23. |
SOSNOVIK, Ivan; SZMAJA, Michał; SMEULDERS, Arnold. Scale-equivariant steerable networks. arXiv preprint arXiv:1910.11093, 2019. |
WERNER, Martin.: Digitale Bildverarbeitung. Grundkurs mit neuronalen Netzen und MATLAB-Praktikum. Korrigierte Publikation. Wiesbaden: Springer Vieweg, 2021. S. 409-465. - ISBN 978-3-658-22184-3 |
Also Published As
Publication number | Publication date |
---|---|
WO2023016859A1 (en) | 2023-02-16 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
DE102017218889A1 (en) | Unarmed parameterized AI module and method of operation | |
DE112020000448T5 (en) | CAMERA SELF CALIBRATION NETWORK | |
DE102018208763A1 (en) | Method, apparatus and computer program for operating a machine learning system | |
DE102017218851A1 (en) | Method, device and computer program for creating a deep neural network | |
DE102019209644A1 (en) | Method for training a neural network | |
DE102019204139A1 (en) | Training for artificial neural networks with better utilization of the learning data sets | |
DE102018220941A1 (en) | Evaluation of measured variables with AI modules taking into account measurement uncertainties | |
DE102019214402A1 (en) | METHOD AND DEVICE FOR PROCESSING DATA BY MEANS OF A NEURONAL CONVOLUTIONAL NETWORK | |
DE102021208877A1 (en) | Training of neural networks for equivariance or invariance against changes in the input image | |
DE102019219734A1 (en) | Evaluation system for measurement data from several domains | |
DE102013206291A1 (en) | Method and apparatus for creating a non-parametric, data-based function model | |
DE102020214850A1 (en) | Energy and memory efficient training of neural networks | |
DE102018220608A1 (en) | Machine learning system, as well as a method, a computer program and a device for creating the machine learning system | |
DE102020208765A1 (en) | Image classifier with variable receptive fields in convolutional layers | |
DE102019114049A1 (en) | Method for validating a driver assistance system using further generated test input data sets | |
DE102020122979A1 (en) | Method for providing a compressed, robust neural network and assistance device | |
EP3748574A1 (en) | Adaptive removal of different types of interference from measurement data | |
DE102019210167A1 (en) | More robust training for artificial neural networks | |
DE102005028252A1 (en) | Method for the computer-aided processing of digital data | |
DE102022202999A1 (en) | Generation of test data sets to test the extent to which a trained classifier is capable of generalization | |
DE102021201019A1 (en) | Semantic segmentation of images without small-scale labeled training images | |
DE102021214552A1 (en) | Method for evaluating a trained deep neural network | |
DE102021210566A1 (en) | Quantitative assessment of the uncertainty of statements from a classifier based on measurement data and several processing products of the same | |
DE102020210729A1 (en) | Training of classifier networks for a better explainability of the obtained classification scores | |
DE102021207836A1 (en) | Classifying images with built-in invariance over transformations |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
R079 | Amendment of ipc main class |
Free format text: PREVIOUS MAIN CLASS: G06K0009660000 Ipc: G06V0030194000 |
|
R079 | Amendment of ipc main class |
Free format text: PREVIOUS MAIN CLASS: G06V0030194000 Ipc: G06V0010820000 |
|
R163 | Identified publications notified | ||
R119 | Application deemed withdrawn, or ip right lapsed, due to non-payment of renewal fee |