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 PDF

Info

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
Application number
DE102021208877.5A
Other languages
German (de)
Inventor
Ivan Sosnovik
Jan Hendrik Metzen
Arnold Smeulders
Sadaf Gulshad
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Robert Bosch GmbH
Original Assignee
Robert Bosch GmbH
Priority date (The priority date 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 date listed.)
Filing date
Publication date
Application filed by Robert Bosch GmbH filed Critical Robert Bosch GmbH
Priority to DE102021208877.5A priority Critical patent/DE102021208877A1/en
Priority to PCT/EP2022/071667 priority patent/WO2023016859A1/en
Publication of DE102021208877A1 publication Critical patent/DE102021208877A1/en
Withdrawn legal-status Critical Current

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06VIMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
    • G06V10/00Arrangements for image or video recognition or understanding
    • G06V10/70Arrangements for image or video recognition or understanding using pattern recognition or machine learning
    • G06V10/82Arrangements for image or video recognition or understanding using pattern recognition or machine learning using neural networks
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06VIMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
    • G06V10/00Arrangements for image or video recognition or understanding
    • G06V10/40Extraction of image or video features
    • G06V10/44Local 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/443Local 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/449Biologically inspired filters, e.g. difference of Gaussians [DoG] or Gabor filters
    • G06V10/451Biologically inspired filters, e.g. difference of Gaussians [DoG] or Gabor filters with interaction between the filter responses, e.g. cortical complex cells
    • G06V10/454Integrating 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 DE 10 2018 204 494 B3 ein Verfahren, mit dem Radarsignale synthetisch generiert werden können, um damit physikalisch aufgenommene Radarsignale für das Training eines Klassifikators anzureichern.Therefore, the training data is often enriched with synthetically generated training data. So reveals about the DE 10 2018 204 494 B3 a method with which radar signals can be generated synthetically in order to enrich physically recorded radar signals for training a classifier.

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: Φ ( T ' [ ƒ ] , κ ) = K × ( T × f ) = ( K × T ) × f = Φ ( ƒ , T [ κ ] )

Figure DE102021208877A1_0001
Applying a transformation T to the input f of the convolutional layer makes the feature map Φ(f,κ) a feature map Φ(T[f],κ). If K is a matrix representation of the filter kernel κ and f is a matrix representation of the input f, then Φ(f,κ) = K × f. Applying the transform T with the matrix representation T here causes T to be multiplied by f before the Filter core κ is applied. According to the associative law for multiplication: Φ ( T ' [ ƒ ] , k ) = K × ( T × f ) = ( K × T ) × f = Φ ( ƒ , T [ k ] )
Figure DE102021208877A1_0001

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: Φ j ( ƒ , T j [ κ ] ) = Φ j ( ƒ , T j [ i w i ψ i ] ) = Φ j ( ƒ , i w i T j [ ψ i ] ) = Φ j ( ƒ , w T j [ ψ ] ) ,

Figure DE102021208877A1_0002
da die Zusammensetzung κ = Σi wiψi = w · ψ aus den Basisfunktionen sich unter der Transformation Tj nicht ändert.The feature map Φ j (f,T j [κ]) obtained by applying the transformation T j to a filter kernel κ can be written as: Φ j ( ƒ , T j [ k ] ) = Φ j ( ƒ , T j [ i w i ψ i ] ) = Φ j ( ƒ , i w i T j [ ψ i ] ) = Φ j ( ƒ , w T j [ ψ ] ) ,
Figure DE102021208877A1_0002
since the composition κ = Σ i w i ψ i = w · ψ from the basis functions does not change under the transformation T j .

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: Φ ( ƒ , T [ κ ] ) = σ ( β 0 ( ƒ ) Φ ( ƒ , w T 0 [ ψ ] ) β 1 ( ƒ ) Φ ( ƒ , w T 1 [ ψ ] ) β κ ( ƒ ) Φ ( ƒ , w T κ [ ψ ] ) )

Figure DE102021208877A1_0003
The feature maps can then be weighted among one another in the aggregation, for example with weights β j (f) dependent on the input f. A feature map Φ(f, T[κ]), which is obtained by applying one or more transformations T j ∈ T, can then be written as: Φ ( ƒ , T [ k ] ) = σ ( β 0 ( ƒ ) Φ ( ƒ , w T 0 [ ψ ] ) β 1 ( ƒ ) Φ ( ƒ , w T 1 [ ψ ] ) β k ( ƒ ) Φ ( ƒ , w T k [ ψ ] ) )
Figure DE102021208877A1_0003

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: ψ π ( x , y ) = A 1 π 2 H n ( x π ) H m ( y π ) exp ( x 2 + y 2 2 π 2 )

Figure DE102021208877A1_0004
mit einer Normierungskonstanten A und dem Skalierungsfaktor π. Mit derartigen Basisfunktionen können insbesondere solche Filterkerne κ konstruiert werden, die für die Erkennung von Merkmalen in Bildern besonders geeignet sind.In particular, functions can be selected as basis functions ψ for the filter cores κ, which depend at least via Hermitian polynomials H m , H n on spatial coordinates x, y in the input f: ψ π ( x , y ) = A 1 π 2 H n ( x π ) H m ( y π ) ex ( x 2 + y 2 2 π 2 )
Figure DE102021208877A1_0004
with a normalization constant A and the scaling factor π. Such basic functions can be used in particular to construct filter cores κ that are particularly suitable for recognizing features in images.

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: Φ ( ƒ , T [ κ 1 , κ 2 , ] ) = ƒ + σ ( β 0 ( ƒ ) Φ ( ƒ , w 1 T 0 [ ψ 1 ] , w 2 T 0 [ ψ 2 ] , ) β 1 ( ƒ ) Φ ( ƒ , w 1 T 1 [ ψ 1 ] , w 2 T 1 [ ψ 2 ] , ) β κ ( ƒ ) Φ ( ƒ , w 1 T κ [ ψ 1 ] , w 2 T κ [ ψ 2 ] , ) ) .

Figure DE102021208877A1_0005
In a particularly advantageous embodiment, at least one feature map Φ(f,κ) is selected, which contains a sum of the input f and a processing product that results from the successive application of a plurality of filter cores κ 1 , κ 2 , . . . to the input f . In this way, the adjustments learned for the different convolutional layers in a stack in a so-called “residual block” can be coordinated with each other. A feature map Φ(f, T[κ 1 , κ 2 , ... ]) obtained by applying one or more transformations T j ∈ T can then be written as: Φ ( ƒ , T [ k 1 , k 2 , ... ] ) = ƒ + σ ( β 0 ( ƒ ) Φ ( ƒ , w 1 T 0 [ ψ 1 ] , w 2 T 0 [ ψ 2 ] , ... ) β 1 ( ƒ ) Φ ( ƒ , w 1 T 1 [ ψ 1 ] , w 2 T 1 [ ψ 2 ] , ... ) β k ( ƒ ) Φ ( ƒ , w 1 T k [ ψ 1 ] , w 2 T k [ ψ 2 ] , ... ) ) .
Figure DE102021208877A1_0005

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: T [ ƒ ( x ) ] ( ε ) ( x + ε τ ( x ) ) .

Figure DE102021208877A1_0006
The transformations can in particular be elastic transformations, for example. These are transformations that can be described at least approximately as a field of displacements τ in spatial coordinates x of the input image f with a strength ε: T [ ƒ ( x ) ] ( e ) ( x + e τ ( x ) ) .
Figure DE102021208877A1_0006

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äß x ' = x 2 + y 2 ( sin ( θ ) sin ( δ ) + γ cos ( θ ) cos ( δ ) ) , y ' = x 2 + y 2 ( cos ( θ ) sin ( δ ) + γ sin ( θ ) cos ( δ ) )

Figure DE102021208877A1_0007
aus den ursprünglichen Koordinaten x, y hervorgehen. Hierin ist γ = 1/(e-6 + cos(α)), δ = θ - ϕ, ϕ = arctan(y/x), θ ist eine kleine Auslegung, und α ist ein Elastizitätskoeffizient. Hierin soll die sehr kleine positive, willkürlich gewählte Konstante e-6 eine Division durch Null verhindern, wenn cos(α) = 0.Coordinates x', y' in the input image after a linear stretching can, for example, according to x ' = x 2 + y 2 ( sin ( θ ) sin ( δ ) + g cos ( θ ) cos ( δ ) ) , y ' = x 2 + y 2 ( cos ( θ ) sin ( δ ) + g sin ( θ ) cos ( δ ) )
Figure DE102021208877A1_0007
from the original coordinates x, y. Here γ = 1/(e -6 + cos(α)), δ = θ - φ, φ = arctan(y/x), θ is a small design, and α is a coefficient of elasticity. Here the very small positive, arbitrarily chosen constant e -6 is intended to prevent division by zero when cos(α) = 0.

Koordinaten x', y' im Eingabe-Bild nach einer Rotationsskalierung können beispielsweise gemäß x ' = x + α ( x  cos ( θ ) + y  sin ( θ ) ) , y ' = y + α ( x  sin ( θ ) + y  cos ( θ ) )

Figure DE102021208877A1_0008
aus den ursprünglichen Koordinaten x, y hervorgehen.Coordinates x', y' in the input image after rotational scaling can be, for example, according to x ' = x + a ( x cos ( θ ) + y sin ( θ ) ) , y ' = y + a ( x sin ( θ ) + y cos ( θ ) )
Figure DE102021208877A1_0008
from the original coordinates x, y.

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
entlang der Dimension j der Transformationen Tj ∈ T bilden.The aggregation function σ for the aggregation of the feature maps Φ j (f,T j [K]) can in particular, for example, for each element of the feature maps
  • • an elementwise maximum,
  • • a smoothed elementwise maximum or
  • • an element-wise average
along dimension j of the transformations T j ∈ T.

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 σ ( x ) = log i exp ( x i )

Figure DE102021208877A1_0009
ermittelt werden.An element-by-element maximum or an element-by-element mean is understood in this context, for example, as meaning that a maximum or a mean is formed separately for each entry in the dimensions C×H×W along the dimension K of the transformations. For example, a smoothed maximum can be obtained using the Logsumexp function σ ( x ) = log i ex ( x i )
Figure DE102021208877A1_0009
be determined.

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 Trainings mit dem Verfahren 100 auf die Klassifikationsgenauigkeit eines Bildklassifikators.
It shows:
  • 1 Embodiment of the method 100 for training a neural network 1;
  • 2 Exemplary effect of training with the method 100 on the classification accuracy of an image classifier.

1 ist ein schematisches Ablaufdiagramm eines Ausführungsbeispiels des Verfahrens 100 zum Trainieren eines neuronalen Netzwerks 1. Es kann insbesondere beispielsweise in Schritt 105 ein Bildklassifikator als neuronales Netzwerk 1 gewählt werden. Das neuronale Netzwerk 1 ist zur Verarbeitung von Eingabe-Bildern 2 ausgebildet und umfasst mehrere Faltungsschichten. Jede dieser Faltungsschichten ist dazu ausgebildet, die Eingabe f der jeweiligen Faltungsschicht durch Anwenden mindestens eines Filterkerns κ auf mindestens eine Merkmalskarte Φ(f,κ) abzubilden. 1 1 is a schematic flowchart of an exemplary embodiment of the method 100 for training a neural network 1. In particular, an image classifier can be selected as the neural network 1 in step 105, for example. The neural network 1 is designed to process input images 2 and comprises a number of convolution layers. Each of these convolutional layers is designed to map the input f of the respective convolutional layer to at least one feature map Φ(f,κ) by applying at least one filter kernel κ.

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 step 110, a set T of transformations T is provided. As part of the training described here, the neural network 1 can learn how to generate at least one equivariant or invariant feature map Φ(f,κ) when applying one or more of these transformations T to the input f of at least one convolutional layer of the network 1 .

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 block 111a, for example.

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 step 120, this feature map Φ(f,κ) is expressed 120 by an aggregation 5 of feature maps Φ j (f,T j [κ]) parameterized with parameters 5a, each obtained by applying Transformatio NEN T j ∈ T on the at least one filter core κ can be obtained. That is, the output of the corresponding convolutional layer changes depending on the parameters 5a.

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 block 121a, basic functions ψ i can be selected, which depend at least on Hermitian polynomials on location coordinates x, y in the input f.

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 parameters 5a, which is a sum of the input f and a processing product, which is obtained by successive application of several filter cores κ 1 , κ 2 , . . the input f arises. Such a feature map is the work result of a "residual block".

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
entlang der Dimension j der Transformationen Tj ∈ T zu bilden.Aggregating the feature maps may include Φ j (f,T j [κ]) according to block 124, for each element of these feature maps
  • • an elementwise maximum,
  • • a smoothed elementwise maximum or
  • • an element-wise average
along the dimension j of the transformations T j ∈ T.

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 step 130, learning images 2a and learning outputs 3a, onto which the trained neural network 1 should ideally map these learning images 2a, are provided.

In Schritt 140 werden die Lern-Bilder 2a von dem neuronalen Netzwerk 1 auf Ausgaben 3 abgebildet.In step 140, the learning images 2a are mapped by the neural network 1 to outputs 3.

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 learning outputs 3a are evaluated in step 150 using a predetermined cost function 4 .

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 step 160, parameters 5a of the parameterized aggregation 5 and other parameters 1a, which characterize the behavior of the neural network 1, are optimized with the aim that the evaluation 4a by the cost function 4 is expected to improve with further processing of learning images 2a. The completely trained states of the parameters 1a and 5a are denoted by the reference symbols 1a* and 5a*, respectively. The completely trained neural network 1, whose behavior is characterized by the parameters 1a* and 5a*, is denoted by the reference symbol 1*.

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 step 170, input images 2 that were recorded with at least one sensor 51 are supplied to the trained neural network 1*. These input images 2 are mapped onto outputs 3 by the neural network 1 .

In Schritt 180 wird aus den Ausgaben 3 ein Ansteuersignal 180a ermittelt.In step 180, a control signal 180a is determined from the outputs 3.

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 step 190, a vehicle 50 and/or a system 60 for product quality control and/or a system 70 for monitoring areas is controlled with this control signal 180a.

In 2 ist für ein als Bildklassifikator ausgebildetes neuronales Netzwerk 1 der Architektur WideResnet-18 der Verlust ΔA an Klassifikationsgenauigkeit aufgetragen, der sich einstellt, wenn die Eingabe-Bilder mit einer Stärke P verrauscht werden. Die Kurven a bis e beziehen sich auf Zustände des neuronalen Netzwerks 1 nach verschiedenen Trainings. Der Versuch wurde mit dem öffentlich zugänglichen Datensatz STL-10 zugeführt, der 5000 Lern-Bilder und 8000 Test-Bilder der Größe 96x96 Pixel aus 10 verschiedenen Klassen enthält.In 2 For a neural network 1 of the WideResnet-18 architecture designed as an image classifier, the loss ΔA in classification accuracy is plotted, which occurs when the input images are noisy with a strength P. The curves a to e relate to states of the neural network 1 after different training sessions. The experiment was fed with the publicly accessible data set STL-10, which contains 5000 training images and 8000 test images with a size of 96x96 pixels from 10 different classes.

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 method 100 described here. The loss of accuracy caused by the noisy input images can be at least partially compensated again by the improved training. For some configurations, even with noise-free input images, there is already a gain (curve above curve a).

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)

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 on the input f of at least one convolutional layer to learn the generation of at least one equivariant or invariant feature map Φ(f,κ); • this feature map Φ(f, κ) is expressed (120) by an aggregation (5) parameterized with parameters (5a) of feature maps Φ j (f, T j [κ]), each obtained by applying transformations T j ∈ T can be obtained on the at least one filter kernel κ; • learning images (2a) and learning outputs (3a) onto which the trained neural network (1) should ideally map these learning images (2a) are provided (130); • the learning images (2a) are mapped (140) by the neural network (1) to outputs (3); • Deviations of these outputs (3) from the learning outputs (3a) are evaluated (150) using a predetermined cost function (4); • Parameters (5a) of the parameterized aggregation (5) and other parameters (1a) that characterize the behavior of the neural network (1) are optimized (160) with the aim that further processing of learning images (2a) the assessment (4a) by the cost function (4) is expected to improve. Verfahren (100) nach Anspruch 1, wobei der Filterkern κ als mit Parametern wi parametrisierte Linearkombination Σi wiψi von Basisfunktionen ψi ausgedrückt wird (121).Method (100) according to claim 1 , where the filter kernel κ is expressed as a linear combination Σ i w i ψ i of basis functions ψ i parameterized with parameters w i (121). Verfahren (100) nach Anspruch 2, wobei Basisfunktionen ψi gewählt werden (121a), die mindestens über Hermitesche Polynome von Ortskoordinaten x, y in der Eingabe f abhängen.Method (100) according to claim 2 , where basis functions ψ i are chosen (121a) which depend at least on Hermitian polynomials on spatial coordinates x, y in the input f. Verfahren (100) nach einem der Ansprüche 1 bis 3, wobei die Merkmalskarten Φj(f, Tj [κ]) in der Aggregation (5) untereinander mit von der Eingabe f abhängigen Gewichten βj(f) gewichtet werden (122).Method (100) according to any one of Claims 1 until 3 , wherein the feature maps Φ j (f, T j [κ]) in the aggregation (5) are weighted (122) with one another with weights β j (f) dependent on the input f. Verfahren (100) nach einem der Ansprüche 1 bis 4, wobei elastische Transformationen, die als Feld von Auslenkungen in räumlichen Koordinaten des Eingabe-Bildes beschreibbar sind, als Transformationen T ∈ T gewählt werden (111) .Method (100) according to any one of Claims 1 until 4 , where elastic transformations, which can be described as a field of displacements in spatial coordinates of the input image, are chosen as transformations T ∈ T (111) . Verfahren (100) nach Anspruch 5, wobei lineare Streckungen, und/oder Rotationsskalierungen, als Transformationen T ∈ T gewählt werden (111a).Method (100) according to claim 5 , where linear stretching and/or rotational scaling are chosen as transformations T ∈ T (111a). Verfahren (100) nach einem der Ansprüche 1 bis 6, wobei mindestens eine Merkmalskarte Φ(f, κ) gewählt wird (123), die eine Summe aus der Eingabe f und einem Verarbeitungsprodukt, das durch sukzessive Anwendung mehrerer Filterkerne κ1, κ2, ... auf die Eingabe f entsteht, beinhaltet.Method (100) according to any one of Claims 1 until 6 , wherein at least one feature map Φ(f, κ) is chosen (123) containing a sum of the input f and a processing product resulting from the successive application of a plurality of filter kernels κ 1 , κ 2 , ... to the input f . Verfahren (100) nach einem der Ansprüche 1 bis 7, wobei die Merkmalskarten Φj(f,Tj [κ]) aggregiert werden, indem für jedes Element der Merkmalskarten • ein elementweises Maximum, • ein geglättetes elementweises Maximum oder • ein elementweiser Mittelwert entlang der Dimension j der Transformationen Tj ∈ T gebildet wird (124).Method (100) according to any one of Claims 1 until 7 , where the feature maps Φ j (f,T j [κ]) are aggregated by forming for each element of the feature map • an element-by-element maximum, • a smoothed element-by-element maximum or • an element-by-element mean value along the dimension j of the transformations T j ∈ T becomes (124). Verfahren (100) nach einem der Ansprüche 1 bis 7, wobei das Aggregieren von Merkmalskarten Φj (f,Tj [κ]) beinhaltet, eine Norm über eine oder mehrere räumliche Dimensionen einer jeden Merkmalskarte zu bilden und eine oder mehrere Merkmalskarten anhand dieser Norm auszuwählen (125).Method (100) according to any one of Claims 1 until 7 , wherein aggregating feature maps Φ j (f,T j [κ]) includes forming a norm about one or more spatial dimensions of each feature map and selecting one or more feature maps based on that norm (125). Verfahren (100) nach einem der Ansprüche 1 bis 9, wobei ein Bildklassifikator, der Eingabe-Bilder auf Klassifikations-Scores bezüglich einer oder mehreren Klassen einer vorgegebenen Klassifikation abbildet, als neuronales Netzwerk (1) gewählt wird (105).Method (100) according to any one of Claims 1 until 9 wherein an image classifier that maps input images to classification scores related to one or more classes of a given classification is selected (105) as the neural network (1). Verfahren (100) nach einem der Ansprüche 1 bis 10, wobei • dem trainierten neuronalen Netzwerk (1*) Eingabe-Bilder (2) zugeführt werden (170), die mit mindestens einem Sensor (51) aufgenommen wurden, so dass diese Eingabe-Bilder (2) von dem neuronalen Netzwerk (1) auf Ausgaben (3) abgebildet werden; • aus den Ausgaben (3) ein Ansteuersignal (180a) ermittelt wird (180); und • 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 wird (190).Method (100) according to any one of Claims 1 until 10 , where • the trained neural network (1*) is supplied with input images (2) (170) which were recorded with at least one sensor (51), so that these input images (2) are received by the neural network (1) mapped to outputs (3); • a control signal (180a) is determined from the outputs (3) (180); and • a vehicle (50), and/or a system (60) for product quality control, and/or a system (70) for monitoring areas, is controlled (190) with this control signal (180a). Computerprogramm, enthaltend maschinenlesbare Anweisungen, die, wenn sie auf einem oder mehreren Computern ausgeführt werden, den oder die Computer dazu veranlassen, ein Verfahren nach einem der Ansprüche 1 bis 11 auszuführen.Computer program containing machine-readable instructions which, when executed on one or more computers, cause the computer or computers to carry out a method according to one of Claims 1 until 11 to execute. Maschinenlesbarer Datenträger mit dem Computerprogramm nach Anspruch 12.Machine-readable data carrier with the computer program claim 12 . Ein oder mehrere Computer mit dem Computerprogramm nach Anspruch 12, und/oder mit dem maschinenlesbaren Datenträger nach Anspruch 13.One or more computers with the computer program after claim 12 , and/or with the machine-readable data carrier Claim 13 .
DE102021208877.5A 2021-08-12 2021-08-12 Training of neural networks for equivariance or invariance against changes in the input image Withdrawn DE102021208877A1 (en)

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)

* Cited by examiner, † Cited by third party
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

Patent Citations (2)

* Cited by examiner, † Cited by third party
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)

* Cited by examiner, † Cited by third party
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