DE102022111402A1 - GENERATIVE DOMAIN ADAPTATION IN A NEURONAL NETWORK - Google Patents

GENERATIVE DOMAIN ADAPTATION IN A NEURONAL NETWORK Download PDF

Info

Publication number
DE102022111402A1
DE102022111402A1 DE102022111402.3A DE102022111402A DE102022111402A1 DE 102022111402 A1 DE102022111402 A1 DE 102022111402A1 DE 102022111402 A DE102022111402 A DE 102022111402A DE 102022111402 A1 DE102022111402 A1 DE 102022111402A1
Authority
DE
Germany
Prior art keywords
data
level
domain
neural network
target
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
Application number
DE102022111402.3A
Other languages
German (de)
Inventor
Praveen Narayanan
Nikita Jaipuria
Apurbaa MALLIK
Punarjay Chakravarty
Ganesh Kumar
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.)
Ford Global Technologies LLC
Original Assignee
Ford Global Technologies LLC
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 Ford Global Technologies LLC filed Critical Ford Global Technologies LLC
Priority to DE102022111402.3A priority Critical patent/DE102022111402A1/en
Publication of DE102022111402A1 publication Critical patent/DE102022111402A1/en
Pending legal-status Critical Current

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06NCOMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
    • G06N3/00Computing arrangements based on biological models
    • G06N3/02Neural networks
    • G06N3/04Architecture, e.g. interconnection topology
    • G06N3/044Recurrent networks, e.g. Hopfield networks
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06NCOMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
    • G06N3/00Computing arrangements based on biological models
    • G06N3/02Neural networks
    • G06N3/04Architecture, e.g. interconnection topology
    • G06N3/0464Convolutional networks [CNN, ConvNet]
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06NCOMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
    • G06N3/00Computing arrangements based on biological models
    • G06N3/02Neural networks
    • G06N3/04Architecture, e.g. interconnection topology
    • G06N3/048Activation functions
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06NCOMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
    • G06N3/00Computing arrangements based on biological models
    • G06N3/02Neural networks
    • G06N3/08Learning methods

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • Data Mining & Analysis (AREA)
  • General Health & Medical Sciences (AREA)
  • Biomedical Technology (AREA)
  • Biophysics (AREA)
  • Computational Linguistics (AREA)
  • Life Sciences & Earth Sciences (AREA)
  • Evolutionary Computation (AREA)
  • Artificial Intelligence (AREA)
  • Molecular Biology (AREA)
  • Computing Systems (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Mathematical Physics (AREA)
  • Software Systems (AREA)
  • Health & Medical Sciences (AREA)
  • Image Analysis (AREA)

Abstract

Ein System umfasst einen Computer, der einen Prozessor und einen Speicher beinhaltet. Der Speicher speichert Anweisungen, die durch den Prozessor ausführbar sind, um den Prozessor dazu zu veranlassen, eine Darstellung auf niedriger Ebene der Eingabequellendomänendaten zu erzeugen; eine Einbettung der Eingabequellendomänendaten zu erzeugen; einer Merkmalsdarstellung auf hoher Ebene von Merkmalen der Eingabequellendomänendaten zu erzeugen; Ausgabezieldomänendaten in der Zieldomäne, die eine Semantik beinhalten, die den Eingabequellendomänendaten entspricht, durch Verarbeiten der Merkmalsdarstellung auf hoher Ebene der Merkmale der Eingabequellendomänendaten unter Verwendung einer Domänendecodiererschicht des neuronalen Netzwerks auf niedriger Ebene, die Daten aus dem Ziel erzeugen, zu erzeugen; und eine Verlustfunktion zu modifizieren, sodass latente Attribute, die der Einbettung entsprechen, aus einer gleichen Wahrscheinlichkeitsverteilung ausgewählt werden.A system includes a computer that includes a processor and memory. The memory stores instructions executable by the processor to cause the processor to generate a low-level representation of the input source domain data; create an embedding of the input source domain data; generate a high-level feature representation of features of the input source domain data; generate output target domain data in the target domain containing semantics corresponding to the input source domain data by processing the high-level feature representation of the features of the input source domain data using a low-level domain decoder layer of the neural network that generates data from the target; and modify a loss function so that latent attributes corresponding to the embedding are selected from an equal probability distribution.

Description

GEBIET DER TECHNIKFIELD OF TECHNOLOGY

Die Offenbarung betrifft neuronale Netzwerke in Fahrzeugen.The disclosure concerns neural networks in vehicles.

ALLGEMEINER STAND DER TECHNIKGENERAL STATE OF THE ART

Neuronale Netzwerke sind Maschinenlernmodelle, die eine oder mehrere Schichten von nicht linearen Einheiten einsetzen, um eine Ausgabe für eine empfangene Eingabe vorherzusagen. Einige neuronale Netzwerke beinhalten zusätzlich zu einer Ausgabeschicht eine oder mehrere verborgene Schichten. Die Ausgabe jeder verborgenen Schicht wird als Eingabe für die nächste Schicht in dem Netzwerk verwendet, d. h. die nächste verborgene Schicht oder die Ausgabeschicht. Jede Schicht des Netzwerks erzeugt eine Ausgabe aus einer empfangenen Eingabe gemäß aktuellen Werten eines jeweiligen Satzes von Gewichtungen.Neural networks are machine learning models that employ one or more layers of nonlinear units to predict an output for a received input. Some neural networks include one or more hidden layers in addition to an output layer. The output of each hidden layer is used as input to the next layer in the network, i.e. H. the next hidden layer or the output layer. Each layer of the network produces an output from a received input according to current values of a respective set of weights.

KURZDARSTELLUNGSHORT PRESENTATION

Neuronale Netzwerke werden für viele Aufgaben verwendet, mit denen autonome Fahrzeuge betrieben werden. Zum Beispiel kann ein neuronales Netzwerk Bilddaten eingeben, die durch einen Fahrzeugsensor erfasst wurden, um Objekte in einer Umgebung um ein Fahrzeug zu bestimmen, und die Daten bezüglich der Objekte verwenden, um einen Fahrzeugweg zu bestimmen, auf dem das Fahrzeug betrieben werden soll. Neuronale Netzwerke können auch dazu trainiert werden, Befehle zu bestimmen, die von einem Insassen eines Fahrzeugs gesprochen werden, und das Fahrzeug auf Grundlage des bestimmten Befehls zu betreiben. Gesprochene Befehle können zum Beispiel gesprochene Formulierungen beinhalten, wie etwa „fahren“, „anhalten“ und „links abbiegen“. Neuronale Netzwerke können auch dazu trainiert werden, Videodaten zu verarbeiten, um zum Beispiel eine reale Position für ein Fahrzeug auf Grundlage von visueller Odometrie zu bestimmen. Die visuelle Odometrie ist eine Technik zum Bestimmen einer Position eines Fahrzeugs auf Grundlage eines Verarbeitens einer Sequenz von Videobildern, um eine Fahrzeugposition auf Grundlage von Änderungen der Positionen bestimmter Merkmale in der Sequenz von Videobildern zu bestimmen. Merkmale sind Anordnungen von Pixelwerten, die in zwei oder mehr Videobildern bestimmt werden können. Neuronale Netzwerke können trainiert werden, um diese Aufgaben zu erfüllen, indem große Mengen an Trainingsdaten gesammelt werden, die Beispiele für Eingabedaten und entsprechende Ground Truth beinhalten. Die Eingabedaten können Bilder von Umgebungen um Fahrzeuge sein, die Objekte, wie etwa andere Fahrzeuge und Fußgänger, beinhalten. In anderen Beispielen können Trainingsdaten Befehle beinhalten, die von einer Vielzahl von unterschiedlichen Personen gesprochen werden, die unterschiedliche Stimmeigenschaften aufweisen. Ground Truth sind Daten, die der korrekten Ausgabe entsprechen, die von einem neuronalen Netzwerk gewünscht wird, und von einer Quelle erfasst wurden, die von dem neuronalen Netzwerk unabhängig ist. In dem Beispiel von Bilddaten können menschliche Beobachter die Trainingsbilder betrachten und die Identität und die Position von Objekten in den Bilddaten bestimmen. In dem Beispiel von gesprochenen Befehlen können menschliche Zuhörer die gesprochenen Befehle anhören und den richtigen Fahrzeugbefehl bestimmen, der dem gesprochenen Befehl entspricht.Neural networks are used for many tasks that power autonomous vehicles. For example, a neural network may input image data acquired by a vehicle sensor to determine objects in an environment around a vehicle and use the data regarding the objects to determine a vehicle path over which the vehicle should operate. Neural networks can also be trained to determine commands spoken by an occupant of a vehicle and operate the vehicle based on the specific command. For example, spoken commands may include spoken phrases such as “drive,” “stop,” and “turn left.” Neural networks can also be trained to process video data, for example to determine a real-world position for a vehicle based on visual odometry. Visual odometry is a technique for determining a position of a vehicle based on processing a sequence of video images to determine a vehicle position based on changes in the positions of certain features in the sequence of video images. Features are arrangements of pixel values that can be determined in two or more video images. Neural networks can be trained to accomplish these tasks by collecting large amounts of training data that includes examples of input data and corresponding ground truth. The input data may be images of environments around vehicles that include objects such as other vehicles and pedestrians. In other examples, training data may include commands spoken by a variety of different people who have different vocal characteristics. Ground truth is data that corresponds to the correct output desired by a neural network and has been acquired from a source independent of the neural network. In the image data example, human observers can view the training images and determine the identity and location of objects in the image data. In the example of spoken commands, human listeners can listen to the spoken commands and determine the correct vehicle command that corresponds to the spoken command.

Ein Problem bei Trainingsdaten besteht darin, dass eine große Anzahl, typischerweise größer als 1000, von Trainingsbeispielen erforderlich sein kann, um ein neuronales Netzwerk zu trainieren. Da jedes Trainingsbeispiel eine entsprechende Ground Truth erfordert, kann das Zusammenstellen von Trainingsdatensätzen sehr teuer sein und für seine Umsetzung viele Personenstunden menschlicher Arbeit erfordern. Zusätzliche neuronale Netzwerke können trainiert werden, um simulierte Trainingsdaten einschließlich Ground Truth aus einer kleineren Anzahl von realen Beispielen zu erzeugen und dadurch die Zeit und die Kosten zu reduzieren, die erforderlich sind, um Trainingsdatensätze für neuronale Netzwerke zu erzeugen. Auf diese Weise erzeugte Trainingsdatensätze sind nur nützlich, wenn die simulierten Trainingsdaten genau den realen Daten entsprechen, die zum Erzeugen der simulierten Trainingsdaten verwendet werden. In dieser Schrift erörterte Techniken verbessern den Prozess des Erzeugens von Trainingsdatensätzen unter Verwendung neuronaler Netzwerke, indem Techniken zum Erzeugen genauer simulierter Trainingsdaten auf Grundlage von begrenzten Mengen an eingegebenen realen Trainingsdaten verbessert werden, wodurch die Zeit und die Kosten reduziert werden, die zum Erzeugen von Trainingsdatensätzen für das Training neuronaler Netzwerke erforderlich sind. In dieser Schrift beschriebene Techniken können die Erzeugung von Trainingsdatensätzen durch neuronale Netzwerke verbessern, indem sie die Bestimmung von Verlustfunktionen verbessern. Verlustfunktionen werden beim Trainieren von neuronalen Netzwerken verwendet, indem erzeugte Ergebnisse mit Ground Truth verglichen werden, um Unterschiede zwischen dem erzeugten Ergebnis und der entsprechenden Ground Truth zu bestimmen.One problem with training data is that a large number, typically greater than 1000, of training examples may be required to train a neural network. Because each training example requires a corresponding ground truth, assembling training datasets can be very expensive and require many person-hours of human labor to implement. Additional neural networks can be trained to generate simulated training data including ground truth from a smaller number of real examples, thereby reducing the time and cost required to generate neural network training data sets. Training data sets generated in this way are only useful if the simulated training data exactly matches the real data used to generate the simulated training data. Techniques discussed in this paper improve the process of generating training data sets using neural networks by improving techniques for generating accurate simulated training data based on limited amounts of input real training data, thereby reducing the time and cost required to generate training data sets are required for training neural networks. Techniques described in this paper can improve the generation of training data sets by neural networks by improving the determination of loss functions. Loss functions are used in training neural networks by comparing generated results with ground truth to determine differences between the generated result and the corresponding ground truth.

Ein System umfasst einen Computer, der einen Prozessor und einen Speicher beinhaltet. Der Speicher speichert Anweisungen, die durch den Prozessor ausführbar sind, um den Prozessor dazu zu veranlassen, eine Darstellung auf niedriger Ebene der Eingabequellendomänendaten durch Verarbeiten von Quellendomänendaten unter Verwendung einer Quellendomänencodiererschicht eines neuronalen Netzwerks auf niedriger Ebene, die Daten aus der Quellendomäne entspricht, zu erzeugen, um eine Darstellung auf niedriger Ebene der Eingabequellendomänendaten zu erzeugen; eine Einbettung der Eingabequellendomänendaten durch Verarbeiten der Darstellung auf niedriger Ebene unter Verwendung einer Codiererschicht des neuronalen Netzwerks auf hoher Ebene, die von Daten aus der Quellen- und Zieldomäne gemeinsam genutzt wird, zu erzeugen; eine Merkmalsdarstellung auf hoher Ebene von Merkmalen der Eingabequellendomänendaten durch Verarbeiten der Einbettung des Eingabequellendomänenbildes unter Verwendung einer Decodiererschicht des neuronalen Netzwerks auf hoher Ebene, die von Daten aus der Quellen- und Zieldomäne gemeinsam genutzt wird, zu erzeugen, um eine Merkmalsdarstellung auf hoher Ebene von Merkmalen der Eingabequellendomänendaten zu erzeugen; Ausgabezieldomänendaten in der Zieldomäne, die eine Semantik beinhalten, die den Eingabequellendomänendaten entspricht, durch Verarbeiten der Merkmalsdarstellung auf hoher Ebene der Merkmale der Eingabequellendomänendaten unter Verwendung einer Domänendecodiererschicht des neuronalen Netzwerks auf niedriger Ebene zu erzeugen, die Daten aus dem Ziel erzeugen; und eine Verlustfunktion zu modifizieren, sodass latente Attribute, die der Einbettung entsprechen, aus einer gleichen Wahrscheinlichkeitsverteilung ausgewählt werden.A system includes a computer that includes a processor and memory. The memory stores instructions executable by the processor to cause the processor to generate a low-level representation of the input source domain data by processing source domain data using a low-level source domain encoder layer of a neural network corresponding to data from the source domain to generate a low-level representation of the input source domain data; generate an embedding of the input source domain data by processing the low-level representation using a high-level encoder layer of the neural network shared by data from the source and target domains; to generate a high-level feature representation of features of the input source domain data by processing the embedding of the input source domain image using a high-level decoder layer of the neural network shared by data from the source and target domains to produce a high-level feature representation of features generate the input source domain data; generate output target domain data in the target domain containing semantics corresponding to the input source domain data by processing the high-level feature representation of the features of the input source domain data using a low-level domain decoder layer of the neural network that generates data from the target; and modify a loss function so that latent attributes corresponding to the embedding are selected from an equal probability distribution.

In anderen Merkmalen ist der Prozessor ferner zu Folgendem programmiert: Modifizieren der Verlustfunktion durch Berechnen einer maximalen mittleren Abweichung zwischen einem ersten latenten Attribut, das einer Quellendomäne entspricht, und einem zweiten latenten Attribut, das einer Zieldomäne entspricht.In other features, the processor is further programmed to: modify the loss function by calculating a maximum mean deviation between a first latent attribute corresponding to a source domain and a second latent attribute corresponding to a target domain.

In anderen Merkmalen ist der Prozessor ferner zu Folgendem programmiert: Modifizieren der Verlustfunktion auf Grundlage einer Vorhersage von einem Diskriminator, wobei die Vorhersage eine Domäne angibt, die einem latenten Attribut entspricht.In other features, the processor is further programmed to: modify the loss function based on a prediction from a discriminator, the prediction indicating a domain corresponding to a latent attribute.

In anderen Merkmalen umfasst der Diskriminator eine oder mehrere Faltungsschichten, eine oder mehrere Batch-Normalisierungsschichten und eine oder mehrere Schichten einer gleichgerichteten linearen Einheit.In other features, the discriminator includes one or more convolution layers, one or more batch normalization layers, and one or more rectified linear unit layers.

In anderen Merkmalen umfasst eine letzte Schicht des Diskriminators eine Softmax-Schicht.In other features, a final layer of the discriminator includes a softmax layer.

In anderen Merkmalen erzeugt der Diskriminator einen mehrdimensionalen Vektor, der die Vorhersage darstellt.In other features, the discriminator produces a multidimensional vector representing the prediction.

In anderen Merkmalen umfasst der mehrdimensionale Vektor einen vierdimensionalen Vektor, der vier Domänen entspricht.In other features, the multidimensional vector includes a four-dimensional vector corresponding to four domains.

In anderen Merkmalen umfasst der mehrdimensionale Vektor einen zweidimensionalen Vektor, der zwei Domänen entspricht.In other features, the multidimensional vector includes a two-dimensional vector corresponding to two domains.

In anderen Merkmalen umfasst eine Verlustfunktion für den Diskriminator Folgendes: LD = Z̃AAlog D(ZAA)+Z̃BBlog D(ZBB) + Z̃ABlog D(ZAB)+Z̃BAlog D(ZBA), wobei LD als die Verlustfunktion definiert ist, Z̃AA, Z̃BB, Z̃AB, Z̃BA als Kennzeichnungen für die entsprechende Domäne definiert sind, log D als eine Schätzung definiert ist, dass die Wahrscheinlichkeit für das latente Attribut einer spezifischen Domäne entspricht, und ZAA, ZAB, ZBA, ZBB als vorhergesagte Domänenausgaben definiert sind.In other features, a loss function for the discriminator includes: L D = Z̃ AA log D(Z AA )+Z̃ BB log D(Z BB ) + Z̃ AB log D(Z AB )+Z̃ BA log D(Z BA ), where L D is defined as the loss function, Z̃ AA , Z̃ BB , Z̃ AB , Z̃ BA are defined as labels for the corresponding domain, log D is defined as an estimate that the probability for the latent attribute corresponds to a specific domain, and Z AA , Z AB , Z BA , Z BB are defined as predicted domain outputs.

In anderen Merkmalen ist der Prozessor ferner zu Folgendem programmiert: Erzeugen einer Darstellung auf niedriger Ebene der Eingabezieldomänendaten durch Verarbeiten der Eingabezieldomänendaten unter Verwendung einer Zieldomänencodiererschicht eines neuronalen Netzwerks auf niedriger Ebene, die spezifisch für Daten aus der Zieldomäne ist; Erzeugen einer Einbettung der Eingabezieldomänendaten durch Verarbeiten der Darstellung auf niedriger Ebene unter Verwendung einer Codiererschicht des neuronalen Netzwerks auf hoher Ebene, die von Daten aus der Quellen- und Zieldomäne gemeinsam genutzt wird; Erzeugen einer Merkmalsdarstellung auf hoher Ebene von Merkmalen der Eingabezieldomänendaten durch Verarbeiten der Einbettung des Eingabezieldomänenbildes unter Verwendung der Decodiererschicht des neuronalen Netzwerks auf hoher Ebene, die von Daten aus der Quellen- und Zieldomäne gemeinsam genutzt wird; und Erzeugen von Ausgabequellendomänendaten aus der Quellendomäne, die eine Semantik beinhalten, die den Eingabezieldomänendaten entspricht, durch Verarbeiten der Merkmalsdarstellung auf hoher Ebene der Merkmale des Zielquellendomänenbilds unter Verwendung einer Quellendomänendecodiererschicht des neuronalen Netzwerks auf niedriger Ebene, die spezifisch für Daten aus der Quellendomäne ist.In other features, the processor is further programmed to: generate a low-level representation of the input target domain data by processing the input target domain data using a target domain low-level neural network encoder layer specific to data from the target domain; generating an embedding of the input target domain data by processing the low-level representation using a high-level encoder layer of the neural network shared by data from the source and target domains; generating a high-level feature representation of features of the input target domain data by processing the embedding of the input target domain image using the high-level decoder layer of the neural network shared by data from the source and target domains; and generating output source domain data from the source domain that includes semantics corresponding to the input target domain data by high processing the feature representation Level of features of the target source domain image using a low-level source domain decoder layer of the neural network specific to data from the source domain.

Ein Verfahren umfasst Folgendes: Erzeugen einer Darstellung auf niedriger Ebene der Eingabequellendomänendaten durch Verarbeiten von Quellendomänendaten unter Verwendung einer Quellendomänencodiererschicht eines neuronalen Netzwerks auf niedriger Ebene, die Daten aus der Quellendomäne entspricht, um eine Darstellung auf niedriger Ebene der Eingabequellendomänendaten zu erzeugen; Erzeugen einer Einbettung der Eingabequellendomänendaten durch Verarbeiten der Darstellung auf niedriger Ebene unter Verwendung einer Codiererschicht des neuronalen Netzwerks auf hoher Ebene, die von Daten aus der Quellen- und Zieldomäne gemeinsam genutzt wird; Erzeugen einer Merkmalsdarstellung auf hoher Ebene von Merkmalen der Eingabequellendomänendaten durch Verarbeiten der Einbettung des Eingabequellendomänenbildes unter Verwendung einer Decodiererschicht des neuronalen Netzwerks auf hoher Ebene, die von Daten aus der Quellen- und Zieldomäne gemeinsam genutzt wird, um eine Merkmalsdarstellung auf hoher Ebene von Merkmalen der Eingabequellendomänendaten zu erzeugen; Erzeugen von Ausgabezieldomänendaten in der Zieldomäne, die eine Semantik beinhalten, die den Eingabequellendomänendaten entspricht, durch Verarbeiten der Merkmalsdarstellung auf hoher Ebene der Merkmale der Eingabequellendomänendaten unter Verwendung einer Domänendecodiererschicht des neuronalen Netzwerks auf niedriger Ebene, die Daten aus dem Ziel erzeugen; und Erzeugen von Ausgabequellendomänendaten aus der Quellendomäne, die eine Semantik beinhalten, die den Eingabezieldomänendaten entsprechen, durch Verarbeiten der Merkmalsdarstellung auf hoher Ebene der Merkmale des Zielquellendomänenbilds unter Verwendung einer Quellendomänendecodiererschicht des neuronalen Netzwerks auf niedriger Ebene, die spezifisch für Daten aus der Quellendomäne ist.A method includes: generating a low-level representation of the input source domain data by processing source domain data using a low-level source domain encoder layer of a neural network corresponding to data from the source domain to generate a low-level representation of the input source domain data; generating an embedding of the input source domain data by processing the low-level representation using a high-level encoder layer of the neural network shared by data from the source and target domains; Generate a high-level feature representation of features of the input source domain data by processing the embedding of the input source domain image using a high-level decoder layer of the neural network shared by data from the source and target domains to produce a high-level feature representation of features of the input source domain data to create; generating output target domain data in the target domain that includes semantics corresponding to the input source domain data by processing the high-level feature representation of the features of the input source domain data using a low-level domain decoder layer of the neural network that generates data from the target; and generating output source domain data from the source domain that includes semantics corresponding to the input target domain data by processing the high-level feature representation of the features of the target source domain image using a low-level source domain decoder layer of the neural network specific to data from the source domain.

In anderen Merkmalen beinhaltet das Verfahren Folgendes: Modifizieren der Verlustfunktion durch Berechnen einer maximalen mittleren Abweichung zwischen einem ersten latenten Attribut, das einer Quellendomäne entspricht, und einem zweiten latenten Attribut, das einer Zieldomäne entspricht.In other features, the method includes: modifying the loss function by calculating a maximum mean deviation between a first latent attribute corresponding to a source domain and a second latent attribute corresponding to a target domain.

In anderen Merkmalen beinhaltet das Verfahren Folgendes: Modifizieren der Verlustfunktion auf Grundlage einer Vorhersage von einem Diskriminator, wobei die Vorhersage eine Domäne angibt, die einem latenten Attribut entspricht.In other features, the method includes: modifying the loss function based on a prediction from a discriminator, the prediction indicating a domain corresponding to a latent attribute.

In anderen Merkmalen umfasst der Diskriminator eine oder mehrere Faltungsschichten, eine oder mehrere Batch-Normalisierungsschichten und eine oder mehrere Schichten einer gleichgerichteten linearen Einheit.In other features, the discriminator includes one or more convolution layers, one or more batch normalization layers, and one or more rectified linear unit layers.

In anderen Merkmalen umfasst eine letzte Schicht des Diskriminators eine Softmax-Schicht.In other features, a final layer of the discriminator includes a softmax layer.

In anderen Merkmalen erzeugt der Diskriminator einen mehrdimensionalen Vektor, der die Vorhersage darstellt.In other features, the discriminator produces a multidimensional vector representing the prediction.

In anderen Merkmalen umfasst der mehrdimensionale Vektor einen vierdimensionalen Vektor, der vier Domänen entspricht.In other features, the multidimensional vector includes a four-dimensional vector corresponding to four domains.

In anderen Merkmalen umfasst der mehrdimensionale Vektor einen zweidimensionalen Vektor, der zwei Domänen entspricht.In other features, the multidimensional vector includes a two-dimensional vector corresponding to two domains.

In anderen Merkmalen umfasst eine Verlustfunktion des Diskriminators Folgendes: LD = Z̃AAlog D(ZAA)+Z̃BBlog D(ZBB) + Z̃ABlog D(ZAB)+Z̃BAlog D(ZBA), wobei LD als die Verlustfunktion definiert ist, Z̃AA , Z̃BB , Z̃AB , Z̃BA als Kennzeichnungen für die entsprechende Domäne definiert sind, log D als eine Schätzung definiert ist, dass die Wahrscheinlichkeit für das latente Attribut einer spezifischen Domäne entspricht, und ZAA, ZAB, ZBA, ZBB als vorhergesagte Domänenausgaben definiert sind.In other features, a loss function of the discriminator includes: L D = Z̃ AA log D(Z AA )+Z̃ BB log D(Z BB ) + Z̃ AB log D(Z AB )+Z̃ BA log D(Z BA ), where L D is defined as the loss function, Z̃ AA , Z̃ BB , Z̃ AB , Z̃ BA are defined as labels for the corresponding domain, log D is defined as an estimate that the probability for the latent attribute corresponds to a specific domain, and Z AA , Z AB , Z BA , Z BB are defined as predicted domain outputs.

In anderen Merkmalen beinhaltet das Verfahren Erzeugen einer Darstellung auf niedriger Ebene der Eingabezieldomänendaten durch Verarbeiten der Eingabezieldomänendaten unter Verwendung einer Zieldomänencodiererschicht eines neuronalen Netzwerks auf niedriger Ebene, die spezifisch für Daten aus der Zieldomäne ist; Erzeugen einer Einbettung der Eingabezieldomänendaten durch Verarbeiten der Darstellung auf niedriger Ebene unter Verwendung einer Codiererschicht des neuronalen Netzwerks auf hoher Ebene, die von Daten aus der Quellen- und Zieldomäne gemeinsam genutzt wird; Erzeugen einer Merkmalsdarstellung auf hoher Ebene von Merkmalen der Eingabezieldomänendaten durch Verarbeiten der Einbettung des Eingabezieldomänenbildes unter Verwendung der Decodiererschicht des neuronalen Netzwerks auf hoher Ebene, die von Daten aus der Quellen- und Zieldomäne gemeinsam genutzt wird; und Erzeugen von Ausgabequellendomänendaten aus der Quellendomäne, die eine Semantik beinhalten, die den Eingabezieldomänendaten entspricht, durch Verarbeiten der Merkmalsdarstellung auf hoher Ebene der Merkmale des Zielquellendomänenbilds unter Verwendung einer Quellendomänendecodiererschicht des neuronalen Netzwerks auf niedriger Ebene, die spezifisch für Daten aus der Quellendomäne ist.In other features, the method includes generating a low-level representation of the input target domain data by processing the input target domain data using a target domain low-level neural network encoder layer specific to data from the target domain; generating an embedding of the input target domain data by processing the low-level representation using a high-level encoder layer of the neural network shared by data from the source and target domains; Generating a high-level feature representation of features of the input target domain data by processing the embedding of the input target domain image using the high-level decoder layer of the neural network Layer shared by data from the source and target domains; and generating output source domain data from the source domain that includes semantics corresponding to the input target domain data by processing the high-level feature representation of the features of the target source domain image using a low-level source domain decoder layer of the neural network specific to data from the source domain.

Die vorliegende Offenbarung beschreibt ein Domänenanpassungsnetzwerk, das Daten, wie etwa ein Bild, aus einer Quellendomäne empfangen kann und die Daten in Daten aus einer Zieldomäne umwandelt, die eine ähnliche Semantik wie die Quellendomänendaten aufweisen, z. B. werden semantische Inhalte innerhalb eines Bildes beibehalten. Semantik bezieht sich im vorliegenden Zusammenhang auf Daten, wie etwa Objekte innerhalb eines Bildes, die zwischen den Bildern beibehalten werden sollen. Im Allgemeinen unterscheidet sich die Quellendomäne, z. B. ein Tagesbild oder ein Bild einer virtuellen Umgebung, von der Zieldomäne, z. B. einem Nachtbild oder einem realen Bild. Zum Beispiel unterscheidet sich eine Verteilung von Pixelwerten in Bildern aus der Quellendomäne von der Verteilung von Pixelwerten in Bildern aus der Zieldomäne. Somit können Bilder, welche die gleiche Semantik aufweisen, unterschiedlich aussehen, wenn ein Bild aus der Quellendomäne und das andere Bild aus der Zieldomäne stammt. Zum Beispiel kann es sich bei der Quellendomäne um Bilder einer virtuellen Umgebung handeln, die eine reale Umgebung simuliert, und kann es sich bei der Zieldomäne um Bilder der realen Umgebung handeln.The present disclosure describes a domain adaptation network that can receive data, such as an image, from a source domain and transforms the data into data from a target domain that has similar semantics to the source domain data, e.g. B. semantic content is retained within an image. Semantics, in this context, refers to data, such as objects within an image, that should be maintained between images. Generally the source domain is different, e.g. B. a daily image or an image of a virtual environment, from the target domain, e.g. B. a night picture or a real picture. For example, a distribution of pixel values in images from the source domain is different from the distribution of pixel values in images from the target domain. Thus, images that have the same semantics may look different if one image comes from the source domain and the other image comes from the target domain. For example, the source domain may be images of a virtual environment that simulates a real environment and the target domain may be images of the real environment.

Quellendomänenbilder können Bilder einer virtuellen Umgebung sein, die eine reale Umgebung simuliert, mit der ein autonomes oder halbautonomes Fahrzeug interagieren soll, während die Zieldomänenbilder Bilder der realen Umgebung sein können, wie sie von dem Fahrzeug aufgenommen wurden. Während des Trainings wird eine Verlustfunktion verwendet, um eine oder mehrere Gewichtungen des Domänenanpassungsnetzwerks zu aktualisieren. Wie in dieser Schrift ausführlicher beschrieben, kann eine Verlustfunktion derart modifiziert werden, dass latente Attribute einer Einbettung aus einer gleichen Wahrscheinlichkeitsverteilung ausgewählt werden, um realistischere Daten in der Zieldomäne zu erzeugen.Source domain images may be images of a virtual environment that simulates a real environment with which an autonomous or semi-autonomous vehicle is intended to interact, while the target domain images may be images of the real environment as captured by the vehicle. During training, a loss function is used to update one or more weights of the domain adaptation network. As described in more detail herein, a loss function can be modified to select latent attributes of an embedding from an equal probability distribution to produce more realistic data in the target domain.

Durch Umwandeln von Quellendomänenbildern in Zieldomänenbilder können die Zieldomänenbilder verwendet werden, um eine Steuerrichtlinie für das Fahrzeug zu entwickeln, oder während des Trainierens eines neuronalen Netzwerks, das verwendet wird, um durch das Fahrzeug durchzuführende Handlungen auszuwählen. Somit kann eine Leistung des Fahrzeugs in der realen Umgebung verbessert werden, indem das neuronale Netzwerk und/oder die Steuerrichtlinie zusätzlichen Situationen ausgesetzt wird/werden, die in einer virtuellen Umgebung erzeugt werden.By converting source domain images into target domain images, the target domain images can be used to develop a control policy for the vehicle or while training a neural network used to select actions to be performed by the vehicle. Thus, performance of the vehicle in the real environment can be improved by exposing the neural network and/or the control policy to additional situations generated in a virtual environment.

KURZE BESCHREIBUNG DER ZEICHNUNGENBRIEF DESCRIPTION OF THE DRAWINGS

  • 1 ist ein Diagramm eines beispielhaften Fahrzeugsystems. 1 is a diagram of an example vehicle system.
  • 2 ist ein Diagramm eines beispielhaften Servers. 2 is a diagram of an example server.
  • 3 ist ein Diagramm eines beispielhaften Domänenübertragungsnetzwerkes. 3 is a diagram of an exemplary domain communications network.
  • 4 ist ein weiteres Diagramm des beispielhaften Domänenübertragungsnetzwerkes. 4 is another diagram of the example domain transfer network.
  • 5 ist ein weiteres Diagramm des beispielhaften Domänenübertragungsnetzwerkes, das einen Diskriminator beinhaltet. 5 is another diagram of the example domain transfer network that includes a discriminator.
  • Die 6A bis 6D sind Diagramme eines beispielhaften Diskriminators.The 6A until 6D are diagrams of an example discriminator.
  • 7 ist ein Diagramm, das beispielhafte Schichten des Diskriminators veranschaulicht. 7 is a diagram illustrating example layers of the discriminator.
  • 8 ist ein Diagramm eines beispielhaften tiefen neuronalen Netzwerks. 8th is a diagram of an example deep neural network.
  • 9 ist ein Ablaufdiagramm, das einen beispielhaften Prozess zum Erzeugen von Zieldomänendaten aus Quellendomänendaten veranschaulicht. 9 is a flowchart that illustrates an example process for generating target domain data from source domain data.
  • 10 ist ein Ablaufdiagramm, das einen beispielhaften Prozess zum Erzeugen von Quellendomänendaten aus Zieldomänendaten veranschaulicht. 10 is a flowchart that illustrates an example process for generating source domain data from target domain data.

DETAILLIERTE BESCHREIBUNGDETAILED DESCRIPTION

1 ist ein Blockdiagramm eines beispielhaften Domänenübertragungsnetzwerks 300 zum Bestimmen und Übertragen einer Wegempfehlung für ein oder mehrere Fahrzeuge. Das Domänenübertragungsnetzwerk 300 beinhaltet ein Fahrzeug 105, bei dem es sich um ein Landfahrzeug, wie etwa ein Auto, einen Lastwagen usw., handelt. Das Fahrzeug 105 beinhaltet einen Computer 110, Fahrzeugsensoren 115, Betätigungselemente 120 zum Betätigen verschiedener Fahrzeugkomponenten 125 und ein Fahrzeugkommunikationsmodul 130. Über ein Kommunikationsnetzwerk 135 ermöglicht das Kommunikationsmodul 130, dass der Computer 110 mit einem Server 145 kommuniziert. Das Domänenübertragungsnetzwerk 300 beinhaltet zudem eine straßenseitige Vorrichtung 150, die über das Kommunikationsnetzwerk 135 mit dem Server 145 und dem Fahrzeug 105 kommunizieren kann, und Validierungsvorrichtungen 155. 1 is a block diagram of an example domain communications network 300 for determining and transmitting a route recommendation for one or more vehicles. The domain communications network 300 includes a vehicle 105, which is a land vehicle such as a car, a truck, etc. The vehicle 105 includes a computer 110, vehicle sensors 115, actuators transmission elements 120 for actuating various vehicle components 125 and a vehicle communication module 130. The communication module 130 enables the computer 110 to communicate with a server 145 via a communication network 135. The domain communication network 300 also includes a roadside device 150, which can communicate with the server 145 and the vehicle 105 via the communication network 135, and validation devices 155.

Der Computer 110 beinhaltet einen Prozessor und einen Speicher. Der Speicher beinhaltet eine oder mehrere Formen von computerlesbaren Medien und speichert Anweisungen, die durch den Computer 110 zum Durchführen verschiedener Vorgänge, einschließlich der in dieser Schrift offenbarten, ausführbar sind.The computer 110 includes a processor and memory. Memory includes one or more forms of computer-readable media and stores instructions executable by computer 110 to perform various operations, including those disclosed herein.

Der Computer 110 kann ein Fahrzeug 105 in einem autonomen, einem halbautonomen Modus oder einem nicht autonomen (manuellen) Modus betreiben. Für die Zwecke dieser Offenbarung ist ein autonomer Modus als einer definiert, bei dem jedes von Antrieb, Bremsung und Lenkung des Fahrzeugs 105 durch den Computer 110 gesteuert wird; in einem teilautonomen Modus steuert der Computer 110 eines oder zwei von Antrieb, Bremsung und Lenkung des Fahrzeugs 105; in einem nicht autonomen Modus steuert ein menschlicher Fahrzeugführer jedes von Antrieb, Bremsung und Lenkung des Fahrzeugs 105.The computer 110 may operate a vehicle 105 in an autonomous, semi-autonomous mode, or a non-autonomous (manual) mode. For purposes of this disclosure, an autonomous mode is defined as one in which each of the propulsion, braking, and steering of the vehicle 105 is controlled by the computer 110; in a semi-autonomous mode, the computer 110 controls one or two of the propulsion, braking and steering of the vehicle 105; In a non-autonomous mode, a human driver controls each of the propulsion, braking and steering of the vehicle 105.

Der Computer 110 kann eine Programmierung zum Betreiben eines oder mehrerer von Bremsen, Antrieb (z. B. Steuern der Beschleunigung in dem Fahrzeug durch Steuern eines oder mehrere von einer Brennkraftmaschine, einem Elektromotor, einem Hybridmotor usw.), Lenkung, Klimasteuerung, Innen- und/oder Außenbeleuchtung usw. des Fahrzeugs 105 und zum Bestimmen, ob und wann der Computer 110 derartige Vorgänge anstelle eines menschlichen Fahrzeugführers steuern soll, beinhalten. Des Weiteren kann der Computer 110 dazu programmiert sein, zu bestimmen, ob und wann ein menschlicher Fahrzeugführer derartige Vorgänge steuern soll.The computer 110 may include programming to operate one or more of brakes, propulsion (e.g., controlling acceleration in the vehicle by controlling one or more of an internal combustion engine, an electric motor, a hybrid motor, etc.), steering, climate control, interior and/or exterior lighting, etc. of the vehicle 105 and to determine if and when the computer 110 should control such operations instead of a human driver. Furthermore, the computer 110 may be programmed to determine whether and when a human driver should control such operations.

Der Computer 110 kann mehr als einen Prozessor, der z. B. in elektronischen Steuereinheiten (electronic controller units - ECUs) oder dergleichen beinhaltet ist, die in dem Fahrzeug 105 zum Überwachen und/oder Steuern verschiedener Fahrzeugkomponenten 125 beinhaltet sind, z. B. eine Antriebsstrangsteuerung, eine Bremssteuerung, eine Lenkungssteuerung usw., beinhalten oder kommunikativ an diese gekoppelt sein, z. B. über das Kommunikationsmodul 130 des Fahrzeugs 105, wie nachstehend ausführlicher beschrieben. Ferner kann der Computer 110 über das Kommunikationsmodul 130 des Fahrzeugs 105 mit einem Navigationssystem kommunizieren, welches das globale Positionsbestimmungssystem (GPS) verwendet. Als ein Beispiel kann der Computer 110 Standortdaten des Fahrzeugs 105 anfordern und empfangen. Die Standortdaten können in einer bekannten Form vorliegen, z. B. in Geokoordinaten (Breiten- und Längenkoordinaten).The computer 110 can have more than one processor, e.g. B. included in electronic controller units (ECUs) or the like, which are included in the vehicle 105 for monitoring and / or controlling various vehicle components 125, e.g. B. a powertrain control, a brake control, a steering control, etc., include or be communicatively coupled to these, e.g. B. via the communication module 130 of the vehicle 105, as described in more detail below. Furthermore, the computer 110 can communicate with a navigation system that uses the global positioning system (GPS) via the communication module 130 of the vehicle 105. As an example, the computer 110 may request and receive location data of the vehicle 105. The location data can be in a known form, e.g. B. in geo coordinates (latitude and longitude coordinates).

Der Computer 110 ist im Allgemeinen zur Kommunikation über das Kommunikationsmodul 130 des Fahrzeugs 105 und zudem mithilfe eines internen drahtgebundenen und/oder drahtlosen Netzwerks des Fahrzeugs 105, z. B. einem Bus oder dergleichen in dem Fahrzeug 105, wie etwa einem Controller Area Network (CAN) oder dergleichen, und/oder anderen drahtgebundenen und/oder drahtlosen Mechanismen angeordnet.The computer 110 is generally adapted to communicate via the communication module 130 of the vehicle 105 and also via an internal wired and/or wireless network of the vehicle 105, e.g. B. a bus or the like in the vehicle 105, such as a Controller Area Network (CAN) or the like, and / or other wired and / or wireless mechanisms.

Über das Kommunikationsnetzwerk des Fahrzeugs 105 kann der Computer 110 Nachrichten an verschiedene Vorrichtungen in dem Fahrzeug 105 übertragen und/oder Nachrichten von den verschiedenen Vorrichtungen empfangen, z. B. Fahrzeugsensoren 115, Betätigungselemente(n) 120, Fahrzeugkomponenten 125, eine(r) Mensch-Maschine-Schnittstelle (human machine interface - HMI) usw. Alternativ oder zusätzlich kann das Kommunikationsnetzwerk des Fahrzeugs 105 in Fällen, in denen der Computer 110 tatsächlich eine Vielzahl von Vorrichtungen umfasst, zur Kommunikation zwischen Vorrichtungen verwendet werden, die in dieser Offenbarung als der Computer 110 dargestellt sind. Ferner können, wie nachstehend erwähnt, verschiedene Steuerungen und/oder Fahrzeugsensoren 115 Daten an den Computer 110 bereitstellen.Via the communication network of the vehicle 105, the computer 110 may transmit messages to various devices in the vehicle 105 and/or receive messages from the various devices, e.g. B. vehicle sensors 115, actuators 120, vehicle components 125, a human machine interface (HMI), etc. Alternatively or additionally, the communication network of the vehicle 105 in cases where the computer 110 actually includes a variety of devices used to communicate between devices, shown in this disclosure as the computer 110. Further, as noted below, various controllers and/or vehicle sensors 115 may provide data to computer 110.

Die Fahrzeugsensoren 115 können eine Vielfalt von Vorrichtungen beinhalten, die bekanntermaßen Daten an den Computer 110 bereitstellen. Zum Beispiel können die Fahrzeugsensoren 115 (einen) Light-Detection-and-Ranging-Sensor(en) (LIDAR-Sensor(en)) 115 usw. beinhalten, der/die auf einer Oberseite des Fahrzeugs 105, hinter einer Windschutzscheibe des Fahrzeugs 105, um das Fahrzeug 105 herum usw. angeordnet ist/sind und relative Standorte, Größen und Formen von Objekten und/oder Verhältnissen bereitstellt/bereitstellen, die das Fahrzeug 105 umgeben. Als ein weiteres Beispiel können ein oder mehrere Radarsensoren 115, die an Stoßfängern des Fahrzeugs 105 befestigt sind, Daten bereitstellen, um die Geschwindigkeit von Objekten (möglicherweise einschließlich zweiter Fahrzeuge 106) usw. bezogen auf den Standort des Fahrzeugs 105 bereitzustellen und zu klassifizieren. Die Fahrzeugsensoren 115 können ferner (einen) Kamerasensor(en) 115 beinhalten, der/die z. B. nach vorne, zur Seite, nach hinten usw. gerichtet ist/sind und der/die Daten von einem Sichtfeld innerhalb und/oder außerhalb des Fahrzeugs 105 bereitstellt/bereitstellen.The vehicle sensors 115 may include a variety of devices known to provide data to the computer 110. For example, the vehicle sensors 115 may include a light detection and ranging (LIDAR) sensor(s) 115, etc. located on a top surface of the vehicle 105, behind a windshield of the vehicle 105 , around the vehicle 105, etc., and provides relative locations, sizes and shapes of objects and/or conditions surrounding the vehicle 105. As another example, one or more radar sensors 115 attached to bumpers of the vehicle 105 may provide data to provide and classify the speed of objects (possibly including second vehicles 106), etc., relative to the location of the vehicle 105. The vehicle sensors 115 may further include camera sensor(s) 115, which e.g. B. is directed forward, to the side, backwards, etc./ are and the data from a field of view inside and / or outside the vehicle 105 provides / provide.

Die Betätigungselemente 120 des Fahrzeugs 105 sind über Schaltungen, Chips, Elektromotoren oder andere elektronische und/oder mechanische Komponenten umgesetzt, die verschiedene Fahrzeugteilsysteme gemäß geeigneten Steuersignalen, wie bekannt, betätigen können. Die Betätigungselemente 120 können dazu verwendet werden, Komponenten 125, einschließlich Bremsung, Beschleunigung und Lenkung eines Fahrzeugs 105, zu steuern.The actuators 120 of the vehicle 105 are implemented via circuits, chips, electric motors, or other electronic and/or mechanical components that can actuate various vehicle subsystems according to appropriate control signals, as is known. The actuators 120 may be used to control components 125, including braking, acceleration, and steering of a vehicle 105.

Im Zusammenhang der vorliegenden Offenbarung handelt es sich bei einer Fahrzeugkomponente 125 um eine oder mehrere Hardwarekomponenten, die dazu ausgelegt sind, eine(n) mechanische(n) oder elektromechanische(n) Funktion oder Vorgang durchzuführen - wie etwa Bewegen des Fahrzeugs 105, Abbremsen oder Anhalten des Fahrzeugs 105, Lenken des Fahrzeugs 105 usw. Nicht einschränkende Beispiele für die Komponenten 125 beinhalten eine Antriebskomponente (die z. B. eine Brennkraftmaschine und/oder einen Elektromotor usw. beinhaltet), eine Getriebekomponente, eine Lenkkomponente (die z. B. eines oder mehrere von einem Lenkrad, einer Lenkzahnstange usw. beinhalten kann), eine Bremskomponente (wie nachstehend beschrieben), eine Parkassistenzkomponente, eine Komponente zur adaptiven Geschwindigkeitsregelung, eine Komponente zur adaptiven Lenkung, einen beweglichen Sitz usw.In the context of the present disclosure, a vehicle component 125 is one or more hardware components designed to perform a mechanical or electromechanical function or operation - such as moving the vehicle 105, braking, or stopping the vehicle 105, steering the vehicle 105, etc. Non-limiting examples of the components 125 include a drive component (e.g., including an internal combustion engine and/or an electric motor, etc.), a transmission component, a steering component (e.g., may include one or more of a steering wheel, a steering rack, etc.), a braking component (as described below), a parking assistance component, an adaptive cruise control component, an adaptive steering component, a movable seat, etc.

Des Weiteren kann der Computer 110 dazu konfiguriert sein, über ein Fahrzeug-zu-Fahrzeug-Kommunikationsmodul oder eine Schnittstelle 130 mit Vorrichtungen außerhalb des Fahrzeugs 105, z. B. über drahtlose Kommunikation von Fahrzeug-zu-Fahrzeug (vehicle-tovehicle - V2V) oder Fahrzeug-zu-Infrastruktur (vehicle-to-infrastructure - V2X) mit einem anderen Fahrzeug, mit einem Remote-Server 145 (in der Regel über das Kommunikationsnetzwerk 135) zu kommunizieren. Das Modul 130 könnte einen oder mehrere Mechanismen beinhalten, durch die der Computer 110 kommunizieren kann, einschließlich einer beliebigen gewünschten Kombination aus drahtlosen (z. B. Mobilfunk-, Drahtlos-, Satelliten-, Mikrowellen- und Hochfrequenz-) Kommunikationsmechanismen und einer beliebigen gewünschten Netzwerktopologie (oder Netzwerktopologien, wenn eine Vielzahl von Kommunikationsmechanismen genutzt wird). Beispielhafte über das Modul 130 bereitgestellte Kommunikation beinhaltet Mobilfunk, Bluetooth®, IEEE 802.11, dedizierte Nahbereichskommunikation (dedicated short range communication - DSRC) und/oder Weitverkehrsnetze (wide area networks - WAN), einschließlich des Internets, die Datenkommunikationsdienste bereitstellen.Furthermore, the computer 110 may be configured to communicate with devices external to the vehicle 105, e.g., via a vehicle-to-vehicle communication module or interface 130. B. via vehicle-to-vehicle (V2V) or vehicle-to-infrastructure (V2X) wireless communication with another vehicle, with a remote server 145 (typically via the Communication network 135) to communicate. The module 130 could include one or more mechanisms by which the computer 110 can communicate, including any desired combination of wireless (e.g., cellular, wireless, satellite, microwave, and radio frequency) communication mechanisms and any desired Network topology (or network topologies when a variety of communication mechanisms are used). Example communications provided via module 130 include cellular, Bluetooth®, IEEE 802.11, dedicated short range communications (DSRC), and/or wide area networks (WAN), including the Internet, which provide data communications services.

Das Kommunikationsnetzwerk 135 kann einer oder mehrere von verschiedenen drahtgebundenen oder drahtlosen Kommunikationsmechanismen sein, einschließlich jeder gewünschten Kombination aus drahtgebundenen (z. B. Kabel- und Glasfaser-) und/oder drahtlosen (z. B. Mobilfunk-, Drahtlos-, Satelliten-, Mikrowellen- und Hochfrequenz-) Kommunikationsmechanismen und jeder gewünschten Netzwerktopologie (oder -topologien, wenn mehrere Kommunikationsmechanismen genutzt werden). Beispielhafte Kommunikationsnetzwerke beinhalten drahtlose Kommunikationsnetzwerke (z. B. unter Verwendung von Bluetooth, Bluetooth Low Energy (BLE), IEEE 802.11, Fahrzeug-zu-Fahrzeug (V2V), wie etwa Nahbereichskommunikation (DSRC) usw.), lokale Netzwerke (local area network - LAN) und/oder Weitverkehrsnetzwerke (WAN), einschließlich des Internets, die Datenkommunikationsdienste bereitstellen.The communications network 135 may be one or more of various wired or wireless communications mechanisms, including any desired combination of wired (e.g., cable and fiber optic) and/or wireless (e.g., cellular, wireless, satellite, microwave and radio frequency) communication mechanisms and any desired network topology (or topologies if multiple communication mechanisms are used). Example communication networks include wireless communication networks (e.g., using Bluetooth, Bluetooth Low Energy (BLE), IEEE 802.11, vehicle-to-vehicle (V2V), such as short-range communication (DSRC), etc.), local area networks - LAN) and/or wide area networks (WAN), including the Internet, that provide data communication services.

