EP4256475A1 - Comparing a first artificial neural network with a second artificial neural network - Google Patents

Comparing a first artificial neural network with a second artificial neural network

Info

Publication number
EP4256475A1
EP4256475A1 EP21815132.2A EP21815132A EP4256475A1 EP 4256475 A1 EP4256475 A1 EP 4256475A1 EP 21815132 A EP21815132 A EP 21815132A EP 4256475 A1 EP4256475 A1 EP 4256475A1
Authority
EP
European Patent Office
Prior art keywords
ann
data space
input data
result
mapping
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
EP21815132.2A
Other languages
German (de)
French (fr)
Inventor
Fabian Woitschek
Georg Schneider
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.)
ZF Friedrichshafen AG
Original Assignee
ZF Friedrichshafen AG
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 ZF Friedrichshafen AG filed Critical ZF Friedrichshafen AG
Publication of EP4256475A1 publication Critical patent/EP4256475A1/en
Pending legal-status Critical Current

Links

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/045Combinations of networks
    • 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

Definitions

  • the present invention relates to a method for comparing a first artificial intelligence with a second artificial intelligence.
  • the invention is based on the object of creating a comparison option for artificial intelligences or artificial neural networks.
  • a method for comparing a first artificial neural network, hereinafter referred to as ANN, with a second ANN, the first ANN and the second ANN forming a first and a second mapping from an input data space to a result data space with the following steps : specifying a first input data space to the first ANN; Predetermining or estimating a first partition from subsets of the first input data space with a plurality of data points, with each data point being assigned a mapping result of the first ANN from the result data space, with each subset together with an associated mapping result of the first ANN forming a first mapping pair; determining second mapping pairs of the second ANN, each mapping pair containing a data point from the input data space and an associated mapping result from the result data space; Comparing the second pairs of images with the first pairs of images in order to assess the second ANN with regard to its similarity or difference to the first ANN.
  • An artificial neural network is in particular a network of networked artificial neurons that is simulated in a computer program.
  • the artificial neurons are typically arranged on different layers.
  • the artificial neural network comprises an input layer and an output layer (output layer), whose neuron output is the only one of the artificial neural network that is visible. Layers lying between the input layer and the output layer are typically referred to as hidden layers.
  • an architecture or topology of an artificial neural network is first initiated and then trained in a training phase for a specific task or for a plurality of tasks in a training phase.
  • topology of an ANN includes all aspects relating to the structure of an ANN. This includes, for example, the number of neurons in the ANN, the allocation of the neurons to the individual layers of the ANN, the number of layers in an ANN, the networking of the neurons and the weighting of the networking.
  • architecture of an ANN means its initial topology, i.e. its topology before the ANN was trained.
  • the training of the artificial neural network typically includes changing a weight of a connection between two artificial neurons of the artificial neural network.
  • the weight contains information about the strength of the consideration of an input of a neuron.
  • the training of the artificial neural network can also develop new connections between artificial neurons, deleting existing connections between artificial neurons, adjusting threshold values of the artificial neurons and/or adding or deleting artificial neurons.
  • a partition (also decomposition) of a set M is a set P whose elements are nonempty subsets of M such that every element of M is contained in exactly one element of P.
  • A is a subset of B if every element of A is also in B.
  • An edge of a set is its boundary. The border may or may not be included in the set.
  • a vicinity of a subset edge lies within the subset and is adjacent to the edge. The close range can be determined by a predetermined maximum distance from the edge.
  • the subset boundary of a subset can also be referred to as the decision boundary of the associated ANN.
  • a mapping is a relationship between two sets that assigns each element of one set, in this patent application an input data space, to exactly one element of the other set, in this patent application a result data space.
  • a mapping result is the result of a mapping for a data point from the input data space.
  • a mapping pair is the pair of a data point from the input data space with its associated mapping result.
  • An input data space is a set of data that contains all conceivable or well-defined input data for an ANN.
  • a result data space is a set that contains all conceivable result data of an ANN. This patent application is based on the assumption that an input data space can be partitioned into subsets or data points, with each element, ie a subset or a data point, of the partition being mapped to a different mapping result from the result data space. Accordingly, estimating a partition of the input data space corresponds to estimating decision boundaries.
  • An image sensor is, for example, a camera, a radar sensor or a lidar sensor that captures real image data.
  • Image data generated by software-supported methods are artificial image data, such as frequency images, that contain a collection of pixels with specific properties. The properties can relate to the pixels themselves, such as their gray value, or to a relationship between the pixels, such as gradient or frequency.
  • Computer program products typically include a sequence of instructions that, when the program is loaded, cause the hardware to perform a specific method that leads to a specific result.
  • the basic idea of the invention is to examine the behavior of a first ANN and a second ANN for certain input data and to characterize the ANN comparatively based on a different or identical behavior of the first or second ANN with regard to the input data.
  • An ANN defines a mapping from an (example two-dimensional) input data space to a result data space.
  • the mapping depends significantly on the purpose of the artificial intelligence, for example it is conceivable to classify data points of the input data space with regard to their properties.
  • a classification result such as "tree” or "house” from the result data space is assigned to the data points from the input data space.
  • the result data space does not contain any discrete elements such as "house” or “tree”, but is continuous.
  • an ANN maps input data to a rational number.
  • an input data space of an ANN can be broken down into a partition, so that each element of the partition can be assigned an element from the result data space.
  • ANNs Based on these pairs of images, i.e. pairs from the input data space and the result data space, ANNs can be compared by comparing pairs of images of the second ANN with pairs of images or the image of the first ANN.
  • White box means that the entire ANN is known, i.e. its entire topology, and can be precisely observed during operation. It is thus possible for the user to understand the internal calculations and to be able to monitor them at any time. This applies, for example, to a specially developed ANN. However, this is not possible with black-box systems. The user can only observe the input data and the output of the ANN on this data. It is not possible for him to understand the calculation in the ANN and he has no information about the topology of the ANN. This applies, for example, to a purchased ANN.
  • a second ANN with an unknown partition of the input data space that is to be compared with a first ANN
  • the first ANN being able to have both a known and an unknown partition of the input data space. If the first partition of the first ANN is unknown, mapping pairs can be determined both for the first and for the second ANN and the mapping pairs can be compared with one another. If, on the other hand, the partition of the first ANN is known, i.e. it is a matter of white-box artificial intelligence, then it is sufficient to compare the mapping pairs of the second ANN with the first partition in connection with the mapping of the first ANN.
  • the comparison is used to assess the similarity between the first training data, which was used to train the first ANN, and the second training data, which was used to train the second ANN.
  • Training data significantly influence the behavior of an ANN.
  • identity of the first and second training data can only be assumed if the comparison of the pairs of images of the second ANN with the pairs of images of the first ANN produces no or only minor differences.
  • the comparison is used to assess the similarity between a first architecture of the first ANN and a second architecture of the second ANN.
  • a similarity of the first and second architecture can be considered if the comparison of the mapping pairs of the second ANN with the mapping pairs of the first ANN produces no differences or only minor differences or if the result of the comparison shows certain similarities and differences between the mapping pairs of the second ANN and the mapping pairs of the first ANN produces, which are to be defined application-specifically with regard to the ANN to be compared.
  • pairs of images with data points from the input data space which are located within a predetermined vicinity of a subset edge of a subset of the first partition, are specified.
  • this aspect can be illustrated by adding a region close to the partition to each subset of the partition Subset edge is set.
  • the behavior of the ANN on data points contained in the close range is examined. i.e. it is examined whether the first ANN supplies different result data for input data from the specified close range than the second artificial intelligence.
  • a minimum disturbance is determined, which is to be linked to the data point from the input data space, so that the mapping result from the result data space associated with the disturbed data point from the input data space differs from the associated mapping result of the undisturbed data point. It goes without saying that it is advantageous to determine minimum disturbances for a large number of data points.
  • the first ANN can be compared with the second ANN to determine whether the second ANN also determines a different result for the input data with and without interference. In this case, it could be concluded that the first partition is locally identical or at least locally similar to the second partition.
  • the input data space contains data that was captured by an image sensor.
  • This can be image data, radar data and/or lidar data, for example, which serve as input data for an ANN.
  • the input data space contains image data that was generated using software-supported methods, ie was not recorded by a sensor. These include, for example, pixel values with specific predetermined properties, for example in terms of a frequency or a gradient.
  • a computer program product performs the steps of a method as described above when the computer program product runs on a computer, in particular an in-vehicle computer.
  • the computer program product produces an effect, namely a characterizing comparison of two ANNs.
  • Figure 1 is a schematic block diagram of an embodiment of the invention.
  • FIG. 2 shows a basic sketch for an exemplary explanation of an embodiment of the invention
  • FIG. 3 shows a basic sketch for an exemplary explanation of an embodiment of the invention.
  • the accompanying drawings are provided to provide a further understanding of embodiments of the invention. They illustrate embodiments and, together with the description, serve to explain principles and concepts of the invention. Other embodiments and many of the foregoing advantages will become apparent by reference to the drawings. The elements of the drawings are not necessarily shown to scale with respect to one another.
  • FIG. 1 shows a method for comparing a first ANN with a second ANN, the first ANN and the second ANN each forming a first and a second mapping from an input data space to a result data space, with steps S1 to S4.
  • step S1 a first input data space is specified for the first ANN.
  • step S2 a partition is specified or estimated from subsets of the first input data space, in particular calculated, with each subset of the first partition being assigned a mapping result of the first ANN from the result data space. If a partition is calculated, this means that it is determined by an estimate.
  • mapping pairs of the second ANN are determined, each mapping pair containing a data point from the input data space and an associated mapping result from the result data space.
  • step S4 the mapping pairs of the second ANN are compared with the first partition to the second ANN in terms of their similarity or to assess the difference to the first ANN.
  • FIG. 2 shows a basic sketch to illustrate an embodiment of the invention.
  • An input data space 19 which is divided into a partition 13 is shown in FIG.
  • the partition 13 comprises three subsets 15, 16 and 17.
  • the subsets 15, 16 and 17 are delimited from one another by a subset edge 11.
  • a region 12 close to the edge 11 of the subset is shown in an illustrated manner within the subset 15 .
  • the subset edge 12 is only shown for the subset 15, it goes without saying that the subsets 16 and 17 also have a comparable subset edge within these subsets.
  • the subset 15 contains a plurality of data points 1 that are located within the subset 15 at a distance from the edge 12 of the subset.
  • the subset 15 includes data points 2 that are located within the subset 15 and within the subset boundary 12 .
  • Subset 16 includes multiple data points 3.
  • Subset 17 includes multiple data points 4.
  • An ANN that processes data from the input data space 19 can, for example, be in the form of a classifying ANN. Accordingly, an ANN would assign an object “house” to data points 1 and 2 of subset 15, an object “tree” to data points 3 of subset 16 and an object “vehicle” to data points 4 of subset 17. Typically, it can be assumed that in practical application, the ANN is generally fed with input data 1 , 3 or 4 that clearly lie within a subset of the partition 13 . In order to characterize the ANN, however, borderline cases, ie data points in a close range 12 at the subset edge 11, are also important. It can therefore be provided that data points 2 that are in the vicinity of a subset edge 11 are determined in a targeted manner and that the artificial neural network is characterized on the basis of these data points 2 .
  • Input data space 19 generally implements a large number of ANNs or at least a large number of options for an ANN which is fed with data from the input data space 19 .
  • the ANN will not deliver an identical result for all input data 2 that is within a close range 12 of a subset limit 11 .
  • FIG. 3 schematically illustrates another embodiment of the invention.
  • FIG. 3 shows a detailed view of the partition 13 according to FIG. 2.
  • a disturbance 5 was determined for data point 2, which can be added to data point 2, as a result of which data point 2 is shifted from subset 15 to subset 16. Accordingly, the disturbance 5 transfers the data point 2 into the data point 3 within the subset 16. It can be provided that the disturbance 5 is minimized, i.e. that the disturbance 5 is just large enough that the data point 2 in the subset 15 is just in the subset 16 is shifted. Accordingly, the data point 3 in FIG. 3 would also be located very close to the edge 11 of the subset. It is conceivable to determine such faults 5 using a software-supported method.
  • a disruption shifts a data point within one subset to another specific or undefined subset.
  • the knowledge of data points 2 within a close range 12 and of disturbed data points 3 is helpful for the characterizing comparison of ANN. If several data points 2 or a large number of data points 2, which are located in different subsets within a subset boundary, are known, then a partition 13 of an input data space 19 can be estimated from this.
  • the ANN can be fully characterized by the partition if it is also known which subsets are mapped onto which mapping result. In practice, however, the partition should at best be known for the first ANN and not for the second ANN.
  • the unknown of the partition of an ANN can, for example, be due to the fact that the ANN is a statistical black-box ANN, to the fact that another provider of the ANN does not disclose any information about the structure of the ANN, or to the fact that it is not possible to to determine the exact partition. In reality, it is difficult to calculate the partition exactly, even for a known system. However, it may be necessary to compare two ANNs with an unknown partition.
  • Reference symbol -S4 method steps data points disturbance subset border partition -17 subsets input data space

