WO2023006597A1 - Verfahren und vorrichtung zum erstellen eines maschinellen lernsystems - Google Patents

Verfahren und vorrichtung zum erstellen eines maschinellen lernsystems Download PDF

Info

Publication number
WO2023006597A1
WO2023006597A1 PCT/EP2022/070591 EP2022070591W WO2023006597A1 WO 2023006597 A1 WO2023006597 A1 WO 2023006597A1 EP 2022070591 W EP2022070591 W EP 2022070591W WO 2023006597 A1 WO2023006597 A1 WO 2023006597A1
Authority
WO
WIPO (PCT)
Prior art keywords
edges
function
drawn
machine learning
path
Prior art date
Application number
PCT/EP2022/070591
Other languages
English (en)
French (fr)
Inventor
Benedikt Sebastian Staffler
Jan Hendrik Metzen
Original Assignee
Robert Bosch Gmbh
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Robert Bosch Gmbh filed Critical Robert Bosch Gmbh
Priority to CN202280052618.5A priority Critical patent/CN117836781A/zh
Priority to US18/549,055 priority patent/US20240169225A1/en
Publication of WO2023006597A1 publication Critical patent/WO2023006597A1/de

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/08Learning methods
    • G06N3/082Learning methods modifying the architecture, e.g. adding, deleting or silencing nodes or connections
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06NCOMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
    • G06N7/00Computing arrangements based on specific mathematical models
    • G06N7/01Probabilistic graphical models, e.g. probabilistic networks