Ein Computer 110 kann im Wesentlichen kontinuierlich, periodisch, und/oder wenn durch einen Server 145 usw. angewiesen, Daten von den Sensoren 115 empfangen und analysieren. Ferner können herkömmliche Objektklassifizierungs- oder Objektidentifizierungstechniken verwendet werden, z. B. in einem Computer 110 auf der Grundlage von Daten von einem LIDAR-Sensor 115, einem Kamerasensor 115 usw., um eine Objektart, z. B. Fahrzeug, Person, Stein, Schlagloch, Fahrrad, Motorrad usw., sowie physische Merkmale von Objekten zu identifizieren.A computer 110 may receive and analyze data from the sensors 115 substantially continuously, periodically, and/or as directed by a server 145, etc. Furthermore, conventional object classification or object identification techniques can be used, e.g. B. in a computer 110 based on data from a LIDAR sensor 115, a camera sensor 115 etc. to determine an object type, e.g. E.g. vehicle, person, stone, pothole, bicycle, motorcycle, etc., as well as identifying physical characteristics of objects.

2 ist ein Blockdiagramm eines beispielhaften Servers 145. Der Server 145 beinhaltet einen Computer 235 und ein Kommunikationsmodul 240. Der Computer 235 beinhaltet einen Prozessor und einen Speicher. Der Speicher beinhaltet eine oder mehrere Formen computerlesbarer Medien und speichert Anweisungen, die von dem Computer 235 ausgeführt werden können, um verschiedene Vorgänge, einschließlich der in dieser Schrift offenbarten, durchzuführen. Das Kommunikationsmodul 240 ermöglicht, dass der Computer 235 mit anderen Vorrichtungen, wie etwa dem Fahrzeug 105, kommuniziert. 2 is a block diagram of an example server 145. The server 145 includes a computer 235 and a communications module 240. The computer 235 includes a processor and memory. Memory includes one or more forms of computer-readable media and stores instructions that can be executed by computer 235 to perform various operations, including those disclosed herein. The communication module 240 allows the computer 235 to communicate with other devices, such as the vehicle 105.