Abstract

The invention relates to a method for comparing a first artificial neural network, hereinafter referred to as ANN, with a second ANN, the first ANN and the second ANN forming a first and a second mapping, respectively, of an input data space to a result data space, comprising the following steps: - specifying (S1) a first input data space for the first ANN; - specifying or estimating (S2) a first partition from subsets of the first input data space with multiple data points, wherein each data point is allocated a mapping result of the first ANN from the result data space, wherein a data point from the input data space together with an associated mapping result of the first ANN forms a first mapping pair in each case; - determining (S3) second mapping pairs of the second ANN, wherein each mapping pair contains a data point from the input data space and an associated mapping result from the result data space; - comparing (S4) the second mapping pairs with the first mapping pairs in order to assess the second ANN in respect of the similarity or difference thereof to or from the first ANN.

Description

Vergleichen eines ersten KNN mit einem zweiten KNN Comparing a first ANN to a second ANN
GEBIET DER ERFINDUNG FIELD OF THE INVENTION
Die vorliegende Erfindung betrifft ein Verfahren zum Vergleichen einer ersten künstlichen Intelligenz mit einer zweiten künstlichen Intelligenz. The present invention relates to a method for comparing a first artificial intelligence with a second artificial intelligence.
TECHNISCHER HINTERGRUND TECHNICAL BACKGROUND
Es ist bekannt, eine künstliche Intelligenz mittels sogenannter Adversarial Attacks zu täuschen. Hierbei werden Eingangsdaten für eine künstliche Intelligenz ermittelt, die anschaulich gesprochen einen Grenzfall bilden, das bedeutet, das eine geringfügige Änderung der Eingangsdaten ausreicht, um die künstliche Intelligenz zu einem falschen Ergebnis zu bringen. It is known to deceive an artificial intelligence by means of so-called adversarial attacks. In this case, input data for an artificial intelligence is determined, which, to put it simply, forms a borderline case, which means that a slight change in the input data is sufficient for the artificial intelligence to produce an incorrect result.
ZUSAMMENFASSUNG DER ERFINDUNG SUMMARY OF THE INVENTION
Vor diesem Hintergrund liegt der Erfindung die Aufgabe zugrunde, eine Vergleichsmöglichkeit für künstliche Intelligenzen bzw. künstliche neuronale Netzwerke zu schaffen. Against this background, the invention is based on the object of creating a comparison option for artificial intelligences or artificial neural networks.
Demgemäß ist vorgesehen: Accordingly, it is provided:
- ein Verfahren zum Vergleichen eines ersten künstlichen neuronalen Netzwerks, nachfolgend mit KNN bezeichnet, mit einem zweiten KNN, wobei das erste KNN bzw. das zweite KNN jeweils eine erste bzw. eine zweite Abbildung von einem Eingangsdatenraum auf einem Ergebnisdatenraum bilden, mit den folgenden Schritten: Vorgeben eines ersten Eingangsdatenraums zu dem ersten KNN; Vorgeben oder Schätzen einer ersten Partition aus Teilmengen des ersten Eingangsdatenraums mit mehreren Datenpunkten, wobei jedem Datenpunkt ein Abbildungsergebnis des ersten KNN aus dem Ergebnisdatenraum zugeordnet wird, wobei jeweils eine Teilmenge zusammen mit einem zugehörigen Abbildungsergebnis des ersten KNN ein erstes Abbildungspaar bilden; Ermitteln von zweiten Abbildungspaaren des zweiten KNN, wobei jedes Abbildungspaar einen Datenpunkt aus dem Eingangsdatenraum und ein zugehöriges Abbildungsergebnis aus dem Ergebnisdatenraum enthält; Vergleichen der zweiten Abbildungspaare mit den ersten Abbildungspaaren, um das zweite KNN hinsichtlich seiner Ähnlichkeit oder Unterschiedlichkeit zu dem ersten KNN zu beurteilen. - A method for comparing a first artificial neural network, hereinafter referred to as ANN, with a second ANN, the first ANN and the second ANN forming a first and a second mapping from an input data space to a result data space, with the following steps : specifying a first input data space to the first ANN; Predetermining or estimating a first partition from subsets of the first input data space with a plurality of data points, with each data point being assigned a mapping result of the first ANN from the result data space, with each subset together with an associated mapping result of the first ANN forming a first mapping pair; determining second mapping pairs of the second ANN, each mapping pair containing a data point from the input data space and an associated mapping result from the result data space; Comparing the second pairs of images with the first pairs of images in order to assess the second ANN with regard to its similarity or difference to the first ANN.
Ein künstliches neuronales Netzwerk (KNN, englisch artificial neural network - ANN) ist insbesondere ein in einem Rechenprogramm nachgebildetes Netzwerk aus vernetzten künstlichen Neuronen. Die künstlichen Neuronen sind dabei typischerweise auf verschiedenen Schichten (layers) angeordnet. Üblicherweise umfasst das künstliche neuronale Netzwerk eine Eingangsschicht und eine Ausgabeschicht (output layer), deren Neuronenausgabe als einzige des künstlichen neuronalen Netzwerks sichtbar wird. Zwischen der Eingangsschicht und der Ausgabeschicht liegende Schichten werden typischerweise als verdeckte Schichten (hidden layer) bezeichnet. Typischerweise wird zunächst eine Architektur bzw. Topologie eines künstlichen neuronalen Netzwerks initiiert und dann in einer Trainingsphase für eine spezielle Aufgabe oder für mehrere Aufgaben in einer Trainingsphase trainiert. An artificial neural network (ANN) is in particular a network of networked artificial neurons that is simulated in a computer program. The artificial neurons are typically arranged on different layers. Usually, the artificial neural network comprises an input layer and an output layer (output layer), whose neuron output is the only one of the artificial neural network that is visible. Layers lying between the input layer and the output layer are typically referred to as hidden layers. Typically, an architecture or topology of an artificial neural network is first initiated and then trained in a training phase for a specific task or for a plurality of tasks in a training phase.
Der Begriff „Topologie eines KNN“ umfasst sämtliche Aspekte bezüglich des Aufbaus eines KNN. Hierunter fallen beispielsweise die Anzahl der Neuronen des KNN, die Aufteilung der Neuronen auf die einzelnen Schichten des KNN, die Anzahl der Schichten eines KNN, die Vernetzung der Neuronen und die Gewichtung der Vernetzung. The term "topology of an ANN" includes all aspects relating to the structure of an ANN. This includes, for example, the number of neurons in the ANN, the allocation of the neurons to the individual layers of the ANN, the number of layers in an ANN, the networking of the neurons and the weighting of the networking.
Unter dem Begriff „Architektur eines KNN“ versteht man dessen initiale Topologie, also dessen Topologie vor dem Training des KNN. The term "architecture of an ANN" means its initial topology, i.e. its topology before the ANN was trained.
Das Training des künstlichen neuronalen Netzwerks umfasst dabei typischerweise eine Veränderung eines Gewichts einer Verbindung zwischen zwei künstlichen Neuronen des künstlichen neuronalen Netzwerks. Das Gewicht enthält Information zur Stärke der Berücksichtigung eines Eingangs eines Neurons. Das Training des künstlichen neuronalen Netzwerks kann auch eine Entwicklung von neuen Verbindungen zwischen künstlichen Neuronen, ein Löschen von bestehenden Verbindungen zwischen künstlichen Neuronen, ein Anpassen von Schwellwerten der künstlichen Neuronen und/oder ein Hinzufügen oder ein Löschen von künstlichen Neuronen umfassen. The training of the artificial neural network typically includes changing a weight of a connection between two artificial neurons of the artificial neural network. The weight contains information about the strength of the consideration of an input of a neuron. The training of the artificial neural network can also develop new connections between artificial neurons, deleting existing connections between artificial neurons, adjusting threshold values of the artificial neurons and/or adding or deleting artificial neurons.
Eine Partition (auch Zerlegung) einer Menge M ist eine Menge P, deren Elemente nichtleere Teilmengen von M sind, sodass jedes Element von M in genau einem Element von P enthalten ist. A ist eine Teilmenge von B, wenn jedes Element von A auch in B enthalten ist. Ein Rand einer Menge ist dessen Grenze. Der Rand kann in der Menge enthalten oder nicht enthalten sein. Ein Nahbereich eines Teilmengenrandes liegt innerhalb der Teilmenge und ist zu dem Rand benachbart. Der Nahbereich kann durch einen vorgegebenen maximalen Abstand zum Rand bestimmt sein. Der Teilmengenrand einer Teilmenge kann auch als Entscheidungsgrenze des zugehörigen KNN bezeichnet werden. A partition (also decomposition) of a set M is a set P whose elements are nonempty subsets of M such that every element of M is contained in exactly one element of P. A is a subset of B if every element of A is also in B. An edge of a set is its boundary. The border may or may not be included in the set. A vicinity of a subset edge lies within the subset and is adjacent to the edge. The close range can be determined by a predetermined maximum distance from the edge. The subset boundary of a subset can also be referred to as the decision boundary of the associated ANN.
Eine Abbildung ist eine Beziehung zwischen zwei Mengen, die jedem Element der einen Menge, in dieser Patentanmeldung ein Eingangsdatenraum, genau ein Element der anderen Menge, in dieser Patentanmeldung ein Ergebnisdatenraum, zuordnet. Ein Abbildungsergebnis ist das Ergebnis einer Abbildung für einen Datenpunkt aus dem Eingangsdatenraum. Ein Abbildungspaar ist das Paar aus einem Datenpunkt aus dem Eingangsdatenraum mit seinem zugehörigen Abbildungsergebnis. A mapping is a relationship between two sets that assigns each element of one set, in this patent application an input data space, to exactly one element of the other set, in this patent application a result data space. A mapping result is the result of a mapping for a data point from the input data space. A mapping pair is the pair of a data point from the input data space with its associated mapping result.
Ein Eingangsdatenraum ist eine Menge an Daten, die alle denkbaren bzw. wohldefinierten Eingangsdaten für ein KNN enthält. Ein Ergebnisdatenraum ist eine Menge, die alle denkbaren Ergebnisdaten eines KNN enthält. Dieser Patentanmeldung liegt die Annahme zugrunde, dass sich ein Eingangsdatenraum in Teilmengen oder Datenpunkte partitionieren lässt, wobei jedes Element, also eine Teilmenge oder ein Datenpunkt, der Partition auf ein anderes Abbildungsergebnis aus dem Ergebnisdatenraum abgebildet wird. Dementsprechend entspricht das Schätzen einer Partition des Eingangsdatenraumes dem Schätzen von Entscheidungsgrenzen. An input data space is a set of data that contains all conceivable or well-defined input data for an ANN. A result data space is a set that contains all conceivable result data of an ANN. This patent application is based on the assumption that an input data space can be partitioned into subsets or data points, with each element, ie a subset or a data point, of the partition being mapped to a different mapping result from the result data space. Accordingly, estimating a partition of the input data space corresponds to estimating decision boundaries.
Ein Bildsensor ist beispielsweise eine Kamera, ein Radarsensor oder ein Lidar- sensor, der reale Bilddaten erfasst. Bilddaten, die mittels softwaregestützter Verfahren erzeugt wurden, sind künstliche Bilddaten, wie Frequenzbilder, die eine Ansammlung von Pixeln mit bestimmten Eigenschaften enthalten. Die Eigenschaften können sich auf die Pixel selbst, wie etwa deren Grauwert, oder auf eine Beziehung zwischen den Pixeln, etwa ein Gradient oder eine Frequenz, beziehen. An image sensor is, for example, a camera, a radar sensor or a lidar sensor that captures real image data. Image data generated by software-supported methods are artificial image data, such as frequency images, that contain a collection of pixels with specific properties. The properties can relate to the pixels themselves, such as their gray value, or to a relationship between the pixels, such as gradient or frequency.
Computerprogrammprodukte umfassen in der Regel eine Folge von Befehlen, durch die die Hardware bei geladenem Programm veranlasst wird, ein bestimmtes Verfahren durchzuführen, das zu einem bestimmten Ergebnis führt. Computer program products typically include a sequence of instructions that, when the program is loaded, cause the hardware to perform a specific method that leads to a specific result.
Die grundlegende Idee der Erfindung ist es, das Verhalten eines ersten KNN und eines zweiten KNN für bestimmte Eingangsdaten zu untersuchen und die KNN aufgrund eines anderen oder identischen Verhaltens des ersten bzw. zweiten KNN hinsichtlich der Eingangsdaten vergleichend zu charakterisieren. The basic idea of the invention is to examine the behavior of a first ANN and a second ANN for certain input data and to characterize the ANN comparatively based on a different or identical behavior of the first or second ANN with regard to the input data.
Die Aspekte der Erfindung werden im folgenden anschaulich anhand eines zweidimensionalen Eingangsdatenraums erläutert. Es versteht sich jedoch, dass dieses Beispiel vorwiegend der Erläuterung dient und möglicherweise eine eher geringe Relevanz für die Praxis hat. In the following, the aspects of the invention are explained clearly using a two-dimensional input data space. It goes without saying, however, that this example is primarily used for explanation and may have rather little relevance for practice.
Ein KNN legt eine Abbildung von einem (beispielhaft zweidimensionalen) Eingangsdatenraum auf einen Ergebnisdatenraum fest. Die Abbildung hängt maßgeblich vom Zweck der künstlichen Intelligenz ab, beispielsweise ist es denkbar, Datenpunkte des Eingangsdatenraums hinsichtlich ihrer Eigenschaften zu klassifizieren. In diesem Fall wird den Datenpunkten aus dem Eingangsdatenraum ein Klassifikationsergebnis, wie beispielsweise „Baum“ oder „Haus“, aus dem Ergebnisdatenraum zugeordnet. An ANN defines a mapping from an (example two-dimensional) input data space to a result data space. The mapping depends significantly on the purpose of the artificial intelligence, for example it is conceivable to classify data points of the input data space with regard to their properties. In this case, a classification result, such as "tree" or "house", from the result data space is assigned to the data points from the input data space.
Alternativ ist es auch denkbar, dass der Ergebnisdatenraum keine diskreten Elemente wie „Haus“ oder „Baum“ enthält, sondern kontinuierlich ist. Beispielsweise ist es denkbar, dass ein KNN Eingangsdaten auf eine rationale Zahl abbildet. Alternatively, it is also conceivable that the result data space does not contain any discrete elements such as "house" or "tree", but is continuous. For example, it is conceivable that an ANN maps input data to a rational number.
Davon ausgehend ist ersichtlich, dass sich ein Eingangsdatenraum eines KNN in eine Partition zerlegen lässt, sodass jedem Element der Partition ein Element aus dem Ergebnisdatenraum zugeordnet werden kann. Anhand dieser Abbildungspaare, also Paare aus dem Eingangsdatenraum und dem Ergebnisdatenraum, lassen sich KNNs vergleichen, indem Abbildungspaare des zweiten KNN mit Abbildungspaaren oder der Abbildung des ersten KNN verglichen werden. Based on this, it can be seen that an input data space of an ANN can be broken down into a partition, so that each element of the partition can be assigned an element from the result data space. Based on these pairs of images, i.e. pairs from the input data space and the result data space, ANNs can be compared by comparing pairs of images of the second ANN with pairs of images or the image of the first ANN.
Es versteht sich, dass die Erfindung sowohl für den Vergleich von Blackbox- als auch Greybox- oder Whitebox-KNN-Routinen anwendbar ist. It goes without saying that the invention is applicable for the comparison of black box as well as gray box or white box ANN routines.
White-Box bedeutet, dass das gesamte KNN bekannt ist, also dessen gesamte Topologie, und während des Betriebs exakt beobachtet werden kann. Dem Nutzer ist es somit möglich die internen Berechnungen nachzuvollziehen und zu jedem Zeitpunkt beobachten zu können. Dies trifft beispielsweise für ein eigens entwickeltes KNN zu. Bei Black-Box Systemen ist dies hingegen nicht möglich. Der Nutzer kann lediglich die Eingangsdaten und die Ausgabe des KNN auf diesen Daten beobachten. Es ist ihm nicht möglich die Berechnung im KNN nachzuvollziehen und er hat auch keine Informationen über die Topologie des KNN. Dies trifft beispielsweise für ein zugekauftes KNN zu. White box means that the entire ANN is known, i.e. its entire topology, and can be precisely observed during operation. It is thus possible for the user to understand the internal calculations and to be able to monitor them at any time. This applies, for example, to a specially developed ANN. However, this is not possible with black-box systems. The user can only observe the input data and the output of the ANN on this data. It is not possible for him to understand the calculation in the ANN and he has no information about the topology of the ANN. This applies, for example, to a purchased ANN.
Dementsprechend sind folgende Szenarien denkbar: ein zweites KNN mit einer unbekannten Partition des Eingangsdatenraums, die mit einem ersten KNN verglichen werden soll, wobei das erste KNN sowohl eine bekannte als auch unbekannte Partition des Eingangsdatenraumes aufweisen kann. Ist die erste Partition des ersten KNN unbekannt kann vorgesehen sein, Abbildungspaare sowohl für die erste als auch für das zweite KNN zu ermitteln, und die Abbildungspaare miteinander zu vergleichen. Ist die Partition des ersten KNN hingegen bekannt, also handelt es sich um eine White-Box-künstliche Intelligenz, so genügt es, die Abbildungspaare des zweiten KNN mit der ersten Partition in Verbindung mit der Abbildung des ersten KNN zu vergleichen. Accordingly, the following scenarios are conceivable: a second ANN with an unknown partition of the input data space that is to be compared with a first ANN, the first ANN being able to have both a known and an unknown partition of the input data space. If the first partition of the first ANN is unknown, mapping pairs can be determined both for the first and for the second ANN and the mapping pairs can be compared with one another. If, on the other hand, the partition of the first ANN is known, i.e. it is a matter of white-box artificial intelligence, then it is sufficient to compare the mapping pairs of the second ANN with the first partition in connection with the mapping of the first ANN.
Wenn ein KNN eine unbekannte Partition des Eingangsdatenraums aufweist, bedeutet das, dass Eingangsdaten existieren, für die das zugehörige Abbildungsergebnis der KNN nur durch die KNN ermittelt werden kann. Vorteilhafte Ausgestaltungen und Weiterbildungen ergeben sich aus den weiteren Unteransprüchen sowie aus der Beschreibung unter Bezugnahme auf die Figuren der Zeichnung. If an ANN has an unknown partition of the input data space, this means that there is input data for which the associated mapping result of the ANN can only be determined by the ANN. Advantageous refinements and developments result from the further dependent claims and from the description with reference to the figures of the drawing.
Gemäß einer bevorzugten Weiterbildung der Erfindung werden anhand des Vergleichens die Ähnlichkeit von ersten Trainingsdaten, mittels welchen das erste KNN trainiert wurde, und zweiten Trainingsdaten, mittels welchen das zweite KNN trainiert wurde, beurteilt. According to a preferred development of the invention, the comparison is used to assess the similarity between the first training data, which was used to train the first ANN, and the second training data, which was used to train the second ANN.
Trainingsdaten beeinflussen das Verhalten einer KNN maßgeblich. So lässt sich beispielsweise die Identität der ersten und zweiten Trainingsdaten nur dann annehmen, wenn das Vergleichen der Abbildungspaare des zweiten KNN mit den Abbildungspaaren des ersten KNN keine oder nur geringfügige Unterschiede hervorbringt. Training data significantly influence the behavior of an ANN. For example, the identity of the first and second training data can only be assumed if the comparison of the pairs of images of the second ANN with the pairs of images of the first ANN produces no or only minor differences.
Gemäß einer bevorzugten Weiterbildung der Erfindung wird anhand des Vergleichens die Ähnlichkeit von einer ersten Architektur des ersten KNN mit einer zweiten Architektur des zweiten KNN beurteilt. According to a preferred development of the invention, the comparison is used to assess the similarity between a first architecture of the first ANN and a second architecture of the second ANN.
Eine Ähnlichkeit der ersten und zweiten Architektur kommt in Betracht, wenn der Vergleich der Abbildungspaare des zweiten KNN mit den Abbildungspaaren des ersten KNN keine oder nur geringfügige Unterschiede hervorbringt oder wenn das Vergleichsergebnis gewisse Gemeinsamkeiten und Unterschiede zwischen den Abbildungspaaren des zweiten KNN und den Abbildungspaaren des ersten KNN hervorbringt, die anwendungsspezifisch hinsichtlich der zu vergleichenden KNN festzulegen sind. A similarity of the first and second architecture can be considered if the comparison of the mapping pairs of the second ANN with the mapping pairs of the first ANN produces no differences or only minor differences or if the result of the comparison shows certain similarities and differences between the mapping pairs of the second ANN and the mapping pairs of the first ANN produces, which are to be defined application-specifically with regard to the ANN to be compared.
Gemäß einer bevorzugten Weiterbildung der Erfindung werden Abbildungspaare mit Datenpunkten aus dem Eingangsdatenraum, welche sich innerhalb eines vorgegebenen Nahbereichs eines Teilmengenrandes einer Teilmenge der ersten Partition befinden, vorgegeben. According to a preferred development of the invention, pairs of images with data points from the input data space, which are located within a predetermined vicinity of a subset edge of a subset of the first partition, are specified.
Für einen zweidimensionalen Eingangsdatenraum lässt sich dieser Aspekt veranschaulichen, indem zu jeder Teilmenge der Partition ein Nahbereich des Teilmengenrandes festgelegt wird. Im Folgenden wird das Verhalten der KNN auf Datenpunkte, die in dem Nahbereich enthalten sind, untersucht. D. h. es wird untersucht, ob das erste KNN zu Eingangsdaten aus dem vorgegebenen Nahbereich andere Ergebnisdaten liefert wie die zweite künstliche Intelligenz. For a two-dimensional input data space, this aspect can be illustrated by adding a region close to the partition to each subset of the partition Subset edge is set. In the following, the behavior of the ANN on data points contained in the close range is examined. i.e. it is examined whether the first ANN supplies different result data for input data from the specified close range than the second artificial intelligence.
Dabei ist es auch zweckmäßig, wenn eine minimale Störung ermittelt wird, die mit dem Datenpunkt aus dem Eingangsdatenraum zu verknüpfen ist, sodass sich das zu dem gestörten Datenpunkt aus dem Eingangsdatenraum zugehörige Abbildungsergebnis aus dem Ergebnisdatenraum von dem zugehörigen Abbildungsergebnis des nicht gestörten Datenpunkts unterscheidet. Es versteht sich, dass es vorteilhaft ist, minimale Störungen für eine Vielzahl von Datenpunkten zu ermitteln. It is also expedient if a minimum disturbance is determined, which is to be linked to the data point from the input data space, so that the mapping result from the result data space associated with the disturbed data point from the input data space differs from the associated mapping result of the undisturbed data point. It goes without saying that it is advantageous to determine minimum disturbances for a large number of data points.
Das bedeutet, dass zu wenigstens zwei Datenpunkten in dem Eingangsdatenraum, die sich jeweils in einem anderen Nahbereich eines Teilmengenrandes der ersten Partition befinden, untersucht wird, ob sich das Ergebnis des ersten KNN von dem Ergebnis des zweiten KNN unterscheidet. Dass die Eingangsdaten in einem jeweils anderen Nahbereich eines Teilmengenrandes liegen, impliziert, dass das erste KNN zu den gestörten bzw. nicht gestörten Eingangsdaten jeweils ein anderes Ergebnis ermittelt. Um das erste KNN möglichst genau zu charakterisieren, ist es vorteilhaft, die Störung zwischen den nicht gestörten und gestörten Eingangsdaten zu minimieren, sodass das erste KNN (gerade noch) für die gestörten bzw. nicht gestörten Eingangsdaten ein anderes Ergebnis ermittelt. Im Folgenden lässt sich das erste KNN mit dem zweiten KNN dahingehend vergleichen, ob auch das zweite KNN zu den gestörten bzw. nicht gestörten Eingangsdaten ein unterschiedliches Ergebnis ermittelt. In diesem Fall ließe sich darauf schließen, dass die erste Partition punktuell identisch bzw. lokal zumindest ähnlich mit der zweiten Partition ist. This means that for at least two data points in the input data space, each located in a different area close to a subset edge of the first partition, it is examined whether the result of the first ANN differs from the result of the second ANN. The fact that the input data lie in a different vicinity of a subset edge in each case implies that the first ANN determines a different result for the input data with and without interference. In order to characterize the first ANN as precisely as possible, it is advantageous to minimize the interference between the undisturbed and disturbed input data, so that the first ANN (just about) determines a different result for the disturbed and undisturbed input data. In the following, the first ANN can be compared with the second ANN to determine whether the second ANN also determines a different result for the input data with and without interference. In this case, it could be concluded that the first partition is locally identical or at least locally similar to the second partition.
Gemäß einer bevorzugten Weiterbildung der Erfindung enthält der Eingangsdatenraum Daten, die von einem Bildsensor erfasst wurden. Dies können beispielsweise Bilddaten, Radardaten und/oder Lidardaten sein, die als Eingangsdaten für ein KNN dienen. Alternativ ist es auch denkbar, dass der Eingangsdatenraum Bilddaten enthält, die mittels softwaregestützter Verfahren erzeugt wurden, also nicht von einem Sensor erfasst wurden. Hierzu zählen beispielsweise Pixelwerte mit bestimmten vorgegebenen Eigenschaften, beispielsweise hinsichtlich einer Frequenz oder eines Gradienten. According to a preferred development of the invention, the input data space contains data that was captured by an image sensor. This can be image data, radar data and/or lidar data, for example, which serve as input data for an ANN. Alternatively, it is also conceivable that the input data space contains image data that was generated using software-supported methods, ie was not recorded by a sensor. These include, for example, pixel values with specific predetermined properties, for example in terms of a frequency or a gradient.
Ein Computerprogrammprodukt gemäß einem Verfahren einer Ausführungsform der Erfindung führt die Schritte eines Verfahrens gemäß der vorangehenden Beschreibung aus, wenn das Computerprogrammprodukt auf einem Computer, insbesondere einem fahrzeuginternen Computer, läuft. Wenn das betreffende Programm auf einem Computer zum Einsatz kommt, ruft das Computerprogrammprodukt einen Effekt hervor, nämlich einen charakterisierenden Vergleich zweier KNN. A computer program product according to a method of an embodiment of the invention performs the steps of a method as described above when the computer program product runs on a computer, in particular an in-vehicle computer. When the program in question is used on a computer, the computer program product produces an effect, namely a characterizing comparison of two ANNs.
Es versteht sich, dass eine Recheneinheit, die eingerichtet ist, mit dem ersten bzw. zweiten KNN geladen zu werden und/oder mit einer das erste bzw. zweite KNN ausführenden Recheneinheit gekoppelt zu werden, wobei die Recheneinheit eingerichtet ist, das Verfahren wie es vorstehend beschrieben wurde, durchzuführen, vorteilhaft ist. It goes without saying that a processing unit that is set up to be loaded with the first or second ANN and/or to be coupled to a processing unit that executes the first or second ANN, the processing unit being set up to carry out the method as above has been described to carry out is advantageous.
INHALTSANGABE DER ZEICHNUNGEN CONTENTS OF THE DRAWINGS
Die vorliegende Erfindung wird nachfolgend anhand der in den schematischen Figuren der Zeichnungen angegebenen Ausführungsbeispiele näher erläutert. Es zeigen dabei: The present invention is explained in more detail below with reference to the exemplary embodiments given in the schematic figures of the drawings. They show:
Figur 1 eine schematisches Blockdiagramm einer Ausführungsform der Erfindung. Figure 1 is a schematic block diagram of an embodiment of the invention.
Figur 2 eine Prinzipskizze zur beispielshaften Erläuterung einer Ausführungsform der Erfindung; FIG. 2 shows a basic sketch for an exemplary explanation of an embodiment of the invention;
Figur 3 eine Prinzipskizze zur beispielshaften Erläuterung einer Ausführungsform der Erfindung. Die beiliegenden Zeichnungen sollen ein weiteres Verständnis der Ausführungsformen der Erfindung vermitteln. Sie veranschaulichen Ausführungsformen und dienen im Zusammenhang mit der Beschreibung der Erklärung von Prinzipien und Konzepten der Erfindung. Andere Ausführungsformen und viele der genannten Vorteile ergeben sich im Hinblick auf die Zeichnungen. Die Elemente der Zeichnungen sind nicht notwendigerweise maßstabsgetreu zueinander gezeigt. FIG. 3 shows a basic sketch for an exemplary explanation of an embodiment of the invention. The accompanying drawings are provided to provide a further understanding of embodiments of the invention. They illustrate embodiments and, together with the description, serve to explain principles and concepts of the invention. Other embodiments and many of the foregoing advantages will become apparent by reference to the drawings. The elements of the drawings are not necessarily shown to scale with respect to one another.
In den Figuren der Zeichnungen sind gleiche, funktionsgleiche und gleichwirkende Elemente, Merkmale und Komponenten - sofern nicht anders ausgeführt ist - jeweils mit denselben Bezugszeichen versehen. In the figures of the drawings, elements, features and components that are identical, have the same function and have the same effect--unless stated otherwise--are each provided with the same reference symbols.
BESCHREIBUNG VON AUSFÜHRUNGSBEISPIELEN DESCRIPTION OF EXEMPLARY EMBODIMENTS
Figur 1 zeigt ein Verfahren zum Vergleichen eines ersten KNN mit einem zweiten KNN, wobei das erste KNN und das zweite KNN jeweils eine erste und eine zweite Abbildung von einem Eingangsdatenraum auf einen Ergebnisdatenraum bilden, mit den Schritten S1 bis S4. FIG. 1 shows a method for comparing a first ANN with a second ANN, the first ANN and the second ANN each forming a first and a second mapping from an input data space to a result data space, with steps S1 to S4.
In dem Schritt S1 wird ein erster Eingangsdatenraum zu dem ersten KNN vorgegeben. In step S1, a first input data space is specified for the first ANN.
In dem Schritt S2 wird eine Partition aus Teilmengen des ersten Eingangsdatenraumes vorgegeben oder geschätzt, insbesondere berechnet, wobei jeder Teilmenge der ersten Partition ein Abbildungsergebnis des ersten KNN aus dem Ergebnisdatenraum zugeordnet wird. Wird eine Partition berechnet, bedeutet dies, dass diese durch eine Schätzung ermittelt wird. In step S2, a partition is specified or estimated from subsets of the first input data space, in particular calculated, with each subset of the first partition being assigned a mapping result of the first ANN from the result data space. If a partition is calculated, this means that it is determined by an estimate.
In dem Schritt S3 werden Abbildungspaare des zweiten KNN ermittelt, wobei jedes Abbildungspaar einen Datenpunkt aus dem Eingangsdatenraum und ein zugehöriges Abbildungsergebnis aus dem Ergebnisdatenraum enthält. In step S3, mapping pairs of the second ANN are determined, each mapping pair containing a data point from the input data space and an associated mapping result from the result data space.
In dem Schritt S4 werden die Abbildungspaare des zweiten KNN mit der ersten Partition verglichen, um das zweite KNN hinsichtlich ihrer Ähnlichkeit oder Unterschiedlichkeit zu dem ersten KNN zu beurteilen. In step S4, the mapping pairs of the second ANN are compared with the first partition to the second ANN in terms of their similarity or to assess the difference to the first ANN.
Figur 2 zeigt eine Prinzipskizze zur Veranschaulichung einer Ausführungsform der Erfindung. In Figur 2 ist ein Eingangsdatenraum 19, der in eine Partition 13 zerlegt ist, dargestellt. Die Partition 13 umfasst drei Teilmengen 15, 16 und 17. Die Teilmengen 15, 16 und 17 sind voneinander durch einen Teilmengenrand 11 abgegrenzt. Innerhalb der Teilmenge 15 ist ein Nahbereich 12 des Teilmengenrandes 11 veranschaulicht dargestellt. Wenngleich der Teilmengenrand 12 nur für die Teilmenge 15 dargestellt ist, versteht es sich, dass auch die Teilmengen 16 und 17 einen vergleichbaren Teilmengenrand innerhalb dieser Teilmengen aufweisen. Die Teilmenge 15 enthält mehrere Datenpunkte 1 , die sich innerhalb der Teilmenge 15 mit einem Abstand zum Teilmengenrand 12 befinden. Ferner umfasst die Teilmenge 15 Datenpunkte 2, die sich innerhalb der Teilmenge 15 und innerhalb des Teilmengenrandes 12 befinden. FIG. 2 shows a basic sketch to illustrate an embodiment of the invention. An input data space 19 which is divided into a partition 13 is shown in FIG. The partition 13 comprises three subsets 15, 16 and 17. The subsets 15, 16 and 17 are delimited from one another by a subset edge 11. A region 12 close to the edge 11 of the subset is shown in an illustrated manner within the subset 15 . Although the subset edge 12 is only shown for the subset 15, it goes without saying that the subsets 16 and 17 also have a comparable subset edge within these subsets. The subset 15 contains a plurality of data points 1 that are located within the subset 15 at a distance from the edge 12 of the subset. Furthermore, the subset 15 includes data points 2 that are located within the subset 15 and within the subset boundary 12 .
Die Teilmenge 16 umfasst mehrere Datenpunkte 3. Die Teilmenge 17 umfasst mehrere Daten punkte 4. Subset 16 includes multiple data points 3. Subset 17 includes multiple data points 4.
Ein KNN, welches Daten aus dem Eingangsdatenraum 19 verarbeitet, kann beispielsweise als klassifizierendes KNN ausgebildet sein. Dementsprechend würde ein KNN den Datenpunkten 1 und 2 der Teilmenge 15 beispielsweise einen Gegenstand „Haus“ zuordnen, den Datenpunkten 3 der Teilmenge 16 einen Gegenstand „Baum“ und den Datenpunkten 4 der Teilmenge 17 einen Gegenstand „Fahrzeug“ zuordnen. Typischerweise ist davon auszugehen, dass das KNN in der praktischen Anwendung in der Regel mit Eingangsdaten 1 , 3 oder 4, die klar innerhalb einer Teilmenge der Partition 13 liegen, gespeist wird. Um das KNN zu charakterisieren sind jedoch auch Grenzfälle, also Datenpunkte in einem Nahbereich 12 an dem Teilmengenrand 1 1 von Bedeutung. Deshalb kann vorgesehen sein, gezielt Datenpunkte 2, die sich in der Nähe eines Teilmengenrandes 11 befinden, zu ermitteln und das künstliche neuronale Netzwerk anhand dieser Datenpunkte 2 zu charakterisieren. An ANN that processes data from the input data space 19 can, for example, be in the form of a classifying ANN. Accordingly, an ANN would assign an object “house” to data points 1 and 2 of subset 15, an object “tree” to data points 3 of subset 16 and an object “vehicle” to data points 4 of subset 17. Typically, it can be assumed that in practical application, the ANN is generally fed with input data 1 , 3 or 4 that clearly lie within a subset of the partition 13 . In order to characterize the ANN, however, borderline cases, ie data points in a close range 12 at the subset edge 11, are also important. It can therefore be provided that data points 2 that are in the vicinity of a subset edge 11 are determined in a targeted manner and that the artificial neural network is characterized on the basis of these data points 2 .
Es ist denkbar, dass sich ein Anwender oder Entwickler eines KNN nach spezifischen Unterschieden zwischen zwei ähnlichen KNN fragt. So existieren zu einem Eingangsdatenraum 19 in der Regel eine Vielzahl von KNN bzw. zumindest eine Vielzahl von Möglichkeiten ein KNN, welches mit Daten aus dem Eingangsdatenraum 19 gespeist wird, zu implementieren. It is conceivable that a user or developer of an ANN will ask about specific differences between two similar ANNs. So exist to one Input data space 19 generally implements a large number of ANNs or at least a large number of options for an ANN which is fed with data from the input data space 19 .
In der Praxis ergibt es sich häufig für zwei ähnliche KNN, dass die KNN für Datenpunkte 3 und 4, die sich klar innerhalb einer Teilmenge einer Partition 13 des Eingangsdatenraums befinden, also einen ausreichenden Abstand von einem Teilmengenrand 11 aufweisen, ein identisches Ergebnis ermitteln. In practice, it is often the case for two similar ANNs that the ANNs for data points 3 and 4, which are clearly within a subset of a partition 13 of the input data space, i.e. have a sufficient distance from a subset edge 11, determine an identical result.
Ermitteln zwei KNN auch identische Ergebnisse für Datenpunkte 2, die sich in der Nähe eines Teilmengenrandes 11 befinden, ist davon auszugehen, dass die KNN nahezu identisch sind und mit nahezu identischen Trainingsdaten trainiert wurden. If two ANNs also determine identical results for data points 2 that are in the vicinity of a subset edge 11, it can be assumed that the ANNs are almost identical and were trained with almost identical training data.
Sind die KNN jedoch verschieden bzw. wurden mit verschiedenen Trainingsdaten trainiert, so ist davon auszugehen, dass die KNN nicht für alle Eingangsdaten 2, die sich innerhalb eines Nahbereichs 12 einer Teilmengengrenze 11 befinden, ein identisches Ergebnis liefern. However, if the ANN are different or were trained with different training data, it can be assumed that the ANN will not deliver an identical result for all input data 2 that is within a close range 12 of a subset limit 11 .
Figur 3 veranschaulicht schematisch eine weitere Ausführungsform der Erfindung. Figur 3 zeigt eine Detailansicht der Partition 13 gemäß Figur 2. In Figur 3 ist ein Datenpunkt 2, der sich innerhalb der Teilmenge 15 und innerhalb des Nahbereichs 12 befindet, dargestellt. Zu dem Datenpunkt 2 wurde eine Störung 5 ermittelt, die auf den Datenpunkt 2 addiert werden kann, wodurch der Datenpunkt 2 von der Teilmenge 15 in die Teilmenge 16 verschoben wird. Dementsprechend überführt die Störung 5 den Datenpunkt 2 in den Datenpunkt 3 innerhalb der Teilmenge 16. Es kann vorgesehen sein, dass die Störung 5 minimiert ist, also dass die Störung 5 gerade so groß ist, dass der Datenpunkt 2 in der Teilmenge 15 gerade noch in die Teilmenge 16 verschoben wird. Dementsprechend würde sich auch der Datenpunkt 3 in Figur 3 sehr nahe an dem Teilmengenrand 11 befinden. Es ist denkbar, derartige Störungen 5 mittels eines softwaregestützten Verfahrens zu ermitteln. Dabei kann vorgesehen sein, dass eine Störung einen Datenpunkt innerhalb einer Teilmenge in eine bestimmte oder unbestimmte andere Teilmenge verschiebt. Die Kenntnis von Datenpunkten 2 innerhalb eines Nahbereichs 12 sowie von gestörten Datenpunkten 3 ist hilfreich für den charakterisierenden Vergleich von KNN. Sind mehrere Datenpunkte 2 bzw. eine Vielzahl von Datenpunkten 2, die sich in verschiedenen Teilmengen innerhalb eines Teilmengenrandes befinden, bekannt, so lässt sich hieraus eine Partition 13 eines Eingangsdatenraums 19 schätzen. Figure 3 schematically illustrates another embodiment of the invention. FIG. 3 shows a detailed view of the partition 13 according to FIG. 2. In FIG. A disturbance 5 was determined for data point 2, which can be added to data point 2, as a result of which data point 2 is shifted from subset 15 to subset 16. Accordingly, the disturbance 5 transfers the data point 2 into the data point 3 within the subset 16. It can be provided that the disturbance 5 is minimized, i.e. that the disturbance 5 is just large enough that the data point 2 in the subset 15 is just in the subset 16 is shifted. Accordingly, the data point 3 in FIG. 3 would also be located very close to the edge 11 of the subset. It is conceivable to determine such faults 5 using a software-supported method. It can be provided that a disruption shifts a data point within one subset to another specific or undefined subset. The knowledge of data points 2 within a close range 12 and of disturbed data points 3 is helpful for the characterizing comparison of ANN. If several data points 2 or a large number of data points 2, which are located in different subsets within a subset boundary, are known, then a partition 13 of an input data space 19 can be estimated from this.
Ist zumindest die Partition eines Eingangsdatenraums eines KNN bekannt, so lässt sich das KNN durch die Partition vollständig charakterisieren, wenn auch bekannt ist, welche Teilmengen auf welches Abbildungsergebnis abgebildet werden. In der Praxis dürfte die Partition jedoch günstigstenfalls für das erste KNN und nicht für das zweite KNN bekannt sein. Die Unbekanntheit der Partition eines KNN kann beispielsweise daher rühren, dass es sich bei dem KNN um ein statistisches Black-Box-KNN handelt, daher, dass ein anderer Anbieter des KNN keine Informationen zum Aufbau des KNN preisgibt oder daher dass es nicht möglich ist die Partition exakt zu bestimmen. In der Realität ist es auch für ein bekanntes System schwierig die Partition exakt zu berechnen. Dennoch kann es gefragt sein, zwei KNN mit einer unbekannten Partition miteinander zu vergleichen. If at least the partition of an input data space of an ANN is known, then the ANN can be fully characterized by the partition if it is also known which subsets are mapped onto which mapping result. In practice, however, the partition should at best be known for the first ANN and not for the second ANN. The unknown of the partition of an ANN can, for example, be due to the fact that the ANN is a statistical black-box ANN, to the fact that another provider of the ANN does not disclose any information about the structure of the ANN, or to the fact that it is not possible to to determine the exact partition. In reality, it is difficult to calculate the partition exactly, even for a known system. However, it may be necessary to compare two ANNs with an unknown partition.
Bezugszeichen -S4 Verfahrensschritte Datenpunkte Störung Teilmengenrand Partition -17 Teilmengen Eingangsdatenraum Reference symbol -S4 method steps data points disturbance subset border partition -17 subsets input data space

