WO2023016843A1 - Verfahren und vorrichtung zum automatisierten erstellen eines maschinellen lernsystems zur multi-sensor-datenfusion - Google Patents

Verfahren und vorrichtung zum automatisierten erstellen eines maschinellen lernsystems zur multi-sensor-datenfusion Download PDF

Info

Publication number
WO2023016843A1
WO2023016843A1 PCT/EP2022/071570 EP2022071570W WO2023016843A1 WO 2023016843 A1 WO2023016843 A1 WO 2023016843A1 EP 2022071570 W EP2022071570 W EP 2022071570W WO 2023016843 A1 WO2023016843 A1 WO 2023016843A1
Authority
WO
WIPO (PCT)
Prior art keywords
node
nodes
input
path
drawn
Prior art date
Application number
PCT/EP2022/071570
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 CN202280055921.0A priority Critical patent/CN117918015A/zh
Priority to US18/574,913 priority patent/US20240296357A1/en
Publication of WO2023016843A1 publication Critical patent/WO2023016843A1/de

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06VIMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
    • G06V10/00Arrangements for image or video recognition or understanding
    • G06V10/70Arrangements for image or video recognition or understanding using pattern recognition or machine learning
    • G06V10/82Arrangements for image or video recognition or understanding using pattern recognition or machine learning using neural networks
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06NCOMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
    • G06N7/00Computing arrangements based on specific mathematical models
    • G06N7/01Probabilistic graphical models, e.g. probabilistic networks
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06NCOMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
    • G06N5/00Computing arrangements using knowledge-based models
    • G06N5/02Knowledge representation; Symbolic representation
    • G06N5/022Knowledge engineering; Knowledge acquisition
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06VIMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
    • G06V10/00Arrangements for image or video recognition or understanding
    • G06V10/40Extraction of image or video features
    • G06V10/44Local feature extraction by analysis of parts of the pattern, e.g. by detecting edges, contours, loops, corners, strokes or intersections; Connectivity analysis, e.g. of connected components
    • G06V10/443Local feature extraction by analysis of parts of the pattern, e.g. by detecting edges, contours, loops, corners, strokes or intersections; Connectivity analysis, e.g. of connected components by matching or filtering
    • G06V10/449Biologically inspired filters, e.g. difference of Gaussians [DoG] or Gabor filters
    • G06V10/451Biologically inspired filters, e.g. difference of Gaussians [DoG] or Gabor filters with interaction between the filter responses, e.g. cortical complex cells
    • G06V10/454Integrating the filters into a hierarchical structure, e.g. convolutional neural networks [CNN]
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06VIMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
    • G06V10/00Arrangements for image or video recognition or understanding
    • G06V10/70Arrangements for image or video recognition or understanding using pattern recognition or machine learning
    • G06V10/77Processing image or video features in feature spaces; using data integration or data reduction, e.g. principal component analysis [PCA] or independent component analysis [ICA] or self-organising maps [SOM]; Blind source separation
    • G06V10/80Fusion, i.e. combining data from various sources at the sensor level, preprocessing level, feature extraction level or classification level
    • G06V10/806Fusion, i.e. combining data from various sources at the sensor level, preprocessing level, feature extraction level or classification level of extracted features
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06VIMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
    • G06V10/00Arrangements for image or video recognition or understanding
    • G06V10/70Arrangements for image or video recognition or understanding using pattern recognition or machine learning
    • G06V10/84Arrangements for image or video recognition or understanding using pattern recognition or machine learning using probabilistic graphical models from image or video features, e.g. Markov models or Bayesian networks
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06NCOMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
    • G06N3/00Computing arrangements based on biological models
    • G06N3/02Neural networks
    • G06N3/04Architecture, e.g. interconnection topology
    • G06N3/045Combinations of networks
    • G06N3/0455Auto-encoder networks; Encoder-decoder networks
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06NCOMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
    • G06N3/00Computing arrangements based on biological models
    • G06N3/02Neural networks
    • G06N3/04Architecture, e.g. interconnection topology
    • G06N3/0475Generative networks