3 veranschaulicht ein beispielhaftes Domänenübertragungsnetzwerk 300, das als ein oder mehrere Computerprogramme umgesetzt sein kann, die durch den Computer 110 und/oder den Server 145 ausführbar sind. Das Domänenübertragungsnetzwerk 300 ist ein System, das Eingabequellendomänendaten 302 in Ausgabezieldomänendaten 342 umwandelt und, zumindest während des Trainings, Eingabezieldomänendaten 304 in Ausgabequellendomänendaten 362 umwandelt. Zum Beispiel kann das Domänenübertragungsnetzwerk 300 eine Sequenz von Daten in einer Quellendomäne, z. B. Tagesdaten, empfangen und eine Sequenz von Daten in einer Zieldomäne, z. B. Nachtdaten, ausgeben. 3 illustrates an example domain communications network 300, which may be implemented as one or more computer programs executable by computer 110 and/or server 145. The domain transfer network 300 is a system that converts input source domain data 302 into output target domain data 342 and, at least during training, input target domain nendata 304 into output source domain data 362. For example, the domain communications network 300 may contain a sequence of data in a source domain, e.g. B. daily data, received and a sequence of data in a target domain, e.g. B. output night data.

Das Domänenübertragungsnetzwerk 300 verarbeitet die Quellendomänendaten 302 unter Verwendung einer oder mehrerer Quellendomänencodiererschichten 310 des neuronalen Netzwerks auf niedriger Ebene, die für Daten aus der Quellendomäne spezifisch sind, um eine Darstellung 312 auf niedriger Ebene der Eingabequellendomänendaten zu erzeugen. Zum Beispiel werden die Quellendomänencodiererschichten 310 des neuronalen Netzwerks auf niedriger Ebene verwendet, wenn Daten aus der Quellendomäne codiert werden und nicht, wenn Daten aus der Zieldomäne codiert werden. Die Darstellung 312 auf niedriger Ebene ist die Ausgabe der letzten der Codiererschichten auf niedriger Ebene.The domain transfer network 300 processes the source domain data 302 using one or more low-level source domain encoder layers 310 of the neural network specific to data from the source domain to produce a low-level representation 312 of the input source domain data. For example, the low-level source domain encoder layers 310 of the neural network are used when encoding data from the source domain and not when encoding data from the target domain. The low level representation 312 is the output of the last of the low level encoder layers.

Das Domänenübertragungsnetzwerk 300 verarbeitet dann die Darstellung 312 auf niedriger Ebene unter Verwendung einer oder mehrerer Codiererschichten 320 des neuronalen Netzwerks auf hoher Ebene, die von Daten aus der Quellen- und Zieldomäne gemeinsam genutzt werden, um eine Einbettung 322 der Eingabequellendomänendaten 302 bzw. der Eingabezieldomänendaten 304 zu erzeugen. Das heißt, die Codiererschichten 320 des neuronalen Netzwerks auf hoher Ebene werden verwendet, um die Einbettung 322 auf Grundlage der Quellendomänendaten und Zieldomänendaten zu erzeugen. Die Einbettung 322 kann ein Vektor von Wahrscheinlichkeitsverteilungen sein, wobei jede Wahrscheinlichkeitsverteilung ein latentes Attribut oder latente Attribute der Eingabedaten darstellt. Im vorliegenden Zusammenhang bedeutet ein Vektor eine geordnete Sammlung von numerischen Werten und ein latentes Attribut ist ein Merkmal innerhalb der Eingabedaten. Zum Beispiel kann ein latentes Attribut für ein Eingabebild einer Person ein Merkmal sein, das ein Auge oder eine Nase darstellt. In einem anderen Beispiel kann ein latentes Attribut für ein Eingabebild eines Fahrzeugs ein Merkmal sein, das einen Reifen, einen Stoßfänger oder einen Fahrzeugkarosserieabschnitt darstellt.The domain transfer network 300 then processes the low-level representation 312 using one or more high-level neural network encoder layers 320 shared by data from the source and destination domains to create an embedding 322 of the input source domain data 302 and the input destination domain data 304, respectively to create. That is, the high-level neural network encoder layers 320 are used to generate the embedding 322 based on the source domain data and target domain data. The embedding 322 may be a vector of probability distributions, where each probability distribution represents a latent attribute or attributes of the input data. In this context, a vector means an ordered collection of numerical values and a latent attribute is a feature within the input data. For example, a latent attribute for an input image of a person may be a feature representing an eye or a nose. In another example, a latent attribute for an input image of a vehicle may be a feature representing a tire, a bumper, or a vehicle body portion.

