DE102022208614A1 - Reconstruction of training examples in federated training of neural networks - Google Patents
Reconstruction of training examples in federated training of neural networks Download PDFInfo
- Publication number
- DE102022208614A1 DE102022208614A1 DE102022208614.7A DE102022208614A DE102022208614A1 DE 102022208614 A1 DE102022208614 A1 DE 102022208614A1 DE 102022208614 A DE102022208614 A DE 102022208614A DE 102022208614 A1 DE102022208614 A1 DE 102022208614A1
- Authority
- DE
- Germany
- Prior art keywords
- neural network
- training
- training examples
- gradient
- determined
- 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.)
- Pending
Links
- 238000012549 training Methods 0.000 title claims abstract description 123
- 238000013528 artificial neural network Methods 0.000 title claims abstract description 71
- 210000002569 neuron Anatomy 0.000 claims abstract description 26
- 238000000034 method Methods 0.000 claims abstract description 25
- 238000005192 partition Methods 0.000 claims abstract description 20
- 238000009826 distribution Methods 0.000 claims abstract description 11
- 230000004913 activation Effects 0.000 claims description 9
- 238000004590 computer program Methods 0.000 claims description 6
- 238000011161 development Methods 0.000 claims description 6
- 238000005259 measurement Methods 0.000 claims description 5
- 230000006866 deterioration Effects 0.000 claims description 4
- 238000011156 evaluation Methods 0.000 claims description 4
- 238000002059 diagnostic imaging Methods 0.000 claims description 3
- 238000012544 monitoring process Methods 0.000 claims description 3
- 230000000644 propagated effect Effects 0.000 claims description 3
- 238000003908 quality control method Methods 0.000 claims description 3
- 238000010200 validation analysis Methods 0.000 claims description 3
- 230000006870 function Effects 0.000 description 36
- 230000006399 behavior Effects 0.000 description 6
- 230000018109 developmental process Effects 0.000 description 4
- 238000005457 optimization Methods 0.000 description 4
- 238000003860 storage Methods 0.000 description 2
- 238000012360 testing method Methods 0.000 description 2
- 208000037063 Thinness Diseases 0.000 description 1
- 239000000654 additive Substances 0.000 description 1
- 230000000996 additive effect Effects 0.000 description 1
- 238000004364 calculation method Methods 0.000 description 1
- 238000010586 diagram Methods 0.000 description 1
- 238000001914 filtration Methods 0.000 description 1
- 238000011478 gradient descent method Methods 0.000 description 1
- 238000012804 iterative process Methods 0.000 description 1
- 238000012886 linear function Methods 0.000 description 1
- 238000004519 manufacturing process Methods 0.000 description 1
- 230000011218 segmentation Effects 0.000 description 1
- 238000012546 transfer Methods 0.000 description 1
- 206010048828 underweight Diseases 0.000 description 1
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06N—COMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
- G06N3/00—Computing arrangements based on biological models
- G06N3/02—Neural networks
- G06N3/08—Learning methods
- G06N3/098—Distributed learning, e.g. federated learning
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06N—COMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
- G06N3/00—Computing arrangements based on biological models
- G06N3/02—Neural networks
- G06N3/04—Architecture, e.g. interconnection topology
- G06N3/045—Combinations of networks
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06N—COMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
- G06N3/00—Computing arrangements based on biological models
- G06N3/02—Neural networks
- G06N3/04—Architecture, e.g. interconnection topology
- G06N3/047—Probabilistic or stochastic networks
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06N—COMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
- G06N3/00—Computing arrangements based on biological models
- G06N3/02—Neural networks
- G06N3/04—Architecture, e.g. interconnection topology
- G06N3/0475—Generative networks
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06N—COMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
- G06N3/00—Computing arrangements based on biological models
- G06N3/02—Neural networks
- G06N3/04—Architecture, e.g. interconnection topology
- G06N3/048—Activation functions
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06N—COMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
- G06N3/00—Computing arrangements based on biological models
- G06N3/02—Neural networks
- G06N3/08—Learning methods
- G06N3/084—Backpropagation, e.g. using gradient descent
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06N—COMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
- G06N3/00—Computing arrangements based on biological models
- G06N3/02—Neural networks
- G06N3/08—Learning methods
- G06N3/094—Adversarial learning
-
- 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/764—Arrangements for image or video recognition or understanding using pattern recognition or machine learning using classification, e.g. of video objects
-
- 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/77—Processing image or video features in feature spaces; using data integration or data reduction, e.g. principal component analysis [PCA] or independent component analysis [ICA] or self-organising maps [SOM]; Blind source separation
- G06V10/774—Generating sets of training patterns; Bootstrap methods, e.g. bagging or boosting
-
- 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
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Physics & Mathematics (AREA)
- Evolutionary Computation (AREA)
- General Health & Medical Sciences (AREA)
- Health & Medical Sciences (AREA)
- Artificial Intelligence (AREA)
- Software Systems (AREA)
- General Physics & Mathematics (AREA)
- Computing Systems (AREA)
- Biophysics (AREA)
- Life Sciences & Earth Sciences (AREA)
- Data Mining & Analysis (AREA)
- General Engineering & Computer Science (AREA)
- Computational Linguistics (AREA)
- Mathematical Physics (AREA)
- Biomedical Technology (AREA)
- Molecular Biology (AREA)
- Computer Vision & Pattern Recognition (AREA)
- Databases & Information Systems (AREA)
- Medical Informatics (AREA)
- Multimedia (AREA)
- Probability & Statistics with Applications (AREA)
- Image Analysis (AREA)
- Management, Administration, Business Operations System, And Electronic Commerce (AREA)
Abstract
Verfahren (100) zum Rekonstruieren von Trainings-Beispielen x, mit denen ein vorgegebenes neuronales Netzwerk (1) auf die Optimierung einer vorgegebenen Kostenfunktion L trainiert wurde, mit den Schritten:• es wird eine Gütefunktion R bereitgestellt (110), die für ein rekonstruiertes Trainings-Beispiel x̃ misst, inwieweit es einer erwarteten Domäne oder Verteilung der Trainings-Beispiele x angehört;• es wird eine Größe B eines Batches von Trainings-Beispielen x, mit dem das neuronale Netzwerk 1 trainiert wurde, bereitgestellt (120);• ein bei diesem Training ermittelter Gradient dL/dMWder Kostenfunktion L nach Parametern MW, die das Verhalten des neuronalen Netzwerks (1) charakterisieren, wird in eine Partition aus B Komponenten Pjaufgeteilt (130);• aus jeder Komponente Pjdes Gradienten dL/dMWwird unter Heranziehung der funktionalen Abhängigkeit der Ausgaben yivon Neuronen in der Eingangsschicht des neuronalen Netzwerks (1), die die Trainings-Beispiele x entgegennimmt, von den Parametern MW,idieser Neuronen und den Trainings-Beispielen x ein Trainings-Beispielx˜jTrekonstruiert (140);• die so erhaltenen Rekonstruktionenx˜jTwerden mit der Gütefunktion R bewertet (150);• die Partition in die Komponenten Pjwird auf das Ziel optimiert (160), dass bei erneuter Aufteilung des Gradienten dL/dMWder Kostenfunktion L und Rekonstruktion neuer Trainings-Beispielex˜jTderen Bewertung durch die Gütefunktion R verbessert wird.Method (100) for reconstructing training examples x, with which a given neural network (1) was trained to optimize a given cost function L, with the steps: • A quality function R is provided (110), which is for a reconstructed Training example x̃ measures the extent to which it belongs to an expected domain or distribution of the training examples x; • a size B of a batch of training examples x with which the neural network 1 was trained is provided (120); • a The gradient dL/dMW of the cost function L determined during this training according to parameters MW that characterize the behavior of the neural network (1) is divided into a partition of B components Pj (130); Dependence of the outputs yivof neurons in the input layer of the neural network (1), which receives the training examples x, on the parameters MW,i of these neurons and the training examples x a training examplex˜jTreconstructed (140);• the ones obtained in this way Reconstructions x˜jT are evaluated with the quality function R (150); R is improved.
Description
Die vorliegende Erfindung betrifft das föderierte Training neuronaler Netzwerke, bei dem mehrere Clients auf der Basis lokaler Bestände von Trainings-Beispielen Beiträge zum Training beisteuern.The present invention relates to federated training of neural networks, in which multiple clients contribute to the training based on local inventories of training examples.
Stand der TechnikState of the art
Zum Trainieren neuronaler Netzwerke, die beispielsweise als Klassifikatoren für Bilder oder andere Messdaten verwendet werden können, sind eine große Menge Trainings-Beispiele mit hinreichender Variabilität nötig. Wenn die Trainings-Beispiele personenbezogene Daten enthalten, wie etwa Bilder von Gesichtern oder Kfz-Kennzeichen, wird insbesondere das Sammeln von Trainings-Beispielen aus einer Vielzahl von Ländern mit jeweils unterschiedlichen Datenschutzbestimmungen rechtlich problematisch. Darüber hinaus haben beispielsweise Bilder oder Videodaten ein sehr großes Volumen, so dass die zentralisierte Sammlung sehr viel Bandbreite und Speicherplatz benötigt.To train neural networks that can be used, for example, as classifiers for images or other measurement data, a large number of training examples with sufficient variability are required. If the training examples contain personal data, such as images of faces or license plates, collecting training examples from a large number of countries, each with different data protection regulations, becomes legally problematic. In addition, images or video data, for example, have a very large volume, so the centralized collection requires a lot of bandwidth and storage space.
Daher wird beim föderierten Lernen das neuronale Netzwerk von einer zentralen Entität an viele Clients ausgegeben, die das Netzwerk dann jeweils mit ihren lokalen Beständen trainieren und Vorschläge für Änderungen der Parameter des Netzwerks ermitteln. Diese Vorschläge werden von der zentralen Entität zu einem finalen Update der Parameter aggregiert.Therefore, in federated learning, the neural network is issued by a central entity to many clients, each of which then trains the network with their local assets and determines suggestions for changes to the network's parameters. These suggestions are aggregated by the central entity into a final update of the parameters.
Auf diese Weise werden zwischen der zentralen Entität und den Clients lediglich Parameter des neuronalen Netzwerks sowie dessen Änderungen ausgetauscht. In this way, only parameters of the neural network and its changes are exchanged between the central entity and the clients.
Die andere Seite dieser Medaille ist, dass die Kontrolle über die Qualität des letztendlichen Trainingserfolgs ein Stück weit abgegeben wird.The other side of this coin is that some control over the quality of the ultimate training success is given away.
Offenbarung der ErfindungDisclosure of the invention
Die Erfindung stellt ein Verfahren zum Rekonstruieren von Trainings-Beispielen x, mit denen ein vorgegebenes neuronales Netzwerk auf die Optimierung einer vorgegebenen Kostenfunktion L trainiert wurde, bereit. Die Kostenfunktion L ist insbesondere beim föderierten Training allen Teilnehmern bekannt.The invention provides a method for reconstructing training examples x with which a given neural network was trained to optimize a given cost function L. The cost function L is known to all participants, especially in federated training.
Im Rahmen des Verfahrens wird zunächst eine Gütefunktion R bereitgestellt. Unabhängig davon, auf welche Weise auch immer ein rekonstruiertes Trainings-Beispiel x̃ beschafft wurde, misst diese Gütefunktion R für dieses rekonstruierte Trainings-Beispiel x̃, inwieweit es einer erwarteten Domäne oder Verteilung der Trainings-Beispiele angehört. Die Gütefunktion R gibt also einen Score aus, der besagt, wie gut das rekonstruierte Trainings-Beispiel x̃ in die erwartete Domäne oder Verteilung hineinpasst. Damit ist das Ziel, dass sich das rekonstruierte Trainings-Beispiel x̃ dort einfügt, einer Optimierung zugänglich, getreu der Maxime von Archimedes, dass sich jede Last bewegen lässt, wenn denn nur ein Ansatzpunkt für einen Hebel vorhanden ist.As part of the process, a quality function R is first provided. Regardless of how a reconstructed training example x̃ was obtained, this quality function R for this reconstructed training example x̃ measures the extent to which it belongs to an expected domain or distribution of the training examples. The quality function R therefore outputs a score that indicates how well the reconstructed training example x̃ fits into the expected domain or distribution. This means that the goal is that the reconstructed training example x̃ fits there and is open to optimization, true to Archimedes' maxim that any load can be moved if there is only one starting point for a lever.
Es wird weiterhin eine Größe B eines Batches von Trainings-Beispielen x, mit dem das neuronale Netzwerk trainiert wurde, bereitgestellt. Beim föderierten Training, das von einer Mehrzahl dezentraler Clients C durchgeführt und von einer zentralen Entität Q koordiniert wird, wird B üblicherweise entweder von der zentralen Entität Q vorgegeben oder von den Clients C jeweils der zentralen Entität Q mitgeteilt. Sollte B nicht bekannt sein, kann ersatzweise eine Abschätzung eingesetzt und die Verfeinerung dieser Abschätzung in die im Folgenden beschriebene Optimierung mit einbezogen werden.A size B of a batch of training examples x with which the neural network was trained is also provided. In federated training, which is carried out by a plurality of decentralized clients C and coordinated by a central entity Q, B is usually either specified by the central entity Q or communicated to the central entity Q by the clients C. If B is not known, an estimate can be used as a substitute and the refinement of this estimate can be included in the optimization described below.
Die Größe B wird verwendet, um einen bei dem Training ermittelten Gradienten dL/dMW der Kostenfunktion L nach Parametern MW, die das Verhalten des neuronalen Netzwerks charakterisieren, in eine Partition aus B Komponenten Pj aufzuteilen. Der Gradient dL/dMW ist beim föderierten Lernen typischerweise das, was von Clients C an eine koordinierende zentrale Entität Q zurückgemeldet wird. Die Partition kann beispielsweise gemäß
Aus jeder Komponente Pj des Gradienten dL/dMW wird unter Heranziehung der funktionalen Abhängigkeit der Ausgaben yi von Neuronen in der Eingangsschicht des neuronalen Netzwerks, die die Trainings-Beispiele x entgegennimmt, von den Parametern MW,i dieser Neuronen und den Trainings-Beispielen x ein Trainings-Beispiel
Eine solche Rekonstruktion setzt voraus, dass der auf dieses Trainings-Beispiel x zurückgehende Gradient dL/dMW der Kostenfunktion L bekannt ist. Beim föderierten Lernen wird jedoch typischerweise ein Gradient dL/dMW zurückgemeldet, der über alle B Trainings-Beispiele des Batches aggregiert ist, so dass hieraus kein unmittelbarer Rückschluss auf ein einziges Trainings-Beispiel gezogen werden kann. Das hier vorgeschlagene Verfahren führt die Rekonstruktion daher für jede Komponente Pj des Gradienten dL/dMW separat durch und führt hiermit das Problem auf die Aufgabe zurück, die richtige Partition des Gradienten dL/dMW in Komponenten Pj zu finden.Such a reconstruction requires that the gradient dL/dM W of the cost function L based on this training example x is known. With federated learning, however, a gradient dL/dM W is typically reported back, which is aggregated across all B training examples in the batch, so that no direct conclusion can be drawn about a single training example. The one suggested here The method therefore carries out the reconstruction separately for each component P j of the gradient dL/dM W and hereby reduces the problem to the task of finding the correct partition of the gradient dL/dM W in components P j .
Zu diesem Zweck werden die für alle Komponenten Pj jeweils erhaltenen Rekonstruktionen
Letztendlich wird also im Raum der möglichen Partitionen des Gradienten dL/dMW in Komponenten Pj nach derjenigen Partition gesucht, die, wenn gemäß dieser Partition je Komponente Pj eine Rekonstruktion
Auch eine nur näherungsweise Rekonstruktion, die nicht die beste Qualität hat, liefert bereits wertvolle Hinweise auf die Qualität des Trainings. Es kann insbesondere beispielsweise überprüft werden, ob überhaupt die richtige Art von Trainings-Beispielen x gemäß Vorgabe der zentralen koordinierenden Entität Q verwendet wurde. Wenn beispielsweise für ein Fahrassistenzsystem oder für ein zumindest teilweise automatisiert fahrendes Kraftfahrzeug ein neuronales Netzwerk trainiert wird, das Bilder von Verkehrssituationen klassifiziert oder in sonstiger Weise verarbeitet, werden Trainings-Beispiele von Verkehrssituationen benötigt, die aus der Perspektive eines Kraftfahrzeugs aufgenommen wurden. Einer der Clients könnte nun beispielsweise die Anweisung zum Sammeln von Trainings-Beispielen missverstehen und Trainings-Beispiele nutzen, die mit der Helmkamera eines Radfahrers aufgenommen wurden. Das Einbringen dieser Trainings-Beispiele könnte die Leistung des letztendlich für Kraftfahrzeuge gedachten neuronalen Netzwerks schlechter statt besser machen. Durch eine auch unvollkommene Rekonstruktion können derartige Fehler entdeckt werden.Even an approximate reconstruction that is not of the best quality already provides valuable information about the quality of the training. In particular, it can be checked, for example, whether the correct type of training examples x was used as specified by the central coordinating entity Q. For example, if a neural network is trained for a driving assistance system or for an at least partially automated motor vehicle that classifies or otherwise processes images of traffic situations, training examples of traffic situations that were recorded from the perspective of a motor vehicle are required. For example, one of the clients could misunderstand the instructions for collecting training examples and use training examples recorded with a cyclist's helmet camera. Introducing these training examples could make the performance of the neural network ultimately intended for automobiles worse instead of better. Such errors can be discovered through even an imperfect reconstruction.
Bilder als Trainings-Beispiele x sind auch noch in weiterer Hinsicht ein bevorzugter Anwendungsfall. Sie haben im Vergleich zu anderen Datenarten ein hohes Volumen, so dass durch das föderierte Lernen besonders viel Speicherplatz und Bandbreite für die Datenübertragung eingespart wird. Außerdem sind Bilder auch besonders sensitiv in Bezug auf den Datenschutz. Somit wird in einer besonders vorteilhaften Ausgestaltung ein neuronales Netzwerk gewählt, das dazu ausgebildet ist, aus einem in Pixel unterteilten, bzw. aus Pixeln zusammengesetzten, Eingabe-Bild auf der Basis der Pixelwerte
- • Klassifikations-Scores in Bezug auf eine oder mehrere Klassen einer vorgegebenen Klassifikation, und/oder
- • eine semantische Segmentierung dahingehend, dass jedes Pixel einer Klasse zugeordnet wird, und/oder
- • in dem Eingabe-Bild enthaltene Instanzen von Objekten
- • Classification scores related to one or more classes of a given classification, and/or
- • a semantic segmentation such that each pixel is assigned to a class, and/or
- • Instances of objects contained in the input image
In einer besonders vorteilhaften Ausgestaltung werden Anteile pj · dL/dMW mit Gewichten pj und Σj pj = 1 als Komponenten Pj der Partition gewählt. Für die Werte der Gewichte pj gilt dann 0 < pj < 1, was für die numerische Optimierung vorteilhaft ist.In a particularly advantageous embodiment, shares p j · dL/dM W with weights p j and Σ j p j = 1 are selected as components P j of the partition. For the values of the weights p j then 0 < p j < 1 applies, which is advantageous for numerical optimization.
In einer weiteren vorteilhaften Ausgestaltung wird ein Gradient der Gütefunktion R zu Änderungen der Gewichte pj zurückpropagiert. Es können dann zur Auffindung des Optimums die bewährten gradientenbasierten Methoden genutzt werden, wie etwa ein stochastisches Gradientenabstiegsverfahren.In a further advantageous embodiment, a gradient of the quality function R is propagated back to changes in the weights p j . The proven gradient-based methods can then be used to find the optimum, such as a stochastic gradient descent method.
Die Gewichte pj können insbesondere beispielsweise mit aus Logits des neuronalen Netzwerks gebildeten Softmax-Werten initialisiert werden. Diese Logits sind Roh-Ausgaben einer Schicht des neuronalen Netzwerks und liefern somit einen ersten Anhaltspunkt dahingehend, welche der Trainings-Beispiele x im Batch besonders stark zum Gradienten dL/dMW beigetragen haben.The weights p j can in particular be initialized, for example, with softmax values formed from logits of the neural network. These logits are raw outputs of a layer of the neural network and thus provide an initial indication of which of the training examples x in the batch contributed particularly strongly to the gradient dL/dM W.
In einer besonders vorteilhaften Ausgestaltung wird ein neuronales Netzwerk gewählt, das Gewichte
- • multipliziert ein i-tes Neuron ein diesem Neuron zugeführtes Trainingsbeispiel x mit Gewichten
- • addiert das Neuron zu dem Ergebnis einen Bias-Wert bi, um so einen Aktivierungswert des Neurons zu erhalten und
- • ermittelt das Neuron eine Ausgabe yi durch Anwenden einer nichtlinearen Aktivierungsfunktion auf diesen Aktivierungswert.
- • an i-th neuron multiplies a training example x fed to this neuron by weights
- • the neuron adds a bias value b i to the result in order to obtain an activation value of the neuron and
- • the neuron determines an output y i by applying a nonlinear activation function to this activation value.
Der Aktivierungswert ist dann eine lineare Funktion des Trainingsbeispiels x. Die Aktivierungsfunktion kann insbesondere beispielsweise so ausgebildet sein, dass sie zumindest abschnittsweise linear ist. So reicht beispielsweise die „Rectified Linear Unit (ReLU)“-Funktion den positiven Anteil ihres Arguments unverändert durch.The activation value is then a linear function of the training example x. The activation function can in particular, for example, be designed so that it is linear at least in sections. For example, the “Rectified Linear Unit (ReLU)” function passes the positive portion of its argument through unchanged.
Wenn im neuronalen Netzwerk auf die Eingangsschicht des neuronalen Netzwerks unmittelbar eine dichte Schicht folgt, deren Neuronen mit allen Neuronen der Eingangsschicht verbunden sind, ist die Ausgabe yi des i-ten Neurons gegeben durch
Somit lässt sich die Rekonstruktion x̃T des Trainings-Beispiels xT berechnen als
Wie zuvor erläutert, wird diese Berechnung für jede Komponente Pj des Gradienten dL/dMW separat durchgeführt, um jeweils eine Rekonstruktion
In einer besonders vorteilhaften Ausgestaltung wird ein trainierter Diskriminator eines Generative Adversarial Network, GAN, als Gütefunktion R gewählt. Ein solcher Diskriminator hat gelernt, echte Samples aus der erwarteten Domäne oder Verteilung von mit einem Generator des GAN generierten Samples zu unterscheiden. Als Wert der Gütefunktion R kann beispielsweise ein vom Diskriminator ausgegebener Klassifikations-Score verwendet werden. Es können auch beispielsweise probabilistische Modelle verwendet werden, die es ermöglichen, Dichteverteilungen der Trainings-Beispiele x über Likelihood-Funktionen (etwa die auch für die Spam-Filterung von E-Mails genutzten Bayes-Modelle) abzuschätzen.In a particularly advantageous embodiment, a trained discriminator of a Generative Adversarial Network, GAN, is selected as the quality function R. Such a discriminator has learned to distinguish real samples from the expected domain or distribution from samples generated with a GAN generator. For example, a classification score output by the discriminator can be used as the value of the quality function R. Probabilistic models can also be used, for example, which make it possible to estimate density distributions of the training examples x using likelihood functions (such as the Bayesian models also used for spam filtering of emails).
Die Trainings-Beispiele x können insbesondere beispielsweise Bilder, und/oder Zeitreihen von Messwerten, repräsentieren. Gerade Bilder sind besonders großvolumig und sensibel in Bezug auf den Datenschutz, so dass das föderierte Training besonders vorteilhaft ist. Auch detailgenaue Zeitreihen von Messwerten in Industrieanlagen können Rückschlüsse auf Interna eines Produktionsprozesses zulassen, die nicht für die Öffentlichkeit bestimmt sind. Die rekonstruierten Trainings-Beispiele
In einer besonders vorteilhaften Ausgestaltung werden die rekonstruierten Trainings-Beispiele
Wenn sich bei dieser Prüfung ergibt, dass das neuronale Netzwerk hinreichend auf ungesehene Daten generalisiert, kann das Netzwerk im beabsichtigten Wirkbetrieb genutzt werden. Dem neuronalen Netzwerk werden dann vorteilhaft Messdaten zugeführt, die mit mindestens einem Sensor aufgenommen wurden. Aus der daraufhin vom neuronalen Netzwerk gelieferten Ausgabe wird ein Ansteuersignal ermittelt. Ein Fahrzeug, ein Fahrassistenzsystem, ein System zur Qualitätskontrolle, ein System zur Überwachung von Bereichen, und/oder ein System zur medizinischen Bildgebung, wird mit dem Ansteuersignal angesteuert. In diesem Kontext bietet die Rekonstruktion von Trainings-Beispielen mit dem hier vorgeschlagenen Verfahren letztendlich ein erhöhtes Maß an Sicherheit, dass die vom jeweils angesteuerten System ausgeführte Reaktion auf das Ansteuersignal der durch die Messdaten repräsentierten Situation angemessen ist.If this test shows that the neural network generalizes sufficiently to unseen data, the network can be used in its intended operational mode. The neural network is then advantageously supplied with measurement data that was recorded with at least one sensor. A control signal is determined from the output then provided by the neural network. A vehicle, a driving assistance system, a quality control system, an area monitoring system, and/or a medical imaging system is controlled with the control signal. In this context, the reconstruction of training examples using the method proposed here ultimately offers an increased degree of certainty that the reaction carried out by the controlled system to the control signal is appropriate to the situation represented by the measurement data.
Wie zuvor erläutert, wird vorteilhaft im Rahmen des föderierten Trainings die Rekonstruktion von einer zentralen Entität Q vorgenommen, die das neuronale Netzwerk zum Zwecke des föderierten Trainings an eine Mehrzahl von Clients C verteilt. Der Gradient dL/dMW der Kostenfunktion L nach den Parametern MW wird von einem Client C beim Training des neuronalen Netzwerks auf einem Batch mit B Trainings-Beispielen x ermittelt und über diese B Trainings-Beispiele x aggregiert. Wie zuvor erläutert, lässt sich auf diese Weise überprüfen, ob die Beiträge aller Clients C tatsächlich sinnvoll im Hinblick auf den beabsichtigten Anwendungszweck des neuronalen Netzwerks sind. Es wurde bereits zuvor das Beispiel erwähnt, dass auf Grund eines Missverständnisses zwischen Client C und zentraler Entität Q Trainings-Beispiele verwendet werden, die gar nicht zu der vorgesehenen Anwendung passen. Daneben ist es beispielsweise auch möglich, dass einzelne Clients C beständig Trainings-Beispiele in schlechter technischer Qualität nutzen. Beispielsweise können Kamerabilder falsch belichtet und/oder unscharf sein, so dass das Wesentliche auf ihnen nicht zu erkennen ist.As explained above, within the framework of federated training, the reconstruction is advantageously carried out by a central entity Q, which distributes the neural network to a plurality of clients C for the purpose of federated training. The gradient dL/dM W of the cost function L according to the parameters M W is determined by a client C when training the neural network on a batch with B training examples x and aggregated over these B training examples x. As explained previously, this makes it possible to check whether the contributions of all clients C actually make sense with regard to the intended application of the neural network. The example was already mentioned before that, due to a misunderstanding between client C and central entity Q, training examples are used that do not fit the intended application at all. In addition, it is also possible, for example, that individual clients C constantly use training examples of poor technical quality. For example, camera images may be incorrectly exposed and/or out of focus, meaning that the essence of them cannot be seen.
Beispielsweise kann eine Zeitentwicklung und/oder Statistik über die rekonstruierten Trainings-Beispiele
Alternativ oder auch in Kombination hierzu kann ein Steuereingriff in die Zusammenarbeit der zentralen Entität Q mit den Clients C vorgenommen werden. Dieser Steuereingriff kann insbesondere beispielsweise zum Ziel haben, eine zuvor festgestellte Verschlechterung bzw. Drift aufzuhalten oder umzukehren. Ein Steuereingriff kann insbesondere beispielsweise beinhalten, zeitweise oder dauerhaft die von mindestens einem Client C gelieferten Gradienten dL/dMW unberücksichtigt zu lassen.Alternatively or in combination with this, a control intervention in the cooperation between the central entity Q and the clients C can be carried out. This control intervention can in particular have the aim, for example, of stopping or reversing a previously determined deterioration or drift. A control intervention can in particular include, for example, temporarily or permanently disregarding the gradients dL/dM W supplied by at least one client C.
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 und/oder Compute-Instanzen ausgeführt werden, den oder die Computer und/oder Compute-Instanzen 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. Beispiele für Compute-Instanzen sind virtuelle Maschinen, Container oder serverlose Ausführungsumgebungen für die Ausführung maschinenlesbarer Anweisungen in einer Cloud.The method can in particular be implemented entirely or partially by computer. Therefore, the invention also relates to a computer program with machine-readable instructions which, when executed on one or more computers and/or compute instances, cause the computer(s) and/or compute instances to carry out the method described. In this sense, control devices for vehicles and embedded systems for technical devices that are also capable of executing machine-readable instructions are also considered computers. Examples of compute instances include virtual machines, containers, or serverless execution environments for executing machine-readable instructions in a cloud.
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 to a download product with the computer program. A download product is a digital product that can be transferred via a data network, i.e. downloadable by a user of the data network and which 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 download 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 shown in more detail below together with the description of the preferred exemplary embodiments of the invention using figures.
AusführungsbeispieleExamples of embodiments
Es zeigt:
-
1 Ausführungsbeispiel des Verfahrens 100 zum Rekonstruieren von Trainings-Beispielen x; -
2 Veranschaulichung der auf eine Optimierung von Komponenten Pj einer Partition zurückgeführten Rekonstruktion.
-
1 Embodiment of themethod 100 for reconstructing training examples x; -
2 Illustration of the reconstruction resulting from an optimization of components P j of a partition.
In Schritt 110 wird eine Gütefunktion R bereitgestellt, die für ein rekonstruiertes Trainings-Beispiel x̃ misst, inwieweit es einer erwarteten Domäne oder Verteilung der Trainings-Beispiele x angehört. Diese Gütefunktion R kann gemäß Block 111 ein trainierter Diskriminator eines Generative Adversarial Network, GAN, sein. Wie zuvor erläutert, können auch beispielsweise probabilistische Modelle verwendet werden.In step 110, a quality function R is provided which, for a reconstructed training example x̃, measures the extent to which it belongs to an expected domain or distribution of the training examples x. According to block 111, this quality function R can be a trained discriminator of a Generative Adversarial Network, GAN. As explained previously, probabilistic models can also be used, for example.
In Schritt 120 wird eine Größe B eines Batches von Trainings-Beispielen x, mit dem das neuronale Netzwerk trainiert wurde, bereitgestellt.In
In Schritt 130 wird ein bei diesem Training ermittelter Gradient dL/dMW der Kostenfunktion L nach Parametern MW, die das Verhalten des neuronalen Netzwerks 1 charakterisieren, in eine Partition aus B Komponenten Pj aufgeteilt. Hierbei können gemäß Block 131 insbesondere beispielsweise Anteile pj · dL/dMW mit Gewichten pj und Σj pj = 1 als Komponenten Pj der Partition gewählt werden.In
In Schritt 140 wird aus jeder Komponente Pj des Gradienten dL/dMW unter Heranziehung der funktionalen Abhängigkeit der Ausgaben yi von Neuronen in der Eingangsschicht des neuronalen Netzwerks 1, die die Trainings-Beispiele x entgegennimmt, von den Parametern MW,i dieser Neuronen und den Trainings-Beispielen x ein Trainings-Beispiel
Die Parameter des neuronalen Netzwerks können insbesondere beispielsweise multiplikative Gewichte
Gemäß Block 143 kann die Rekonstruktion von einer zentralen Entität Q vorgenommen werden, die das neuronale Netzwerk 1 zum Zwecke des föderierten Trainings an eine Mehrzahl von Clients C verteilt. Dies geht dann damit einher, dass gemäß Block 132 der Gradient dL/dMW von einem Client C beim Training des neuronalen Netzwerks 1 auf einem Batch mit B Trainings-Beispielen x ermittelt und über diese B Trainings-Beispiele x aggregiert wird.According to block 143, the reconstruction can be carried out by a central entity Q, which distributes the neural network 1 to a plurality of clients C for the purpose of federated training. This is then accompanied by the fact that, according to block 132, the gradient dL/dM W is determined by a client C when training the neural network 1 on a batch with B training examples x and is aggregated over these B training examples x.
In Schritt 150 werden die erhaltenen Rekonstruktionen
In Schritt 160 wird die Partition in die Komponenten Pj auf das Ziel optimiert, dass bei erneuter Aufteilung des Gradienten dL/dMW der Kostenfunktion L und Rekonstruktion neuer Trainings-Beispiele
Gemäß Block 161 kann ein Gradient der Gütefunktion R zu Änderungen der Gewichte pj zurückpropagiert werden.According to block 161, a gradient of the quality function R can be propagated back to changes in the weights p j .
Gemäß Block 162 können die Gewichte pj mit aus Logits des neuronalen Netzwerks 1 gebildeten Softmax-Werten initialisiert werden.According to block 162, the weights p j can be initialized with softmax values formed from logits of the neural network 1.
In Schritt 170 werden die rekonstruierten Trainings-Beispiele
In Schritt 180 werden die daraufhin vom neuronalen Netzwerk 1 gelieferten Ausgaben 3 mit Soll-Ausgaben 3a verglichen.In
In Schritt 190 wird anhand des Ergebnisses dieses Vergleichs ermittelt, inwieweit das neuronale Netzwerk 1 hinreichend auf ungesehene Daten generalisiert. In dem in
Wenn das neuronale Netzwerk 1 hinreichend generalisiert (Wahrheitswert 1), werden dem neuronalen Netzwerk 1 in Schritt 200 Messdaten 2 zugeführt, die mit mindestens einem Sensor aufgenommen wurden.If the neural network 1 generalizes sufficiently (truth value 1), the neural network 1 is supplied in
In Schritt 210 wird aus der daraufhin vom neuronalen Netzwerk 1 gelieferten Ausgabe 3 ein Ansteuersignal 210a ermittelt.In
In Schritt 220 wird ein Fahrzeug 50, ein Fahrassistenzsystem 60, ein System 70 zur Qualitätskontrolle, ein System 80 zur Überwachung von Bereichen, und/oder ein System 90 zur medizinischen Bildgebung, mit dem Ansteuersignal 210a angesteuert.In
Die rekonstruierten Trainings-Beispiele
- • in
Schritt 240 eineDrift 5a des Verhaltens des neuronalen Netzwerks 1, und/oder eine Verschlechterung 5b des Verhaltens des neuronalen Netzwerks 1 bezüglich bisheriger Trainings-Beispiele x beim Weitertraining mit neuen Trainings-Beispielen x detektiert, und/oder - • in
Schritt 250ein Steuereingriff 6 in die Zusammenarbeit der zentralen Entität Q mit den Clients C vorgenommen.
- • in step 240 a
drift 5a of the behavior of the neural network 1, and/or adeterioration 5b of the behavior of the neural network 1 with respect to previous training examples x is detected during further training with new training examples x, and/or - • in step 250 a
control intervention 6 is made in the cooperation of the central entity Q with the clients C.
Gemäß Block 251 kann der Steuereingriff 6 beispielsweise beinhalten, zeitweise oder dauerhaft die von mindestens einem Client C gelieferten Gradienten dL/dMW unberücksichtigt zu lassen oder unterzugewichten, beispielsweise durch Herunterskalieren.According to block 251, the
Die zentrale Entität Q zerlegt den Gradienten dL/dMW in eine Partition aus Komponenten Pj mit j = 1, ..., B. Aus jeder Komponente Pj wird ein eigenes Trainings-Beispiel
Claims (16)
Priority Applications (3)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
DE102022208614.7A DE102022208614A1 (en) | 2022-08-19 | 2022-08-19 | Reconstruction of training examples in federated training of neural networks |
US18/447,445 US20240062073A1 (en) | 2022-08-19 | 2023-08-10 | Reconstruction of training examples in the federated training of neural networks |
CN202311044300.5A CN117592553A (en) | 2022-08-19 | 2023-08-18 | Reconstruction of training samples in neural network federal training |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
DE102022208614.7A DE102022208614A1 (en) | 2022-08-19 | 2022-08-19 | Reconstruction of training examples in federated training of neural networks |
Publications (1)
Publication Number | Publication Date |
---|---|
DE102022208614A1 true DE102022208614A1 (en) | 2024-02-22 |
Family
ID=89808891
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
DE102022208614.7A Pending DE102022208614A1 (en) | 2022-08-19 | 2022-08-19 | Reconstruction of training examples in federated training of neural networks |
Country Status (3)
Country | Link |
---|---|
US (1) | US20240062073A1 (en) |
CN (1) | CN117592553A (en) |
DE (1) | DE102022208614A1 (en) |
-
2022
- 2022-08-19 DE DE102022208614.7A patent/DE102022208614A1/en active Pending
-
2023
- 2023-08-10 US US18/447,445 patent/US20240062073A1/en active Pending
- 2023-08-18 CN CN202311044300.5A patent/CN117592553A/en active Pending
Non-Patent Citations (2)
Title |
---|
DAHLGAARD, Mads Emil [et al.]: Analysing the Influence of Attack Configurations on the Reconstruction of Medical Images in Federated Learning. arXiv preprint arXiv:2204.13808, 2022 |
LI, Zhaohua [et al.]: A Survey of Image Gradient Inversion Against Federated Learning. 14.01.2022. URL: https://www.techrxiv.org/articles/preprint/A_Survey_of_Image_Gradient_Inversion_Against_Federated_Learning/18254723 [abgerufen am 20.04.2023] |
Also Published As
Publication number | Publication date |
---|---|
US20240062073A1 (en) | 2024-02-22 |
CN117592553A (en) | 2024-02-23 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
DE102018128289B4 (en) | METHOD AND DEVICE FOR AUTONOMOUS SYSTEM PERFORMANCE AND CLASSIFICATION | |
DE102019204139A1 (en) | Training for artificial neural networks with better utilization of the learning data sets | |
DE102017219282A1 (en) | Method and device for automatically generating an artificial neural network | |
EP3748454B1 (en) | Method and device for automatically executing a control function of a vehicle | |
DE102017116016A1 (en) | A motor vehicle sensor device having a plurality of sensor units and a neural network for generating an integrated representation of an environment | |
DE102022208614A1 (en) | Reconstruction of training examples in federated training of neural networks | |
DE102019220196A1 (en) | Method of operating a vehicle | |
DE102019208233A1 (en) | Method and device for automatically executing a control function of a vehicle | |
DE102017219269A1 (en) | Classification with automatic selection of promising learning data | |
DE102019217300A1 (en) | Method for training an artificial neural network, computer program, storage medium, device, artificial neural network and application of the artificial neural network | |
DE102020122979A1 (en) | Method for providing a compressed, robust neural network and assistance device | |
EP3901713A1 (en) | Method and device for operating a technical system with optimal model | |
DE102020205542A1 (en) | Preparation of learning data sets with noisy labels for classifiers | |
DE102020206990A1 (en) | Device for processing sensor data and training methods | |
DE102019131639B4 (en) | System for providing an explanation data set for an AI module | |
DE102019213459A1 (en) | Method for compressing a neural network | |
DE102018112718A1 (en) | A method of enhancing the performance of a vehicle system having a neural network for controlling a vehicle component | |
DE102022209787A1 (en) | Method for training a Generative Adversarial Network | |
DE102021210566A1 (en) | Quantitative assessment of the uncertainty of statements from a classifier based on measurement data and several processing products of the same | |
DE202022103792U1 (en) | Device for determining an optimal architecture of an artificial neural network | |
DE102022206723A1 (en) | Assessment of the relevance of test cases for technical systems | |
DE202021103700U1 (en) | Device for generating an artificial neural network | |
DE102022206892A1 (en) | Method for determining an optimal architecture of an artificial neural network | |
DE102022212455A1 (en) | Method for training a machine learning algorithm | |
WO2023222794A1 (en) | Update of software of a vehicle on the basis of vehicle field data |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
R163 | Identified publications notified |