Definitions

  • the invention relates to a method for creating a machine learning system, e.g.
  • the aim of an architecture search for neural networks is to automatically find the best possible network architecture in terms of a performance indicator/metric for a given data set.
  • the one-shot model is typically constructed as a directed graph in which the nodes represent data and the edges represent operations that represent a calculation rule that converts the input node of the edge into 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 drawn from the one-shot model for training, especially at random, such as 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: htps://arxiv.org/abs/1812.00332, an architecture search that takes hardware properties into account.
  • the current invention improves architecture searching in two ways. Because, on the one hand, the invention makes it possible to find an optimal input or a plurality of optimal inputs. This makes it possible, for example, to merge the data from several sensors and to automatically learn which one Depth of architecture the information from different sensors should be combined (early, middle or late fusion).
  • the invention makes it possible to optimize structures of detection heads that can be attached to so-called Nodes of Interest (NOIs). This also makes it possible to optimize the architecture via the outputs.
  • NOIs Nodes of Interest
  • the invention relates to a computer-implemented method for creating a machine learning system for sensor data fusion.
  • the machine learning system includes a plurality of inputs for the sensor data.
  • the sensor data in particular the sensor data provided at the inputs, come from a plurality of the same sensor types, which, for example, record sensor data from different perspectives, and/or from different sensor types and thus provide the machine learning system with different information.
  • the method comprises the following steps: providing a directed graph, the directed graph having a plurality of input nodes and at least one output node and a plurality of further nodes.
  • the starting node can be a fixed node of the graph, which is not connected to any further subsequent nodes. Alternatively, the starting node can also be any node from a predefined subset of the nodes in the graph, which are suitable as starting nodes, for example because of their data resolution.
  • the input and output nodes are connected via the other nodes by means of directed edges.
  • the nodes can represent data and the edges can represent operations that convert a first node of the edges into a further node connected to the respective edge. It should be noted that this assignment of the data and calculation rules can also take place the other way around.
  • a probability is assigned to each edge, which characterizes the probability with which the respective edge is drawn. It should be noted that as an alternative it is conceivable to assign the probabilities of the nodes.
  • the probabilities of the edges should be normalized in such a way that all the probabilities of the edges that originate from a common node add up to the value one.
  • a probability is also assigned to each of the input nodes. These probabilities characterize the probability with which the input nodes are drawn. This probability is preferably normalized so that the individual probabilities of the input nodes add up to the value one. It is possible for the directed graph to have a plurality of output nodes. In this case, the probabilities can be defined depending on the respective node and, for example, can already result in the value one when summed up over a subset of the input nodes. In other words, the probabilities of the input nodes can be defined as conditional probabilities for a given output node. This results in not every input node being used depending on the output nodes. This implies that different probabilities can be associated with each input node depending on the selected output node. In addition, it is conceivable that a number of input nodes can also be drawn for a given output node, in which case the probabilities for this can be defined via pairs/triplets etc. of input nodes.
  • one or more paths through the graph For this purpose, one or at least two input nodes are drawn from the plurality of input nodes, in particular randomly, depending on the probabilities assigned to the input nodes. It is conceivable that the drawing can take place depending on an initial node.
  • the paths are each chosen from the input node drawn along the edges to the output node depending on the probability assigned to the edges. It is also conceivable that only one input node and thus only one path is drawn. The optimal input node can thus be selected from the plurality of input nodes.
  • the selection of the path can be done iteratively, where at each node the subsequent edge is chosen randomly from the possible subsequent edges associated with connected to this node are selected depending on their associated probabilities. This procedure is also referred to below as dragging the path.
  • the path thus represents a direct connection of the input node with the output node.
  • the path can be drawn by dragging forwards starting at the input node by dragging the edges incrementally, or by dragging backwards starting at the output node by dragging backwards incrementally along the edges are done.
  • the path can be understood here as a sequence of selected nodes of the directed graph, in which two consecutive nodes are connected by an edge.
  • the path can fully characterize the architecture if the architecture has only one path through the directed graph. It is also conceivable that the path describes only part of the architecture, namely when the architecture has multiple paths through the graph.
  • the multiple paths then together form a subgraph that effectively describes at least two intersecting paths or a two-path splitting path through the graph. However, the subgraph can also have only one path, in which case this path completely describes the subgraph.
  • a subset is determined from the majority of the other nodes, all of which meet a predetermined property with regard to data resolution, with at least one additional node (Node of Interest, NOI) being selected from this subset, which is used as the further starting node of the machine learning system.
  • NOI node of Interest
  • NOI additional node
  • the subset of nodes be divided into sets of additional nodes (NOI).
  • NOI additional node
  • a probability is assigned to each additional node (NOI), which characterizes the probability of the node being drawn from the set in which it was assigned.
  • a plurality of task-specific heads be assigned to each additional node (NOI) or set of additional nodes (NOI).
  • NOI additional node
  • NOI set of additional nodes
  • Task-specific headers can be understood to mean that these headers determine an object classification, in particular an object description, depending on the output of the additional node.
  • the headers include at least one node, which transforms an output of the additional node (NOI) into a variable that characterizes an input variable of the machine learning system, in particular with regard to a predetermined task or use of the machine learning system.
  • the task-specific headers describe a small neural network, e.g., with 2, 3 or 5 layers.
  • the directed graph has a first search space, with a resolution of the data that is respectively assigned to the nodes being continuously reduced with the number of connected nodes up to one of the input nodes. Furthermore, the graph has a second search space, which has the additional nodes (NOI), where sets of additional nodes (NOI) are each attached to a node of the first search space.
  • NOI additional nodes
  • the advantage here is that so-called FPN architectures can be optimized with this.
  • the first and second search spaces are directly connected to each other.
  • a search space can be understood as a set of nodes that together describe a large number of possible architectures.
  • the outputs of the machine learning system can provide segmentation, object detection, depth estimation, gesture/behavior recognition and the input nodes can provide the following data: camera images, lidar, radar, ultrasound, thermal imaging, microscopy data, in particular this data from different perspectives.
  • a softmax function is preferred for the probabilities and the edges or corresponding accounts then become dependent on the outputs randomly drawn from the softmax function. This has the advantage that the softmax function guarantees that the probabilities of the always accumulate to one. This advantage produces the advantageous effect that the probabilistic character of the drawing of the paths is preserved and thus an optimal architecture is found more reliably.
  • a cost function is optimized when training the machine learning systems, with the cost function having a first function which evaluates the performance of the machine learning system with regard to its segmentation and object recognition/object description and having a second function which depends on a length of the Path and the operations of the edges estimates a latency or similar of the machine learning system.
  • the machine learning system to be created particularly preferably has at least two outputs, which are set up for segmenting and object detection of images, with the machine learning system having an input for recording the image and two outputs, with a first output for segmenting the image and a second output for the Object detection outputs.
  • the second output can alternatively output a different object description of the objects on the image, such as an object classification.
  • the tasks of the machine learning system can be as follows: natural language processing (engl. Natural language processing, autoencoder, generative models (engl. generative models) etc., with the different outputs each characterizing different properties of the input signal with regard to the task.
  • the machine learning systems are neural networks.
  • the invention relates to a computer program that is set up to carry out the above methods and a machine-readable storage medium on which this computer program is stored.
  • FIG. 1 shows a schematic of a one-shot model with several input and one output node as well as three sets of “Nodes of Interest” (NOI);
  • Figure 2 shows schematically backward and forward drawing of a path through the one-shot model
  • FIG. 3 shows a schematic of a one-shot model for FPT networks
  • Figure 4 schematically shows a one-shot model with multiple input
  • FIG. 5 shows a schematic representation of a flow chart of an embodiment of the invention
  • FIG. 6 shows a schematic representation of an actuator control system
  • FIG. 7 shows an exemplary embodiment for controlling an at least partially autonomous robot
  • FIG. 8 schematically shows an exemplary embodiment for controlling a production system
  • FIG. 9 schematically shows an exemplary embodiment for controlling an access system
  • FIG. 10 schematically shows an exemplary embodiment for controlling a monitoring system
  • FIG. 11 schematically shows an exemplary embodiment for controlling a personal assistant
  • FIG. 12 schematically shows an exemplary embodiment for controlling a medical imaging system
  • FIG. 13 shows a possible construction of a training device
  • a search space of possible architectures of neural networks is explicitly or implicitly defined.
  • a graph (the so-called one-shot model) is to be defined for the description of a search space, which contains all 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 entry node to a specified exit node of the network.
  • a path sampling model can be used, where the paths are drawn backwards through the graph. To do this, the graph can be transposed, or the direction of the edges is reversed.
  • a sampling is known, for example, from DE102020208309.
  • the drawn architectures should contain one or more nodes of the one-shot model that are not in the full depth of the network and are referred to below as NOI (Nodes of Interest), as well as an optional output in full Depth of the one-shot model.
  • NOI Nodes of Interest
  • creating the path can also be done by dragging the NOIs backwards to connect them to the input.
  • a forward pull is performed starting from each NOI to locate the portion of the path to the output of the one-shot model.
  • forward dragging can be aborted as soon as a path is reached that already leads to the input/output, but which leads via another NOI.
  • a purely forward drawing can be done by drawing for each NOI a path from the input to the corresponding NOI. This is achieved by performing the drawing only on the corresponding subgraph, which consists of all nodes lying on a path from the input of the network to the current NOI and all edges of the one-shot model between these nodes.
  • a sampling model is proposed as follows. This sampling model can then be applied to graphs which have a plurality of input and/or output nodes, in particular to find one or a plurality of nodes as input and/or output nodes from a predetermined set of nodes in the graph.
  • a one-shot model is considered, which has multiple fixed input nodes, where the optimal input node or an optimal combination of input nodes is found when searching for the optimal architecture should be.
  • Fixed input nodes can be understood to mean that these nodes always serve as an input in the graph and cannot be repurposed in any other way.
  • the first embodiment can be extended by defining a predetermined number of fixed output nodes.
  • Fixed exit nodes can be understood to mean that the paths through the graph end at one of these exit nodes or the paths end at all of the exit nodes, with these exit nodes always serving as exits in the graph and cannot be repurposed elsewhere.
  • Input nodes are characterized as being connected only to subsequent nodes and having no preceding nodes.
  • N denotes the number of sets of NOIs
  • N t is the number of nodes of NOIs in the set NOIi
  • n k°' 1 denotes a single node of the graph which is a NOI .
  • the sets can fulfill a specified property, for example with regard to data resolution or a depth of the nodes relative to the input node to ensure a predetermined receptive field.
  • This further probability distribution p inputs is preferably assigned to an output node i in each case. It is also conceivable that, depending on the exit node, the possible entry nodes to be reached are limited to a subset of the entry nodes. This means that there can be output nodes from which not every input node can/should be reached, which are then correspondingly not included in the probability distribution p inputs .
  • a restricted one-shot model which contains all subgraphs that connect an input node nTM put with each NOI from the set NOIi.
  • drawing a path from the subgraph according to the sample model is done by backward drawing from the NOIs to the inputs through gtn ⁇ . NO.
  • the probability distributions p in P uts ⁇ i and pf 01 can be initialized arbitrarily. These probabilities are preferably initialized in such a way that the input nodes are all drawn with the same probability through p in P uts ⁇ i and that the NOI within a set are drawn through pi 01 with the same probability. This initialization has the advantage that the architectures are pulled in an unbiased manner at the beginning of the architecture search, thereby finding architectures that otherwise would not have been found.
  • the probability distributions are particularly preferably initialized in such a way that all paths g(nTM put ,N0Ii) e NOI t are initially drawn with the same probability, starting when the NOIs and associated input nodes are drawn. This can be done in such a way that the probability distributions are used as a function of a number of paths along the individual nodes/edges divided by a total number of paths through the subgraph or graph for the initialization.
  • the architectures are then generated in an iterative process by iterating over the sets of NOIs.
  • a single NOI is drawn from the jth set depending on the probability distribution pf 01 .
  • he ejne drawn a plurality of input nodes.
  • a path is drawn backwards, starting with the drawn individual NOI from the respective set of NOIs to the corresponding input node, in particular from the subgraph g(n input ,N0I i '). This procedure is then repeated for each set of NOIs.
  • the resulting drawn architecture consists of individual nodes, each drawn from one of the sets of NOI, connected by a path to at least one input node.
  • the sampling model of the first embodiment has the advantage that it is significantly more economical in terms of computer resources by drawing the path in the backwards graph, since the subgraphs (e.g. for an input and a set of NOIs) can be reused for the backwards drawing.
  • FIG. 1 schematically shows an application of the sampling model to a graph G with a number of input nodes (1) and a number of sets of NOIs (101, 102, 103).
  • An output node is to be learned from the sets of NOIs as well as the input nodes required for this (Input1,Input2,Input3).
  • Graph G is a representation of a one-shot model, where points correspond to data and edges correspond to transformations of the data).
  • a special feature of this representation of the graph G is that several Input nodes (1) are given and three sets of possible choices for outputs (NOli.NOh.NOIs).
  • NOli.NOh.NOIs the output nodes from the respective set of NOIs (101,102,103) are drawn randomly, in particular depending on the probability distribution pf 01 , the output nodes (NOli.NOh.NOIs).
  • the inputs are sampled for each output (an example of the sampled inputs is shown next to each NOI in Figure 1).
  • paths are successively drawn for all output nodes to each of its input nodes in the inverted graph.
  • the previously dragged path is followed to the entrance.
  • the path meets the path of NOI3 just before the input node Input2 and then continues along the path of NOI3 to the input node Input2.
  • one or more or even all input nodes can be drawn for the output nodes (NOli.NOh.NOIs).
  • the input nodes can provide or record the following input data: camera images, lidar, radar, ultrasound, thermal image, microscopy data, in particular this data from different perspectives.
  • the following modification can be made. If another drawn path reaches a node which is in one of the previously drawn paths, for a different set of NOIs; is included, then the further drawn path can continue along the already drawn path. The decision as to whether the already existing path should be used is preferably dependent on whether this path also leads to the entry node which was selected for the NOI of the further path.
  • a one-shot model with a plurality of fixed output nodes and input nodes is considered.
  • the second embodiment is analogous to the first embodiment, but with the difference that the subgraphs are defined between a single output node and all possible choices for an input. So the paths in the graph are drawn instead of the inverted subgraph. More specifically, an input node is first drawn from the appropriate set of possible input nodes, then one or more output nodes are sampled and the input node is connected to each of those output nodes by sampling a path in the subgraph for the current input nodes.
  • a one-shot model is considered, in which both the input node and the output node can be drawn.
  • the paths can be drawn from either the input or output nodes and are then drawn forward or backward through the graph accordingly.
  • sampling models of the embodiments just explained can be combined with one another in order to find complex architectures with multiple inputs and/or outputs.
  • a possible extension of the sampling model can be that the sampling model is additionally used to search for a structure of task-specific heads (see also FIG. 2). These task-specific heads can be attached to the NOIs.
  • the considered one-shot model can be extended with additional nodes/edges that can be attached to each NOI and correspond to the task-specific heads.
  • the path is dragged by a first reverse drag starting at the respective NOIs to the inputs. In particular, this results in a fixed number of sampled NOI node. Then the dragging is performed on all task-specific heads, as well as dragging the paths to the output of the graph.
  • FIG. 2 shows an example of drawing task-specific headers for the NOIs with a graph G, which has an input node and an output node.
  • Paths through the graph G of FIG. 2 can be drawn as described in DE102020208309, in particular by first drawing the paths backwards from the respective NOIs to the input and then to the output.
  • dragging for which purpose dragging from each NOI to the target of the task specific headers that can be attached to each NOI.
  • the graph G can have a plurality of input and output nodes. Reference is made here to FIG. 1 and in particular to FIG. 4 for drawing the input nodes.
  • FIG. 3 shows an example of a graph G for an architecture search for a machine learning system with a plurality of sets of NOIs (101, 102, 103) and with a plurality of task-specific headers (201, 202, 203).
  • the task-specific headers (201, 202, 203) are assigned to the first set of NOI (101) by way of example.
  • Graph G from FIG. 3 can be used with the sampling model to create so-called FPN networks with a backbone network (12) for object detection, for example.
  • FPN networks are known from the publication by authors Lin, T.Y., Dollar, P., Girshick, R., He, K., Hariharan, B., & Belongie, S. "Feature pyramid networks for object detection" In Proceedings of the IEEE conference on computer vision and pattern recognition (pp. 2117-2125).
  • the graph G of FIG. 3 preferably describes several different search spaces.
  • One of the search spaces is for a backbone network (12) with a number of fixed or searchable output nodes in different resolutions.
  • One of the search spaces is the FPN search space (101-103) which is attached to the backbone network (12) and which has a set of Output NOIs defined.
  • task-specific headers (201, 202, 203) can be attached to the FPN NOIs. Drawing the paths in the backbone can be done by backward drawing, and if the backbone is a single path network, it is enough to have only a single NOI at the lowest resolution (maximum depth in the backbone (12)). Pulling from the sets of NOIs (101,102,103) can be done by pulling backwards considering the backbone network (12). For the task-specific headers, a forward pull can be performed from the respective NOI.
  • FIG. 4 shows an example of an architecture search for sensor fusion architectures in particular.
  • Sensor fusion is enabled by considering multiple input nodes corresponding to different sensor data.
  • a single-output, multiple-input network can be used with the pull-forward described above. This can be used to learn at what depth of the graph the different sensor data are combined, i.e. whether an early, middle or late sensor fusion should be carried out.
  • the graph G with a plurality of outputs can describe multi-task networks for object detection and semantic segmentation.
  • the NOIs are nodes at which, for example, object detection/classification takes place.
  • an output for the semantic segmentation is used at the output in the full depth of the network.
  • task-specific headers could be appended to the NOI's.
  • FIG. 5 schematically shows a flow chart of a method for creating a machine learning system with the procedure explained above for finding the optimal architecture with a plurality of inputs.
  • the method can start with step S21, in which the graph G is provided. Because the automatic architecture search requires the search space, which is constructed here in the form of a one-shot model G.
  • step S22 architectures are drawn from the graph as a function of the probabilities as explained for FIG.
  • step S23 the known steps of learning (S23) the drawn architecture and transferring the optimized parameters and probabilities to the graph through learning.
  • An artificial neural network 60 (shown in FIG. 6) can then be created from the graph G and used as explained below.
  • Figure 6 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 can also be provided by a plurality of sensors can, 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 multiple 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).
  • 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 a machine learning system, in the embodiment an artificial neural network 60, which was created, for example, according to the method according to FIG.
  • the artificial neural network 60 is preferably parameterized by parameters ⁇
  • 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 supplied to an optional conversion unit 80, which uses this to determine control signals A, which are supplied 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 execute the method according to the invention .
  • FIG. 7 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, which 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, in particular if the objects in question are of certain classes, e.g. about 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.
  • 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 artificial neural network 60 .
  • the display unit 10a can be controlled with the control signal A and, for example, the determined safe areas can be displayed. It is also possible, for example, in a motor vehicle 100 with non-automated steering that the display unit 10a is controlled with the control signal A in such a way that it is an optical or outputs an acoustic warning signal when it is determined that the motor vehicle 100 is in danger of colliding with one of the reliably identified objects.
  • FIG. 8 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. It is possible that 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 articles of manufacture 12a, 12b (i.e. without a mismatch), the manufacturing machine 11 correspondingly adapts the same manufacturing step for processing a subsequent article of manufacture.
  • FIG. 9 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 detected 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.
  • FIG. 10 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.
  • the artificial neural network 60 can reliably determine an identity of the objects recorded by the video sensor 30 in order to deduce which are suspicious, and the control signal A can then be selected such that this object is highlighted in color by the display unit 10a becomes.
  • FIG. 11 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 user's 249 gesture.
  • 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 an assumed 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 actuation signal A for transmission to the personal assistant 250 depending on the presumed desired actuation and/or select the actuation signal A for transmission to the personal assistant according to the assumed desired actuation 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. 12 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 13 shows an exemplary training device 140 for training a drawn machine learning system from the graph G, in particular the corresponding neural network 60.
  • Training device 140 includes a provider 71, which provides, for example, input images x and target output variables ys, for example target classifications.
  • Input image x is fed to the artificial neural network 60 to be trained, which determines output variables y therefrom.
  • Output variables y and target output variables ys are fed to a comparator 75, which determines new parameters p′ 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 p 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 .
  • image sections are classified as objects, that these image sections are then cut out, if necessary, a new image section is created 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)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Evolutionary Computation (AREA)
  • Software Systems (AREA)
  • Artificial Intelligence (AREA)
  • Computing Systems (AREA)
  • Computer Vision & Pattern Recognition (AREA)
  • Multimedia (AREA)
  • General Health & Medical Sciences (AREA)
  • General Engineering & Computer Science (AREA)
  • Health & Medical Sciences (AREA)
  • Probability & Statistics with Applications (AREA)
  • Mathematical Physics (AREA)
  • Databases & Information Systems (AREA)
  • Medical Informatics (AREA)
  • Data Mining & Analysis (AREA)
  • Mathematical Analysis (AREA)
  • Mathematical Optimization (AREA)
  • Pure & Applied Mathematics (AREA)
  • Algebra (AREA)
  • Computational Mathematics (AREA)
  • Life Sciences & Earth Sciences (AREA)
  • Biodiversity & Conservation Biology (AREA)
  • Biomedical Technology (AREA)
  • Molecular Biology (AREA)
  • Computational Linguistics (AREA)
  • Image Analysis (AREA)