Das Domänenübertragungsnetzwerk 300 verarbeitet die Einbettung 322 der Eingabequellendomänendaten unter Verwendung einer oder mehrerer Decodiererschichten 330 des neuronalen Netzwerks auf hoher Ebene, die von Daten aus der Quellen- und Zieldomäne gemeinsam genutzt werden, um eine Merkmalsdarstellung 332 auf hoher Ebene von Merkmalen der Eingabequellendomänendaten 302 zu erzeugen. Die Darstellung eines latenten Attributs auf hoher Ebene ist die Ausgabe der letzten der Codiererschichten 330 auf hoher Ebene.The domain transfer network 300 processes the embedding 322 of the input source domain data using one or more high-level decoder layers 330 of the neural network shared by data from the source and target domains to generate a high-level feature representation 332 of features of the input source domain data 302 . The high-level representation of a latent attribute is the output of the last of the high-level encoder layers 330.

Das Domänenübertragungsnetzwerk 300 verarbeitet dann die Merkmalsdarstellung 332 auf hoher Ebene der Merkmale der Eingabequellendomänendaten unter Verwendung einer oder mehrerer Zieldomänendecodiererschichten 340 des neuronalen Netzwerks auf niedriger Ebene, die spezifisch für das Erzeugen von Daten aus der Quellendomäne sind, um Ausgabezieldomänendaten 342 zu erzeugen, die aus der Zieldomäne stammen, aber eine ähnliche Semantik wie die Eingabequellendomänendaten 302 aufweisen. Eine ähnliche Semantik bedeutet, dass die Zieldomänendaten 342 Regionen mit Pixelwerten aufweisen, die den gleichen Objekten entsprechen wie Regionen mit Pixelwerten in Eingabequellendomänendaten 302. Zum Beispiel können die Ausgabezieldomänendaten 342 eine Verteilung von Pixelwerten aufweisen, die mit denen von Daten aus der Zieldomäne übereinstimmt, aber eine ähnliche Semantik wie die Eingabequellendomänendaten 302 aufweisen, was bedeutet, dass die Ausgabezieldomänendaten 342 Objekte beinhalten, die durch einen Benutzer als dieselben Objekte erkennbar sind, die in den Eingabequellendomänendaten 302 beinhaltet sind. Zum Beispiel können Zieldomänendaten 342 einen Anhänger beinhalten, der eine A-Rahmen-Deichsel aufweist, die einer A-Rahmen-Anhängerdeichsel entspricht, die in den Eingabequelldomänendaten 302 vorkommt.The domain transfer network 300 then processes the high-level feature representation 332 of the features of the input source domain data using one or more low-level target domain decoder layers 340 of the neural network specific to generating data from the source domain to generate output target domain data 342 derived from the target domain but have similar semantics to the input source domain data 302. Similar semantics means that the target domain data 342 has regions of pixel values that correspond to the same objects as regions of pixel values in input source domain data 302. For example, the output target domain data 342 may have a distribution of pixel values that matches that of data from the target domain, but have similar semantics to the input source domain data 302, meaning that the output destination domain data 342 includes objects that are recognizable by a user as the same objects included in the input source domain data 302. For example, target domain data 342 may include a trailer that has an A-frame trailer tongue that corresponds to an A-frame trailer tongue that occurs in the input source domain data 302.

Während des Trainings kann das Domänenübertragungsnetzwerk 300 auch Ausgabequellendomänendaten 362 aus Eingabezieldomänendaten 304 erzeugen, d. h., um Zieldomänendaten in Quellendomänendaten umzuwandeln, die eine ähnliche Semantik wie die ursprünglichen Zieldomänendaten aufweisen.During training, the domain transfer network 300 may also generate output source domain data 362 from input target domain data 304, i.e. that is, to transform target domain data into source domain data that has similar semantics to the original target domain data.

In einer beispielhaften Umsetzung verarbeitet das Domänenübertragungsnetzwerk 300 die Zieldomänendaten 304 unter Verwendung einer oder mehrerer Zieldomänencodiererschichten 350 des neuronalen Netzwerks auf niedriger Ebene, die spezifisch für Daten aus der Zieldomäne sind, um eine Darstellung 352 auf niedriger Ebene der Eingabequellendomänendaten zu erzeugen, um Eingabezieldomänendaten 304 umzuwandeln. Die Zieldomänencodiererschichten 350 des neuronalen Netzwerks auf niedriger Ebene können nur verwendet werden, wenn Daten aus der Zieldomäne codiert werden und nicht, wenn Daten aus der Quellendomäne codiert werden.In an exemplary implementation, the domain transfer network 300 processes the target domain data 304 using one or more low-level target domain encoder layers 350 of the neural network specific to data from the target domain to generate a low-level representation 352 of the input source domain data to convert input target domain data 304 . The low-level target domain encoder layers 350 of the neural network can only be used when encoding data from the target domain and not when encoding data from the source domain.

Das Domänenübertragungsnetzwerk 300 verarbeitet dann die Darstellung 352 auf niedriger Ebene unter Verwendung der einen oder mehreren Codiererschichten 320 des neuronalen Netzwerks auf hoher Ebene, die von Daten aus der Quellen- und Zieldomäne gemeinsam genutzt werden, um eine Einbettung 324 der Eingabezieldomänendaten 304 zu erzeugen.The domain transfer network 300 then processes the low-level representation 352 using the one or more high-level neural network encoder layers 320 shared by data from the source and target domains to generate an embedding 324 of the input target domain data 304.

Das Domänenübertragungsnetzwerk 300 verarbeitet die Einbettung 324 der Eingabezieldomänendaten unter Verwendung der einen oder mehreren Decodiererschichten 330 des neuronalen Netzwerks auf hoher Ebene, die von Daten aus der Quellen- und Zieldomäne gemeinsam genutzt werden, um eine Merkmalsdarstellung 334 auf hoher Ebene von Merkmalen der Zieldomänendaten 304 zu erzeugen. Ähnlich der Einbettung 322 kann die Einbettung 324 ein Vektor von Wahrscheinlichkeitsverteilungen sein, wobei jede Wahrscheinlichkeitsverteilung ein latentes Attribut der Eingabedaten darstellt.The domain transfer network 300 processes the embedding 324 of the input target domain data using the one or more high-level decoder layers 330 of the neural network shared by data from the source and target domains to produce a high-level feature representation 334 of features of the target domain data 304 generate. Similar to embedding 322, embedding 324 may be a vector of probability distributions, where each probability distribution represents a latent attribute of the input data.

Das Domänenübertragungsnetzwerk 300 verarbeitet dann die Merkmalsdarstellung 334 auf hoher Ebene der Merkmale der Eingabezieldomänendaten unter Verwendung einer oder mehrerer Quellendomänendecodiererschichten 360 des neuronalen Netzwerks auf niedriger Ebene, die spezifisch für das Erzeugen von Daten aus der Quellendomäne sind, um Ausgabequellendomänendaten 362 zu erzeugen, die aus der Quellendomäne stammen, aber eine ähnliche Semantik wie die Eingabezieldomänendaten 304 aufweisen. Das heißt, die Ausgabequellendomänendaten 362 weisen Verteilungsdatenwerte auf, die mit denen von Daten aus der Quellendomäne übereinstimmen, aber eine ähnliche Semantik wie die Eingabezieldomänendaten 304 aufweisen. Zum Beispiel kann ein Quellendomänenbild, das ein oder mehrere darin abgebildete Objekte aufweist, für die Zieldomäne erzeugt werden, sodass die erzeugten Zieldomänenbilder aus der Zieldomäne zu stammen scheinen, aber die Semantik der entsprechenden Quellendomänenbilder beibehalten, z. B. das eine oder die mehreren Objekte abbilden. Während des Trainings werden die Zieldomänendecodiererschichten 340 des neuronalen Netzwerks auf niedriger Ebene gemeinsam mit den Zieldomänencodiererschichten 350 des neuronalen Netzwerks und den Quellendomänendecodiererschichten 310 des neuronalen Netzwerks auf niedriger Ebene trainiert.The domain transfer network 300 then processes the high-level feature representation 334 of the features of the input target domain data using one or more low-level source domain decoder layers 360 of the neural network specific to generating data from the source domain to generate output source domain data 362 derived from the Source domain but have similar semantics to the input target domain data 304. That is, the output source domain data 362 has distribution data values that are consistent with data from the source domain but have similar semantics to the input target domain data 304. For example, a source domain image that has one or more objects mapped therein may be generated for the target domain such that the generated target domain images appear to be from the target domain but retain the semantics of the corresponding source domain images, e.g. B. depict one or more objects. During training, the low-level target domain decoder layers 340 of the neural network are trained together with the target domain decoder layers 350 of the neural network and the source domain decoder layers 310 of the low-level neural network.

4 veranschaulicht ein beispielhaftes Diagramm des Domänenübertragungsnetzwerks 300, das Eingabedaten XA, XB empfängt und Ausgabedaten X'AA, X'BA, X'AB, X'BB erzeugen kann. Wie gezeigt, können die Zieldomänencodiererschichten 350 des neuronalen Netzwerks auf niedriger Ebene eine Eingabe XA empfangen und können die Quellendomänencodiererschichten 310 des neuronalen Netzwerks auf niedriger Ebene eine Eingabe XB empfangen. Das Domänenübertragungsnetzwerk 300 kann Inter- und Intradomänenumwandlungen durchführen, da die Zieldomänencodiererschichten 350 des neuronalen Netzwerks auf niedriger Ebene und die Quellendomänencodiererschichten 310 des neuronalen Netzwerks auf niedriger Ebene mit den Quellendomänendecodiererschichten 360 des neuronalen Netzwerk auf niedriger Ebene und den Zieldomänendecodiererschichten 340 des neuronalen Netzwerks auf niedriger Ebene über gemeinsam genutzte Codiererschichten 320 des neuronalen Netzwerks auf hoher Ebene und gemeinsam genutzte Decodiererschichten 330 des neuronalen Netzwerks auf hoher Ebene verbunden sind. Das Domänenübertragungsnetzwerk 300 ist mit gemeinsam genutzten Codiererschichten 320 des neuronalen Netzwerks auf hoher Ebene und gemeinsam genutzten Decodiererschichten 330 des Netzwerks auf hoher Ebene veranschaulicht, die gemeinsam Gewichtungen nutzen. Das Domänenübertragungsnetzwerk 300 kann auch mit Codiererschichten 320 des neuronalen Netzwerks auf hoher Ebene und Decodiererschichten 330 des Netzwerks auf hoher Ebene betrieben werden, die keine Gewichtungen gemeinsam nutzen. 4 illustrates an exemplary diagram of the domain communications network 300 that receives input data X A , X B and can generate output data X' AA , X ' BA , As shown, the target low-level domain encoder layers 350 of the neural network may receive an input X A and the source domain encoder layers 310 of the low-level neural network may receive an input X B. The domain transfer network 300 can perform inter- and intra-domain conversions because the low-level target domain encoder layers 350 of the neural network and the low-level source domain encoder layers 310 with the low-level source domain decoder layers 360 of the neural network and the low-level target domain decoder layers 340 of the neural network via shared high-level neural network encoder layers 320 and shared high-level neural network decoder layers 330. The domain communications network 300 is illustrated with shared high-level neural network encoder layers 320 and shared high-level network decoder layers 330 that share weights. The domain transfer network 300 may also operate with high-level neural network encoder layers 320 and high-level network decoder layers 330 that do not share weights.