Claims

Patentansprüche patent claims
1 . Verfahren zum Vergleichen eines ersten künstlichen neuronalen Netzwerks, nachfolgend mit KNN bezeichnet, mit einem zweiten KNN, wobei das erste KNN bzw. das zweite KNN jeweils eine erste bzw. eine zweite Abbildung von einem Eingangsdatenraum (19) auf einem Ergebnisdatenraum bilden, mit den folgenden Schritten: 1 . Method for comparing a first artificial neural network, hereinafter referred to as ANN, with a second ANN, the first ANN and the second ANN respectively forming a first and a second mapping from an input data space (19) onto a result data space, with the following steps:
- Vorgeben (S1 ) eines ersten Eingangsdatenraums zu dem ersten KNN; - Specification (S1) of a first input data space for the first ANN;
- Vorgeben oder Schätzen (S2) einer ersten Partition (13) aus Teilmengen (15- 17) des ersten Eingangsdatenraums (19) mit mehreren Datenpunkten, wobei jeder Teilmenge ein Abbildungsergebnis des ersten KNN aus dem Ergebnisdatenraum zugeordnet wird, wobei jeweils eine Teilmenge aus dem Eingangsdatenraum zusammen mit einem zugehörigen Abbildungsergebnis des ersten KNN ein erstes Abbildungspaar bilden; - Predetermining or estimating (S2) a first partition (13) from subsets (15-17) of the first input data space (19) with a plurality of data points, with each subset being assigned a mapping result of the first ANN from the result data space, with a subset in each case from the input data space together with an associated mapping result of the first ANN form a first mapping pair;
- Ermitteln (S3) von zweiten Abbildungspaaren des zweiten KNN, wobei jedes Abbildungspaar einen Datenpunkt aus dem Eingangsdatenraum (19) und ein zugehöriges Abbildungsergebnis aus dem Ergebnisdatenraum enthält; - determining (S3) second pairs of images of the second ANN, each pair of images containing a data point from the input data space (19) and an associated image result from the result data space;
- Vergleichen (S4) der zweiten Abbildungspaare mit den ersten Abbildungspaaren, um das zweite KNN hinsichtlich seiner Ähnlichkeit oder Unterschiedlichkeit zu dem ersten KNN zu beurteilen. - Comparing (S4) the second pairs of images with the first pairs of images in order to assess the second ANN with regard to its similarity or difference to the first ANN.
2. Verfahren nach Anspruch 1 , wobei anhand des Vergleichens die Ähnlichkeit von ersten Trainingsdaten, mittels welchen das erste KNN trainiert wurde und zweiten Trainingsdaten, mittels welchen das zweite KNN trainiert wurde, beurteilt wird. 2. The method as claimed in claim 1, wherein the comparison is used to assess the similarity of the first training data, which was used to train the first ANN, and the second training data, which was used to train the second ANN.
3. Verfahren nach einem der vorstehenden Ansprüche, wobei anhand des Vergleichens die Ähnlichkeit von einer ersten Architektur des ersten KNN mit einer zweiten Architektur des zweiten KNN beurteilt wird. 3. The method according to claim 1, wherein the comparison is used to assess the similarity between a first architecture of the first ANN and a second architecture of the second ANN.
4. Verfahren nach einem der vorstehenden Ansprüche, wobei erste Abbildungspaare mit einem Datenpunkt aus dem Eingangsdatenraum (19), welche sich innerhalb eines vorgegebenen Nahbereichs eines Teilmengenrandes (1 1 ) einer Teilmenge (15; 16; 17) der ersten Partition (13) befinden, vorgegeben werden. 4. The method according to any one of the preceding claims, wherein first pairs of images with a data point from the input data space (19) which are within a predetermined vicinity of a subset boundary (1 1) of a subset (15; 16; 17) of the first partition (13). , to be specified.
5. Verfahren nach Anspruch 4, wobei eine minimale Störung (5) ermittelt wird, die mit dem Datenpunkt aus dem Eingangsdatenraum zu verknüpfen ist, sodass sich das zu dem gestörten Datenpunkt aus dem Eingangsdatenraum (19) zugehörige Abbildungsergebnis von dem zugehörigen Abbildungsergebnis des nicht gestörten Datenpunkts aus dem Eingangsdatenraum (19) unterscheidet. 5. The method according to claim 4, wherein a minimum disturbance (5) is determined, which is to be linked to the data point from the input data space, so that the mapping result associated with the disturbed data point from the input data space (19) differs from the associated mapping result of the undisturbed Data point from the input data space (19) differs.
6. Verfahren nach einem der vorstehenden Ansprüche, wobei der Eingangsdatenraum Daten enthält, die von einem Bildsensor erfasst wurden und/oder Bilddaten enthält, die mittels softwaregestützter Verfahren erzeugt wurden. 6. The method according to any one of the preceding claims, wherein the input data space contains data that was captured by an image sensor and/or contains image data that were generated using software-supported methods.
7. Computerprogrammprodukt mit Programmcode-Mitteln, um das Verfahren nach einem der vorstehenden Ansprüche durchzuführen. 7. Computer program product with program code means to carry out the method according to any one of the preceding claims.
8. Recheneinheit, die eingerichtet ist, mit dem ersten und/oder zweiten KNN geladen zu werden und/oder mit einem das erste bzw. zweite KNN ausführenden Recheneinheit gekoppelt zu werden, wobei die Recheneinheit eingerichtet ist, das Verfahren nach einem der vorstehenden Ansprüche 1 -6 durchzuführen. 8. Arithmetic logic unit that is set up to be loaded with the first and/or second ANN and/or to be coupled to a computing unit that executes the first or second ANN, wherein the arithmetic logic unit is set up to perform the method according to any one of the preceding claims 1 -6 to perform.
EP21815132.2A 2020-12-07 2021-11-15 Comparing a first artificial neural network with a second artificial neural network Pending EP4256475A1 (en)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
DE102020215430.9A DE102020215430A1 (en) 2020-12-07 2020-12-07 Comparing a first ANN to a second ANN
PCT/EP2021/081626 WO2022122307A1 (en) 2020-12-07 2021-11-15 Comparing a first artificial neural network with a second artificial neural network