Abstract

Verfahren zum Erstellen eines maschinellen Lernsystems, welches zur Segmentierung und Objektdetektion eingerichtet sein kann, umfassend die Schritte: Bereitstellen eines gerichteten Graphen, Auswählen eines oder mehreren Pfade durch den Graphen, wobei aus einer Untermenge zumindest ein zusätzlicher Knoten (NOI) gewählt wird und ein Pfad durch den Graphen von einem Eingangsknoten entlang der Kanten über den zusätzlichen Knoten (NOI) bis zu einem Ausgangsknoten gewählt wird. Auffinden der optimalen Eingangsknoten aus einer Mehrzahl von Eingangsknoten für jeden Ausgang des gerichteten Graphen.

Description

Beschreibung
Titel
Verfahren und Vorrichtung zum automatisierten Erstellen eines maschinellen Lernsystems zur Multi-Sensor-Datenfusion
Die Erfindung betrifft ein Verfahren zum Erstellen eines maschinellen Lernsystems bspw. zur Segmentierung und/oder Objektdetektion, wobei das maschinelle Lernsystem Multi-Sensor-Datenfusion zum Ermitteln seiner Ausgangsgrößen betreibt, ein entsprechendes Computerprogramm und ein maschinenlesbares Speichermedium mit dem Computerprogramm.
Stand der Technik
Das Ziel einer Architektursuche 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 teilen, 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 konstruiert, bei dem die Knoten Daten darstellen und die Kanten Operationen, welche eine Berechnungsvorschrift darstellen die den Eingangsknoten der Kante in den 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, insbesondere zufällig, gezogen werden, wie z. B. gezeigt durch Cai, H., Zhu, L., & Han, S. (2018). ProxylessNAS: Direct neural architecture search on target task and hardware. arXiv preprint arXiv:1812.00332. Dies geschieht typischerweise in dem ein einzelner Pfad von einem festgelegten Inputknoten 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 architecture search with uniform sampling. arXiv preprint arXiv:1904.00420.
Für bestimmte Aufgaben wie Objektdetektion oder bei multi-Task Netzwerken ist es notwendig, dass das Netzwerk mehrere Ausgänge aufweist. Gradientenbasiertes Training des vollständigen One-Shot Modells kann dabei für diesen Fall modifiziert werden, wie z.B. gezeigt durch Chen, W., Gong, X., Liu, X., Zhang, Q., Li, Y., & Wang, Z. (2019). FasterSeg: Searching for Faster Real-time Semantic Segmentation. arXiv preprint arXiv:1912.10917. Dies ist aber wiederum nicht speichereffizient und zeigt nicht das Ziehen von Architekturen mit Verzweigungen und mit unterschiedlichen Outputs während des Trainings im Rahmen der Architektursuche.
Die Autoren Cai et al. offenbaren in ihrer Veröffentlichung ProxylessNAS: Direct Neural Architecture Search on Target Task and Hardware, online abrufbar: htps://arxiv.org/abs/1812.00332, eine Architektursuche, welche Hardwareeigenschaften berücksichtigt.
Jedoch haben die bekannten Architektursuchen mit One-Shot Modellen die Einschränkung, dass diese nicht über eine Mehrzahl von möglichen Eingangsknoten optimieren können. Interessant sind jedoch mehrere Eingänge, z. B. im Zusammenhang mit mehreren, unterschiedlichen Sensoren, die komplementäre Informationen liefern können.
Vorteile der Erfindung
Die gegenwärtige Erfindung verbessert die Architektursuche in zweifacher Weise. Denn zum einen ermöglicht die Erfindung einen optimalen Eingang oder eine Mehrzahl von optimalen Eingängen aufzufinden. Dies erlaubt es, z.B. die Daten mehrerer Sensoren zu fusionieren und automatisch zu lernen, in welcher Tiefe der Architektur die Informationen verschiedener Sensoren kombiniert werden sollten (frühe, mittlere oder späte Fusion).
Des Weiteren ermöglicht die Erfindung, dass Strukturen von Detektionsköpfen (engl. detection heads), die an sog. Nodes of Interest (NOIs) Knoten angebracht werden können, zu optimieren. Es ist damit auch möglich, die Architektur über die Ausgänge zu optimieren.
Offenbarung der Erfindung
In einem ersten Aspekt betrifft die Erfindung ein computerimplementiertes Verfahren zum Erstellen eines maschinellen Lernsystems zur Sensordatenfusion. Das maschinelle Lernsystem umfasst hierfür eine Mehrzahl von Eingänge für die Sensordaten auf. Die Sensordaten, insbesondere die an die Eingänge bereitgestellten Sensordaten, stammen von einer Mehrzahl von gleichen Sensortypen, die z.B. Sensordaten aus unterschiedlichen Perspektiven erfassen, und/oder von unterschiedlichen Sensortypen und stellen damit dem maschinellen Lernsystem unterschiedliche Informationen bereit.
Das Verfahren umfasst die folgenden Schritte: Bereitstellen eines gerichteten Graphen, wobei der gerichtete Graph eine Mehrzahl von Eingangsknoten und zumindest einen Ausgangsknoten und eine Mehrzahl von weiteren Knoten aufweist. Der Ausgangsknoten kann ein fester Knoten des Graphen sein, welcher mit keinen weiteren nachfolgenden Knoten verbunden ist. Alternativ kann der Ausgangsknoten auch ein beliebiger Knoten aus einer vorgegebenen Untermenge der Knoten des Graphen sein, welche als Ausgangsknoten z.B. aufgrund deren Datenauflösung, geeignet sind. Die Eingangs-und Ausgangsknoten sind über die weiteren Knoten mittels gerichteten Kanten verbunden. Die Knoten können Daten und die Kanten Operationen darstellen, die einen ersten Knoten der Kanten in einen weiteren mit der jeweiligen Kante verbundenen Knoten überführen. Es sei angemerkt, dass diese Zuordnung der Daten und Berechnungsvorschriften auch andersherum erfolgen kann. Den Kanten ist jeweils eine Wahrscheinlichkeit zugeordnet, welche charakterisiert mit welcher Wahrscheinlichkeit die jeweilige Kante gezogen wird. Es sei angemerkt, dass alternativ ein Zuordnen der Wahrscheinlichkeiten der Knoten denkbar ist. Eine Normierung der Wahrscheinlichkeiten der Kanten sollte derart erfolgen, dass alle Wahrscheinlichkeiten der Kanten, die aus einem gemeinsamen Knoten entspringen, aufaddiert den Wert Eins ergeben.
Den Eingangsknoten ist auch jeweils eine Wahrscheinlichkeit zugeordnet. Diese Wahrscheinlichkeiten charakterisieren mit welcher Wahrscheinlichkeit die Eingangsknoten gezogen werden. Vorzugsweise ist diese Wahrscheinlichkeit normiert, sodass die einzelnen Wahrscheinlichkeiten der Eingangsknoten aufsummiert den Wert Eins ergeben. Es ist möglich, dass der gerichtete Graph eine Mehrzahl von Ausgangsknoten aufweist. In diesem Fall können die Wahrscheinlichkeiten abhängig vom jeweiligen Knoten definiert werden und z.B. auch aufsummiert über eine Untermenge der Eingangsknoten bereits den Wert Eins ergeben. In anderen Worten, die Wahrscheinlichkeiten der Eingangsknoten können als bedingte Wahrscheinlichkeiten für einen gegebenen Ausgangsknoten definiert sein. Dies führt dazu, dass abhängig von den Ausgangsknoten nicht jeder Eingangsknoten verwendet wird. Dies impliziert, dass jedem Eingangsknoten abhängig vom ausgewählten Ausgangsknoten unterschiedliche Wahrscheinlichkeiten zugeordnet sein können. Darüber hinaus ist denkbar, dass für einen gegebenen Ausgangsknoten auch mehrere Eingangsknoten gezogen werden können, wobei hierfür die Wahrscheinlichkeiten über Paare/Triplets etc. von Eingangsknoten definiert sein können.
Daraufhin folgt ein Auswählen eines oder mehrerer Pfade durch den Graphen. Hierfür wird aus der Mehrzahl der Eingangsknoten ein oder zumindest zwei Eingangsknoten abhängig von den der Eingangsknoten zugeordneten Wahrscheinlichkeiten, insbesondere zufällig, gezogen. Denkbar ist, dass das Ziehen abhängig von einem Ausgangsknoten erfolgen kann. Die Pfade werden jeweils dem gezogenen Eingangsknoten entlang der Kanten bis zum Ausgangsknoten abhängig von den der Kanten zugeordneten Wahrscheinlichkeit gewählt. Es ist auch denkbar, dass nur ein Eingangsknoten und damit auch nur ein Pfad gezogen wird. Damit kann aus der Mehrzahl der Eingangsknoten der optimale Eingangsknoten ausgewählt werden.
Das Auswählen des Pfades kann iterativ erfolgen, wobei an jedem Knoten die nachfolgende Kante zufällig aus den möglichen nachfolgenden Kanten, die mit diesem Knoten verbunden sind, abhängig von deren zugeordneten Wahrscheinlichkeiten ausgewählt werden. Dieses Vorgehen wird im Folgenden auch als Ziehen des Pfades bezeichnet. Der Pfad stellt also eine direkte Verbindung des Eingangsknoten mit dem Ausgangsknoten dar. Das Ziehen des Pfades kann durch ein vorwärtsgerichtetes Ziehen beginnend beim gezogen Eingangsknoten mittels eines schrittweisen Ziehens der Kanten oder kann durch ein rückwärtsgerichtetes Ziehen beginnend bei dem Ausgangsknoten mittels eines schrittweisen Ziehens rückwärts entlang der Kanten erfolgen.
Unter dem Pfad kann hier eine Folge von ausgewählten Knoten des gerichteten Graphen verstanden werden, in welcher jeweils zwei aufeinanderfolgende Knoten durch eine Kante verbunden sind. Der Pfad kann dabei die Architektur vollständig charakterisieren, wenn die Architektur nur einen Pfad durch den gerichteten Graphen aufweist. Denkbar ist auch, dass der Pfad nur einen Teil der Architektur beschreibt, nämlich dann, wenn die Architektur mehrere Pfade durch den Graphen aufweist. Die mehreren Pfade bilden dann zusammen einen Subgraph, der effektiv zumindest zwei sich kreuzende Pfade oder einen sich in zwei Pfade aufspaltenden Pfad durch den Graph beschreibt. Der Subgraph kann aber auch nur einen Pfad aufweisen, wobei dann dieser Pfad den Subgraphen vollständig beschreibt.
Daraufhin folgt ein Erstellen eines maschinellen Lernsystems abhängig von den gewählten Pfaden und Anlernen des erstellten maschinellen Lernsystems, wobei angepasste Parameter des angelernten maschinellen Lernsystems in den korrespondierenden Kanten des gerichteten Graphen hinterlegt werden und die Wahrscheinlichkeiten der Kanten und des gezogenen Eingangsknoten des Pfades angepasst werden. Die Anpassung der Wahrscheinlichkeiten kann hierbei über einen sog. Black-Box Optimierer erfolgen, welcher bspw. den REINFORCE-Algorithmus anwendet (siehe hierzu zum Beispiel die oben zitierte Literatur „ProxylessNAS“), um Gradienten zum Anpassen der Wahrscheinlichkeiten zu schätzen.
Daraufhin folgt ein mehrmaliges Wiederhohlen der vorhergehenden Schritte „Auswählen der Pfade“ und „Erstellen und Anlernen eines maschinellen Lernsystems“. Daraufhin folgt ein letztes Erstellen des maschinelles Lernsystems abhängig von dem gerichteten Graphen. Das Ziehen des Pfades in dem letzten Schritt kann zufällig erfolgen oder es werden die Kanten mit den höchsten Wahrscheinlichkeiten gezielt ausgewählt.
Es wird vorgeschlagen, dass aus der Mehrzahl der weiteren Knoten eine Untermenge bestimmt wird, die alle eine vorgegebene Eigenschaft hinsichtlich einer Datenauflösung erfüllen, wobei aus dieser Untermenge zumindest ein zusätzlicher Knoten (engl. Node of Interest, NOI) gewählt wird, der als weiterer Ausgangsknoten des maschinellen Lernsystems dienen kann. Für einen Eingangs- und einen Ausgangsknoten des Pfades wird ein erster Teilpfad durch den Graphen vom Eingangsknoten entlang der Kanten zu dem zusätzlichen Knoten (NOI) und ein zweiter Teilpfad durch den Graphen vom Eingangsknoten entlang der Kanten zu dem Ausgangsknoten oder der Pfad wird durch den Graphen vom Eingangsknoten entlang der Kanten über den zusätzlichen Knoten (NOI) zu dem Ausgangsknoten gezogen. Die Bestimmung der Teilpfade wird für jeden weiteren Eingangs- und Ausgangsknoten wiederholt.
Weiterhin wird vorgeschlagen, dass dann, wenn der zweite Pfad auf den bereits gezogenen, ersten Pfad trifft, der restliche Abschnitt des ersten Pfades für den zweiten Pfades verwendet wird.
Es wird ferner vorgeschlagen, dass die Untermenge der Knoten in Sets von zusätzlichen Knoten (NOI) eingeteilt wird. Es wird jedem zusätzlichen Knoten (NOI) eine Wahrscheinlichkeit zugeordnet, welche charakterisiert, mit welcher Wahrscheinlichkeit der Knoten aus dem Set, in welchem dieser eingeteilt wurde, gezogen wird. Beim Auswählen des Pfades aus jedem der Sets wird jeweils ein zusätzlicher Knoten (NOI) zufällig gezogen und wobei beim Anlernen auch diese Wahrscheinlichkeit angepasst wird.
Es wird ferner vorgeschlagen, dass zu jedem zusätzlichen Knoten (NOI) oder Set von zusätzlichen Knoten (NOI) eine Mehrzahl von aufgabenspezifischen Köpfen (engl. heads) zugeordnet ist. Jedem aufgabenspezifischen Kopf wird eine Wahrscheinlichkeit zugeordnet ist, welche charakterisiert, mit welcher Wahrscheinlichkeit die aufgabenspezifischen Köpfe gezogen werden, wobei beim Auswählen des Pfades für die aufgabenspezifischen Köpfe abhängig von den der aufgabenspezifischen Köpfen zugeordneten Wahrscheinlichkeiten aus einer Mehrzahl von aufgabenspezifischen Köpfen einer der aufgabenspezifischen Köpfen gezogen wird.
Unter aufgabenspezifischen Köpfen kann verstanden werden, dass diese Köpfe abhängig von dem Ausgang des zusätzlichen Knotens eine Objektklassifikation insbesondere Objektbeschreibung ermitteln. In anderen Worten umfassen die Köpfe zumindest einen Knoten, welcher eine Ausgabe des zusätzlichen Knoten (NOI) in eine Größe transformiert, die eine Eingangsgröße des maschinellen Lernsystems, insbesondere hinsichtlich einer vorbestimmten Aufgabe oder Verwendung des maschinellen Lernsystems, charakterisiert. Vorzugsweise beschreiben die aufgabenspezifischen Köpfe ein kleines neuronales Netz, z.B. mit 2, 3 oder 5 Schichten.
Es wird ferner vorgeschlagen, dass der gerichtete Graph einen ersten Suchraum aufweist, wobei hier eine Auflösung der Daten, welche jeweils den Knoten zugeordnet ist, stetig mit der Anzahl der verbundenen Knoten bis zu einem der Eingangsknoten reduziert wird. Ferner hat der Graph einen zweiten Suchraum, welcher die zusätzlichen Knoten (NOI) aufweist, wobei Sets von zusätzlichen Knoten (NOI) jeweils einem Knoten des ersten Suchraums angehängt werden.
Der Vorteil ist hierbei, dass hiermit sog. FPN Architekturen optimiert werden können. Der erste und zweite Suchraum sind direkte miteinander verbunden. Unter einem Suchraum kann eine Menge von Knoten verstanden werden, die gemeinsam eine Vielzahl von möglichen Architekturen beschreiben.
Es wird ferner vorgeschlagen, dass die Ausgänge des maschinellen Lernsystems eine Segmentierung, Objektdetektion, Tiefenabschätzung, Gesten- /Verhaltenserkennung ausgeben und die Eingangsknoten folgende Daten bereitstellen können: Kamerabilder, Lidar-, Radar-, Ultraschall-, Wärmebild-, Mikroskopie-daten, insbesondere diese Daten aus unterschiedlichen Perspektiven.
Bevorzugt wird auf die Wahrscheinlichkeiten eine Softmax-Funktion und die Kanten bzw. entsprechenden Konten werden dann abhängig von den Ausgaben der Softmax-Funktion zufällig gezogen. Dies hat den Vorteil, dass die Softmax- Funktion garantiert, dass eine Akkumulierung der Wahrscheinlichkeiten der immer den Wert Eins ergibt. Dieser Vorteil erzeugt die vorteilhafte Wirkung, dass der probabilistische Charakter des Ziehens der Pfade erhalten bleibt und damit zuverlässiger eine optimale Architektur aufgefunden wird.
Es wird ferner vorgeschlagen, dass beim Anlernen der maschinellen Lernsysteme eine Kostenfunktion optimiert wird, wobei die Kostenfunktion eine erste Funktion aufweist, die eine Leistungsfähigkeit des maschinellen Lernsystems hinsichtlich dessen Segmentierung und Objekterkennung/Objektbeschreibung bewertet und eine zweite Funktion aufweist, welcher abhängig von einer Länge des Pfades und den Operationen der Kanten eine Latenzzeit o.ä. des maschinellen Lernsystems schätzt.
Besonders bevorzugt hat das zu erstellende maschinelle Lernsystem zumindest zwei Ausgänge, welche zur Segmentierung und Objektdetektion von Bildern eingerichtet ist, wobei das maschinelle Lernsystem einen Eingang zum Aufnehmen des Bildes und zwei Ausgänge aufweist, wobei ein erster Ausgang die Segmentierung des Bildes und ein zweiter Ausgang die Objektdetektion ausgibt. Der zweite Ausgang kann alternativ eine andere Objektbeschreibung der Objekte auf dem Bild ausgeben, wie eine Objektklassifikation.
Zusätzlich oder alternativ können die Aufgaben des maschinellen Lernsystems wie folgt sein: natürliche Sprachverarbeitung (engl. natural language processing, Autoencoder, Generative Modelle (engl. generative models) etc., wobei die unterschiedlichen Ausgänge jeweils unterschiedliche Eigenschaften des Eingangssignals hinsichtlich der Aufgabe charakterisieren.
Vorzugsweise sind die maschinellen Lernsysteme neuronale Netze.
In weiteren Aspekten betrifft die Erfindung ein Computerprogramm, das eingerichtet ist, die obigen Verfahren auszuführen und ein maschinenlesbares Speichermedium, 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 schematisch eines One-Shot Modell mit mehreren Eingangs- und einem Ausgangs- Knoten sowie drei Sets von .Nodes of Interest“ (NOI);
Figur 2 schematisch ein rückwärtsgerichtetes und vorwärtsgerichtetes Ziehen eines Pfades durch das One-Shot Modell;
Figur 3 schematisch ein One-Shot Modell für FPT Netzwerke;
Figur 4 schematisch ein One-Shot Modell mit mehreren Eingangs- und
Ausgangs-Knoten;
Figur 5 schematische Darstellung eines Flussdiagramms einer Ausführungsform der Erfindung;
Figur 6 schematische Darstellung eines Aktor-Steuerungssystems;
Figur 7 ein Ausführungsbeispiel zur Steuerung eines wenigstens teilautonomen Roboters;
Figur 8 schematisch ein Ausführungsbeispiel zur Steuerung eines Fertigungssystems;
Figur 9 schematisch ein Ausführungsbeispiel zur Steuerung eines Zugangssystems;
Figur 10 schematisch ein Ausführungsbeispiel zur Steuerung eines Überwachungssystems;
Figur 11 schematisch ein Ausführungsbeispiel zur Steuerung eines persönlichen Assistenten;
Figur 12 schematisch ein Ausführungsbeispiel zur Steuerung eines medizinisch bildgebenden Systems;
Figur 13 einen möglichen Aufbau einer Trainingsvorrichtung;
Um gute Architekturen von tiefen neuronalen Netzwerke für einen vorgegebenen Datensatz zu finden, können automatisierte Methoden zur Architektursuche angewandt werden, sogenannte Neural Architecture Search-Methoden. Dazu wird ein Suchraum von möglichen Architekturen neuronaler Netzwerke explizit oder implizit definiert. Im Folgenden soll zur Beschreibung eines Suchraums ein Graph (das sogenannte One-Shot Modell) definiert wird, welcher alle 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 festgelegten Ausgangsknoten des Netzwerkes gezogen werden.
Um Architekturen aus einem One-Shot Modell zu ziehen, welche Verzweigungen und mehrere Outputs haben, kann ein Samplingmodell für die Pfade verwendet werden, bei welchem die Pfade rückwärts durch den Graphen gezogen werden. Hierfür kann der Graph transponiert werden, bzw. die Richtung der Kanten wird umgedreht. Ein derartiges Sampling ist bspw. aus der DE102020208309 bekannt.
Zusätzlich kann der Fall auftreten, dass die gezogenen Architekturen einen oder mehrere Knoten des One-Shot Modells enthalten sollen, die nicht in voller Tiefe des Netzwerkes liegen und im Folgenden NOI (, Nodes of Interest“) genannt werden, sowie einen optionalen Output in voller Tiefe des One-Shot Modells. In diesem Fall kann das Erstellen des Pfades auch durch ein rückwärts gerichtetes Ziehen für die NOIs, um diese mit dem Input zu verbinden, erfolgen. Zusätzlich wird noch ein vorwärtsgerichtetes Ziehen startend von dem jeweiligen NOI durchgeführt, um den Abschnitt des Pfades zu dem Output des One-Shot Modells aufzufinden. Wie beim rückwärtsgerichteten Ziehen kann beim vorwärtsgerichteten Ziehen das Ziehen abgebrochen werden, sobald ein Pfad erreicht wird der bereits zum Input/Output, der aber über einen anderen NOI führt.
Als Alternative zu dem rückwärtsgerichteten Ziehen beginnend bei dem NOI kann ein rein vorwärtsgerichtetes Ziehen erfolgen, indem für jeden NOI ein Pfad vom Input zu dem entsprechenden NOI gezogen wird. Dies wird dadurch erreicht, dass das Ziehen nur auf dem entsprechenden Subgraphen durchgeführt wird, welcher aus allen Knoten besteht die auf einem Pfad von dem Input des Netzwerkes zu dem aktuellen NOI liegen sowie allen Kanten des One-Shot Modells zwischen diesen Knoten. Um Architekturen aus einem One-Shot Modell zu ziehen, welche mehrere Eingangsknoten aufweisen sollen oder bei welchem der optimale Eingangsknoten aufgefunden werden soll, wird ein Samplingmodell wie folgt vorgeschlagen. Dieses Samplingmodell kann dann auf Graphen angewendet werden, welche eine Mehrzahl von Eingangs- und/oder Ausgangs-knoten aufweisen, insbesondere aus einer vorgegebenen Menge von Knoten des Graphen einen oder eine Mehrzahl von Knoten als Eingangs- und/oder Ausgangs-knoten aufzufinden.
In einer ersten Ausführungsform des Samplingmodells zum Auswählen von Pfaden durch den Graphen mit mehreren Eingangs-/Ausgangsknoten wird ein One-Shot-Modell betrachtet, welches mehrere feste Eingangsknoten aufweist, wobei beim Aufsuchen der optimalen Architektur der optimale Eingangsknoten oder eine optimale Kombination von Eingangsknoten aufgefunden werden sollte(n). Unter festen Eingangsknoten kann verstanden werden, dass diese Knoten im Graphen immer als Eingang dienen und nicht anderweitig umfunktioniert werden können. Ferner kann die erste Ausführungsform erweitert werden, in dem eine vorgegebene Anzahl von festen Ausgangsknoten definiert wird. Unter festen Ausgangsknoten kann verstanden werden, dass die Pfade durch den Graphen an einem dieser Ausgangsknoten enden oder die Pfade bei all den Ausgangsknoten enden, wobei diese Ausgangsknoten im Graphen immer als Ausgang dienen und nicht anderweitig umfunktioniert werden können.
Es gibt also n"iput, ...,n^l put Eingangsknoten in dem Graphen des One-Shot- Modelles, wobei K die Gesamtanzahl der Eingangsknoten angibt.
Eingangsknoten sind dadurch gekennzeichnet, dass diese nur mit nachfolgenden Knoten verbunden sind und keine vorhergehende Knoten aufweisen.
Ferner wird eine Menge von Nodes of Interest (NOI) definiert: NOIi =
Figure imgf000013_0001
= 1, ... , N. Hier gibt N die Anzahl der Sets von NOIs an und Nt ist die Anzahl der Knoten der NOIs in dem Set NOIi und nk°'1 bezeichnet einen einzelnen Knoten des Graphen, welcher ein NOI ist. Die Sets können eine vorgegebene Eigenschaft erfüllen z.B. hinsichtlich einer Datenauflösung oder eine Tiefe der Knoten relativ zum Eingangsknoten, um ein vorgegebenes rezeptives Feld sicherzustellen.
Des Weiteren wird jedem Set NOIi eine Wahrscheinlichkeitsverteilung pf01 über alle Knoten aus diesem Set (n^0'1 e NOIi, k = 1, ...Nt) definiert. Zusätzlich wird auch eine weitere Wahrscheinlichkeitsverteilung pinputs ]i, i = 1, ...,M über die Eingangsknoten definiert. Vorzugsweise wird diese weitere Wahrscheinlichkeitsverteilung pinputs jeweils einem Ausgangsknoten i zugeordnet. Denkbar ist auch, dass abhängig vom Ausgangsknoten die möglichen zu erreichenden Eingangsknoten auf eine Untermenge der Eingangsknoten beschränkt ist. D.h. es kann Ausgangsknoten geben, von welchen nicht jeder Eingangsknoten erreicht werden kann/soll, die dann entsprechend nicht in der Wahrscheinlichkeitsverteilung pinputs enthalten sind.
Mit der Notation
Figure imgf000014_0001
wird ein beschränktes One-shot Model beschrieben, welches alle Subgraphen enthält, die einen Eingangsknoten n™put mit einem jeden NOI aus dem Set NOIi verbindet. Für jeden Subgraphen g(n^l put,N0Ii), i = 1, ...M, k = 1, ...,Ni werden Wahrscheinlichkeitsverteilungen definiert, welche eine Wahrscheinlichkeit beschreiben, mit welcher die Kanten und/oder Knoten aus dem Subgraphen gezogen werden. Vorzugsweise erfolgt das Ziehen eines Pfades aus dem Subgraphen gemäß dem Samplemodel durch eine rückwärtsgerichtetes Ziehen von den NOIs zu den Inputs durch gtn^. NO .
Die Wahrscheinlichkeitsverteilungen pinPuts\i und pf01 können beliebig initialisiert werden. Bevorzugt werden diese Wahrscheinlichkeiten derart initialisiert, dass die Eingangsknoten durch pinPuts\i alle mit gleicher Wahrscheinlichkeit gezogen werden, sowie dass die NOI innerhalb eines Sets durch pi 01 mit gleicher Wahrscheinlichkeit gezogen werden. Diese Initialisierung hat den Vorteil, dass die Architekturen zu Beginn der Architektursuche unvoreingenommen gezogen werden, wodurch Architekturen aufgefunden werden, die andernfalls nicht aufgefunden worden wären. Besonders bevorzugt werden die Wahrscheinlichkeitsverteilungen derart initialisiert, sodass initial alle Pfade g(n™put,N0Ii) e NOIt beginnend bei dem Ziehen der NOIs und zugehörigen Eingangsknoten mit gleicher Wahrscheinlichkeit gezogen werden. Dies kann derart erfolgen, dass die Wahrscheinlichkeitsverteilungen abhängig von einer Anzahl der Pfade entlang der einzelnen Knoten/Kanten dividiert durch eine Gesamtzahl der Pfade durch den Subgraphen oder Graphen zur Initialisierung verwendet wird.
Das Erzeugen der Architekturen erfolgt dann in einem iterativen Prozess durch ein Iterieren über die Sets der NOIs. Hierfür wird abhängig von der Wahrscheinlichkeitsverteilung pf01 aus dem j-ten Set ein einzelner NOI gezogen. Daraufhin wird abhängig von der Wahrscheinlichkeitsverteilung pinputs^ ejn oc|er ejne Mehrzahl von Eingangsknoten gezogen. Anschließend wird für jeden gezogenen Eingangsknoten ninput ein Pfad rückwärts beginnend bei dem gezogenen einzelnen NOI aus dem jeweiligen Set der NOIs zu dem entsprechenden Eingangsknoten, insbesondere aus dem Subgraphen g(ninput,N0Ii'), gezogen. Dieses Vorgehen wird dann für jedes Set der NOIs wiederholt.
Die resultierende, gezogene Architektur besteht aus einzelnen Knoten, die jeweils aus einem der Sets der NOI gezogen wurden, die über einen Pfad mit mindestens einem Eingangsknoten verbunden sind.
Das Samplingmodell der ersten Ausführungsform hat den Vorteil, dass es durch das Ziehen des Pfades im rückwärtsgerichteten Graphen deutlich Computerressourcen sparsamer ist, da für das rückwärts gerichtete Ziehen die Subgraphen wiederverwendet (bspw. für einen Input und ein Set von NOIs) werden können.
Figur 1 zeigt schematisch eine Anwendung des Samplingmodells auf einen Graphen G mit mehreren Eingangsknoten (1) und mehreren Sets von NOIs (101,102,103). Hierbei soll aus den Sets von NOIs jeweils ein Ausgangsknoten gelernt werden sowie den hierzu benötigten Eingangsknoten (Inputl,lnput2, Input3).
Der Graph G ist eine Darstellung eines One-Shot-Modells, wobei die Punkte entsprechen Daten und die Kanten entsprechen Transformationen der Daten). Eine Besonderheit in dieser Darstellung des Graphen G ist, dass mehrere Eingangsknoten (1) gegeben sind und drei Sets möglicher Auswahlmöglichkeiten für Ausgänge (NOli.NOh.NOIs). Um einen Pfad zu ziehen, werden die Ausgangsknoten aus dem jeweiligen Satz von NOIs (101,102,103) zufällig, insbesondere abhängig von der Wahrscheinlichkeitsverteilung pf01, die Ausgangsknoten (NOli.NOh.NOIs) gezogen. Dann werden die Eingänge für jeden Ausgang gezogen (ein Beispiel für die abgetasteten Eingänge wird in Fig. 1 neben jedem NOI angezeigt). Anschließend werden Pfade nacheinander für alle Ausgabeknoten zu jedem seiner Eingabeknoten im umgekehrten Graphen gezogen.
Vorzugsweise werden beim Ziehen der Pfade, wenn zuvor gezogene Pfad erreicht werden, dem zuvor gezogenen Pfad bis zum Eingang gefolgt. Beispielsweise trifft der Pfad beginnend bei NOh, kurz vor dem Eingangsknoten Input2 auf den Pfad des NOI3 und verläuft dann entlang des Pfades des NOI3 weiter bis zum Eingangsknoten Input2.
Wie in Figur 1 abgebildet, können für die Ausgangsknoten (NOli.NOh.NOIs) ein oder mehrere oder gar alle Eingangsknoten gezogen werden.
Die Eingangsknoten (Inputl, Input2, Inputs) können folgende Eingangsdaten bereitstellen bzw. aufnehmen: Kamerabilder, Lidar-, Radar-, Ultraschall-, Wärmebild-, Mikroskopie-daten, insbesondere diese Daten aus unterschiedlichen Perspektiven.
In einer bevorzugten Weiterbildung der ersten Ausführungsform kann folgende Modifikation vorgenommen werden. Falls ein weiterer, gezogener Pfad einen Knoten erreicht, welcher in einem der bereits vorhergehenden gezogenen Pfaden, für ein anderes Set der NOIs; enthalten ist, dann kann der weitere gezogene Pfad entlang dem bereits gezogenen Pfad weiter verlaufen. Vorzugsweise ist die Entscheidung, ob der bereits vorhandene Pfad verwendet werden soll, abhängig davon, ob dieser Pfad auch zu dem Eingangsknoten führt, welcher für den NOI des weiteren Pfades ausgesucht wurde. In einer zweiten Ausführungsform des Samplingmodells wird ein One-Shot- Modell mit einer Mehrzahl von festen Ausgangsknoten und Eingangsknoten betrachtet.
Die zweite Ausführungsform ist analog zu ersten Ausführungsform, aber mit dem Unterschieden, dass die Subgraphen zwischen einem einzelnen Ausgabeknoten und allen möglichen Auswahlmöglichkeiten für einen Input definiert sind. Es werden also die Pfade in dem Graphen anstelle des umgekehrten Subgraphen gezogen. Genauer gesagt wird zunächst ein Eingangsknoten aus der entsprechenden Menge möglicher Eingangsknoten gezogen, dann werden ein oder mehrere Ausgangsknoten abgetastet und der Eingangsknoten mit jedem dieser Ausgangsknoten verbunden, indem ein Pfad im Untergraphen für die aktuellen Eingangsknoten abgetastet wird.
In einer dritten Ausführungsform des Samplingmodells wird ein One-Shot-Modell betrachtet, bei welchem sowohl der Eingangsknoten als auch der Ausgangsknoten gezogen werden kann.
Das Ziehen der Pfade kann entweder von den Input- oder Output-Knoten ausgehen und wird dann entsprechend vorwärts oder rückwärts durch den Graphen der Pfad gezogen.
Die Samplingmodelle der eben erläuterten Ausführungsformen können miteinander Kombiniert werden, um komplexe Architekturen mit mehreren Ein- und/oder Aus-gängen aufzufinden.
Eine mögliche Erweiterung des Samplingmodells kann darin liegen, dass das Samplingmodell zusätzlich für eine Suche nach einer Struktur von aufgabenspezifischen Köpfen (engl. heads) verwendet wird, siehe auch Figur 2. Diese aufgabenspezifischen Köpfe können an die NOIs aufgesetzt werden. Hierfür kann das betrachtete One-Shot-Modell um zusätzliche Knoten/Kanten erweitert werden, die an jedem NOI angebracht werden können und den aufgabenspezifischen Köpfen entsprechen. Das Ziehen des Pfades erfolgt durch ein erstes Rückwärtsgerichtetes Ziehen beginnend bei den jeweiligen NOIs zu den Inputs. Insbesondere ergibt sich daraus eine feste Anzahl von abgetasteten NOI-Knoten. Daraufhin wird das Ziehen in Bezug auf alle aufgabenspezifischen Köpfe ausgeführt sowie das Ziehen der Pfade zu dem Output des Graphen.
Figur 2 zeigt beispielhaft ein Ziehen von aufgabenspezifischen Köpfen für die NOIs mit einem Graphen G, welcher einen Eingangs- und Ausgangsknoten aufweist.
Pfade durch den Graph G der Figur 2 können wie in der DE102020208309 beschrieben gezogen werden, insbesondere indem zuerst rückwärts von den jeweiligen NOIs die Pfade zum Input und dann zum Output gezogen werden. Zusätzlich gibt es nun einen weiteren Schritt des Ziehens, wobei hierfür von jedem NOI zum Ziel der aufgabenspezifischen Köpfe, die an jedem NOI angebracht werden können, gezogen wird.
In einer weiteren Ausführungsform der Figur 2 kann der Graph G eine Mehrzahl von Eingangs- und Ausgangsknoten aufweisen. Für das Ziehen der Eingangsknoten sei hier auf Fig. 1 und insbesondere auf Fig. 4 verwiesen.
Figur 3 zeigt exemplarisch einen Graphen G für eine Architektursuche für ein maschinelles Lernsystem mit einer Mehrzahl von Sets der NOI (101,102,103) sowie mit einer Mehrzahl von aufgabenspezifischen Köpfen (201,202,203). In Fig. 3 sind die aufgabenspezifischen Köpfen (201,202,203) beispielhaft dem ersten Set der NOI (101) zugeordnet. Der Graph G aus Fig. 3 kann mit dem Samplingmodell dazu verwendet werden, um sog. FPN-Netzwerke mit einem Backbone Netzwerk (12) für z.B. eine Objektdetektion zu erstellen. FPN- Netzwerke sind bspw. aus der Veröffentlichung der Autoren Lin, T. Y., Dollar, P., Girshick, R., He, K., Hariharan, B., & Belongie, S. „Feature pyramid networks for object detection“ In Proceedings of the IEEE conference on computer vision and pattern recognition (pp. 2117-2125) bekannt.
Vorzugweise beschreibt der Graph G der Fig. 3 mehrere unterschiedliche Suchräume. Einer der Suchräume ist für ein Backbone-Netzwerk (12) mit einer Reihe von festen oder durchsuchbaren Ausgabeknoten in verschiedenen Auflösungen. Einer der Suchräume ist der FPN-Suchraum (101-103), welcher an das Backbone-Netzwerk (12) angehängt wird und welcher einen Satz von Output-NOIs definiert. Zusätzlich können an den FPN NOIs aufgabenspezifischen Köpfen (201,202,203) angebracht werden. Das Ziehen der Pfade im Backbone kann durch rückwärtsgerichtetes Ziehen erfolgen, und wenn das Backbone ein Single-Path-Netzwerk ist, reicht es, nur ein einziges NOI bei der niedrigsten Auflösung (maximale Tiefe im Backbone (12)) zu haben. Das Ziehen aus den Sets der NOIs (101,102,103) kann durch rückwärtsgerichtetes Ziehen unter Berücksichtigung des Backbone-Netzwerks (12) erfolgen. Für die aufgabenspezifischen Köpfe kann ein vorwärtsgerichtetes Ziehen ausgehend von dem jeweiligen NOI ausgeführt werden.
Es kann gesagt werden, dass für dieses Beispiel ein 3-stufiges Ziehen angewendet wird.
Figur 4 zeigt exemplarisch eine Architektursuche für insbesondere Sensorfusion Architekturen.
Die Sensorfusion wird dadurch ermöglicht, dass mehrere Eingangsknoten betrachtet werden, die die verschiedenen Sensordaten entsprechen. Im einfachsten Fall kann ein Netzwerk mit einem einzigen Ausgang und mehreren Eingängen mit dem oben beschriebenen vorwärtsgerichteten Ziehen verwendet werden. Dadurch kann gelernt werden, in welcher Tiefe des Graphen die verschiedenen Sensordaten kombiniert werden, d.h. ob eine frühe, mittlere oder späte Sensorfusion durchgeführt werden soll.
Der Graph G mit einer Mehrzahl von Ausgängen kann Multi-Task Netzwerke für Objektdetektion und semantische Segmentierung beschreiben. Die NOIs sind dabei Knoten an denen z.B. die Objektdetektion/Klassifikation stattfindet. Zusätzlich wird am Output in der vollen Tiefe des Netzwerkes noch ein Output für die semantische Segmentierung verwendet. Zusätzlich könnten an die NOI‘s aufgabenspezifischen Köpfen angehängt werden.
Figur 5 zeigt schematisch ein Flussdiagramm eines Verfahrens zum Erstellen eines maschinellen Lernsystems mit obig erläuterten Vorgehen zum Auffinden der optimalen Architektur mit einer Mehrzahl von Eingängen. Das Verfahren kann mit Schritt S21 beginnen, in welchem der Graph G bereitgestellt wird. Denn die automatische Architektursuche benötigt den Suchraum, welcher hier in der Form eines One-Shot Modells G aufgebaut ist.
Daraufhin folgt Schritt S22. In diesem Schritt werden Architekturen aus dem Graphen abhängig von den Wahrscheinlichkeiten wie zu Fig. 1 erläutert gezogen. Daraufhin folgen die bekannten Schritte des Anlernens (S23) der gezogenen Architektur sowie dem Übertragen die optimierten Parameter und Wahrscheinlichkeiten durch das Anlernen in den Graphen.
Aus dem Graphen G kann dann ein künstliches neuronales Netz 60 (abgebildet in Figur 6) erstellt werden und verwendet werden wie im nachfolgenden erläutert.
Figur 6 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 Sensor wie einem Videosensor, erfasst, der auch durch eine Mehrzahl von Sensoren gegeben sein kann, beispielsweise eine Stereokamera. Auch andere bildgebende 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 Steuerungssystem 40 übermittelt. Das Steuerungssystem 40 empfängt somit eine Folge von Sensorsignalen S. Das Steuerungssystem 40 ermittelt hieraus Ansteuersignale A, welche an den Aktor 10 übertragen werden.
Das Steuerungssystem 40 empfängt die Folge von Sensorsignalen S des Sensors 30 in einer optionalen Empfangseinheit 50, die die Folge von Sensorsignalen S in eine Folge von Eingangsbildern x umwandelt (alternativ kann auch unmittelbar 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 Videoaufzeichnung. Mit anderen Worten wird Eingangsbild x abhängig von Sensorsignal S ermittelt. Die Folge von Eingangsbildern x wird einem maschinellen Lernsystem, im Ausführungsbeispiel einem künstlichen neuronalen Netz 60, zugeführt, welche z.B. gemäß dem Verfahren nach Fig. 7 erstellt wurde.
Das künstliche neuronale Netz 60 wird vorzugsweise parametriert durch Parameter <|>, die in einem Parameterspeicher P hinterlegt sind und von diesem bereitgestellt werden.
Das künstliche neuronale Netz 60 ermittelt aus den Eingangsbildern x Ausgangsgröß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 Ansteuersignale A ermittelt, welche dem Aktor 10 zugeführt werden, um den Aktor 10 entsprechend 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 alternativ 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 maschinenlesbares 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 7 zeigt, wie das Steuerungssystem 40 zur Steuerung eines wenigstens teilautonomen Roboters, hier eines wenigstens teilautonomen Kraftfahrzeugs 100, eingesetzt werden kann.
Bei dem Sensor 30 kann es sich beispielsweise um einen vorzugsweise im Kraftfahrzeug 100 angeordneten Videosensor handeln.
Das künstliche neuronale Netz 60 ist eingerichtet, aus den Eingangsbildern x Objekte 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 Kraftfahrzeugs 100 handeln. Das Ansteuersignal A kann dann derart ermittelt werden, dass der Aktor oder die Aktoren 10 derart angesteuert wird, dass das Kraftfahrzeug 100 beispielsweise eine Kollision mit den vom künstlichen neuronalen Netz 60 sicher identifizierten Objekte verhindert, insbesondere, wenn es sich um Objekte bestimmter Klassen, z.B. um Fußgänger, handelt.
Alternativ kann es sich bei dem wenigstens teilautonomen Roboter auch um einen anderen mobilen Roboter (nicht abgebildet) handeln, beispielsweise um einen solchen, der sich durch Fliegen, Schwimmen, Tauchen oder Schreiten fortbewegt. 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 ermittelt werden, dass Antrieb und/oder Lenkung des mobilen Roboters derart angesteuert 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 dargestellt werden. Auch ist es beispielsweise beim einem Kraftfahrzeug 100 mit nicht automatisierter Lenkung möglich, dass die Anzeigeeinheit 10a mit dem Ansteuersignal A derart angesteuert wird, dass sie ein optisches oder akustisches Warnsignal ausgibt, wenn ermittelt wird, dass das Kraftfahrzeug 100 droht, mit einem der sicher identifizierten Objekte zu kollidieren.
Figur 8 zeigt ein Ausführungsbeispiel, in dem das Steuerungssystem 40 zur Ansteuerung 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 Maschine 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 Bearbeitungsschritt 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 Fertigungsmaschine 11 entsprechend den gleichen Fertigungsschritt für eine Bearbeitung eines nachfolgenden Fertigungserzeugnisses anpasst.
Figur 9 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 Objektidentifikationssystem 60 kann dieses erfasste Bild interpretiert werden. Sind mehrere Personen gleichzeitig erfasst, kann durch eine Zuordnung der Personen (also der Objekte) zueinander beispielweise die Identität der Personen besonders zuverlässig ermittelt werden, beispielsweise durch eine Analyse ihrer Bewegungen. 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 10 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ünstlichen neuronalen Netz 60 zuverlässig eine Identität der vom Videosensor 30 aufgenommenen Gegenstände ermittelt werden, um abhängig davon z.B. darauf zu schließen, welche verdächtig werden, und das Ansteuersignal A dann derart gewählt werden, dass dieser Gegenstand von der Anzeigeeinheit 10a farblich hervorgehoben dargestellt wird.
Figur 11 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 empfä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 Assistenten 250 wird dann dieses ermittelte Ansteuersignal A übermittelt und er somit entsprechend angesteuert. Dieses ermittelte Ansteuersignal A ist kann insbesondere derart gewählt werden, dass es einer vermuteten gewünschten Ansteuerung durch den Nutzer 249 entspricht. Diese vermutete gewünschte Ansteuerung kann abhängig von der vom künstlichen neuronalen Netz 60 erkannten Geste ermittelt werden. Das Steuerungssystem 40 kann dann abhängig von der vermuteten gewünschten Ansteuerung das Ansteuersignal A zur Übermittlung an den persönlichen Assistenten 250 wählen und/oder das Ansteuersignal A zur Übermittlung an den persönlichen Assistenten entsprechend der vermuteten gewünschten Ansteuerung 250 wählen.
Diese entsprechende Ansteuerung kann beispielsweise beinhalten, dass der persö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 angesteuert zu werden.
Figur 12 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 beispielsweise durch einen bildgebenden Sensor gegeben sein, durch das Steuerungssystem 40 wird die Anzeigeeinheit 10a angesteuert. Beispielsweise kann vom neuronalen Netz 60 ermittelt werden, ob ein vom bildgebenden Sensor aufgenommener 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 13 zeigt eine beispielhafte Trainingsvorrichtung 140 zum Trainieren eines gezogenen maschinellen Lernsystems aus dem Graphen G, insbesondere des korrespondieren des neuronalen Netzes 60. Trainingsvorrichtung 140 umfasst einen Bereitsteiler 71, der z.B. Eingangsbilder x und Soll-Ausgangsgrößen ys, beispielsweise Soll-Klassifikationen, bereitstellt. Eingangsbild 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 Übereinstimmung den jeweiligen Ausgangsgrößen y und Soll-Ausgangsgrößen ys neue Parameter p' ermittelt, die dem Parameterspeicher P übermittelt werden und dort Parameter p ersetzen.
Die vom Trainingssystem 140 ausgeführten Verfahren können als Computerprogramm implementiert auf einem maschinenlesbaren Speichermedium 147 hinterlegt 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 klassifiziert werden, dass diese Bildausschnitte dann ausgeschnitten werden, ggf. ein neuer Bildausschnitt erzeugt wird und an Stelle des ausgeschnittenen Bildausschnitts 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 vorliegen, oder in Form von Hardware, oder auch in einer Mischform aus Software und Hardware.

Claims

- 25 - Ansprüche
1. Computerimplementiertes Verfahren zum Erstellen eines maschinellen Lernsystems insbesondere zur Sensordatenfusion, umfassend folgende Schritte:
Bereitstellen (S21) eines gerichteten Graphen, wobei der gerichtete Graph (G) eine Mehrzahl von Eingangsknoten (1) und zumindest einen Ausgangsknoten (11) und eine Mehrzahl von weiteren Knoten aufweist, wobei die Eingangs-und Ausgangs-knoten (1,11) über die weiteren Knoten mittels gerichteten Kanten verbunden sind, wobei den Kanten jeweils eine Wahrscheinlichkeit zugeordnet ist, welche charakterisiert mit welcher Wahrscheinlichkeit die jeweilige Kante gezogen wird, wobei den Eingangsknoten (1) auch jeweils eine Wahrscheinlichkeit zugeordnet ist;
Auswählen (S22) eines Pfades, insbesondere einer Mehrzahl von Pfaden oder eines Subgraphen, durch den Graphen, wobei aus der Mehrzahl der Eingangsknoten (1) zumindest ein Eingangsknoten abhängig von den der Eingangsknoten zugeordneten Wahrscheinlichkeiten gezogen wird, wobei der Pfad von dem gezogenen Eingangsknoten (1) entlang der Kanten bis zum Ausgangsknoten (11) abhängig von den der Kanten zugeordneten Wahrscheinlichkeit gewählt wird;
Erstellen eines maschinellen Lernsystems abhängig von dem gewählten Pfad und Anlernen (S23) des erstellten maschinellen Lernsystems, wobei angepasste Parameter des angelernten maschinellen Lernsystems in den korrespondierenden Kanten des gerichteten Graphen hinterlegt werden und die Wahrscheinlichkeiten der Kanten und des gezogenen Eingangsknoten (1) des Pfades angepasst werden; mehrmaliges Wiederhohlen der vorhergehenden Schritte „Auswählen eines Pfades“ und „Erstellen und Anlernen eines maschinellen Lernsystems“; und Erstellen des maschinelles Lernsystems abhängig von dem gerichteten Graphen. Verfahren nach Anspruch 1, wobei der gerichtete Graph eine Mehrzahl von Ausgangsknoten aufweist, wobei beim Auswählen (S22) des Pfades zumindest ein Ausgangsknoten aus der Mehrzahl der Ausgangsknoten abhängig von deren zugeordneten Wahrscheinlichkeiten ausgewählt wird, wobei die den Eingangsknoten zugeordneten Wahrscheinlichkeiten abhängig von den gezogenen Ausgangsknoten ist. Verfahren nach Anspruch 1 oder 2, wobei aus der Mehrzahl der weiteren Knoten eine Untermenge bestimmt wird, die alle eine vorgegebene Eigenschaft hinsichtlich einer Datenauflösung erfüllen, wobei aus dieser Untermenge zumindest ein zusätzlicher Knoten (engl. Node of Interest, NOI) gewählt wird, der als weiterer Ausgangsknoten des maschinellen Lernsystems dienen kann, wobei beim Auswählen (S22) ein erster Pfad durch den Graphen vom Eingangsknoten (1) entlang der Kanten zu dem zusätzlichen Knoten (NOI) und ein zweiter Pfad durch den Graphen vom Eingangsknoten (1) entlang der Kanten zu dem Ausgangsknoten (11) gezogen wird oder der Pfad durch den Graphen vom Eingangsknoten (1) entlang der Kanten über den zusätzlichen Knoten (NOI) zu dem Ausgangsknoten (11) gezogen wird. Verfahren nach Anspruch 3, wobei die Untermenge der Knoten in Sets von zusätzlichen Knoten (NOI) eingeteilt wird, wobei jedem zusätzlichen Knoten (NOI) eine Wahrscheinlichkeit zugeordnet ist, welche charakterisiert, mit welcher Wahrscheinlichkeit der Knoten aus dem Set, in welchem dieser eingeteilt ist, gezogen wird, wobei beim Auswählen (S22) des Pfades aus jedem der Sets jeweils ein zusätzlicher Knoten (NOI) zufällig gezogen wird und wobei beim Anlernen auch diese Wahrscheinlichkeit angepasst wird. Verfahren nach Anspruch 3 oder 4, wobei zu jedem zusätzlichen Knoten (NOI) oder Set von zusätzlichen Knoten (NOI) eine Mehrzahl von aufgabenspezifischen Köpfen (engl. heads) zugeordnet ist, wobei jedem aufgabenspezifischen Kopf eine Wahrscheinlichkeit zugeordnet ist, welche charakterisiert, mit welcher Wahrscheinlichkeit die aufgabenspezifischen Köpfen gezogen werden, wobei beim Auswählen (S22) des Pfades wird einer der aufgabenspezifischen Köpfe abhängig von den der aufgabenspezifischen Köpfen zugeordneten Wahrscheinlichkeiten aus einer Mehrzahl von aufgabenspezifischen Köpfen einer der aufgabenspezifischen Köpfen gezogen, wird wobei beim Anlernen auch die der aufgabenspezifischen Köpfe zugeordnete Wahrscheinlichkeit angepasst wird. Verfahren nach einem der vorhergehenden Ansprüche, wobei der gerichtete Graph einen ersten Suchraum aufweist, wobei hier eine Auflösung der Daten, welche den Knoten zugeordnet ist, stetig reduziert wird, wobei der Graph einen zweiten Suchraum aufweist, welcher die zusätzlichen Knoten (NOI) aufweist, wobei Sets von zusätzlichen Knoten (NOI) jeweils einem Knoten des ersten Suchraums angehängt werden Verfahren nach einem der vorhergehenden Ansprüche, wobei die Ausgänge des maschinellen Lernsystems eine Segmentierung, Objektdetektion, Tiefenabschätzung und/oder Gesten-/Verhaltenserkennung ausgeben und die Eingangsknoten folgende Daten bereitstellen können: Kamerabilder, Lidar-, Radar-, Ultraschall-, Wärmebild- und/der, Mikroskopie-daten, insbesondere diese Daten aus unterschiedlichen Perspektiven. Computerprogramm, welches Befehle umfasst, welche eingerichtet sind, wenn diese auf einem Computer ausgeführt werden, den Computer veranlassen, das Verfahren nach einem der vorhergehenden Ansprüche auszuführen. Maschinenlesbares Speicherelement auf welchem das Computerprogramm nach Anspruch 8 hinterlegt ist. Vorrichtung, welche eingerichtet ist, das Verfahren nach einem der Ansprüche 1 bis 7 auszuführen.
PCT/EP2022/071570 2021-08-10 2022-08-01 Verfahren und vorrichtung zum automatisierten erstellen eines maschinellen lernsystems zur multi-sensor-datenfusion WO2023016843A1 (de)

Priority Applications (2)

Application Number Priority Date Filing Date Title
CN202280055921.0A CN117918015A (zh) 2021-08-10 2022-08-01 自动创建用于多传感器数据融合的机器学习系统的方法和设备
US18/574,913 US20240296357A1 (en) 2021-08-10 2022-08-01 Method and device for the automated creation of a machine learning system for multi-sensor data fusion

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
DE102021208724.8 2021-08-10
DE102021208724.8A DE102021208724A1 (de) 2021-08-10 2021-08-10 Verfahren und Vorrichtung zum automatisierten Erstellen eines maschinellen Lernsystems zur Multi-Sensor-Datenfusion

Publications (1)

Publication Number Publication Date
WO2023016843A1 true WO2023016843A1 (de) 2023-02-16

Family

ID=83113076

Family Applications (1)

Application Number Title Priority Date Filing Date
PCT/EP2022/071570 WO2023016843A1 (de) 2021-08-10 2022-08-01 Verfahren und vorrichtung zum automatisierten erstellen eines maschinellen lernsystems zur multi-sensor-datenfusion

Country Status (4)

Country Link
US (1) US20240296357A1 (de)
CN (1) CN117918015A (de)
DE (1) DE102021208724A1 (de)
WO (1) WO2023016843A1 (de)

Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2021078027A1 (zh) * 2019-10-25 2021-04-29 腾讯科技(深圳)有限公司 构建网络结构优化器的方法、装置及计算机可读存储介质
DE102020208309A1 (de) 2020-07-02 2022-01-05 Robert Bosch Gesellschaft mit beschränkter Haftung Verfahren und Vorrichtung zum Erstellen eines maschinellen Lernsystems

Patent Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2021078027A1 (zh) * 2019-10-25 2021-04-29 腾讯科技(深圳)有限公司 构建网络结构优化器的方法、装置及计算机可读存储介质
US20220044094A1 (en) * 2019-10-25 2022-02-10 Tencent Technology (Shenzhen) Company Limited Method and apparatus for constructing network structure optimizer, and computer-readable storage medium
DE102020208309A1 (de) 2020-07-02 2022-01-05 Robert Bosch Gesellschaft mit beschränkter Haftung Verfahren und Vorrichtung zum Erstellen eines maschinellen Lernsystems

Non-Patent Citations (6)

* Cited by examiner, † Cited by third party
Title
AUTOREN CAI ET AL., 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
CHEN, W.GONG, X.LIU, X.ZHANG, Q.LI, Y.WANG, Z.: "FasterSeg: Searching for Faster Real-time Semantic Segmentation", ARXIV PREPRINT ARXIV:1912.10917, 2019
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
LIN, T. Y.DOLLAR, P.GIRSHICK, R.HE, K.HARIHARAN, B.BELONGIE, S.: "Feature pyramid networks for object detection", PROCEEDINGS OF THE IEEE CONFERENCE ON COMPUTER VISION AND PATTERN RECOGNITION, pages 2117 - 2125
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

Also Published As

Publication number Publication date
CN117918015A (zh) 2024-04-23
US20240296357A1 (en) 2024-09-05
DE102021208724A1 (de) 2023-02-16

Similar Documents

Publication Publication Date Title
WO2020260020A1 (de) Verfahren und vorrichtung zum überprüfen der robustheit eines künstlichen neuronalen netzes
DE69730811T2 (de) Anlage zur Bilderkennung
DE202017102238U1 (de) Aktorsteuerungssystem
DE202020101012U1 (de) Vorrichtung zum Vorhersagen einer geeigneten Konfiguration eines maschinellen Lernsystems für einen Trainingsdatensatz
DE102020210352A1 (de) Verfahren und Vorrichtung zum Transferlernen zwischen modifizierten Aufgaben
DE102020212515A1 (de) Verfahren und Vorrichtung zum Trainieren eines maschinellen Lernsystems
DE202019105282U1 (de) Vorrichtung zum Optimieren eines System für das maschinelle Lernen
WO2020064211A1 (de) Verfahren und vorrichtung zum ermitteln eines ansteuersignals
WO2021008836A1 (de) Vorrichtung und computerimplementiertes verfahren für die verarbeitung digitaler sensordaten und trainingsverfahren dafür
DE102020208828A1 (de) Verfahren und Vorrichtung zum Erstellen eines maschinellen Lernsystems
DE102020208309A1 (de) Verfahren und Vorrichtung zum Erstellen eines maschinellen Lernsystems
WO2023016843A1 (de) Verfahren und vorrichtung zum automatisierten erstellen eines maschinellen lernsystems zur multi-sensor-datenfusion
EP3853778A1 (de) Verfahren und vorrichtung zum betreiben eines steuerungssystems
DE102019202523A1 (de) Verfahren und Vorrichtung zum Betreiben eines Steuerungssystems
WO2019206776A1 (de) Verfahren und vorrichtung zum ermitteln einer netzkonfiguration eines neuronalen netzes
DE102022201679A1 (de) Verfahren und Vorrichtung zum Trainieren eines neuronalen Netzes
DE102021207937A1 (de) Verfahren und Vorrichtung zum Erstellen eines maschinellen Lernsystems mit einer Mehrzahl von Ausgängen
DE202020104005U1 (de) Vorrichtung zum Erstellen eines Systems zum automatisierten Erstellen von maschinellen Lernsystemen
WO2020260016A1 (de) Verfahren und vorrichtung zum trainieren eines maschinellen lernsystems
DE102020211714A1 (de) Verfahren und Vorrichtung zum Erstellen eines maschinellen Lernsystems
DE202019103046U1 (de) Vorrichtung zur Vorhersage einer Lernkurve
DE102019120651A1 (de) Mustererkennung mittels Ultraschallsignalen für autonomes Fahren
DE102019207911A1 (de) Verfahren, Vorrichtung und Computerprogramm zur Vorhersage einer Lernkurve
WO2023006597A1 (de) Verfahren und vorrichtung zum erstellen eines maschinellen lernsystems
DE102020202392A1 (de) Verfahren, Vorrichtung und Computerprogramm zum Vorhersagen einer geeigneten Konfiguration eines maschinellen Lernsystems für einen Trainingsdatensatz

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: 22760900

Country of ref document: EP

Kind code of ref document: A1

WWE Wipo information: entry into national phase

Ref document number: 202280055921.0

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: 22760900

Country of ref document: EP

Kind code of ref document: A1