Die Eingabedaten XA können Daten in der Quellendomäne sein, wobei der Index „A“ eine erste Domäne, z. B. ein Tagesbild, darstellt, und die Eingabedaten XB können Daten in der Zieldomäne sein, wobei der Index „B“ eine zweite Domäne der Daten darstellt, z. B. ein Nachtbild. Die Daten X'AA, X'BA, X'AB, X'BB stellen Ausgabedaten dar, die durch das Domänenübertragungsnetzwerk 300 erzeugt werden, wobei die Indizes jeweils Inter- und Intradomänenübertragungen der Daten X' darstellen. Wenn zum Beispiel die Eingabedaten ein Bild sind, das ein oder mehrere Objekte in der ersten Domäne abbildet, kann das Domänenübertragungsnetzwerk 300 Bilder X'AA, X'BA, X'AB, X'BB erzeugen, die ein Bild darstellen, welches das eine oder die mehreren Objekte in der ersten Domäne (X'AA), z. B. tagsüber, einer zweiten Domäne (X'BB), z. B. nachts, einer dritten Domäne (X'AB), z. B. morgens, und einer vierten Domäne (X'BB), z. B. in der Dämmerung, abbildet. Die Elemente Z AA, ZAB, ZBA, ZBB stellen das latente Attribut oder die latenten Attribute dar, die durch die Codiererschichten 320 des neuronalen Netzes auf hoher Ebene erzeugt werden.The input data a daily image, and the input data X B may be data in the target domain, where the index "B" represents a second domain of the data, e.g. B. a night picture. The data X' AA , X' BA , X' AB , For example, if the input data is an image depicting one or more objects in the first domain, the domain communications network 300 may generate images X' AA , X' BA , X' AB , X' BB representing an image depicting the one or the multiple objects in the first domain (X' AA ), e.g. B. during the day, a second domain (X' BB ), e.g. B. at night, a third domain (X' AB ), e.g. B. in the morning, and a fourth domain (X' BB ), e.g. B. at dusk. The elements Z AA , Z AB , Z BA , Z BB represent the latent attribute or attributes generated by the high-level encoder layers 320 of the neural network.

Während des Trainings kann das Domänenübertragungsnetzwerk 300 eine herkömmliche Verlustfunktion des Domänenübertragungsnetzwerks 300 modifizieren, sodass latente Attribute aus der gleichen Wahrscheinlichkeitsverteilung ausgewählt werden. Eine herkömmliche Verlustfunktion kann einen Verlustwert durch Berechnen einer Wahrscheinlichkeit bestimmen, dass ein Ergebnis und Ground-Truth-Daten der gleichen Wahrscheinlichkeitsverteilung entsprechen. In dieser Schrift beschriebene Techniken fügen die Bedingung hinzu, dass latente Attribute aus der gleichen Wahrscheinlichkeitsverteilung ausgewählt werden. Durch Auswählen von latenten Attributen aus der gleichen Wahrscheinlichkeitsverteilung können Merkmale innerhalb der Eingabequellendomänendaten 304 in den Ausgabezieldomänendaten 342 dargestellt werden. Zum Beispiel können Merkmale, wie vorstehend erörtert, Abschnitte von Objekten darstellen, die in einem Bild abgebildet sind.During training, the domain transfer network 300 may modify a traditional loss function of the domain transfer network 300 so that latent attributes are selected from the same probability distribution. A traditional loss function can determine a loss value by calculating a probability of an outcome and ground truth data of the same corresponding probability distribution. Techniques described in this paper add the condition that latent attributes are selected from the same probability distribution. By selecting latent attributes from the same probability distribution, features within the input source domain data 304 can be represented in the output target domain data 342. For example, as discussed above, features may represent portions of objects depicted in an image.

Die herkömmliche Verlustfunktion kann durch Minimieren einer herkömmlichen maximalen mittleren Abweichung (maximum mean discrepancy - MMD) zwischen den Einbettungen 322, 324, z. B. den latenten Attributen ZAA, ZAB, ZBA, ZBB, modifiziert werden. Die maximale mittlere Abweichung kann als eine numerische Differenz zwischen den Einbettungen 322, 324 definiert sein, wie etwa die Differenz zwischen einem Mittelwert einer Wahrscheinlichkeitsverteilung aus der Einbettung 322 und einem Mittelwert einer Wahrscheinlichkeitsverteilung aus der Einbettung 324. Während des Trainings des Domänenübertragungsnetzwerks 300 kann die maximale mittlere Abweichung verwendet werden, um die herkömmliche Verlustfunktion zu modifizieren, um eine oder mehrere Gewichtungen innerhalb des Domänenübertragungsnetzwerks 300 zu aktualisieren. Die Gleichungen 1 bis 6 veranschaulichen die Modifikation der herkömmlichen Verlustfunktion (loss function -LF) unter Verwendung der maximalen mittleren Abweichung: L = L F + M M D ( Z A A , Z B B )

Figure DE102022111402A1_0001
L = L F + M M D ( Z A A , Z A B )
Figure DE102022111402A1_0002
L = L F + M M D ( Z A A , Z B A )
Figure DE102022111402A1_0003
L = L F + M M D ( Z A B , Z B A )
Figure DE102022111402A1_0004
L = L F + M M D ( Z A B , Z B B )
Figure DE102022111402A1_0005
L = L F + M M D ( Z B A , Z B B )
Figure DE102022111402A1_0006
wobei L als eine Verlustfunktion des Domänenübertragungsnetzwerks 300 definiert ist, LF als eine herkömmliche Verlustfunktion definiert ist und MMD als die maximale mittlere Abweichung zwischen den latenten Attributen definiert ist. Während des Trainings kann die Verlustfunktion L verwendet werden, um eine oder mehrere Gewichtungen innerhalb des Domänenübertragungsnetzwerks 300 zu aktualisieren.The conventional loss function can be achieved by minimizing a conventional maximum mean discrepancy (MMD) between embeddings 322, 324, e.g. B. the latent attributes Z AA , Z AB , Z BA , Z BB , can be modified. The maximum mean deviation may be defined as a numerical difference between the embeddings 322, 324, such as the difference between a mean of a probability distribution from the embedding 322 and a mean of a probability distribution from the embedding 324. During training of the domain transfer network 300, the maximum mean deviation can be used to modify the traditional loss function to update one or more weights within the domain transmission network 300. Equations 1 to 6 illustrate the modification of the traditional loss function (LF) using the maximum mean deviation: L = L F + M M D ( Z A A , Z b b )
Figure DE102022111402A1_0001
L = L F + M M D ( Z A A , Z A b )
Figure DE102022111402A1_0002
L = L F + M M D ( Z A A , Z b A )
Figure DE102022111402A1_0003
L = L F + M M D ( Z A b , Z b A )
Figure DE102022111402A1_0004
L = L F + M M D ( Z A b , Z b b )
Figure DE102022111402A1_0005
L = L F + M M D ( Z b A , Z b b )
Figure DE102022111402A1_0006
where L is defined as a loss function of the domain communication network 300, LF is defined as a conventional loss function, and MMD is defined as the maximum mean deviation between the latent attributes. During training, the loss function L may be used to update one or more weights within the domain transmission network 300.

Wie in 5 gezeigt, kann das Domänenübertragungsnetzwerk 300 in einigen Umsetzungen einen Diskriminator 502 beinhalten. Eine Ausgabe des Diskriminators 502 kann verwendet werden, um die herkömmliche Verlustfunktion während des Trainings zu aktualisieren, sodass latente Attribute aus der gleichen Wahrscheinlichkeitsverteilung während der Datenerzeugung ausgewählt werden. Der Diskriminator 502 kann die latenten Attribute Z AA, ZAB, ZBA, ZBB empfangen, die latenten Attribute ZAA, ZAB, ZBA, ZBB auswerten und eine Vorhersage erzeugen, die angibt, ob die latenten Attribute ZAA, ZAB, ZBA, ZBB einer bestimmten Domäne entsprechen. In verschiedenen Umsetzungen kann der Diskriminator 502 eine oder mehrere Convolution-BatchNorm-ReLU-Schichten umfassen, wie nachstehend erörtert.As in 5 As shown, the domain communications network 300 may include a discriminator 502 in some implementations. An output of the discriminator 502 can be used to update the traditional loss function during training so that latent attributes are selected from the same probability distribution during data generation. The discriminator 502 can receive the latent attributes Z AA , Z AB , Z BA , Z BB , evaluate the latent attributes Z AA , Z AB , Z BA , Z BB , and generate a prediction indicating whether the latent attributes Z AA , Z AB , Z BA , Z BB correspond to a specific domain. In various implementations, the discriminator 502 may include one or more Convolution BatchNorm ReLU layers, as discussed below.

Wie in den 6A bis 6D gezeigt, kann der Diskriminator 502 ein latentes Attribut empfangen und einen mehrdimensionalen Vektor 602 ausgeben, der das entsprechende latente Attribut zu einer bestimmten Domäne klassifiziert. In den in den 6A bis 6D veranschaulichten Beispielen umfasst der mehrdimensionale Vektor 602 einen vierdimensionalen Vektor, der eine Vorhersagekennzeichnung beinhaltet, die darstellt, aus welcher Domäne das entsprechende latente Attribut stammt. Zum Beispiel erzeugt der Diskriminator 502 eine „1“ innerhalb des mehrdimensionalen Vektors 602, die der vorhergesagten Domäne entspricht, und eine „0“ für alle anderen Domänen. In einigen Umsetzungen kann der mehrdimensionale Vektor 602 einen zweidimensionalen Vektor 602 umfassen. In diesen Umsetzungen erzeugt der Diskriminator 502 eine Vorhersage zwischen der ersten Domäne und der zweiten Domäne.Like in the 6A until 6D As shown, the discriminator 502 may receive a latent attribute and output a multidimensional vector 602 that classifies the corresponding latent attribute to a particular domain. In the in the 6A until 6D In the illustrated examples, the multidimensional vector 602 includes a four-dimensional vector that includes a predictive label representing which domain the corresponding latent attribute comes from. For example, the discriminator 502 produces a "1" within the multidimensional vector 602 corresponding to the predicted domain and a "0" for all other domains. In some implementations, the multidimensional vector 602 may include a two-dimensional vector 602. In these implementations, the discriminator 502 produces a prediction between the first domain and the second domain.

Gleichung 7 veranschaulicht eine Verlustfunktion für einen Diskriminator 502, die einen vierdimensionalen Vektor erzeugt: L D = Z ˜ A A l o g   D ( Z A A ) + Z ˜ B B l o g   D ( Z B B ) + Z ˜ A B l o g   D ( Z A B ) + Z ˜ B A l o g   D ( Z B A )

Figure DE102022111402A1_0007
wobei LD als eine Verlustfunktion für den Diskriminator 502 definiert ist, Z̃AA, Z̃BB, Z̃AB, Z̃BA als Kennzeichnungen für die entsprechende Domäne definiert sind, log D als die Schätzung des Diskriminators 302 definiert ist, dass die Wahrscheinlichkeit für das latente Attribut einer spezifischen Domäne entspricht, und ZAA, ZAB, ZBA, ZBB als vorhergesagte Domänenausgaben aus dem Diskriminator 502 definiert sind, z. B. „0“ oder „1“. Gleichung 8 veranschaulicht eine Verlustfunktion für einen Diskriminator, die einen zweidimensionalen Vektor erzeugt: L D = Z ˜ A A l o g   D ( Z A A ) + Z ˜ B B l o g   D ( Z B B )
Figure DE102022111402A1_0008
wobei LD als eine Verlustfunktion für den Diskriminator 502 definiert ist, Z̃AA, Z̃BB als Kennzeichnungen für die entsprechende Domäne definiert sind, log D als die Schätzung des Diskriminators 302 definiert ist, dass die Wahrscheinlichkeit für das latente Attribut einer spezifischen Domäne entspricht, und ZAA, ZBB als vorhergesagte Domänenausgaben aus dem Diskriminator 502 definiert sind, z. B. „0“ oder „1“. Die Verlustfunktion LD kann verwendet werden, um Gewichtungen des Diskriminators 502 und/oder einer herkömmlichen Verlustfunktion des Domänenübertragungsnetzwerks 300 zu aktualisieren.Equation 7 illustrates a loss function for a discriminator 502 that produces a four-dimensional vector: L D = Z ˜ A A l O G D ( Z A A ) + Z ˜ b b l O G D ( Z b b ) + Z ˜ A b l O G D ( Z A b ) + Z ˜ b A l O G D ( Z b A )
Figure DE102022111402A1_0007
where L D is defined as a loss function for the discriminator 502, Z̃ AA , Z̃ BB , Z̃ AB , Z̃ BA are defined as labels for the corresponding domain, log D is defined as the discriminator 302's estimate that the probability for the latent Attribute corresponds to a specific domain, and Z AA , Z AB , Z BA , Z BB are defined as predicted domain outputs from the discriminator 502, e.g. B. “0” or “1”. Equation 8 illustrates a loss function for a discriminator that produces a two-dimensional vector: L D = Z ˜ A A l O G D ( Z A A ) + Z ˜ b b l O G D ( Z b b )
Figure DE102022111402A1_0008
where L D is defined as a loss function for the discriminator 502, Z̃ AA , Z̃ BB are defined as labels for the corresponding domain, log D is defined as the discriminator 302's estimate that the probability for the latent attribute corresponds to a specific domain, and Z AA , Z BB are defined as predicted domain outputs from the discriminator 502, e.g. B. “0” or “1”. The loss function L D may be used to update weights of the discriminator 502 and/or a conventional loss function of the domain communications network 300.

7 ist ein Blockdiagramm, das ein Beispiel für den Diskriminator 502 veranschaulicht. Es wird angenommen, dass die Diskriminatorarchitektur eine Faltung ist, wobei intern Standardkomponenten (z. B. Conv-BatchNorm-ReLU) verwendet werden. Conv-BatchNorm-ReLU ist eine Technik zum Trainieren neuronaler Netzwerke, die latente Variablen zwischen Faltungsschichten eines neuronalen Netzwerks verarbeitet, indem eine Batch-Normalisierung (BatchNorm) zum Vermeiden von Problemen, die durch stark variierende Eingabedatenwerte verursacht werden, und eine gleichgerichtete lineare Aktivierung (ReLU) zum Beschleunigen der Konvergenz während des Trainings durchgeführt wird. Die latenten Variablen können batchweise zusammengefasst werden, indem Ergebnisse aus einer Reihe von Trainingsdurchläufen gespeichert und normalisiert werden, um den batchweise zusammengefassten latenten Variablen einen Mittelwert von null und eine Standardabweichung von eins zu verleihen, ohne Ausgabeergebnisse zu ändern. Die normalisierten latenten Variablen können dann ReLU unterzogen werden, indem positive Werte direkt an die nachfolgende Stufe ausgegeben werden und negative Werte in null umgewandelt werden. 7 is a block diagram illustrating an example of the discriminator 502. The discriminator architecture is assumed to be convolutional, using standard components internally (e.g. Conv-BatchNorm-ReLU). Conv-BatchNorm-ReLU is a neural network training technique that processes latent variables between convolutional layers of a neural network using batch normalization (BatchNorm) to avoid problems caused by highly varying input data values and rectified linear activation ( ReLU) is performed to accelerate convergence during training. The latent variables can be batched by storing and normalizing results from a series of training runs to give the batched latent variables a mean of zero and a standard deviation of one without changing output results. The normalized latent variables can then undergo ReLU by outputting positive values directly to the subsequent stage and converting negative values to zero.

Der Diskriminator 502 kann mehrere verschiedene Arten von Schichten auf Grundlage von Konnektivität und Gewichtungsverteilung beinhalten. Wie in 7 gezeigt, kann der Diskriminator 502 eine oder mehrere Faltungsschichten (CONV) 702, eine oder mehrere Batch-Normalisierungsschichten (BatchNorm) 704 und eine oder mehrere Schichten einer gleichgerichteten linearen Einheit (ReLU) 706 beinhalten. Die Faltungsschichten 702 können einen oder mehrere Faltungsfilter beinhalten, die auf die latenten Attribute angewendet werden. Die gefilterten latenten Attribute können den Batch-Normalisierungsschichten 704 bereitgestellt werden und die Batch-Normalisierungsschichten 704 normalisieren die gefilterten latenten Attribute. Die normalisierten gefilterten latenten Attribute können den Schichten 706 der gleichgerichteten linearen Einheit bereitgestellt werden und die Schichten 706 der gleichgerichteten linearen Einheit umfassen eine Aktivierungsfunktion, z. B. eine stückweise lineare Funktion, die eine Ausgabe auf Grundlage der normalisierten gefilterten latenten Attribute erzeugt. Die Ausgabe der Schichten 706 der gleichgerichteten linearen Einheit kann einer Softmax-Schicht 708 als Eingabe bereitgestellt werden, um die vorhergesagte Domäne zu erzeugen. Die Softmax-Schicht 708 umfasst die letzte Schicht des Diskriminators 502 und ist eine Aktivierungsfunktion, die eine Wahrscheinlichkeit dafür erzeugt, zu welcher Domäne die normalisierten gefilterten latenten Attribute gehören. Während nur eine einzelne Faltungsschicht 702, Batch-Normalisierungsschicht 704, Schicht 706 der gleichgerichteten Einheit und Softmax-Schicht 708 gezeigt sind, kann der Diskriminator 502 abhängig von der Umsetzung des Diskriminators 502 zusätzliche Schichten beinhalten.The discriminator 502 may include several different types of layers based on connectivity and weight distribution. As in 7 As shown, the discriminator 502 may include one or more convolution layers (CONV) 702, one or more batch normalization layers (BatchNorm) 704, and one or more rectified linear unit (ReLU) layers 706. The convolution layers 702 may include one or more convolution filters that are applied to the latent attributes. The filtered latent attributes may be provided to the batch normalization layers 704 and the batch normalization layers 704 normalize the filtered latent attributes. The normalized filtered latent attributes may be provided to the rectified linear unit layers 706 and the rectified linear unit layers 706 include an activation function, e.g. B. a piecewise linear function that produces an output based on the normalized filtered latent attributes. The output of the rectified linear unit layers 706 may be provided as input to a softmax layer 708 to generate the predicted domain. The softmax layer 708 includes the last layer of the discriminator 502 and is an activation function that produces a probability of which domain the normalized filtered latent attributes belong to. While only a single convolution layer 702, batch normalization layer 704, rectified unit layer 706, and softmax layer 708 are shown, the discriminator 502 may include additional layers depending on the implementation of the discriminator 502.

Ein tiefes neuronales Netzwerk, das unter Verwendung der in dieser Schrift beschriebenen Techniken trainiert wird, kann das Training von tiefen neuronalen Netzwerken verbessern, indem ein One-Shot- oder Few-Shot-Training ermöglicht wird. Wie vorstehend erörtert, kann das Erzeugen von Trainingsdatensätzen für ein tiefes neuronales Netzwerk das Erfassen von Tausenden von beispielhaften Eingabebildern zusammen mit der entsprechenden Ground Truth erfordern. Der Trainingsdatensatz sollte eine Vielzahl von Beispielen aller unterschiedlichen Arten von Objekten beinhalten, die in Beispielen aller Umweltbedingungen trainiert werden, die während des Betriebs des tiefen neuronalen Netzwerks erwartet werden. Zum Beispiel kann ein tiefes neuronales Netzwerk trainiert werden, um Fahrzeuganhänger zu identifizieren und zu lokalisieren. Während des Trainings sollten alle Arten und Konfigurationen von Anhängern, die beim Betreiben eines Fahrzeugs auftreten können, in einem Trainingsdatensatz beinhaltet sein. Ferner sollte jede Art und Konfiguration von Anhängern in dem Trainingsdatensatz in jeder der unterschiedlichen Umweltbedingungen beinhaltet sein, die beim Betreiben des tiefen neuronalen Netzwerks auftreten können. Die Umweltbedingungen beinhalten Wetter- und Lichtbedingungen, wie etwa Regen, Schnee, Nebel, helles Sonnenlicht, Nacht usw.A deep neural network trained using the techniques described in this paper can improve the training of deep neural networks by enabling one-shot or few-shot training. As discussed above, generating training datasets for a deep neural network may require acquiring thousands of example input images along with the corresponding ground truth. The training data set should contain a variety of examples of all different types of objects trained in examples of all environmental conditions expected during operation of the deep neural network. For example, a deep neural network can be trained to identify and locate vehicle trailers. During training, all types and configurations of trailers that may occur when operating a vehicle should be included in a training data set. Furthermore, each type and configuration of followers in the training data set should be included in each of the different environmental conditions that may occur when operating the deep neural network. Environmental conditions include weather and lighting conditions such as rain, snow, fog, bright sunlight, night, etc.

Das Erfassen eines Trainingsdatensatzes, der eine Vielzahl von Bildern beinhaltet, die alle Arten und Konfigurationen von zu identifizierenden und lokalisierenden Objekten unter allen Arten von Umweltbedingungen beinhaltet, kann teuer und zeitaufwändig sein. In dieser Schrift erörterte Techniken können das Trainieren von tiefen neuronalen Netzwerken verbessern, indem sie ermöglichen, dass die tiefen neuronalen Netzwerke trainiert werden, indem ein einzelnes Eingabebild verwendet wird und das Eingabebild modifiziert wird, um unterschiedliche Arten von Objekten in unterschiedlichen Konfigurationen unter unterschiedlichen Umweltbedingungen zu simulieren. Zum Beispiel kann eine neue Art oder Konfiguration eines Objekts durch ein Fahrzeug während des Betriebs erfasst werden. Das einzelne Bild eines Objekts kann an einen Servercomputer zurückgesendet und verwendet werden, um ein tiefes neuronales Netzwerk durch Simulieren einer Vielzahl von Ausrichtungen und Positionen des neuen Objekts auf Grundlage von zuvor erfassten Trainingsbildern, die Ground Truth beinhalten, neu zu trainieren. In dieser Schrift beschriebene Techniken ermöglichen das Trainieren eines tiefen neuronalen Netzwerks unter Verwendung begrenzter Trainingsdatensätze, wodurch Zeit und Geld gespart werden.Acquiring a training data set that includes a variety of images containing all types and configurations of objects to be identified and located under all types of environmental conditions can be expensive and time-consuming. Techniques discussed in this paper can improve the training of deep neural networks by allowing the deep neural networks to be trained using a single input image and modifying the input image to produce different types of objects in different configurations under different environmental conditions simulate. For example, a new type or configuration of an object may be detected by a vehicle during operation. The single image of an object can be sent back to a server computer and used to retrain a deep neural network by simulating a variety of orientations and positions of the new object based on previously acquired training images that contain ground truth. Techniques described in this paper enable training a deep neural network using limited training data sets, saving time and money.

In dieser Schrift beschriebene Techniken können auf tiefe neuronale Netzwerke angewendet werden, die Bilddaten, Videodaten und Daten aus menschlicher Sprache verarbeiten. Bilder können unter Verwendung von neuronalen Faltungsnetzwerken verarbeitet werden. Neuronale Faltungsnetzwerke beinhalten Faltungsschichten, die Bilder codieren, um latente Variablen zu bilden, die durch Faltungsschichten decodiert werden können, welche die latenten Variablen rekonstruieren, um Ausgabebilddaten zu bilden. Videodaten und Daten aus menschlicher Sprache können unter Verwendung von rekurrenten neuronalen Netzwerken verarbeitet werden. Rekurrente neuronale Netzwerke beinhalten einen Speicher, der Ergebnisse aus einer Vielzahl von vorherigen Decodierungsschichten und vorherigen Codierungsschichten speichert, um sie mit aktuellen Codierungs- und Decodierungsschichten zu kombinieren. In einem beispielhaften rekurrenten neuronalen Netzwerk, das Videodaten verarbeitet, können die Codierungs- und Decodierungsschichten Faltungsschichten beinhalten. In einem beispielhaften rekurrenten neuronalen Netzwerk, das menschliche Sprache verarbeitet, können die Codierungs- und Decodierungsschichten vollständig verbundene Schichten sein. Beispielhafte neuronale Faltungsnetzwerke oder rekurrente neuronale Netzwerke können als Domänenübertragungsnetzwerke konfiguriert sein, die Verlustfunktionen und Diskriminatoren beinhalten, wie vorstehend in Bezug auf die 3-7 beschrieben, um es den neuronalen Faltungsnetzwerken oder rekurrenten neuronalen Netzwerken zu ermöglichen, Bilddaten, Videodaten oder Daten aus menschlicher Sprache aus einer Quellendomäne zu einer Zieldomäne zu verarbeiten und dadurch durch Erhöhen der Menge an Trainingsdaten die Fähigkeit zu verbessern, neuronale Netzwerke zu trainieren, ohne dass eine zusätzliche Erfassung von realen Daten und entsprechender Ground Truth erforderlich ist, wodurch Zeit und Geld gespart werden.Techniques described in this paper can be applied to deep neural networks that process image data, video data, and human speech data. Images can be processed using convolutional neural networks. Convolutional neural networks include convolutional layers that encode images to form latent variables that can be decoded by convolutional layers that reconstruct the latent variables to form output image data. Video data and human speech data can be processed using recurrent neural networks. Recurrent neural networks include memory that stores results from a variety of previous decoding layers and previous encoding layers to combine with current encoding and decoding layers. In an example recurrent neural network that processes video data, the encoding and decoding layers may include convolutional layers. In an example recurrent neural network that processes human language, the encoding and decoding layers may be fully connected layers. Example convolutional neural networks or recurrent neural networks may be configured as domain transfer networks that include loss functions and discriminators as described above with respect to 3-7 described to enable convolutional neural networks or recurrent neural networks to process image data, video data or human speech data from a source domain to a target domain and thereby improve the ability to train neural networks by increasing the amount of training data without additional collection of real data and corresponding ground truth is required, saving time and money.

8 veranschaulicht ein beispielhaftes tiefes neuronales Netzwerk (DNN) 800, das die vorstehend und in dieser Schrift beschriebenen Funktionen durchführen kann. Zum Beispiel kann das Domänenübertragungsnetzwerk 300 als ein oder mehrere DNNs 800 umgesetzt sein. Das DNN 800 kann zum Beispiel ein Softwareprogramm sein, das in einen Speicher geladen und durch einen Prozessor, der in dem Computer 110 oder dem Server 145 beinhaltet ist, ausgeführt werden kann. In einer beispielhaften Umsetzung kann das DNN 800 unter anderem ein neuronales Faltungsnetzwerk (convolutional neural network - CNN), R-CNN (Regionen mit CNN-Merkmalen), schnelle R-CNN, schnellere R-CNN und rekurrente neuronale Netzwerke (RNNs) beinhalten. Das DNN 800 beinhaltet mehrere Knoten 805, und die Knoten 805 sind derart angeordnet, dass das DNN 800 eine Eingabeschicht, eine oder mehrere verborgene Schichten und eine Ausgabeschicht beinhaltet. Jede Schicht des DNN 800 kann eine Vielzahl von Knoten 805 beinhalten. Während 8 drei (3) verborgene Schichten veranschaulicht, versteht es sich, dass das DNN 800 zusätzliche oder weniger verborgene Schichten beinhalten kann. Die Eingabe- und Ausgabeschichten können auch mehr als einen (1) Knoten 805 beinhalten. 8th illustrates an example deep neural network (DNN) 800 that can perform the functions described above and in this document. For example, the domain communications network 300 may be implemented as one or more DNNs 800. For example, the DNN 800 may be a software program that can be loaded into memory and executed by a processor included in the computer 110 or the server 145. In an exemplary implementation, the DNN 800 may include, but is not limited to, a convolutional neural network (CNN), R-CNN (Regions with CNN Features), fast R-CNN, faster R-CNN, and recurrent neural networks (RNNs). The DNN 800 includes a plurality of nodes 805, and the nodes 805 are arranged such that the DNN 800 includes an input layer, one or more hidden layers, and an output layer. Each layer of the DNN 800 may include a plurality of nodes 805. While 8th illustrating three (3) hidden layers, it is understood that the DNN may include 800 additional or fewer hidden layers. The input and output layers may also include more than one (1) node 805.

Die Knoten 805 werden mitunter als künstliche Neuronen 805 bezeichnet, da sie dazu ausgestaltet sind, biologische, z. B. menschliche, Neuronen nachzubilden. Ein Satz von Eingaben (dargestellt durch die Pfeile) in jedes Neuron 805 wird jeweils mit jeweiligen Gewichtungen multipliziert. Die gewichteten Eingaben können dann in einer Eingabefunktion summiert werden, um eine, unter Umständen um einen Bias angepasste, Nettoeingabe bereitzustellen. Die Nettoeingabe kann dann einer Aktivierungsfunktion bereitgestellt werden, die wiederum einem verbundenen Neuron 805 eine Ausgabe bereitstellt. Bei der Aktivierungsfunktion kann es sich um eine Vielfalt geeigneter Funktionen handeln, die in der Regel basierend auf einer empirischen Analyse ausgewählt werden. Wie durch die Pfeile in 8 veranschaulicht, können die Ausgaben des Neurons 805 dann in einer nächsten Schicht zur Aufnahme in einen Satz von Eingaben in ein oder mehrere Neuronen 805 bereitgestellt werden.The nodes 805 are sometimes referred to as artificial neurons 805 because they are designed to generate biological, e.g. B. to simulate human neurons. A set of inputs (represented by the arrows) to each neuron 805 are each multiplied by respective weights. The weighted inputs can then be summed in an input function to provide a net input, possibly adjusted for bias. The net input may then be provided to an activation function, which in turn provides an output to a connected neuron 805. The activation function may be a variety of suitable functions, typically selected based on empirical analysis. As shown by the arrows in 8th As illustrated, the outputs of neuron 805 may then be provided in a next layer for inclusion in a set of inputs to one or more neurons 805.

Das DNN 800 kann dahingehend trainiert werden, Daten, z. B. von dem CAN-Bus des Fahrzeugs 105, Sensoren oder einem anderen Netzwerk, als Eingabe zu akzeptieren und eine Verteilung möglicher Ausgaben auf Grundlage der Eingabe zu erzeugen. Das DNN 800 kann mithilfe von Ground-Truth-Daten trainiert werden, d. h. Daten über eine reale Bedingung oder einen realen Zustand. Zum Beispiel kann das DNN 800 durch einen Prozessor des Servers 145 mit Ground-Truth-Daten trainiert oder mit zusätzlichen Daten aktualisiert werden. Das DNN 800 kann über das Netzwerk 135 an das Fahrzeug 105 übertragen werden. Die Gewichtungen können zum Beispiel unter Verwendung einer Gauß-Verteilung eingeleitet werden und ein Bias für jeden Knoten 805 kann auf null gesetzt werden. Das Trainieren des DNN 800 kann Aktualisieren von Gewichtungen und Bias durch geeignete Techniken beinhalten, wie etwa Rückpropagierung mit Optimierungen. Ground-Truth-Daten können unter anderem Daten, die Objekte innerhalb von Daten vorgeben, oder Daten beinhalten, die einen physischen Parameter vorgeben, z. B. Winkel, Geschwindigkeit, Entfernung oder Winkel eines Objektes bezogen auf ein anderes Objekt.The DNN 800 can be trained to read data, e.g. B. from the CAN bus of the vehicle 105, sensors or another network, to accept as input and to generate a distribution of possible outputs based on the input. The DNN 800 can be trained using ground truth data, that is, data about a real-world condition or state. For example, the DNN 800 may be trained with ground truth data or updated with additional data by a processor of the server 145. The DNN 800 can be transmitted to the vehicle 105 via the network 135. For example, the weights may be initiated using a Gaussian distribution and a bias for each node 805 may be set to zero. Training the DNN 800 may include updating weights and biases through appropriate techniques, such as backpropagation with optimizations. Ground truth data may include, but is not limited to, data that specifies objects within data or data that specifies a physical parameter, e.g. B. Angle, speed, distance or angle of an object relative to another object.

9 ist ein Ablaufdiagramm eines beispielhaften Prozesses 900 zum Erzeugen von Zieldomänendaten aus Quellendomänendaten. Blöcke des Prozesses 900 können von einem Prozessor des Computers 110 und/oder dem Server 145 ausgeführt werden. Der Prozess 900 kann bei Block 905 beginnen, in dem Daten, z. B. ein Bild, aus der Quellendomäne empfangen werden. Die Quellendomänendaten werden bei Block 910 unter Verwendung einer oder mehrerer Quellendomänencodiererschichten des neuronalen Netzwerks auf niedriger Ebene, die für Daten aus der Quellendomäne spezifisch sind, verarbeitet, um eine Darstellung auf niedriger Ebene der Eingabequellendomänendaten zu erzeugen. 9 is a flowchart of an example process 900 for generating target domain data from source domain data. Blocks of process 900 may be executed by a processor of computer 110 and/or server 145. The process 900 may begin at block 905 in which data, e.g. B. an image, received from the source domain. The source domain data is processed at block 910 using one or more low-level source domain encoder layers of the neural network specific to data from the source domain to produce a low-level representation of the input source domain data.

Bei Block 915 wird die Darstellung auf niedriger Ebene unter Verwendung einer oder mehrerer Codiererschichten des neuronalen Netzwerks auf hoher Ebene, die von Daten aus der Quellen- und Zieldomäne gemeinsam genutzt werden, verarbeitet, um eine Einbettung, z. B. latente Attribute, der Eingabezieldomänendaten zu erzeugen. Bei Block 920 werden die Einbettungen der Eingabequellendomänendaten unter Verwendung einer oder mehrerer Decodiererschichten des neuronalen Netzwerks auf hoher Ebene, die von Daten aus der Quellen- und Zieldomäne gemeinsam genutzt werden, verarbeitet, um eine Merkmalsdarstellung auf hoher Ebene von Merkmalen der Eingabequellendomänendaten zu erzeugen.At block 915, the low-level representation is processed using one or more high-level encoder layers of the neural network shared by data from the source and target domains to create an embedding, e.g. B. latent attributes of the input target domain data. At block 920, the embeddings of the input source domain data are processed using one or more high-level decoder layers of the neural network shared by data from the source and target domains to produce a high-level feature representation of features of the input source domain data.

Bei Block 925 wird die Merkmalsdarstellung auf hoher Ebene der Merkmale der Eingabequellendomänendaten unter Verwendung einer oder mehrerer Zieldomänendecodiererschichten des neuronalen Netzwerks auf niedriger Ebene, die spezifisch für das Erzeugen von Daten aus der Zieldomäne sind, verarbeitet, um Ausgabezieldomänendaten zu erzeugen, die aus der Zieldomäne stammen, aber eine ähnliche Semantik wie die Eingabequellendomänendaten aufweisen.At block 925, the high-level feature representation of the features of the input source domain data is processed using one or more low-level target domain decoder layers of the neural network specific to generating data from the target domain to generate output target domain data derived from the target domain , but have similar semantics to the input source domain data.

Bei Block 930 werden eine oder mehrere Gewichtungen des Domänenübertragungsnetzwerks auf Grundlage einer Verlustfunktion aktualisiert. In einer beispielhaften Umsetzung wird die maximale mittlere Abweichung zwischen verschiedenen Einbettungen berechnet. In dieser Umsetzung wird die maximale mittlere Abweichung verwendet, um eine herkömmliche Verlustfunktion zu modifizieren. In einer anderen beispielhaften Umsetzung beinhaltet das Domänenübertragungsnetzwerk einen Diskriminator und der Diskriminator erzeugt eine Vorhersage, zu welcher Domäne eine Einbettung gehört. Die Vorhersage kann mit Ground-Truth-Daten verglichen werden und die Verlustfunktion für den Diskriminator kann auf Grundlage des Vergleichs aktualisiert werden. Zusätzlich oder alternativ können Gewichtungen des Domänenübertragungsnetzwerkes auf Grundlage des Vergleichs aktualisiert werden. Das Domänenübertragungsnetzwerk kann seine Gewichtungen gemäß einer Aktualisierungsregel, z. B. einer ADAM-Aktualisierungsregel, einer Aktualisierungsregel mit stochastischem Gradientenabstieg (SGD), aktualisieren. Der Prozess 900 endet dann.At block 930, one or more weights of the domain communications network are updated based on a loss function. In an exemplary implementation, the maximum average deviation between different embeddings is calculated. In this implementation, the maximum mean deviation is used to modify a traditional loss function. In another exemplary implementation, the domain transfer network includes a discriminator, and the discriminator produces a prediction of which domain an embedding belongs to. The prediction can be compared to ground truth data and the loss function for the discriminator can be updated based on the comparison. Additionally or alternatively, weights of the domain transmission network may be updated based on the comparison. The domain transmission network can change its weights according to an update rule, e.g. B. an ADAM update rule, a stochastic gradient descent (SGD) update rule. Process 900 then ends.

10 ist ein Ablaufdiagramm eines beispielhaften Prozesses 1000 zum Erzeugen von Quellendomänendaten aus Zieldomänendaten. Blöcke des Prozesses 1000 können von einem Prozessor des Computers 110 und/oder dem Server 145 ausgeführt werden. Der Prozess 1000 kann bei Block 1005 beginnen, in dem Daten aus der Zieldomäne empfangen werden. Die Zieldomänendaten werden bei Block 1010 unter Verwendung einer oder mehrerer Zieldomänencodiererschichten des neuronalen Netzwerks auf niedriger Ebene, die für Daten aus der Zieldomäne spezifisch sind, verarbeitet, um eine Darstellung auf niedriger Ebene der Eingabezieldomänendaten zu erzeugen. Bei Block 1015 wird die Darstellung auf niedriger Ebene unter Verwendung der einen oder mehreren Codiererschichten des neuronalen Netzwerks auf hoher Ebene, die von Daten aus der Quellen- und Zieldomäne gemeinsam genutzt werden, verarbeitet, um eine Einbettung der Eingabezieldomänendaten zu erzeugen. 10 is a flowchart of an example process 1000 for generating source domain data from target domain data. Blocks of process 1000 may be executed by a processor of computer 110 and/or server 145. The process 1000 may begin at block 1005 in which data from the target domain is received. The target domain data is processed at block 1010 using one or more low-level target domain encoder layers of the neural network specific to data from the target domain to produce a low-level representation of the input target domain data. At block 1015, the low-level representation is processed using the one or more high-level encoder layers of the neural network shared by data from the source and target domains to produce an embedding of the input target domain data.

Bei Block 1020 wird die Einbettung der Eingabezieldomänendaten unter Verwendung der einen oder mehreren Decodiererschichten des neuronalen Netzwerks auf hoher Ebene, die von Daten aus der Quellen- und Zieldomäne gemeinsam genutzt werden, verarbeitet, um eine Merkmalsdarstellung auf hoher Ebene von Merkmalen der Eingabezieldomänendaten zu erzeugen. Bei Block 1025 wird die Merkmalsdarstellung auf hoher Ebene der Merkmale der Eingabezieldomänendaten unter Verwendung einer oder mehrerer Quellendomänendecodiererschichten des neuronalen Netzwerks auf niedriger Ebene, die spezifisch für das Erzeugen von Daten aus der Quellendomäne sind, verarbeitet, um Ausgabequellendomänendaten zu erzeugen, die aus der Quellendomäne stammen, aber eine ähnliche Semantik wie die Eingabequellendomänendaten aufweisen.At block 1020, the embedding of the input target domain data is processed using the one or more high-level decoder layers of the neural network shared by data from the source and target domains to produce a high-level feature representation of features of the input target domain data. At block 1025, the high-level feature representation of the features of the input target domain data is processed using one or more low-level source domain decoder layers of the neural network specific to generating data from the source domain to generate output source domain data derived from the source domain , but have similar semantics to the input source domain data.

Bei Block 1030 werden eine oder mehrere Gewichtungen des Domänenübertragungsnetzwerks auf Grundlage einer Verlustfunktion aktualisiert. In einer beispielhaften Umsetzung wird die maximale mittlere Abweichung zwischen verschiedenen Einbettungen berechnet. In dieser Umsetzung wird die maximale mittlere Abweichung verwendet, um eine herkömmliche Verlustfunktion zu modifizieren. In einer anderen beispielhaften Umsetzung beinhaltet das Domänenübertragungsnetzwerk einen Diskriminator und der Diskriminator erzeugt eine Vorhersage, zu welcher Domäne eine Einbettung gehört. Die Vorhersage kann mit Ground-Truth-Daten verglichen werden und die Verlustfunktion für den Diskriminator kann auf Grundlage des Vergleichs aktualisiert werden. Zusätzlich oder alternativ können Gewichtungen des Domänenübertragungsnetzwerkes auf Grundlage des Vergleichs aktualisiert werden. Das Domänenübertragungsnetzwerk kann seine Gewichtungen gemäß einer Aktualisierungsregel, z. B. einer ADAM-Aktualisierungsregel, einer Aktualisierungsregel mit stochastischem Gradientenabstieg (SGD), aktualisieren.At block 1030, one or more weights of the domain communications network are updated based on a loss function. In an exemplary implementation, the maximum average deviation between different embeddings is calculated. In this implementation, the maximum mean deviation is used to modify a traditional loss function. In another exemplary implementation, the domain transfer network includes a discriminator, and the discriminator produces a prediction of which domain an embedding belongs to. The prediction can be compared to ground truth data and the loss function for the discriminator can be updated based on the comparison. Additionally or alternatively, weights of the domain transmission network may be updated based on the comparison. The domain transmission network can change its weights according to an update rule, e.g. B. an ADAM update rule, a stochastic gradient descent (SGD) update rule.

Im Allgemeinen können die beschriebenen Rechensysteme und/oder -vorrichtungen ein beliebiges aus einer Reihe von Computerbetriebssystemen einsetzen, einschließlich unter anderem Versionen und/oder Varianten der Anwendung Ford Sync®, der Middleware AppLink/Smart Device Link, des Betriebssystems Microsoft Automotive®, des Betriebssystems Microsoft Windows®, des Betriebssystems Unix (z. B. des Betriebssystems Solaris®, vertrieben durch die Oracle Corporation in Redwood Shores, Kalifornien), des Betriebssystems AIX UNIX, vertrieben durch International Business Machines in Armonk, New York, des Betriebssystems Linux, der Betriebssysteme Mac OSX und iOS, vertrieben durch die Apple Inc. in Cupertino, Kalifornien, des BlackBerry OS, vertrieben durch die Blackberry, Ltd. in Waterloo, Kanada, und des Betriebssystems Android, entwickelt durch die Google, Inc. und die Open Handset Alliance, oder der QNX® CAR Platform for Infotainment, angeboten durch QNX Software Systems. Beispiele für Rechenvorrichtungen beinhalten unter anderem Folgende: einen Fahrzeugbordcomputer, eine Computer-Workstation, einen Server, einen Desktop-, Notebook-, Laptop- oder Handheld-Computer oder ein anderes Rechensystem und/oder eine andere Rechenvorrichtung.In general, the computing systems and/or devices described may employ any of a variety of computer operating systems, including, but not limited to, versions and/or variants of the Ford Sync® application, the AppLink/Smart Device Link middleware, the Microsoft Automotive® operating system, the operating system Microsoft Windows®, the Unix operating system (e.g. the Solaris® operating system, distributed by Oracle Corporation of Redwood Shores, California), the AIX UNIX operating system, distributed by International Business Machines of Armonk, New York, the Linux operating system, the Operating systems Mac OSX and iOS, distributed by Apple Inc. in Cupertino, California, the BlackBerry OS, distributed by Blackberry, Ltd. in Waterloo, Canada, and the Android operating system, developed by Google, Inc. and the Open Handset Alliance, or the QNX® CAR Platform for Infotainment, offered by QNX Software Systems. Examples of computing devices include, but are not limited to, the following: a vehicle onboard computer, a computer workstation, a server, a desktop, notebook, laptop or handheld computer or other computing system and/or other computing device.

Computer und Rechenvorrichtungen beinhalten im Allgemeinen computerausführbare Anweisungen, wobei die Anweisungen durch eine oder mehrere Rechenvorrichtungen ausgeführt werden können, wie etwa durch die vorstehend aufgeführten. Computerausführbare Anweisungen können von Computerprogrammen zusammengestellt oder ausgewertet werden, die unter Verwendung einer Vielfalt von Programmiersprachen und/oder -technologien erstellt werden, einschließlich unter anderem und entweder für sich oder in Kombination Java™, C, C++, Matlab, Simulink, Stateflow, Visual Basic, Java Script, Perl, HTMI, usw. Einige dieser Anwendungen können auf einer virtuellen Maschine zusammengestellt und ausgeführt werden, wie etwa der Java Virtual Machine, der Dalvik Virtual Machine oder dergleichen. Im Allgemeinen empfängt ein Prozessor (z. B. ein Mikroprozessor) Anweisungen, z. B. von einem Speicher, einem computerlesbaren Medium usw., und führt diese Anweisungen aus, wodurch er einen oder mehrere Prozesse durchführt, einschließlich eines oder mehrerer der in dieser Schrift beschriebenen Prozesse. Derartige Anweisungen und andere Daten können unter Verwendung vielfältiger computerlesbarer Medien gespeichert und übertragen werden. Eine Datei in einer Rechenvorrichtung ist im Allgemeinen eine Sammlung von Daten, die auf einem computerlesbaren Medium, wie einem Speichermedium, einem Direktzugriffsspeicher usw., gespeichert sind.Computers and computing devices generally include computer-executable instructions, where the instructions may be executed by one or more computing devices, such as those listed above. Computer-executable instructions may be compiled or evaluated by computer programs created using a variety of programming languages and/or technologies, including, but not limited to, and either alone or in combination, Java™, C, C++, Matlab, Simulink, Stateflow, Visual Basic , Java Script, Perl, HTML, etc. Some of these applications can be compiled and executed on a virtual machine, such as the Java Virtual Machine, the Dalvik Virtual Machine or the like. In general, a processor (e.g. a microprocessor) receives instructions, e.g. B. from memory, a computer-readable medium, etc., and executes those instructions, thereby performing one or more processes, including one or more of the processes described in this document. Such instructions and other data may be stored and transmitted using a variety of computer-readable media. A file in a computing device is generally a collection of data stored on a computer-readable medium such as a storage medium, random access memory, etc.

Ein Speicher kann ein computerlesbares Medium (auch als prozessorlesbares Medium bezeichnet) beinhalten, das ein beliebiges nicht transitorisches (z. B. materielles) Medium beinhaltet, das am Bereitstellen von Daten (z. B. Anweisungen) beteiligt ist, die durch einen Computer (z. B. durch einen Prozessor eines Computers) ausgelesen werden können. Ein solches Medium kann viele Formen annehmen, einschließlich unter anderem nicht flüchtiger Medien und flüchtiger Medien. Nicht flüchtige Medien können zum Beispiel Bild- und Magnetplatten und sonstige dauerhafte Speicher beinhalten. Flüchtige Medien können zum Beispiel einen dynamischen Direktzugriffsspeicher (dynamic random-access memory - DRAM) gehören, der üblicherweise einen Hauptspeicher darstellt. Derartige Anweisungen können durch ein oder mehrere Übertragungsmedien übertragen werden, einschließlich Koaxialkabeln, Kupferdraht und Glasfaser, einschließlich der Drähte, aus denen ein Systembus besteht, der mit einem Prozessor einer ECU gekoppelt ist. Gängige Formen computerlesbarer Medien beinhalten zum Beispiel Folgendes: eine Diskette, eine Folienspeicherplatte, eine Festplatte, ein Magnetband, ein beliebiges anderes magnetisches Medium, eine CD-ROM, eine DVD, ein beliebiges anderes optisches Medium, Lochkarten, Lochstreifen, ein beliebiges anderes physisches Medium mit Lochmustern, einen RAM, einen PROM, einen EPROM, einen FLASH-EEPROM, einen beliebigen anderen Speicherchip oder eine beliebige andere Speicherkassette oder ein beliebiges anderes Medium, das von einem Computer ausgelesen werden kann.Memory may include a computer-readable medium (also referred to as a processor-readable medium), which includes any non-transitory (e.g., tangible) medium that is involved in providing data (e.g., instructions) to be read by a computer ( B. by a processor of a computer) can be read. Such a medium may take many forms, including, but not limited to, non-volatile media and volatile media. Non-volatile media can include, for example, image and magnetic disks and other permanent storage devices. Volatile media may include, for example, dynamic random-access memory (DRAM), which is typically main memory. Such instructions may be transmitted through one or more transmission media, including coaxial cables, copper wire and fiber optics, including Wires that make up a system bus that is coupled to a processor of an ECU. Common forms of computer-readable media include, for example, the following: a floppy disk, a foil storage disk, a hard drive, a magnetic tape, any other magnetic medium, a CD-ROM, a DVD, any other optical medium, punched cards, punched tape, any other physical medium with hole patterns, a RAM, a PROM, an EPROM, a FLASH-EEPROM, any other memory chip or any other memory cartridge or any other medium that can be read by a computer.

Datenbanken, Datendepots oder andere Datenspeicher, die in dieser Schrift beschrieben sind, können verschiedene Arten von Mechanismen zum Speichern von, Zugreifen auf und Abrufen von verschiedenen Arten von Daten beinhalten, einschließlich einer hierarchischen Datenbank, eines Satzes von Dateien in einem Dateisystem, einer Anwendungsdatenbank in einem anwendereigenen Format, eines relationalen Datenbankverwaltungssystems (relational database management system - RDBMS) usw. Jeder derartige Datenspeicher ist im Allgemeinen in einer Rechenvorrichtung beinhaltet, die ein Computerbetriebssystem einsetzt, wie etwa eines der vorstehend erwähnten, und es wird auf eine oder mehrere von vielfältigen Weisen über ein Netzwerk darauf zugegriffen. Ein Dateisystem kann von einem Computerbetriebssystem aus zugänglich sein und es kann Dateien beinhalten, die in verschiedenen Formaten gespeichert sind. Ein RDBMS setzt im Allgemeinen die Structured Query Language (SQL) zusätzlich zu einer Sprache zum Erzeugen, Speichern, Editieren und Ausführen gespeicherter Prozeduren ein, wie etwa die vorangehend erwähnte PL/SQL-Sprache.Databases, data repositories or other data stores described in this document may include various types of mechanisms for storing, accessing and retrieving various types of data, including a hierarchical database, a set of files in a file system, an application database in a user's own format, a relational database management system (RDBMS), etc. Each such data store is generally included in a computing device employing a computer operating system, such as one of those mentioned above, and is implemented in one or more of a variety of ways accessed via a network. A file system may be accessible from a computer operating system and may include files stored in various formats. An RDBMS generally uses the Structured Query Language (SQL) in addition to a language for creating, storing, editing, and executing stored procedures, such as the previously mentioned PL/SQL language.

In einigen Beispielen können Systemelemente als computerlesbare Anweisungen (z. B. Software) auf einer oder mehreren Rechenvorrichtungen (z. B. Servern, Personal Computern usw.) umgesetzt sein, die auf damit assoziierten computerlesbaren Medien (z. B. Platten, Speichern usw.) gespeichert sind. Ein Computerprogrammprodukt kann derartige auf computerlesbaren Medien gespeicherte Anweisungen zum Ausführen der in dieser Schrift beschriebenen Funktionen umfassen.In some examples, system elements may be implemented as computer-readable instructions (e.g., software) on one or more computing devices (e.g., servers, personal computers, etc.) stored on computer-readable media (e.g., disks, memories, etc.) associated therewith .) are saved. A computer program product may include such instructions stored on computer-readable media for performing the functions described in this document.