Publications (1)

Publication Number Publication Date
EP4256475A1 true EP4256475A1 (en) 2023-10-11

Family

ID=78789993

Family Applications (1)

Application Number Title Priority Date Filing Date
EP21815132.2A Pending EP4256475A1 (en) 2020-12-07 2021-11-15 Comparing a first artificial neural network with a second artificial neural network

Country Status (3)

Country Link
EP (1) EP4256475A1 (en)
DE (1) DE102020215430A1 (en)
WO (1) WO2022122307A1 (en)

Also Published As

Publication number Publication date
DE102020215430A1 (en) 2022-06-09
WO2022122307A1 (en) 2022-06-16

Similar Documents

Publication Publication Date Title
DE112018002822T5 (en) CLASSIFY NEURONAL NETWORKS
DE102005046747B3 (en) Computer-aided learning of neural networks involves changing cross-links between first and second layers of neurons of neural network based on variable state of neural network which is determined using feature instances and categories
DE102017218889A1 (en) Unarmed parameterized AI module and method of operation
DE102021124256A1 (en) MOBILE AI
DE102021207613A1 (en) Process for quality assurance of a system
EP1154369A2 (en) Method for cyclic, interactive image analysis , computer system and program for carrying out the method
DE102021201124A1 (en) TRAINING IMAGE CLASSIFIER NETWORKS
DE4121453C2 (en) Approximation inference device
EP4256475A1 (en) Comparing a first artificial neural network with a second artificial neural network
DE102019127622B4 (en) Defense generator, method for preventing an attack on an AI unit and computer-readable storage medium
DE102021201833A1 (en) Device for processing at least one input data set using a neural network and method
EP3945452A1 (en) Method for optimisng sensor parameters
DE102021200215A1 (en) Determining a confidence of an artificial neural network
DE102021124252A1 (en) Neural network systems for abstract thinking
DE112021005531T5 (en) METHOD AND DEVICE FOR GENERATION OF TRAINING DATA FOR A GRAPH NEURONAL NETWORK
DE102021207754A1 (en) GENERATION OF COMPUTER-IMPLEMENTED NEURAL NETWORKS WITH ELIMINATED ARCHITECTURAL BOTTLES
DE102022115101A1 (en) AUTOMATED DESIGN OF ARTIFICIAL NEURAL NETWORK ARCHITECTURES
DE102021214552A1 (en) Method for evaluating a trained deep neural network
DE102021204343A1 (en) Controller for generating training data for training a machine learning algorithm
DE102020212328A1 (en) Device and computer-implemented method for a network architecture search
DE102022203045A1 (en) Confidence analysis during training of an ANN
DE19610976A1 (en) Computer virus detection system
DE102021207753A1 (en) EFFICIENT SECOND-ORDER PRUNING OF COMPUTER-IMPLEMENTED NEURAL NETWORKS
DE102022203834A1 (en) Method for training a machine learning algorithm taking into account at least one inequality condition
DE202021102338U1 (en) Control unit for generating training data for training a machine learning algorithm

Legal Events

Date Code Title Description
STAA Information on the status of an ep patent application or granted ep patent

Free format text: STATUS: UNKNOWN

STAA Information on the status of an ep patent application or granted ep patent

Free format text: STATUS: THE INTERNATIONAL PUBLICATION HAS BEEN MADE

PUAI Public reference made under article 153(3) epc to a published international application that has entered the european phase

Free format text: ORIGINAL CODE: 0009012

STAA Information on the status of an ep patent application or granted ep patent

Free format text: STATUS: REQUEST FOR EXAMINATION WAS MADE

17P Request for examination filed

Effective date: 20230605

AK Designated contracting states

Kind code of ref document: A1

Designated state(s): AL AT BE BG CH CY CZ DE DK EE ES FI FR GB GR HR HU IE IS IT LI LT LU LV MC MK MT NL NO PL PT RO RS SE SI SK SM TR

DAV Request for validation of the european patent (deleted)
DAX Request for extension of the european patent (deleted)