Definitions

  • the invention relates to a method for creating a machine learning system using a graph that describes a large number of possible architectures of the machine learning system, a computer program and a machine-readable storage medium.
  • the aim of an architecture search is to find the best possible network architecture in the sense of a key performance indicator/metric for a given data set fully automatically.
  • the one-shot model is typically constructed as a directed graph in which the nodes represent data and the edge operations, which represent a calculation rule, convert the data from the input node into data from the output node.
  • the search space consists of subgraphs (eg paths) in the one-shot model. Since the one-shot model can be very large, individual architectures can be pulled from the one-shot model for training, e.g. B. shown by Cai, H., Zhu, L., & Han, S. (2018). ProxylessNAS: Direct neural architecture search on target task and hardware. arXiv preprint arXiv:1812.00332.
  • ProxylessNAS Direct Neural Architecture Search on Target Task and Hardware, available online: https://arxiv.org/abs/1812.00332, an architecture search that takes hardware properties into account.
  • a probability distribution over the outgoing edges is defined for each node.
  • the inventors propose a new type of parameterization of the probability distribution, which is more meaningful than the probability distributions previously used with regard to dependencies between edges that have already been drawn.
  • the purpose of this novel parameterization is to include dependencies between different decision points in the search space in the probability distributions.
  • Such a decision can be, for example, the selection of a neural network operation (such as decisions between convolution and pooling operations). With this, for example, general patterns such as "two layers of convolution should be followed by a pooling operation" can be learned.
  • the previous probability distributions could only learn simple decision rules like "a certain convolution should be chosen at a certain decision point" because they used a fully factorized parameterization of the architectural distribution.
  • the invention has the advantage that better architectures can be found for a given task via the proposed parameterization of the probability distributions. Disclosure of Invention
  • the invention relates to a computer-implemented method for creating a machine learning system, which is preferably used for image processing.
  • the method includes at least the following steps: Providing a directed graph with at least one input and output node, which are connected via a plurality of edges and nodes.
  • the graph in particular the one-shot model, comprehensively describes a supermodel for a variety of possible architectures of the machine learning system.
  • the probability are determined depending on a sequence of previously drawn edges of the respective path.
  • the probabilities of the possible subsequent edges to be drawn are thus determined as a function of a section of the path drawn up to that point through the directed graph.
  • the previously drawn section can be referred to as a partial path and can have the previously drawn edges, iteratively subsequently drawn edges being able to be added until the input node is connected to the output node, ie the drawn path is then present.
  • the probabilities are preferably also determined as a function of the operations that are assigned to the respective edges.
  • a path can be understood as a subgraph of the directed graph comprising a subset of the edges and nodes of the directed graph, and which subgraph connects the input node to the output node of the directed graph.
  • the machine learning systems corresponding to the drawn paths are trained, parameters of the machine learning system and in particular the probabilities of the edges of the path being adjusted during training, so that a cost function is optimized.
  • the last drawing of the path in the last step can be random or the edges with the highest probabilities are drawn in a targeted manner.
  • a function determines the probabilities of the edges depending on the order of the previously drawn edges, with the function being parameterized and the parameterization of the function being optimized during training depending on the cost function.
  • Each edge is preferably assigned its own function, which determines a probability as a function of the sequence of the previously drawn edges of the partial path.
  • edges and/or nodes be assigned a unique coding and the function determines the probability as a function of this coding.
  • a unique index is preferably assigned to each edge for this purpose.
  • the function determines a probability distribution over the possible edges from a set of edges that can be drawn next.
  • Each node is particularly preferably assigned its own function, with the functions determining the probability distribution over these edges for all edges which connect the respective node to immediately following neighboring nodes in the graph.
  • the function is an affine transformation or a neural network (such as a transformer).
  • the parameterization of the affine transformation describes a linear transformation and a shift in the unique encoding.
  • the linear transformation can be a so-called low-rank approximation of the linear transformation.
  • each node is assigned a neural network for determining the probabilities and a parameterization of the first layers of the neural networks can be shared between all neural networks.
  • the neural networks particularly preferably share all parameters except for the parameters of the last layer.
  • the cost function has a first function that evaluates the performance of the machine learning system in terms of its performance, e.g. the accuracy of segmentation, object recognition or the like, and optionally a second function that depends on the length of the path and the operations of the edges estimates a latency of the machine learning system.
  • the second function can also estimate a computer resource consumption of the path.
  • the machine learning system that is created is preferably an artificial neural network, which can be set up for segmentation and object detection in images.
  • the invention relates to a computer program that is set up to carry out the above method and a machine-readable storage medium on which this computer program is stored.
  • FIG. 1 shows a schematic representation of a flow chart of an embodiment of the invention
  • FIG. 2 schematic representation of an actuator control system
  • FIG. 3 shows an exemplary embodiment for controlling an at least partially autonomous robot
  • FIG. 4 schematically shows an exemplary embodiment for controlling a production system
  • FIG. 5 schematically shows an exemplary embodiment for controlling an access system
  • FIG. 6 schematically shows an exemplary embodiment for controlling a monitoring system
  • FIG. 7 shows a schematic of an exemplary embodiment for controlling a personal assistant
  • FIG. 8 shows a schematic of an exemplary embodiment for controlling a medical imaging system
  • FIG. 9 shows a possible construction of a training device
  • neural architecture search methods In order to find good architectures of deep neural networks for a given data set, automatic methods for architecture search can be applied, so-called neural architecture search methods. For this purpose, a search space of possible architectures of neural networks is explicitly or implicitly defined.
  • a calculation graph (the so-called one-shot model) is to be defined for the description of a search space, which contains a large number of possible architectures in the search space as subgraphs. Since the one-shot model can be very large, individual architectures can be drawn from the one-shot model for training. This is typically done by drawing individual paths from a specified input node to a specified output node of the network. In the simplest case, if the calculation graph consists of a chain of nodes that can each be connected via different operations, it is sufficient to draw the operation that connects them for two consecutive nodes.
  • a path can be drawn iteratively, starting at the input, then drawing the next node and the connecting edge, continuing iteratively to the goal node.
  • the one-shot model with dragging can then be trained by dragging an architecture for each mini-batch and adjusting the weights of the operations in the dragged architecture using a standard gradient stepping method. Finding the best architecture can either take place as a separate step after weight training, or it can be done alternately with weight training.
  • each edge E of this supergraph S can be assigned to a network operation, such as a convolution, and each node V to a data tensor that represents the inputs and outputs of operations. It is also conceivable that the nodes of the supergraph correspond to a specific neural network operation such as a convolution and that each edge corresponds to a data tensor.
  • the nodes/edges can be drawn as a function of probability distributions, in particular categorical distributions. Thereby can the probability distribution and/or from an op timable parameter a, where the probability distributions have the same cardinality as V i or E j .
  • This iterative drawing of the edges/nodes results in a sequence of partial paths G 0 , G 1 , ..., G k ..., G T , where G T is the 'final' path connecting the input with the output of the graph connects.
  • a major limitation of defining the probability distribution by categorical distributions is that these probability distributions and are independent of the path G k currently drawn. This does not make it possible to learn, especially more complex, dependencies between different nodes and edges. It is therefore proposed to formulate the probability distributions dependent on the path G k drawn so far: and .
  • each ve V s and each e ⁇ E s is preferably assigned a unique index, which is referred to below as n(v) and n(e).
  • the function is an affine transformation, e.g .
  • corresponds to j .
  • W j W j 'W j ".
  • W j ' can be divided over all j and thus act as a low-dimensional (non-unique) encoding based on the unique encoding h.
  • a more expressive choice is an implementation of the function by a multi-layer perceptron (MLP), where ⁇ j represents parameters of the MLP.
  • MLP multi-layer perceptron
  • ⁇ j represents parameters of the MLP.
  • the parameters of the MLP can optionally be divided via j up to the last layer.
  • a transformer-based implementation of the function can also be used det, consisting of a plurality of layers with 'multi-headed self-attention' and a final linear layer. Parameters from all but the last layer can optionally be shared across all j.
  • the parameters of the function can be optimized using a gradient descent method.
  • the gradients can be estimated using a black box optimizer, e.g. using the REINFORCE trick (see, for example, the literature "ProxylessNAS” cited above). That is, the optimization of the architecture can be performed in the same way as when using known categorical probability distributions.
  • FIG. 1 schematically shows a flowchart (20) of the improved method for searching for an architecture with a one-shot model.
  • the automatic architecture search can be performed as follows.
  • the automatic architecture search first requires a search space (S21) to be provided, which can be given here in the form of a one-shot model.
  • Any form of architecture search that pulls paths from a one-shot model (S22) can then be used.
  • the paths drawn here become dependent on a result of the function and/or pulled.
  • the drawn machine learning systems that correspond to the paths are trained and the parameters a ; of the function are adjusted during teaching.
  • the parameters can be optimized during training not only with regard to accuracy, but also for special hardware (e.g. hardware accelerators).
  • the cost function contains an additional term that characterizes the costs of running the machine learning system with its configuration on the hardware.
  • Steps S22 to S23 can be repeated several times in succession.
  • a final path can then be drawn based on the supergraph (S24) and a corresponding machine learning system can be initialized according to this path.
  • the machine learning system created after step S24 is an artificial neural network 60 (shown in Figure 2) and is used as explained below.
  • Figure 2 shows an actuator 10 in its environment 20 in interaction with a control system 40.
  • the environment 20 is preferably recorded at regular time intervals in a sensor 30, in particular an imaging sensor such as a video sensor, which is also detected by a plurality of sensors can be given, for example a stereo camera.
  • imaging sensors are also conceivable, such as radar, ultrasound or lidar.
  • a thermal imaging camera is also conceivable.
  • the sensor signal S--or one sensor signal S each in the case of several sensors--of the sensor 30 is transmitted to the control system 40.
  • the control system 40 thus receives a sequence of sensor signals S. From this, the control system 40 determines control signals A, which are transmitted to the actuator 10 .
  • the control system 40 receives the sequence of sensor signals S from the sensor 30 in an optional receiving unit 50, which converts the sequence of sensor signals S into a sequence of input images x (alternatively, the sensor signal S can also be taken over directly as the input image x become).
  • the input image x can be a section or a further processing of the sensor signal S, for example.
  • the input image x includes individual frames of a video recording. In other words, input image x is determined as a function of sensor signal S.
  • the sequence of input images x is supplied to a machine learning system, an artificial neural network 60 in the exemplary embodiment.
  • the artificial neural network 60 is preferably parameterized by parameters f, which are stored in a parameter memory P and are made available by it.
  • the artificial neural network 60 determines output variables y from the input images x. These output variables y can in particular include a classification and semantic segmentation of the input images x. Output variables y are fed to an optional conversion unit 80, which uses them to determine control signals A, which are fed to the actuator 10 in order to control the actuator 10 accordingly. Output variable y includes information about objects that the sensor 30 has detected.
  • the actuator 10 receives the control signals A, is controlled accordingly and carries out a corresponding action.
  • the actuator 10 can comprise a control logic (not necessarily structurally integrated), which determines a second control signal from the control signal A, with which the actuator 10 is then controlled.
  • control system 40 comprises the sensor 30. In still further embodiments, the control system 40 alternatively or additionally also comprises the actuator 10.
  • control system 40 comprises a single or a plurality of processors 45 and at least one machine-readable storage medium 46 on which instructions are stored which, when executed on the processors 45, cause the control system 40 to carry out the inventive carry out procedures.
  • a display unit 10a is provided as an alternative or in addition to the actuator 10 .
  • FIG. 3 shows how the control system 40 can be used to control an at least partially autonomous robot, here an at least partially autonomous motor vehicle 100 .
  • the sensor 30 can be, for example, a video sensor that is preferably arranged in the motor vehicle 100 .
  • the artificial neural network 60 is set up to reliably identify x objects from the input images.
  • the actuator 10 that is preferably arranged in the motor vehicle 100 can be, for example, a brake, a drive or a steering system of the motor vehicle 100 .
  • the control signal A can then be determined in such a way that the actuator or actuators 10 is controlled in such a way that the motor vehicle 100, for example, prevents a collision with the objects reliably identified by the artificial neural network 60, particularly when objects are involved certain classes, e.g. pedestrians.
  • the at least partially autonomous robot can also be another mobile robot (not shown), for example one that moves by flying, swimming, diving or walking.
  • the mobile robot can, for example, also be an at least partially autonomous lawn mower or an at least partially autonomous cleaning robot.
  • the control signal A can be determined in such a way that the drive and/or steering of the mobile robot are controlled in such a way that the at least partially autonomous robot prevents, for example, a collision with objects identified by the artificial neural network 60 .
  • the display unit 10a can be activated with the activation signal A and, for example, the determined safe areas can be displayed. It is also not the case, for example, in a motor vehicle 100 Automated steering possible that the display unit 10a is controlled with the control signal A in such a way that it outputs an optical or acoustic warning signal when it is determined that the motor vehicle 100 threatens to collide with one of the reliably identified objects.
  • FIG. 4 shows an exemplary embodiment in which the control system 40 is used to control a production machine 11 of a production system 200 in that an actuator 10 controlling this production machine 11 is controlled.
  • the production machine 11 can be, for example, a machine for punching, sawing, drilling and/or cutting.
  • the sensor 30 can then be an optical sensor, for example, which detects properties of manufactured products 12a, 12b, for example.
  • these manufactured products 12a, 12b are movable. It is possible for the actuator 10 controlling the manufacturing machine 11 to be activated depending on an assignment of the manufactured products 12a, 12b detected, so that the manufacturing machine 11 correspondingly executes a subsequent processing step of the correct one of the manufactured products 12a, 12b. It is also possible that by identifying the correct properties of the same one of the manufactured products 12a, 12b (i.e. without a mismatch), the manufacturing machine 11 correspondingly adapts the same manufacturing step for processing a subsequent manufactured product.
  • FIG. 5 shows an exemplary embodiment in which the control system 40 is used to control an access system 300 .
  • Access system 300 may include a physical access control, such as a door 401 .
  • Video sensor 30 is set up to detect a person. This captured image can be interpreted by means of the object identification system 60 . If several people are recorded at the same time, the identity of the people can be determined particularly reliably by assigning the people (ie the objects) to one another, for example by analyzing their movements.
  • the actuator 10 can be a lock that, depending on the control signal A, releases the access control or not, for example the door 401 opens or not.
  • the control signal A can be selected depending on the interpretation of the object identification system 60, for example depending on the ascertained identity of the person.
  • a logical access control can also be provided instead of the physical access control.
  • FIG. 6 shows an exemplary embodiment in which the control system 40 is used to control a monitoring system 400 .
  • This exemplary embodiment differs from the exemplary embodiment illustrated in FIG.
  • an identity of the objects recorded by the video sensor 30 can be reliably determined by the artificial neural network 60 in order to deduce which are suspicious depending on this, for example, and the control signal A can then be selected in such a way that this object is the display unit 10a is highlighted in color.
  • FIG. 7 shows an exemplary embodiment in which the control system 40 is used to control a personal assistant 250 .
  • the sensor 30 is preferably an optical sensor that receives images of a gesture by a user 249 .
  • the control system 40 determines a control signal A for the personal assistant 250, for example by the neural network carrying out gesture recognition. This determined activation signal A is then transmitted to the personal assistant 250 and he is thus activated accordingly.
  • This determined control signal A actual can be selected in particular in such a way that it corresponds to a presumed desired control by the user 249 .
  • This presumed desired activation can be determined as a function of the gesture recognized by the artificial neural network 60 .
  • the control system 40 can then select the activation signal A for transmission to the personal assistant 250 and/or select the activation signal A for transmission to the personal assistant according to the assumed desired activation 250 .
  • This corresponding control can include, for example, the personal assistant 250 retrieving information from a database and reproducing it for the user 249 in a receptive manner.
  • a household appliance (not shown), in particular a washing machine, a cooker, an oven, a microwave or a dishwasher, can also be provided in order to be controlled accordingly.
  • FIG. 8 shows an exemplary embodiment in which the control system 40 is used to control a medical imaging system 500, for example an MRT, X-ray or ultrasound device.
  • the sensor 30 can be an imaging sensor, for example, and the control system 40 controls the display unit 10a.
  • it can be determined by the neural network 60 whether an area recorded by the imaging sensor is conspicuous, and the control signal A can then be selected in such a way that this area is highlighted in color by the display unit 10a.
  • FIG 9 shows an exemplary training device 140 for training one of the drawn machine learning systems from the multigraph, in particular the neural network 60.
  • Training device 140 includes a provider 71, the input variables x, such as input images, and target output variables ys, for example target classifications, provides.
  • the input variable x is supplied to the artificial neural network 60 to be trained, which uses it to determine output variables y.
  • Output variables y and target output variables ys are supplied to a comparator 75, which determines new parameters f' therefrom depending on whether the respective output variables y and target output variables ys match, which parameters are transmitted to the parameter memory P and replace parameter f there.
  • the methods executed by the training system 140 can be implemented as a computer program and stored on a machine-readable storage medium 147 and executed by a processor 148 .
  • entire images do not have to be classified. It is possible, for example, for image sections to be classified as objects using a detection algorithm, for these image sections to then be cut out, if necessary a new image section is generated and inserted into the associated image in place of the cut out image section.
  • the term "computer” includes any device for processing predeterminable calculation rules. These calculation rules can be in the form of software, or in the form of hardware, or in a mixed form of software and hardware.

Landscapes

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

Abstract

Verfahren zum Erstellen eines maschinellen Lernsystems, umfassend folgende Schritte: Bereitstellen eines gerichteten Graphen mit einem Eingangs- und Ausgangsknoten, wobei jeder Kante jeweils eine Wahrscheinlichkeit zugeordnet ist, welche charakterisiert mit welcher Wahrscheinlichkeit eine Kante gezogen wird. Die Wahrscheinlichkeiten werden abhängig von einer Kodierung der aktuell gezogenen Kanten ermittelt.

Description

Beschreibung
Titel
Verfahren und Vorrichtung zum Erstellen eines maschinellen Lernsystems
Die Erfindung betrifft ein Verfahren zum Erstellen eines maschinellen Lernsys- tems unter Verwendung eines Graphen, der eine Vielzahl von möglichen Archi- tekturen des maschinellen Lernsystems beschreibt, ein Computerprogramm und ein maschinenlesbares Speichermedium.
Stand der Technik
Das Ziel einer Architektursuche insbesondere für neuronale Netzwerke ist, eine möglichst gute Netzwerkarchitektur im Sinne einer Leistungskennzahl/Metrik für einen vorgegebenen Datensatz vollautomatisch zu finden.
Um die automatische Architektursuche recheneffizient zu gestalten, können sich verschiedene Architekturen in dem Suchraum die Gewichte ihrer Operationen tei- len, wie z.B. bei einem One-Shot NAS Modell, gezeigt durch Pham, H., Guan, M. Y., Zoph, B., Le, Q. V., & Dean, J. (2018). Efficient neural architecture search via Parameter sharing. arXiv preprint arXiv:1802.03268.
Das One-Shot Modell wird dabei typischerweise als gerichteter Graph konstru- iert, bei dem die Knoten Daten darstellen und die Kanten Operationen, welche eine Berechnungsvorschrift darstellen, die Daten des Eingangsknoten in Daten des Ausgangsknoten überführen. Der Suchraum besteht dabei aus Subgraphen (z.B. Pfade) in dem One-Shot Modell. Da das One-Shot Modell sehr groß sein kann, können einzelne Architekturen aus dem One-Shot Modell für das Training gezogen werden, wie z. B. gezeigt durch Cai, H., Zhu, L., & Han, S. (2018). ProxylessNAS: Direct neural architecture search on targettask and hardware. arXiv preprint arXiv:1812.00332. Dies geschieht typischerweise in dem ein ein- zelner Pfad von einem festgelegten Eingangsknoten zu einem Ausgangsknoten des Netzwerkes gezogen wird, wie z.B. gezeigt durch Guo, Z., Zhang, X., Mu, H., Heng, W., Liu, Z., Wei, Y., & Sun, J. (2019). Single path one-shot neural architec- ture search with uniform sampling. arXiv preprint arXiv:1904.00420.
Die Autoren Cai et al. offenbaren in ihrer Veröffentlichung ProxylessNAS: Direct Neural Architecture Search on Target Task and Hardware, online abrufbar: https://arxiv.org/abs/1812.00332, eine Architektursuche, welche Hardwareeigen- schaften berücksichtigt.
Vorteile der Erfindung
Wie oben beschrieben, werden aus einem One-Shot Modell Pfade zwischen Ein- gangs- und Ausgangsknoten gezogen. Dazu wird für jeden Knoten eine Wahr- scheinlichkeitsverteilung über die ausgehenden Kanten definiert. Die Erfinder schlagen eine neuartige Parametrierung der Wahrscheinlichkeitsverteilung vor, die hinsichtlich Abhängigkeiten zwischen bereits gezogenen Kanten aussage- kräftiger ist als die bisherig verwendeten Wahrscheinlichkeitsverteilungen. Der Zweck dieser neuartigen Parametrisierung ist es, Abhängigkeiten zwischen ver- schiedenen Entscheidungspunkten im Suchraum in die Wahrscheinlichkeitsver- teilungen einfließen zu lassen. Eine solche Entscheidung kann beispielsweise die Auswahl eines neuronalen Netzbetriebes sein (wie Entscheidungen zwischen Faltungs- und Pooling-Operationen). Damit können zum Beispiel allgemeine Muster wie "zwei Faltungsschichten sollten von einer Pooling-Operation gefolgt werden" erlernt werden. Die bisherigen Wahrscheinlichkeitsverteilungen konnten nur einfache Entscheidungsregeln erlernen, wie "eine bestimmte Faltung sollte an einem bestimmten Entscheidungspunkt gewählt werden", da sie eine voll fak- torisierte Parametrisierung der Architekturverteilung verwendeten.
Zusammenfassend kann also gesagt werden, dass die Erfindung den Vorteil hat, dass über die vorgeschlagene Parametrisierung der Wahrscheinlichkeitsvertei- lungen bessere Architekturen für eine gegebene Aufgabe aufgefunden werden können. Offenbarung der Erfindung
In einem ersten Aspekt betrifft die Erfindung ein computerimplementiertes Ver- fahren zum Erstellen eines maschinellen Lernsystems, welches vorzugsweise für eine Bildverarbeitung verwendet wird.
Das Verfahren umfasst zumindest folgende Schritte: Bereitstellen eines gerichte- ten Graphen mit mindestens einem Eingangs- und Ausgangsknoten, die über eine Mehrzahl von Kanten und Knoten verbunden sind. Der Graph, insbesondere das One-Shot Modell, beschreibt ein Supermodel umfassend eine Vielzahl von möglichen Architekturen des maschinellen Lernsystems.
Daraufhin folgt ein zufälliges Ziehen einer Mehrzahl von Pfaden durch den ge- richteten Graphen, insbesondere von Subgraphen des gerichteten Graphen, wo- bei den Kanten jeweils eine Wahrscheinlichkeit zugeordnet ist, welche charakteri- siert mit welcher Wahrscheinlichkeit die jeweilige Kante gezogen wird. Die Be- sonderheit hierbei ist, dass die Wahrscheinlichkeiten abhängig von einer Reihen- folge bisherig gezogener Kanten des jeweiligen Pfades ermittelt werden. Die Wahrscheinlichkeiten der möglichen nachfolgenden zu ziehenden Kanten wer- den also abhängig von einem bis dahin gezogenen Abschnitt des Pfads durch den gerichteten Graphen ermittelt. Der bisher gezogene Abschnitt kann als Teil- pfad bezeichnet werden und kann die bisherig gezogenen Kanten aufweisen, wo- bei iterativ nachfolgend gezogene Kanten hinzugefügt werden können, bis der Eingangsknoten mit dem Ausgangsknoten verbunden ist, also dann der gezo- gene Pfad vorliegt. Vorzugsweise werden die Wahrscheinlichkeiten auch abhän- gig von den Operationen, die den jeweiligen Kanten zugeordnet sind, ermittelt.
Es sei angemerkt, dass das Ziehen des Pfades iterativ erfolgen kann. Also ein schrittweises Erstellen des Pfades durch ein nacheinander folgendes Ziehen der Kanten erfolgt, wobei an jedem erreichten Knoten des Pfades die nachfolgende Kante zufällig aus den möglichen nachfolgenden Kanten, die mit diesem Knoten verbunden sind, abhängig von deren zugeordneten Wahrscheinlichkeiten ausge- wählt werden können. Ferner sei angemerkt, dass ein Pfad als ein Subgraph des gerichteten Graphen verstanden kann werden, welcher eine Untermenge der Kanten und Knoten des gerichteten Graphen aufweist, und wobei dieser Subgraph den Eingangsknoten mit dem Ausgangsknoten des gerichteten Graphen verbindet.
Anschließend folg ein Anlernen der den gezogenen Pfaden korrespondierenden maschinellen Lernsysteme, wobei beim Anlernen Parameter des maschinellen Lernsystems und insbesondere die Wahrscheinlichkeiten der Kanten des Pfades angepasst werden, sodass eine Kostenfunktion optimiert wird.
Daraufhin folg ein letztes Ziehen eines Pfades abhängig von den angepassten Wahrscheinlichkeiten und Erstellen des diesem Pfad korrespondierenden ma- schinellen Lernsystems. Das letzte Ziehen des Pfades in dem letzten Schritt kann zufällig erfolgen oder es werden gezielt die Kanten mit den höchsten Wahr- scheinlichkeiten gezogen.
Es wird vorgeschlagen, dass eine Funktion die Wahrscheinlichkeiten der Kanten abhängig von der Reihenfolge der bisherigen gezogenen Kanten ermittelt, wobei die Funktion parametrisiert ist und die Parametrisierung der Funktion beim Anler- nen abhängig von der Kostenfunktion optimiert wird. Vorzugsweise ist einer je- den Kante eine eigene Funktion zugeordnet, welche abhängig von der Reihen- folge der bisherig gezogenen Kanten des Teilpfades eine Wahrscheinlichkeit er- mittelt.
Ferner wird vorgeschlagen, dass den bisherig gezogenen Kanten und/oder Kno- ten eine eindeutige Kodierung zugeordnet wird und die Funktion abhängig von dieser Kodierung die Wahrscheinlichkeit ermittelt. Vorzugsweise wird hierfür je- der Kante ein eindeutiger Index zugeordnet.
Ferner wird vorgeschlagen, dass die Funktion eine Wahrscheinlichkeitsverteilung über die möglichen Kanten, aus einer Menge von Kanten, die als nächstes gezo- gen werden können, ermittelt. Besonders bevorzugt ist jedem Knoten eine ei- gene Funktion zugeordnet, wobei die Funktionen für alle Kanten, die den jeweili- gen Knoten mit unmittelbaren nachfolgende Nachbarknoten des Graphen verbin- den, die Wahrscheinlichkeitsverteilung über diese Kanten ermittelt. Ferner wird vorgeschlagen, dass die Funktion eine affine Transformation oder ein neuronales Netz (wie z.B. ein Transformer) ist.
Ferner wird vorgeschlagen, dass die Parametrisierung der affinen Transformation eine lineare Transformation und eine Verschiebung der eindeutigen Kodierung beschreibt. Um die lineare Transformation parametereffizienter zu gestalten, kann die lineare Transformation eine sog. Low-Rank Approximierung der linearen Transformation sein.
Ferner wird vorgeschlagen, dass jedem Knoten ein neuronales Netz zum Ermit- teln der Wahrscheinlichkeiten zugeordnet ist und eine Parametrisierung der ers- ten Schichten der neuronalen Netze zwischen allen neuronalen Netzen geteilt werden kann. Besonders bevorzugt teilen sich die neuronalen Netze alle Para- meter bis auf die Parameter der letzten Schicht.
Ferner wird vorgeschlagen, dass die Kostenfunktion eine erste Funktion aufweist, die eine Leistungsfähigkeit des maschinellen Lernsystems hinsichtlich dessen Performance bewertet, bspw. eine Genauigkeit einer Segmentierung, Objekter- kennung oder ähnliches und optional eine zweite Funktion aufweist, welche ab- hängig von einer Länge des Pfades und den Operationen der Kanten eine La- tenzzeit des maschinellen Lernsystems schätzt. Alternativ oder zusätzlich kann die zweite Funktion auch einen Computerressourcenverbrauch des Pfades schätzen.
Vorzugsweise ist das erstellte maschinelle Lernsystem ein künstliches neurona- les Netz, welches zur Segmentierung und Objektdetektion in Bildern eingerichtet sein kann.
Weiterhin wird vorgeschlagen, dass abhängig von einer Ausgabe des maschinel- len Lernsystem ein technisches System angesteuert wird. Beispiele für das tech- nische System sind in der nachfolgenden Figurenbeschreibung aufgezeigt.
In weiteren Aspekten betrifft die Erfindung ein Computerprogramm, das einge- richtet ist, die obigen Verfahren auszuführen und ein maschinenlesbares Spei- chermedium, auf dem dieses Computerprogramm gespeichert ist. Nachfolgend werden Ausführungsformen der Erfindung unter Bezugnahme auf die beiliegenden Zeichnungen näher erläutert. In den Zeichnungen zeigen:
Figur 1 schematische Darstellung eines Flussdiagramms einer Ausführungs- form der Erfindung;
Figur 2 schematische Darstellung eines Aktor-Steuerungssystems;
Figur 3 ein Ausführungsbeispiel zur Steuerung eines wenigstens teilautono- men Roboters;
Figur 4 schematisch ein Ausführungsbeispiel zur Steuerung eines Ferti- gungssystems;
Figur 5 schematisch ein Ausführungsbeispiel zur Steuerung eines Zugangs- systems;
Figur 6 schematisch ein Ausführungsbeispiel zur Steuerung eines Überwa- chungssystems;
Figur 7 schematisch ein Ausführungsbeispiel zur Steuerung eines persönli- chen Assistenten;
Figur 8 schematisch ein Ausführungsbeispiel zur Steuerung eines medizi- nisch bildgebenden Systems;
Figur 9 einen möglichen Aufbau einer Trainingsvorrichtung;
Um gute Architekturen von tiefen neuronalen Netzwerke für einen vorgegebenen Datensatz zu finden, können automatische Methoden zur Architektursuche ange- wandt werden, sogenannte Neural Architecture Search-Methoden. Dazu wird ein Suchraum von möglichen Architekturen neuronaler Netzwerke explizit oder impli- zit definiert.
Im Folgenden soll zur Beschreibung eines Suchraums ein Berechnungsgraph (das sogenannte One-Shot Modell) definiert werden, welcher eine Vielzahl von möglichen Architekturen in dem Suchraum als Subgraphen enthält. Da das One- Shot Modell sehr groß sein kann, können einzelne Architekturen aus dem One- Shot Modell für das Training gezogen werden. Dies geschieht typischerweise in dem einzelne Pfade von einem festgelegten Eingangsknoten zu einem festgeleg- ten Ausgangsknoten des Netzwerkes gezogen werden. Im einfachsten Fall, wenn der Berechnungsgraph aus einer Kette von Knoten be- steht, die jeweils über verschiedene Operationen verbunden sein können, genügt es, für jeweils zwei aufeinanderfolgende Knoten die Operation zu ziehen welche sie verbindet.
Falls das One-Shot Modell allgemeiner ein gerichteter Graph ist, kann ein Pfad iterativ gezogen werden, in dem bei dem Input begonnen wird, dann der nächste Knoten und die verbindende Kante gezogen wird, wobei dieses Vorgehen iterativ bis zum Zielknoten fortgesetzt wird.
Das One-Shot Modell mit Ziehen kann dann trainiert werden, indem für jeden Mini-Batch eine Architektur gezogen wird und die Gewichte der Operationen in der gezogenen Architektur mittels eines Standard-Gradientenschrittverfahrens angepasst werden. Das Finden der besten Architektur kann entweder als separa- ter Schritt nach dem Training der Gewichte stattfinden, oder abwechselnd mit dem Training der Gewichte durchgeführt werden.
Formalistisch kann das One-Shot Modell als ein sogenannter Supergraph S =
( VS,ES ) bezeichnet werden. Hierbei kann jeder Kante E dieses Supergraphen S einer Netzwerkoperation, wie einer Faltung, und jedem Knoten V ein Datenten- sor, der Ein- und Ausgängen von Operationen darstellt, zugewiesen sein. Denk- bar ist auch, dass die Knoten des Supergraphen einer bestimmten neuronalen Netzoperation wie einer Faltung und jede Kante einem Datentensor entsprechen. Das Ziel der Architektursuche ist es, einige Pfade G = (VG,EG) < S zu identifizie- ren, die ein oder mehrere Leistungskriterien wie Genauigkeit auf einem Testset und/oder Latenz auf einem Zielgerät optimieren.
Das oben erläuterte Ziehen des Pfades kann formalistisch wie folgt definiert wer- den. Es werden iterativ Knoten v ∈ Vi ≤ Vs und/oder Kanten e ∈ Ej ≤ Es gezo- gen, die zusammen den Pfad G ergeben.
Das Ziehen der Knoten/Kanten kann abhängig von Wahrscheinlichkeitsverteilun- gen, insbesondere kategorischen Verteilungen, durchgeführt werden. Dabei kann die Wahrscheinlichkeitsverteilung
Figure imgf000009_0001
und/oder von einem op-
Figure imgf000009_0002
timierbaren Parameter a abhängen, wobei die Wahrscheinlichkeitsverteilungen die gleiche Kardinalität wie Vi oder Ej aufweisen.
Dieses iterative Ziehen der Kanten/Knoten resultiert in einer Sequenz von Teil- pfaden G0, G1, ..., Gk ..., GT, wobei GT der 'finale' Pfad ist, welcher den Eingang mit dem Ausgang des Graphen verbindet.
Eine wesentliche Einschränkung der Definition der Wahrscheinlichkeitsverteilung durch kategorische Verteilungen ist, dass diese Wahrscheinlichkeitsverteilungen und unabhängig vom aktuellen gezogenen Pfad Gk sind.
Figure imgf000009_0003
Figure imgf000009_0004
Dies ermöglicht es nicht, insbesondere komplexere, Abhängigkeiten zwischen verschiedenen Knoten und Kanten zu erlernen. Es wird daher vorgeschlagen, die Wahrscheinlichkeitsverteilungen abhängig von den bisher gezogenen Pfad Gk zu formulieren: und .
Figure imgf000009_0005
Figure imgf000009_0006
Genauer gesagt, wird eine eindeutige Kodierung der bisherig gezogenen Teil- pfade Gk vorgeschlagen. Vorzugsweise wird hierfür jedem v e Vs und jeder e ∈ Es ein eindeutiger Index zugewiesen, der im Folgenden als n(v) und n(e) be- zeichnet wird. Die eindeutige Kodierung von Gk ist dann h = H( Gk) mit hi = ∃ e ∈ EK n(e) = i or ∃ v ∈ VK n(v) = i gegeben.
Gegeben dieser eindeutigen Kodierung, (und entsprechend
Figure imgf000009_0008
können dann durch eine Funktion f die Wahrscheinlichkeiten
Figure imgf000009_0007
ermittelt werden: . Die Ausgänge dieser Funktion
Figure imgf000009_0009
werden weiterhin als Wahrscheinlichkeiten für z.B. eine kategorische Verteilung verwendet, aus der der Knoten/Kanten abgetastet wird. Die Wahrscheinlichkeiten hängen jedoch nun von Gk ab.
Folgende Ausführungsformen der Funktion sind denkbar:
Figure imgf000009_0013
Im einfachsten Fall ist die Funktion eine affine Transformation, z.B.
Figure imgf000009_0012
Figure imgf000009_0010
. In diesem Fall entspricht αj. den Parametern Wj und bj der affinen
Figure imgf000009_0011
Transformation. Eine lineare Parametrierung mit weniger Parametern kann durch eine Low-Rank-Approximation Wj = Wj'Wj" erreicht werden. Darüber hinaus kann Wj' über alle j geteilt werden und somit als niederdimensionale (nicht-ein- deutige) Kodierung basierend auf der eindeutigen Kodierung h fungieren.
Eine ausdrucksmächtigere Wahl ist eine Implementierung der Funktion durch
Figure imgf000010_0001
ein mehrschichtiges Perzeptron (engl, a multi-layer perceptron, MLP), wobei αj Parameter des MLP darstellt. Auch hier können die Parameter des MLP bis auf die letzte Schicht optional über j geteilt werden.
Auch eine Transformer-basierte Implementierung der Funktion kann verwen-
Figure imgf000010_0002
det werden, bestehend aus einer Mehrzahl von Schichten mit ,multi-headed self- attention' und einer finalen linearen Schicht. Parameter von allen außer der letz- ten Schicht können optional über alle j geteilt werden.
Die Optimierung der Parameter der Funktion kann über ein Gradientenabstiegs- verfahren erfolgen. Alternativ können die Gradienten hierfür über einen Black- Box Optimierer geschätzt werden, z.B. unter Verwendung des REINFORCE- Tricks (siehe hierzu zum Beispiel die oben zitierte Literatur „ProxylessNAS“). D.h. die Optimierung der Architektur kann auf die gleiche Weise durchgeführt werden wie bei der Verwendung bekannter kategorischer Wahrscheinlichkeitsverteilun- gen.
Figur 1 zeigt schematisch zeigt schematisch ein Flussdiagramm (20) des verbes- serten Verfahrens zur Architektursuche mit einem One-Shot Modell.
Die automatische Architektursuche kann wie folgt durchgeführt werden. Die auto- matische Architektursuche benötigt zuerst ein Bereitstellen eines Suchraums (S21), welcher hier in der Form eines One-Shot Modells gegeben sein kann.
Anschließend kann jede Form der Architektursuche verwendet werden, welche Pfade aus einem One-Shot Modell zieht (S22). Die hierbei gezogenen Pfade werden abhängig von einem Ergebnis der Funktion und/oder
Figure imgf000010_0004
gezogen.
Figure imgf000010_0003
Im nachfolgenden Schritt (S23) werden dann die gezogenen maschinellen Lern- systeme, die den Pfaden entsprechen, angelernt und auch die Parameter a; der Funktion werden beim Anlernen angepasst.
Es sei angemerkt, dass eine Optimierung der Parameter beim Anlernen nicht nur bezüglich der Genauigkeit, sondern auch für spezielle Hardware (z.B. Hardware- beschleuniger) geschehen kann. Bspw. indem beim Training die Kostenfunktion einen weiteren Term enthält, der die Kosten zum Ausführen des maschinellen Lernsystems mit seiner Konfiguration auf der Hardware charakterisiert.
Die Schritte S22 bis S23 können mehrmals hintereinander wiederholt werden. Anschließend kann basierend auf dem Supergraph ein finaler Pfad gezogen wer- den (S24) und ein korrespondierendes maschinelles Lernsystem gemäß diesem Pfad initialisiert werden.
Vorzugsweise ist das erstelle maschinelle Lernsystem nach Schritt S24 ein künstliches neuronales Netz 60 (abgebildet in Figur 2) und wird verwendet wie im nachfolgenden erläutert.
Figur 2 zeigt einen Aktor 10 in seiner Umgebung 20 in Interaktion mit einem Steuerungssystem 40. In vorzugsweise regelmäßigen zeitlichen Abständen wird die Umgebung 20 in einem Sensor 30, insbesondere einem bildgebenden Sen- sor wie einem Videosensor, erfasst, der auch durch eine Mehrzahl von Sensoren gegeben sein kann, beispielsweise eine Stereokamera. Auch andere bildge- bende Sensoren sind denkbar, wie beispielsweise Radar, Ultraschall oder Lidar. Auch eine Wärmebildkamera ist denkbar. Das Sensorsignal S - bzw. im Fall mehrerer Sensoren je ein Sensorsignal S - des Sensors 30 wird an das Steue- rungssystem 40 übermittelt. Das Steuerungssystem 40 empfängt somit eine Folge von Sensorsignalen S. Das Steuerungssystem 40 ermittelt hieraus Ansteu- ersignale A, welche an den Aktor 10 übertragen werden.
Das Steuerungssystem 40 empfängt die Folge von Sensorsignalen S des Sen- sors 30 in einer optionalen Empfangseinheit 50, die die Folge von Sensorsigna- len S in eine Folge von Eingangsbildern x umwandelt (alternativ kann auch un- mittelbar je das Sensorsignal S als Eingangsbild x übernommen werden). Das Eingangsbild x kann beispielsweise ein Ausschnitt oder eine Weiterverarbeitung des Sensorsignals S sein. Das Eingangsbild x umfasst einzelne Frames einer Vi- deoaufzeichnung. Mit anderen Worten wird Eingangsbild x abhängig von Sensor- signal S ermittelt. Die Folge von Eingangsbildern x wird einem maschinellen Lernsystem, im Ausführungsbeispiel einem künstlichen neuronalen Netz 60, zu- geführt.
Das künstliche neuronale Netz 60 wird vorzugsweise parametriert durch Parame- ter f, die in einem Parameterspeicher P hinterlegt sind und von diesem bereitge- stellt werden.
Das künstliche neuronale Netz 60 ermittelt aus den Eingangsbildern x Ausgangs- größen y. Diese Ausgangsgrößen y können insbesondere eine Klassifikation und semantische Segmentierung der Eingangsbilder x umfassen. Ausgangsgrößen y werden einer optionalen Umformeinheit 80 zugeführt, die hieraus Ansteuersig- nale A ermittelt, welche dem Aktor 10 zugeführt werden, um den Aktor 10 ent- sprechend anzusteuern. Ausgangsgröße y umfasst Informationen über Objekte, die der Sensor 30 erfasst hat.
Der Aktor 10 empfängt die Ansteuersignale A, wird entsprechend angesteuert und führt eine entsprechende Aktion aus. Der Aktor 10 kann hierbei eine (nicht notwendigerweise baulich integrierte) Ansteuerlogik umfassen, welches aus dem Ansteuersignal A ein zweites Ansteuersignal ermittelt, mit dem dann der Aktor 10 angesteuert wird.
In weiteren Ausführungsformen umfasst das Steuerungssystem 40 den Sensor 30. In noch weiteren Ausführungsformen umfasst das Steuerungssystem 40 al- ternativ oder zusätzlich auch den Aktor 10.
In weiteren bevorzugten Ausführungsformen umfasst das Steuerungssystem 40 eine Ein- oder Mehrzahl von Prozessoren 45 und wenigstens ein maschinenles- bares Speichermedium 46, auf den Anweisungen gespeichert sind, die dann, wenn sie auf den Prozessoren 45 ausgeführt werden, das Steuerungssystem 40 veranlassen, das erfindungsgemäße Verfahren auszuführen. In alternativen Ausführungsformen ist alternativ oder zusätzlich zum Aktor 10 eine Anzeigeeinheit 10a vorgesehen.
Figur 3 zeigt, wie das Steuerungssystem 40 zur Steuerung eines wenigstens teil- autonomen Roboters, hier eines wenigstens teilautonomen Kraftfahrzeugs 100, eingesetzt werden kann.
Bei dem Sensor 30 kann es sich beispielsweise um einen vorzugsweise im Kraft- fahrzeug 100 angeordneten Videosensor handeln.
Das künstliche neuronale Netz 60 ist eingerichtet, aus den Eingangsbildern x Ob- jekte sicher zu identifizieren.
Bei dem vorzugsweise im Kraftfahrzeug 100 angeordneten Aktor 10 kann es sich beispielsweise um eine Bremse, einen Antrieb oder eine Lenkung des Kraftfahr- zeugs 100 handeln. Das Ansteuersignal A kann dann derart ermittelt werden, dass der Aktor oder die Aktoren 10 derart angesteuert wird, dass das Kraftfahr- zeug 100 beispielsweise eine Kollision mit den vom künstlichen neuronalen Netz 60 sicher identifizierten Objekte verhindert, insbesondere, wenn es sich um Ob- jekte bestimmter Klassen, z.B. um Fußgänger, handelt.
Alternativ kann es sich bei dem wenigstens teilautonomen Roboter auch um ei- nen anderen mobilen Roboter (nicht abgebildet) handeln, beispielsweise um ei- nen solchen, der sich durch Fliegen, Schwimmen, Tauchen oder Schreiten fort- bewegt. Bei dem mobilen Roboter kann es sich beispielsweise auch um einen wenigstens teilautonomen Rasenmäher oder einen wenigstens teilautonomen Putzroboter handeln. Auch in diesen Fällen kann das Ansteuersignal A derart er- mittelt werden, dass Antrieb und/oder Lenkung des mobilen Roboters derart an- gesteuert werden, dass der wenigstens teilautonome Roboter beispielsweise eine Kollision mit vom künstlichen neuronalen Netz 60 identifizierten Objekten verhindert.
Alternativ oder zusätzlich kann mit dem Ansteuersignal A die Anzeigeeinheit 10a angesteuert werden, und beispielsweise die ermittelten sicheren Bereiche darge- stellt werden. Auch ist es beispielsweise beim einem Kraftfahrzeug 100 mit nicht automatisierter Lenkung möglich, dass die Anzeigeeinheit 10a mit dem Ansteuer- signal A derart angesteuert wird, dass sie ein optisches oder akustisches Warn- signal ausgibt, wenn ermittelt wird, dass das Kraftfahrzeug 100 droht, mit einem der sicher identifizierten Objekte zu kollidieren.
Figur 4 zeigt ein Ausführungsbeispiel, in dem das Steuerungssystem 40 zur An- steuerung einer Fertigungsmaschine 11 eines Fertigungssystems 200 verwendet wird, indem ein diese Fertigungsmaschine 11 steuernder Aktor 10 angesteuert wird. Bei der Fertigungsmaschine 11 kann es sich beispielsweise um eine Ma- schine zum Stanzen, Sägen, Bohren und/oder Schneiden handeln.
Bei dem Sensor 30 kann es sich dann beispielsweise um einen optischen Sensor handeln, der z.B. Eigenschaften von Fertigungserzeugnissen 12a, 12b erfasst.
Es ist möglich, dass diese Fertigungserzeugnisse 12a, 12b beweglich sind. Es ist möglich, dass der die Fertigungsmaschine 11 steuernde Aktor 10 abhängig von einer Zuordnung der erfassten Fertigungserzeugnisse 12a, 12b angesteuert wird, damit die Fertigungsmaschine 11 entsprechend einen nachfolgenden Bearbei- tungsschritt des richtigen der Fertigungserzeugnisses 12a, 12b ausführt. Es ist auch möglich, dass durch Identifikation der richtigen Eigenschaften desselben der Fertigungserzeugnisse 12a, 12b (d.h. ohne eine Fehlzuordnung) die Ferti- gungsmaschine 11 entsprechend den gleichen Fertigungsschritt für eine Bearbei- tung eines nachfolgenden Fertigungserzeugnisses anpasst.
Figur 5 zeigt ein Ausführungsbeispiel, bei dem das Steuerungssystem 40 zur Steuerung eines Zugangssystems 300 eingesetzt wird. Das Zugangssystem 300 kann eine physische Zugangskontrolle, beispielsweise eine Tür 401 umfassen. Videosensor 30 ist eingerichtet ist, eine Person zu erfassen. Mittels des Objekti- dentifikationssystem 60 kann dieses erfasste Bild interpretiert werden. Sind meh- rere Personen gleichzeitig erfasst, kann durch eine Zuordnung der Personen (also der Objekte) zueinander beispielweise die Identität der Personen beson- ders zuverlässig ermittelt werden, beispielsweise durch eine Analyse ihrer Bewe- gungen. Der Aktor 10 kann ein Schloss sein, dass abhängig vom Ansteuersignal A die Zugangskontrolle freigibt, oder nicht, beispielsweise die Tür 401 öffnet, oder nicht. Hierzu kann das Ansteuersignal A abhängig von der der Interpretation des Objektidentifikationssystem 60 gewählt werden, beispielsweise abhängig von der ermittelten Identität der Person. An Stelle der physischen Zugangskontrolle kann auch eine logische Zugangskontrolle vorgesehen sein.
Figur 6 zeigt ein Ausführungsbeispiel, bei dem das Steuerungssystem 40 zur Steuerung eines Überwachungssystems 400 verwendet wird. Von dem in Figur 5 dargestellten Ausführungsbeispiel unterscheidet sich dieses Ausführungsbeispiel dadurch, dass an Stelle des Aktors 10 die Anzeigeeinheit 10a vorgesehen ist, die vom Steuerungssystem 40 angesteuert wird. Beispielsweise kann vom künstli- chen neuronalen Netz 60 zuverlässig eine Identität der vom Videosensor 30 auf- genommenen Gegenstände ermittelt werden, um abhängig davon z.B. darauf zu schließen, welche verdächtig werden, und das Ansteuersignal A dann derart ge- wählt werden, dass dieser Gegenstand von der Anzeigeeinheit 10a farblich her- vorgehoben dargestellt wird.
Figur 7 zeigt ein Ausführungsbeispiel, bei dem das Steuerungssystem 40 zur Steuerung eines persönlichen Assistenten 250 eingesetzt wird. Der Sensor 30 ist bevorzugt ein optischer Sensor, der Bilder einer Geste eines Nutzers 249 emp- fängt.
Abhängig von den Signalen des Sensors 30 ermittelt das Steuerungssystem 40 ein Ansteuersignal A des persönlichen Assistenten 250, beispielsweise, indem das neuronale Netz eine Gestenerkennung durchführt. Dem persönlichen Assis- tenten 250 wird dann dieses ermittelte Ansteuersignal A übermittelt und er somit entsprechend angesteuert. Dieses ermittelte Ansteuersignal A ist kann insbeson- dere derart gewählt werden, dass es einer vermuteten gewünschten Ansteue- rung durch den Nutzer 249 entspricht. Diese vermutete gewünschte Ansteuerung kann abhängig von der vom künstlichen neuronalen Netz 60 erkannten Geste er- mittelt werden. Das Steuerungssystem 40 kann dann abhängig von der vermute- ten gewünschten Ansteuerung das Ansteuersignal A zur Übermittlung an den persönlichen Assistenten 250 wählen und/oder das Ansteuersignal A zur Über- mittlung an den persönlichen Assistenten entsprechend der vermuteten ge- wünschten Ansteuerung 250 wählen. Diese entsprechende Ansteuerung kann beispielsweise beinhalten, dass der per- sönliche Assistent 250 Informationen aus einer Datenbank abruft und sie für den Nutzer 249 rezipierbar wiedergibt.
Anstelle des persönlichen Assistenten 250 kann auch ein Haushaltsgerät (nicht abgebildet), insbesondere eine Waschmaschine, ein Herd, ein Backofen, eine Mikrowelle oder eine Spülmaschine vorgesehen sein, um entsprechend ange- steuert zu werden.
Figur 8 zeigt ein Ausführungsbeispiel, bei dem das Steuerungssystem 40 zur Steuerung eines medizinischen bildgebenden System 500, beispielsweise eines MRT-, Röntgen- oder Ultraschallgeräts, verwendet wird. Der Sensor 30 kann bei- spielsweise durch einen bildgebenden Sensor gegeben sein, durch das Steue- rungssystem 40 wird die Anzeigeeinheit 10a angesteuert. Beispielsweise kann vom neuronalen Netz 60 ermittelt werden, ob ein vom bildgebenden Sensor auf- genommener Bereich auffällig ist, und das Ansteuersignal A dann derart gewählt werden, dass dieser Bereich von der Anzeigeeinheit 10a farblich hervorgehoben dargestellt wird.
Figur 9 zeigt eine beispielhafte Trainingsvorrichtung 140 zum Trainieren eines der gezogenen maschinellen Lernsystems aus dem Multigraphen, insbesondere des neuronalen Netzes 60. Trainingsvorrichtung 140 umfasst einen Bereitsteller 71, der Eingangsgrößen x, wie z.B. Eingangsbilder, und Soll-Ausgangsgrößen ys, beispielsweise Soll-Klassifikationen, bereitstellt. Die Eingangsgröße x wird dem zu trainierenden künstlichen neuronalen Netz 60 zugeführt, das hieraus Ausgangsgrößen y ermittelt. Ausgangsgrößen y und Soll-Ausgangsgrößen ys werden einem Vergleicher 75 zugeführt, der hieraus abhängig von einer Überein- stimmung den jeweiligen Ausgangsgrößen y und Soll-Ausgangsgrößen ys neue Parameter f' ermittelt, die dem Parameterspeicher P übermittelt werden und dort Parameter f ersetzen.
Die vom Trainingssystem 140 ausgeführten Verfahren können als Computerpro- gramm implementiert auf einem maschinenlesbaren Speichermedium 147 hinter- legt sein und von einem Prozessor 148 ausgeführt werden. Selbstverständlich müssen nicht ganze Bilder klassifiziert werden. Es ist möglich, dass mit einem Detektionsalgorithmus z.B. Bildausschnitte als Objekte klassifi- ziert werden, dass diese Bildausschnitte dann ausgeschnitten werden, ggf. ein neuer Bildausschnitt erzeugt wird und an Stelle des ausgeschnittenen Bildaus- Schnitts in das zugehörige Bild eingesetzt wird.
Der Begriff „Computer“ umfasst beliebige Geräte zur Abarbeitung vorgebbarer Rechenvorschriften. Diese Rechenvorschriften können in Form von Software vor- liegen, oder in Form von Hardware, oder auch in einer Mischform aus Software und Hardware.

Claims

Ansprüche
1. Computerimplementiertes Verfahren (20) zum Erstellen eines maschinellen Lernsystems, umfassend folgende Schritte:
Bereitstellen (S21) eines gerichteten Graphen mit einem Eingangs- und Aus- gangsknoten, die über eine Mehrzahl von Kanten und Knoten verbunden sind,
Zufälliges Ziehen (S22) einer Mehrzahl von Pfaden durch den gerichteten Graphen, wobei den Kanten jeweils eine Wahrscheinlichkeit zugeordnet ist, welche charakterisiert mit welcher Wahrscheinlichkeit die jeweilige Kante gezogen wird, wobei die Wahrscheinlichkeiten abhängig von einer Reihenfolge bisherig ge- zogener Kanten des jeweiligen Pfades ermittelt werden;
Anlernen der den gezogenen Pfaden korrespondierenden maschinellen Lernsysteme (S23), wobei beim Anlernen Parameter des maschinellen Lernsystems angepasst werden, sodass eine Kostenfunktion optimiert wird; und Ziehen (S24) eines Pfades abhängig von den angepassten Wahrscheinlich- keiten und Erstellen des diesem Pfad korrespondierenden maschinellen Lernsystems.
2. Verfahren nach Anspruch 1, wobei eine parametrisierte Funktion die Wahr- scheinlichkeiten der Kanten abhängig von der Reihenfolge der bisherig ge- zogener Kanten des Pfades ermittelt, wobei die Parametrisierung ( a ) der Funktion beim Anlernen hinsichtlich der Kostenfunktion angepasst wird.
3. Verfahren nach Anspruch 2, wobei den bisherig gezogenen Kanten und/oder Knoten eine eindeutige Kodierung deren Reihenfolge zugeordnet wird und die Funktion abhängig von dieser Kodierung die Wahrscheinlichkeiten ermit- telt.
4. Verfahren nach Anspruch 2, oder 3 wobei die Funktion eine Wahrscheinlich- keitsverteilung über die möglichen Kanten, aus einer Menge von Kanten, die als nächstes gezogen werden können, ermittelt.
5. Verfahren nach Anspruch 2 bis 4, wobei die Funktion eine affine Transforma- tion oder ein neuronales Netz ist.
6. Verfahren nach Anspruch 5 und Anspruch 3, wobei die Parametrisierung der affinen Transformation eine lineare Transformation und eine Verschiebung der eindeutigen Kodierung beschreibt, und insbesondere sich die Skalierung aus einer Low-Rank Approximierung und einer Skalierung abhängig von der Anzahl der Kanten zusammensetzt.
7. Verfahren nach Anspruch 5, wobei eine Mehrzahl von Funktionen verwendet werden und die Funktionen jeweils durch ein neuronales Netz gegeben sind, wobei eine Parametrisierung von einer Mehrzahl von Schichten der neurona- len Netze zwischen allen neuronalen Netzen geteilt werden.
8. Computerprogramm, welches Befehle umfasst, welche eingerichtet sind, wenn diese auf einem Computer ausgeführt werden, den Computer veran- lassen, das Verfahren nach einem der vorhergehenden Ansprüche auszu- führen.
9. Maschinenlesbares Speicherelement auf welchem das Computerprogramm nach Anspruch 8 hinterlegt ist.
10. Vorrichtung, welche eingerichtet ist, das Verfahren nach einem der Ansprü- che 1 bis 7 auszuführen.
PCT/EP2022/070591 2021-07-29 2022-07-22 Verfahren und vorrichtung zum erstellen eines maschinellen lernsystems WO2023006597A1 (de)

Priority Applications (2)

Application Number Priority Date Filing Date Title
CN202280052618.5A CN117836781A (zh) 2021-07-29 2022-07-22 用于创建机器学习系统的方法和设备
US18/549,055 US20240169225A1 (en) 2021-07-29 2022-07-22 Method and apparatus for creating a machine learning system

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
DE102021208197.5 2021-07-29
DE102021208197.5A DE102021208197A1 (de) 2021-07-29 2021-07-29 Verfahren und Vorrichtung zum Erstellen eines maschinellen Lernsystems

Publications (1)

Publication Number Publication Date
WO2023006597A1 true WO2023006597A1 (de) 2023-02-02

Family

ID=83115399

Family Applications (1)

Application Number Title Priority Date Filing Date
PCT/EP2022/070591 WO2023006597A1 (de) 2021-07-29 2022-07-22 Verfahren und vorrichtung zum erstellen eines maschinellen lernsystems

Country Status (4)

Country Link
US (1) US20240169225A1 (de)
CN (1) CN117836781A (de)
DE (1) DE102021208197A1 (de)
WO (1) WO2023006597A1 (de)

Non-Patent Citations (6)

* Cited by examiner, † Cited by third party
Title
CAI ET AL., OFFENBAREN IN IHRER VERÖFFENTLICHUNG PROXYLESSNAS: DIRECT NEURAL ARCHITECTURE SEARCH ON TARGET TASK AND HARDWARE, Retrieved from the Internet <URL:https://arxiv.org/abs/1812.00332>
CAI, H.ZHU, L.HAN, S.: "ProxylessNAS: Direct neural architecture search on target task and hardware", ARXIV PREPRINT ARXIV:1812.00332, 2018
GUO YONG ET AL: "Towards Accurate and Compact Architectures via Neural Architecture Transformer", IEEE TRANSACTIONS ON PATTERN ANALYSIS AND MACHINE INTELLIGENCE, IEEE COMPUTER SOCIETY, USA, vol. 44, no. 10, 4 June 2021 (2021-06-04), pages 6501 - 6516, XP011919978, ISSN: 0162-8828, [retrieved on 20210607], DOI: 10.1109/TPAMI.2021.3086914 *
GUO, Z.ZHANG, X.MU, H.HENG, W.LIU, Z.WEI, Y.SUN, J.: "Single path one-shot neural architecture search with uniform sampling", ARXIV PREPRINT ARXIV:1904.00420, 2019
PHAM, H.GUAN, M. Y.ZOPH, B.LE, Q. V.DEAN, J.: "Efficient neural architecture search via parameter sharing", ARXIV PREPRINT ARXIV:1802.03268, 2018
RANDY ARDYWIBOWO ET AL: "NADS: Neural Architecture Distribution Search for Uncertainty Awareness", ARXIV.ORG, CORNELL UNIVERSITY LIBRARY, 201 OLIN LIBRARY CORNELL UNIVERSITY ITHACA, NY 14853, 11 June 2020 (2020-06-11), XP081695321 *

Also Published As

Publication number Publication date
DE102021208197A1 (de) 2023-02-02
CN117836781A (zh) 2024-04-05
US20240169225A1 (en) 2024-05-23

Similar Documents

Publication Publication Date Title
WO2020260020A1 (de) Verfahren und vorrichtung zum überprüfen der robustheit eines künstlichen neuronalen netzes
DE102020210352A1 (de) Verfahren und Vorrichtung zum Transferlernen zwischen modifizierten Aufgaben
DE202020101012U1 (de) Vorrichtung zum Vorhersagen einer geeigneten Konfiguration eines maschinellen Lernsystems für einen Trainingsdatensatz
DE202019105282U1 (de) Vorrichtung zum Optimieren eines System für das maschinelle Lernen
DE102020212515A1 (de) Verfahren und Vorrichtung zum Trainieren eines maschinellen Lernsystems
WO2020260016A1 (de) Verfahren und vorrichtung zum trainieren eines maschinellen lernsystems
EP3857822A1 (de) Verfahren und vorrichtung zum ermitteln eines ansteuersignals
DE102021202813A1 (de) Verfahren, Vorrichtung und Computerprogramm für eine Unsicherheitsbewertung einer Bildklassifikation
DE102020216188A1 (de) Vorrichtung und Verfahren zum Trainieren eines Klassifizierers
DE102020208828A1 (de) Verfahren und Vorrichtung zum Erstellen eines maschinellen Lernsystems
DE102018216078A1 (de) Verfahren und Vorrichtung zum Betreiben eines Steuerungssystems
WO2023006597A1 (de) Verfahren und vorrichtung zum erstellen eines maschinellen lernsystems
DE102020208309A1 (de) Verfahren und Vorrichtung zum Erstellen eines maschinellen Lernsystems
DE112022003696T5 (de) Verfahren und systeme zur erzeugung von modellen für die bildanalyse pipeline prediction
DE102022201679A1 (de) Verfahren und Vorrichtung zum Trainieren eines neuronalen Netzes
DE202021105192U1 (de) Vorrichtung zum maschinellen Lernen aus einer geringen Anzahl von Trainingsdatenbeispielen
DE102021204040A1 (de) Verfahren, Vorrichtung und Computerprogramm zur Erstellung von Trainingsdaten im Fahrzeug
DE202020104005U1 (de) Vorrichtung zum Erstellen eines Systems zum automatisierten Erstellen von maschinellen Lernsystemen
EP3701428B1 (de) Verfahren und vorrichtung zum verbessern der robustheit eines maschinellen lernsystems
DE102020212514A1 (de) Verfahren zur Ermittlung eines Ausgabesignals mittels eines maschinellen Lernsystems
DE102020211714A1 (de) Verfahren und Vorrichtung zum Erstellen eines maschinellen Lernsystems
DE202019103046U1 (de) Vorrichtung zur Vorhersage einer Lernkurve
DE102021208453A1 (de) Verfahren und Vorrichtung zum Erstellen eines maschinellen Lernsystems
EP3899809A1 (de) Verfahren und vorrichtung zum klassifizieren von sensordaten und zum ermitteln eines ansteuersignals zum ansteuern eines aktors
DE102021208724A1 (de) Verfahren und Vorrichtung zum automatisierten Erstellen eines maschinellen Lernsystems zur Multi-Sensor-Datenfusion

Legal Events

Date Code Title Description
121 Ep: the epo has been informed by wipo that ep was designated in this application

Ref document number: 22761055

Country of ref document: EP

Kind code of ref document: A1

WWE Wipo information: entry into national phase

Ref document number: 18549055

Country of ref document: US

WWE Wipo information: entry into national phase

Ref document number: 202280052618.5

Country of ref document: CN

NENP Non-entry into the national phase

Ref country code: DE

122 Ep: pct application non-entry in european phase

Ref document number: 22761055

Country of ref document: EP

Kind code of ref document: A1