Hinsichtlich der in dieser Schrift beschriebenen Medien, Prozesse, Systeme, Verfahren, Heuristiken usw. versteht es sich, dass, auch wenn die Schritte derartiger Prozesse usw. als gemäß einer bestimmten Reihenfolge erfolgend beschrieben worden sind, derartige Prozesse jedoch so umgesetzt werden können, dass die beschriebenen Schritte in einer Reihenfolge durchgeführt werden, die von der in dieser Schrift beschriebenen Reihenfolge abweicht. Es versteht sich ferner, dass gewisse Schritte gleichzeitig durchgeführt, andere Schritte hinzugefügt oder gewisse in dieser Schrift beschriebene Schritte weggelassen werden können. Anders ausgedrückt dienen die Beschreibungen von Prozessen in dieser Schrift dem Zweck der Veranschaulichung gewisser Ausführungsformen und sollten keinesfalls dahingehend ausgelegt werden, dass sie die Patentansprüche einschränken.With respect to the media, processes, systems, procedures, heuristics, etc. described in this document, it is to be understood that although the steps of such processes, etc. have been described as occurring in a particular order, such processes may be implemented in such a way that the steps described are carried out in an order that differs from the order described in this document. It is further understood that certain steps may be performed simultaneously, other steps may be added, or certain steps described herein may be omitted. In other words, the descriptions of processes in this document are for the purpose of illustrating certain embodiments and should in no way be construed as limiting the claims.

Dementsprechend versteht es sich, dass die vorstehende Beschreibung veranschaulichend und nicht einschränkend sein soll. Viele Ausführungsformen und Anwendungen, bei denen es sich nicht um die bereitgestellten Beispiele handelt, werden dem Fachmann beim Lesen der vorstehenden Beschreibung ersichtlich. Der Umfang der Erfindung sollte nicht unter Bezugnahme auf die vorstehende Beschreibung festgelegt werden, sondern stattdessen unter Bezugnahme auf die beigefügten Ansprüche in Zusammenhang mit dem vollständigen Umfang von Äquivalenten, zu denen solche Ansprüche berechtigen. Es wird erwartet und ist beabsichtigt, dass es zukünftige Entwicklungen im in dieser Schrift erörterten Stand der Technik geben wird und dass die offenbarten Systeme und Verfahren in derartige zukünftige Ausführungsformen aufgenommen werden. Insgesamt versteht es sich, dass die Erfindung modifiziert und variiert werden kann und ausschließlich durch die folgenden Patentansprüche eingeschränkt ist.Accordingly, it is to be understood that the foregoing description is intended to be illustrative and not restrictive. Many embodiments and applications other than the examples provided will become apparent to those skilled in the art upon reading the foregoing description. The scope of the invention should be determined not with reference to the foregoing description, but rather with reference to the appended claims in conjunction with the full scope of equivalents to which such claims are entitled. It is expected and intended that there will be future developments in the prior art discussed in this document and that the systems and methods disclosed will be incorporated into such future embodiments. Overall, it is to be understood that the invention may be modified and varied and is limited solely by the following claims.

Allen in den Patentansprüchen verwendeten Ausdrücken soll deren allgemeine und gewöhnliche Bedeutung zukommen, wie sie vom Fachmann verstanden wird, sofern in dieser Schrift nicht ausdrücklich etwas Anderes angegeben ist. Insbesondere ist die Verwendung der Singularartikel, wie etwa „ein“, „eine“, „der“, „die“, „das“ usw., dahingehend auszulegen, dass ein oder mehrere der aufgeführten Elemente genannt werden, sofern ein Patentanspruch nicht eine ausdrückliche gegenteilige Einschränkung nennt.All expressions used in the claims are intended to have their general and ordinary meaning as understood by those skilled in the art, unless expressly stated otherwise in this document. In particular, the use of the singular articles, such as "a", "an", "the", "the", "that", etc., is to be interpreted as meaning that one or more of the listed elements are mentioned, unless a patent claim expressly states this states the opposite restriction.

Gemäß der vorliegenden Erfindung ist ein System bereitgestellt, das einen Computer aufweist, der einen Prozessor und einen Speicher beinhaltet, wobei der Speicher Anweisungen speichert, die durch den Prozessor ausführbar sind, um den Prozessor zu Folgendem zu veranlassen: Erzeugen einer Darstellung auf niedriger Ebene der Eingabequellendomänendaten durch Verarbeiten von Quellendomänendaten unter Verwendung einer Quellendomänencodiererschicht eines neuronalen Netzwerks auf niedriger Ebene, die Daten aus der Quellendomäne entspricht, um eine Darstellung auf niedriger Ebene der Eingabequellendomänendaten zu erzeugen; Erzeugen einer Einbettung der Eingabequellendomänendaten durch Verarbeiten der Darstellung auf niedriger Ebene unter Verwendung einer Codiererschicht des neuronalen Netzwerks auf hoher Ebene, die von Daten aus der Quellen- und Zieldomäne gemeinsam genutzt wird; Erzeugen einer Merkmalsdarstellung auf hoher Ebene von Merkmalen der Eingabequellendomänendaten durch Verarbeiten der Einbettung des Eingabequellendomänenbildes unter Verwendung einer Decodiererschicht des neuronalen Netzwerks auf hoher Ebene, die von Daten aus der Quellen- und Zieldomäne gemeinsam genutzt wird, um eine Merkmalsdarstellung auf hoher Ebene von Merkmalen der Eingabequellendomänendaten zu erzeugen; Erzeugen von Ausgabezieldomänendaten in der Zieldomäne, die eine Semantik beinhalten, die den Eingabequellendomänendaten entspricht, durch Verarbeiten der Merkmalsdarstellung auf hoher Ebene der Merkmale der Eingabequellendomänendaten unter Verwendung einer Domänendecodiererschicht des neuronalen Netzwerks auf niedriger Ebene, die Daten aus dem Ziel erzeugen; und Modifizieren einer Verlustfunktion, sodass latente Attribute, die der Einbettung entsprechen, aus einer gleichen Wahrscheinlichkeitsverteilung ausgewählt werden.According to the present invention, there is provided a system comprising a computer including a processor and a memory, the memory storing instructions executable by the processor to cause the processor to: generate a low-level representation of the Input source domain data by processing source domain data using a low-level source domain encoder layer of a neural network corresponding to data from the source domain to form a low-level representation of the input source domain to generate personal data; generating an embedding of the input source domain data by processing the low-level representation using a high-level encoder layer of the neural network shared by data from the source and target domains; Generate a high-level feature representation of features of the input source domain data by processing the embedding of the input source domain image using a high-level decoder layer of the neural network shared by data from the source and target domains to produce a high-level feature representation of features of the input source domain data to create; generating output target domain data in the target domain that includes semantics corresponding to the input source domain data by processing the high-level feature representation of the features of the input source domain data using a low-level domain decoder layer of the neural network that generates data from the target; and modifying a loss function so that latent attributes corresponding to the embedding are selected from an equal probability distribution.

Gemäß einer Ausführungsform sind die Codiererschicht des neuronalen Netzwerks auf niedriger Ebene, die Codiererschicht des neuronalen Netzwerks auf hoher Ebene, die Decodiererschicht des neuronalen Netzwerks auf niedriger Ebene und die Decodiererschicht des neuronalen Netzwerks auf hoher Ebene in neuronalen Faltungsnetzwerken beinhaltet.According to one embodiment, the low-level neural network encoder layer, the high-level neural network encoder layer, the low-level neural network decoder layer, and the high-level neural network decoder layer are included in convolutional neural networks.

Gemäß einer Ausführungsform sind die Codiererschicht des neuronalen Netzwerks auf niedriger Ebene, die Codiererschicht des neuronalen Netzwerks auf hoher Ebene, die Decodiererschicht des neuronalen Netzwerks auf niedriger Ebene und die Decodiererschicht des neuronalen Netzwerks auf hoher Ebene in rekurrenten neuronalen Netzwerken beinhaltet.According to one embodiment, the low-level neural network encoder layer, the high-level neural network encoder layer, the low-level neural network decoder layer, and the high-level neural network decoder layer are included in recurrent neural networks.

Gemäß einer Ausführungsform beinhalten die Eingabequellendomäne und die Zieldomäne Bilddaten, Videodaten und Daten aus menschlicher Sprache.According to one embodiment, the input source domain and the target domain include image data, video data, and human speech data.

Gemäß einer Ausführungsform ist der Prozessor ferner dazu programmiert, die Verlustfunktion durch Berechnen einer maximalen mittleren Abweichung zwischen einem ersten latenten Attribut, das einer Quellendomäne entspricht, und einem zweiten latenten Attribut, das einer Zieldomäne entspricht, zu modifizieren.According to one embodiment, the processor is further programmed to modify the loss function by calculating a maximum average deviation between a first latent attribute corresponding to a source domain and a second latent attribute corresponding to a target domain.

Gemäß einer Ausführungsform ist der Prozessor ferner dazu programmiert, die Verlustfunktion auf Grundlage einer Vorhersage von einem Diskriminator zu modifizieren, wobei die Vorhersage eine Domäne angibt, die einem latenten Attribut entspricht.According to one embodiment, the processor is further programmed to modify the loss function based on a prediction from a discriminator, the prediction indicating a domain corresponding to a latent attribute.

Gemäß einer Ausführungsform umfasst der Diskriminator eine oder mehrere Faltungsschichten, eine oder mehrere Batch-Normalisierungsschichten und eine oder mehrere Schichten einer gleichgerichteten linearen Einheit.According to one embodiment, the discriminator includes one or more convolution layers, one or more batch normalization layers, and one or more rectified linear unit layers.

Gemäß einer Ausführungsform umfasst eine letzte Schicht des Diskriminators eine Softmax-Schicht.According to one embodiment, a final layer of the discriminator comprises a softmax layer.

Gemäß einer Ausführungsform erzeugt der Diskriminator einen mehrdimensionalen Vektor, der die Vorhersage darstellt.According to one embodiment, the discriminator generates a multidimensional vector representing the prediction.

Gemäß einer Ausführungsform umfasst der mehrdimensionale Vektor einen vierdimensionalen Vektor, der vier Domänen entspricht.According to one embodiment, the multidimensional vector includes a four-dimensional vector corresponding to four domains.

Gemäß einer Ausführungsform umfasst der mehrdimensionale Vektor einen zweidimensionalen Vektor, der zwei Domänen entspricht.According to one embodiment, the multidimensional vector includes a two-dimensional vector corresponding to two domains.

Gemäß einer Ausführungsform umfasst eine Verlustfunktion für den Diskriminator LD = Z̃AAlogD(ZAA)+Z̃BBlogD(ZBB) + Z̃ABlogD (ZAB) +ZBAlogD (ZBA)' wobei LD als die Verlustfunktion definiert ist, Z̃AA, Z̃BB, Z̃AB, Z̃BA als Kennzeichnungen für die entsprechende Domäne definiert sind, log D als eine Schätzung definiert ist, dass die Wahrscheinlichkeit für das latente Attribut einer spezifischen Domäne entspricht, und ZAA, ZAB, ZBA, ZBB als vorhergesagte Domänenausgaben definiert sind.According to one embodiment, a loss function for the discriminator comprises L D = Z̃ AA logD(Z AA )+Z̃ BB logD(Z BB ) + Z̃ ABl ogD (Z AB ) +Z BA logD (Z BA ) ' where L D is the loss function is defined, Z̃ AA , Z̃ BB , Z̃ AB , Z̃ BA are defined as labels for the corresponding domain, log D is defined as an estimate that the probability for the latent attribute corresponds to a specific domain, and Z AA , Z AB , Z BA , Z BB are defined as predicted domain outputs.

Gemäß einer Ausführungsform ist der Prozessor ferner dazu programmiert, eine Darstellung auf niedriger Ebene der Eingabezieldomänendaten durch Verarbeiten der Eingabezieldomänendaten unter Verwendung einer Zieldomänencodiererschicht eines neuronalen Netzwerks auf niedriger Ebene, die spezifisch für Daten aus der Zieldomäne ist, zu erzeugen; eine Einbettung der Eingabezieldomänendaten durch Verarbeiten der Darstellung auf niedriger Ebene unter Verwendung einer Codiererschicht des neuronalen Netzwerks auf hoher Ebene, die von Daten aus der Quellen- und Zieldomäne gemeinsam genutzt wird, zu erzeugen; eine Merkmalsdarstellung auf hoher Ebene von Merkmalen der Eingabezieldomänendaten durch Verarbeiten der Einbettung des Eingabezieldomänenbildes unter Verwendung der Decodiererschicht des neuronalen Netzwerks auf hoher Ebene, die von Daten aus der Quellen- und Zieldomäne gemeinsam genutzt wird, zu erzeugen; und Ausgabequellendomänendaten aus der Quellendomäne, die eine Semantik beinhalten, die den Eingabezieldomänendaten entspricht, durch Verarbeiten der Merkmalsdarstellung auf hoher Ebene der Merkmale des Zielquellendomänenbilds unter Verwendung einer Quellendomänendecodiererschicht des neuronalen Netzwerks auf niedriger Ebene, die spezifisch für Daten aus der Quellendomäne ist, zu erzeugen.According to one embodiment, the processor is further programmed to generate a low-level representation of the input target domain data by processing the input target domain data using a low-level target domain encoder layer of a neural network specific to data from the target domain; an embedding of the input target domain data through processing generate the low-level representation using a high-level encoder layer of the neural network shared by data from the source and target domains; generate a high-level feature representation of features of the input target domain data by processing the embedding of the input target domain image using the high-level decoder layer of the neural network shared by data from the source and target domains; and generate output source domain data from the source domain containing semantics corresponding to the input target domain data by processing the high-level feature representation of the features of the target source domain image using a low-level source domain decoder layer of the neural network specific to data from the source domain.

Gemäß der vorliegenden Erfindung beinhaltet ein Verfahren Folgendes: Erzeugen einer Darstellung auf niedriger Ebene der Eingabequellendomänendaten durch Verarbeiten von Quellendomänendaten unter Verwendung einer Quellendomänencodiererschicht eines neuronalen Netzwerks auf niedriger Ebene, die Daten aus der Quellendomäne entspricht, um eine Darstellung auf niedriger Ebene der Eingabequellendomänendaten zu erzeugen; Erzeugen einer Einbettung der Eingabequellendomänendaten durch Verarbeiten der Darstellung auf niedriger Ebene unter Verwendung einer Codiererschicht des neuronalen Netzwerks auf hoher Ebene, die von Daten aus der Quellen- und Zieldomäne gemeinsam genutzt wird; Erzeugen einer Merkmalsdarstellung auf hoher Ebene von Merkmalen der Eingabequellendomänendaten durch Verarbeiten der Einbettung des Eingabequellendomänenbildes unter Verwendung einer Decodiererschicht des neuronalen Netzwerks auf hoher Ebene, die von Daten aus der Quellen- und Zieldomäne gemeinsam genutzt wird, um eine Merkmalsdarstellung auf hoher Ebene von Merkmalen der Eingabequellendomänendaten zu erzeugen; Erzeugen von Ausgabezieldomänendaten in der Zieldomäne, die eine Semantik beinhalten, die den Eingabequellendomänendaten entspricht, durch Verarbeiten der Merkmalsdarstellung auf hoher Ebene der Merkmale der Eingabequellendomänendaten unter Verwendung einer Domänendecodiererschicht des neuronalen Netzwerks auf niedriger Ebene, die Daten aus dem Ziel erzeugen; und Modifizieren einer Verlustfunktion, sodass latente Attribute, die der Einbettung entsprechen, aus einer gleichen Wahrscheinlichkeitsverteilung ausgewählt werden.According to the present invention, a method includes: generating a low-level representation of the input source domain data by processing source domain data using a low-level source domain encoder layer of a neural network corresponding to data from the source domain to generate a low-level representation of the input source domain data; generating an embedding of the input source domain data by processing the low-level representation using a high-level encoder layer of the neural network shared by data from the source and target domains; Generate a high-level feature representation of features of the input source domain data by processing the embedding of the input source domain image using a high-level decoder layer of the neural network shared by data from the source and target domains to produce a high-level feature representation of features of the input source domain data to create; generating output target domain data in the target domain that includes semantics corresponding to the input source domain data by processing the high-level feature representation of the features of the input source domain data using a low-level domain decoder layer of the neural network that generates data from the target; and modifying a loss function so that latent attributes corresponding to the embedding are selected from an equal probability distribution.

In einem Aspekt der Erfindung sind die Codiererschicht des neuronalen Netzwerks auf niedriger Ebene, die Codiererschicht des neuronalen Netzwerks auf hoher Ebene, die Decodiererschicht des neuronalen Netzwerks auf niedriger Ebene und die Decodiererschicht des neuronalen Netzwerks auf hoher Ebene in neuronalen Faltungsnetzwerken beinhaltet.In one aspect of the invention, the low-level neural network encoder layer, the high-level neural network encoder layer, the low-level neural network decoder layer, and the high-level neural network decoder layer are included in convolutional neural networks.

In einem Aspekt der Erfindung sind die Codiererschicht des neuronalen Netzwerks auf niedriger Ebene, die Codiererschicht des neuronalen Netzwerks auf hoher Ebene, die Decodiererschicht des neuronalen Netzwerks auf niedriger Ebene und die Decodiererschicht des neuronalen Netzwerks auf hoher Ebene in rekurrenten neuronalen Netzwerken beinhaltet.In one aspect of the invention, the low-level neural network encoder layer, the high-level neural network encoder layer, the low-level neural network decoder layer, and the high-level neural network decoder layer are included in recurrent neural networks.

In einem Aspekt der Erfindung beinhalten die Eingabequellendomäne und die Zieldomäne Bilddaten, Videodaten und Daten aus menschlicher Sprache.In one aspect of the invention, the input source domain and the target domain include image data, video data and human speech data.

In einem Aspekt der Erfindung beinhaltet das Verfahren Modifizieren der Verlustfunktion durch Berechnen einer maximalen mittleren Abweichung zwischen einem ersten latenten Attribut, das einer Quellendomäne entspricht, und einem zweiten latenten Attribut, das einer Zieldomäne entspricht.In one aspect of the invention, the method includes modifying the loss function by calculating a maximum mean deviation between a first latent attribute corresponding to a source domain and a second latent attribute corresponding to a target domain.

In einem Aspekt der Erfindung beinhaltet das Verfahren Modifizieren der Verlustfunktion auf Grundlage einer Vorhersage von einem Diskriminator, wobei die Vorhersage eine Domäne angibt, die einem latenten Attribut entspricht.In one aspect of the invention, the method includes modifying the loss function based on a prediction from a discriminator, the prediction indicating a domain corresponding to a latent attribute.

In einem Aspekt der Erfindung umfasst der Diskriminator eine oder mehrere Faltungsschichten, eine oder mehrere Batch-Normalisierungsschichten und eine oder mehrere Schichten einer gleichgerichteten linearen Einheit.In one aspect of the invention, the discriminator includes one or more convolution layers, one or more batch normalization layers, and one or more rectified linear unit layers.

Claims (15)

Verfahren, umfassend: Erzeugen einer Darstellung auf niedriger Ebene der Eingabequellendomänendaten durch Verarbeiten von Quellendomänendaten unter Verwendung einer Quellendomänencodiererschicht eines neuronalen Netzwerks auf niedriger Ebene, die Daten aus der Quellendomäne entspricht, um eine Darstellung auf niedriger Ebene der Eingabequellendomänendaten zu erzeugen; Erzeugen einer Einbettung der Eingabequellendomänendaten durch Verarbeiten der Darstellung auf niedriger Ebene unter Verwendung einer Codiererschicht des neuronalen Netzwerks auf hoher Ebene, die von Daten aus der Quellen- und Zieldomäne gemeinsam genutzt wird; Erzeugen einer Merkmalsdarstellung auf hoher Ebene von Merkmalen der Eingabequellendomänendaten durch Verarbeiten der Einbettung des Eingabequellendomänenbildes unter Verwendung einer Decodiererschicht des neuronalen Netzwerks auf hoher Ebene, die von Daten aus der Quellen- und Zieldomäne gemeinsam genutzt wird, um eine Merkmalsdarstellung auf hoher Ebene von Merkmalen der Eingabequellendomänendaten zu erzeugen; Erzeugen von Ausgabezieldomänendaten in der Zieldomäne, die eine Semantik beinhalten, die den Eingabequellendomänendaten entspricht, durch Verarbeiten der Merkmalsdarstellung auf hoher Ebene der Merkmale der Eingabequellendomänendaten unter Verwendung einer Domänendecodiererschicht des neuronalen Netzwerks auf niedriger Ebene, die Daten aus dem Ziel erzeugen; und Modifizieren einer Verlustfunktion, sodass latente Attribute, die der Einbettung entsprechen, aus einer gleichen Wahrscheinlichkeitsverteilung ausgewählt werden.A method comprising: generating a low-level representation of the input source domain data by processing source domain data using a low-level source domain encoder layer of a neural network corresponding to data from the source domain to generate a low-level representation of the input source domain data; generating an embedding of the input source domain data by processing the low-level representation using a high-level encoder layer of the neural network shared by data from the source and target domains; Generate a high-level feature representation of features of the input source domain data by processing the embedding of the input source domain image using a high-level decoder layer of the neural network shared by data from the source and target domains to produce a high-level feature representation of features of the input source domain data to create; generating output target domain data in the target domain that includes semantics corresponding to the input source domain data by processing the high-level feature representation of the features of the input source domain data using a low-level domain decoder layer of the neural network that generates data from the target; and modifying a loss function so that latent attributes corresponding to the embedding are selected from an equal probability distribution. Verfahren nach Anspruch 1, wobei die Codiererschicht des neuronalen Netzwerks auf niedriger Ebene, die Codiererschicht des neuronalen Netzwerks auf hoher Ebene, die Decodiererschicht des neuronalen Netzwerks auf niedriger Ebene und die Decodiererschicht des neuronalen Netzwerks auf hoher Ebene in neuronalen Faltungsnetzwerken beinhaltet sind.Procedure according to Claim 1 , wherein the low-level neural network encoder layer, the high-level neural network encoder layer, the low-level neural network decoder layer, and the high-level neural network decoder layer are included in convolutional neural networks. Verfahren nach Anspruch 1, wobei die Codiererschicht des neuronalen Netzwerks auf niedriger Ebene, die Codiererschicht des neuronalen Netzwerks auf hoher Ebene, die Decodiererschicht des neuronalen Netzwerks auf niedriger Ebene und die Decodiererschicht des neuronalen Netzwerks auf hoher Ebene in rekurrenten neuronalen Netzwerken beinhaltet sind.Procedure according to Claim 1 , wherein the low-level neural network encoder layer, the high-level neural network encoder layer, the low-level neural network decoder layer, and the high-level neural network decoder layer are included in recurrent neural networks. Verfahren nach Anspruch 1, wobei die Eingabequellendomäne und die Zieldomäne Bilddaten, Videodaten und Daten aus menschlicher Sprache beinhalten.Procedure according to Claim 1 , where the input source domain and the target domain include image data, video data and human language data. Verfahren nach Anspruch 1, wobei der Prozessor ferner dazu programmiert ist, die Verlustfunktion durch Berechnen einer maximalen mittleren Abweichung zwischen einem ersten latenten Attribut, das einer Quellendomäne entspricht, und einem zweiten latenten Attribut, das einer Zieldomäne entspricht, zu modifizieren.Procedure according to Claim 1 , wherein the processor is further programmed to modify the loss function by calculating a maximum mean deviation between a first latent attribute corresponding to a source domain and a second latent attribute corresponding to a target domain. Verfahren nach Anspruch 1, wobei der Prozessor ferner dazu programmiert ist, die Verlustfunktion auf Grundlage einer Vorhersage von einem Diskriminator zu modifizieren, wobei die Vorhersage eine Domäne angibt, die einem latenten Attribut entspricht.Procedure according to Claim 1 , wherein the processor is further programmed to modify the loss function based on a prediction from a discriminator, the prediction indicating a domain corresponding to a latent attribute. Verfahren nach Anspruch 6, wobei der Diskriminator eine oder mehrere Faltungsschichten, eine oder mehrere Batch-Normalisierungsschichten und eine oder mehrere Schichten einer gleichgerichteten linearen Einheit umfasst.Procedure according to Claim 6 , wherein the discriminator includes one or more convolution layers, one or more batch normalization layers, and one or more rectified linear unit layers. Verfahren nach Anspruch 7, wobei eine letzte Schicht des Diskriminators eine Softmax-Schicht umfasst.Procedure according to Claim 7 , where a final layer of the discriminator includes a softmax layer. Verfahren nach Anspruch 6, wobei der Diskriminator einen mehrdimensionalen Vektor, der die Vorhersage darstellt, erzeugt.Procedure according to Claim 6 , where the discriminator produces a multidimensional vector representing the prediction. Verfahren nach Anspruch 9, wobei der mehrdimensionale Vektor einen vierdimensionalen Vektor, der vier Domänen entspricht, umfasst.Procedure according to Claim 9 , wherein the multidimensional vector includes a four-dimensional vector corresponding to four domains. Verfahren nach Anspruch 9, wobei der mehrdimensionale Vektor einen zweidimensionalen Vektor, der zwei Domänen entspricht, umfasst.Procedure according to Claim 9 , where the multidimensional vector comprises a two-dimensional vector corresponding to two domains. Verfahren nach Anspruch 6, wobei eine Verlustfunktion für den Diskriminator LD = Z̃AAlog D(ZAA)+Z̃BBlog D(ZBB) + Z̃ABlog D(ZAB)+Z̃BAlog D(ZBA), umfasst, wobei LD als die Verlustfunktion definiert ist, Z̃AA , Z̃BB , Z̃AB , Z̃BA als Kennzeichnungen für die entsprechende Domäne definiert sind, log D als eine Schätzung definiert ist, dass die Wahrscheinlichkeit für das latente Attribut einer spezifischen Domäne entspricht, und ZAA, ZAB, ZBA, ZBB als vorhergesagte Domänenausgaben definiert sind.Procedure according to Claim 6 , where a loss function for the discriminator includes LD D = Z̃ AA log D(Z AA )+Z̃ BB log D(Z BB ) + Z̃ AB log D(Z AB )+Z̃ BA log D(Z BA ), where L D is defined as the loss function, Z̃ AA , Z̃ BB , Z̃ AB , Z̃ BA are defined as labels for the corresponding domain, log D is defined as an estimate that the probability for the latent attribute corresponds to a specific domain, and Z AA , Z AB , Z BA , Z BB are defined as predicted domain outputs. Verfahren nach Anspruch 1, wobei der Prozessor ferner dazu definiert ist, eine Darstellung auf niedriger Ebene der Eingabezieldomänendaten durch Verarbeiten der Eingabezieldomänendaten unter Verwendung einer Zieldomänencodiererschicht eines neuronalen Netzwerks auf niedriger Ebene, die spezifisch für Daten aus der Zieldomäne ist, zu erzeugen; eine Einbettung der Eingabezieldomänendaten durch Verarbeiten der Darstellung auf niedriger Ebene unter Verwendung einer Codiererschicht des neuronalen Netzwerks auf hoher Ebene, die von Daten aus der Quellen- und Zieldomäne gemeinsam genutzt wird, zu erzeugen; eine Merkmalsdarstellung auf hoher Ebene von Merkmalen der Eingabezieldomänendaten durch Verarbeiten der Einbettung des Eingabezieldomänenbildes unter Verwendung der Decodiererschicht des neuronalen Netzwerks auf hoher Ebene, die von Daten aus der Quellen- und Zieldomäne gemeinsam genutzt wird, zu erzeugen; und Ausgabequellendomänendaten aus der Quellendomäne, die eine Semantik beinhalten, die den Eingabezieldomänendaten entspricht, durch Verarbeiten der Merkmalsdarstellung auf hoher Ebene der Merkmale des Zielquellendomänenbilds unter Verwendung einer Quellendomänendecodiererschicht des neuronalen Netzwerks auf niedriger Ebene, die spezifisch für Daten aus der Quellendomäne ist, zu erzeugen.Procedure according to Claim 1 , wherein the processor is further defined to generate a low-level representation of the input target domain data by processing the input target domain data using a target domain encoder layer of a low-level neural network specific to data from the target domain; generate an embedding of the input target domain data by processing the low-level representation using a high-level encoder layer of the neural network shared by data from the source and target domains; generate a high-level feature representation of features of the input target domain data by processing the embedding of the input target domain image using the high-level decoder layer of the neural network shared by data from the source and target domains; and generate output source domain data from the source domain containing semantics corresponding to the input target domain data by processing the high-level feature representation of the features of the target source domain image using a low-level source domain decoder layer of the neural network specific to data from the source domain. Verfahren nach Anspruch 13, wobei die Codiererschicht des neuronalen Netzwerks auf niedriger Ebene, die Codiererschicht des neuronalen Netzwerks auf hoher Ebene, die Decodiererschicht des neuronalen Netzwerks auf niedriger Ebene und die Decodiererschicht des neuronalen Netzwerks auf hoher Ebene in neuronalen Faltungsnetzwerken beinhaltet sind.Procedure according to Claim 13 , wherein the low-level neural network encoder layer, the high-level neural network encoder layer, the low-level neural network decoder layer, and the high-level neural network decoder layer are included in convolutional neural networks. System, umfassend einen Computer, der dazu programmiert ist, die Verfahren nach einem der Ansprüche 1-14 durchzuführen.System comprising a computer programmed to carry out the methods according to one of the Claims 1 - 14 to carry out.
DE102022111402.3A 2022-05-06 2022-05-06 GENERATIVE DOMAIN ADAPTATION IN A NEURONAL NETWORK Pending DE102022111402A1 (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
DE102022111402.3A DE102022111402A1 (en) 2022-05-06 2022-05-06 GENERATIVE DOMAIN ADAPTATION IN A NEURONAL NETWORK

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
DE102022111402.3A DE102022111402A1 (en) 2022-05-06 2022-05-06 GENERATIVE DOMAIN ADAPTATION IN A NEURONAL NETWORK

Publications (1)

Publication Number Publication Date
DE102022111402A1 true DE102022111402A1 (en) 2023-11-09

Family

ID=88414263

Family Applications (1)

Application Number Title Priority Date Filing Date
DE102022111402.3A Pending DE102022111402A1 (en) 2022-05-06 2022-05-06 GENERATIVE DOMAIN ADAPTATION IN A NEURONAL NETWORK

Country Status (1)

Country Link
DE (1) DE102022111402A1 (en)

Similar Documents

Publication Publication Date Title
DE102018121595B4 (en) UNSUPERVISED TRAINING OF AGENTS FOR AUTONOMOUS DRIVING APPLICATIONS
DE102021108470A1 (en) REALISTIC PICTURE PERSPECTIVE TRANSFORMATION USING NEURAL NETWORKS
DE102020122357A1 (en) DRIVER AWARENESS SYSTEM
DE102020122086A1 (en) MEASURING CONFIDENCE IN DEEP NEURAL NETWORKS
DE102020128978A1 (en) TRAINING DEEP NEURAL NETWORKS WITH SYNTHETIC IMAGES
DE102021112616A1 (en) SELF-MONITORED ESTIMATION OF A WATCHED VEHICLE FLOAT
EP3828758A1 (en) Object classification method, object classification circuit, motor vehicle
DE102021128041A1 (en) IMPROVEMENT OF A VEHICLE NEURAL NETWORK
DE102021109395A1 (en) METHODS, SYSTEMS AND DEVICES FOR USER UNDERSTANDABLE EXPLAINABLE LEARNING MODELS
DE102021101281A1 (en) PRIORITY VEHICLE MANAGEMENT
DE102022123187A1 (en) Adaptive reduction of neural network systems
DE102022132111A1 (en) SYSTEMS AND METHODS FOR DETECTING DEEP NEURAL NETWORK INFERENCE QUALITY USING IMAGE/DATA MANIPULATION WITHOUT GROUND TRUTH INFORMATION
DE102021104178A1 (en) DYNAMICALLY ROUTED FIELD DISCRIMINATOR
DE102021122407A1 (en) SEGMENTATION AND CLASSIFICATION OF POINT CLOUD DATA
DE102020127051A1 (en) Method for determining safety-critical output values using a data analysis device for a technical entity
DE102023209384A1 (en) SYSTEM AND METHOD FOR DISTRIBUTION-AWARENESS TARGET PREDICTION FOR MODULAR AUTONOMOUS VEHICLE CONTROL
DE102022123358A1 (en) FREQUENCY-BASED FEATURE RESTRICTION FOR A NEURAL NETWORK
US20220188621A1 (en) Generative domain adaptation in a neural network
DE102023100515A1 (en) CALIBRATION OF HOLOGRAPHIC DISPLAYS THROUGH MACHINE LEARNING
DE102021131484A1 (en) MEASURING TRUST IN DEEP NEURAL NETWORKS
DE102022127647A1 (en) CALIBRATING PARAMETERS WITHIN A VIRTUAL ENVIRONMENT USING REINFORCEMENT LEARNING
DE102021107247A1 (en) DOMAIN TRANSLATION NETWORK TO PERFORM AN IMAGE TRANSLATION
DE102022123257A1 (en) Selective elimination of the counteracting robustness features of neural networks
DE102022125228A1 (en) AUTOMATED DRIVING SYSTEM WITH THE DESIRED LEVEL OF DRIVING AGGRESSIVITY
DE102020127253A1 (en) QUANTIFYING PHOTOREALISM IN SIMULATED DATA WITH GAN

Legal Events

Date Code Title Description
R082 Change of representative

Representative=s name: BONSMANN - BONSMANN - FRANK PATENTANWAELTE, DE