Method and device for training neural network

JP2023180242A5Pending Publication Date: 2026-06-04ROBERT BOSCH GMBH

Patent Information

Authority / Receiving Office
JP · JP
Patent Type
Applications
Current Assignee / Owner
ROBERT BOSCH GMBH
Filing Date
2023-06-07
Publication Date
2026-06-04

AI Technical Summary

Technical Problem

Existing machine learning systems, particularly neural networks, face slow development cycles and high data transmission requirements, which hinder efficient operation and adaptation in safety-critical systems.

Method used

A method involving two neural networks with different architectures is used to train a first neural network in-situ within a technical system, allowing for faster development cycles and reduced data transmission by comparing outputs and adapting parameters based on a second, pre-deployed neural network, while maintaining performance with reduced computational and memory requirements.

Benefits of technology

This approach enables faster neural network development and reduces data transmission, optimizing computational efficiency and memory usage, enabling safe and efficient operation in safety-critical systems without disrupting the system's operation.

✦ Generated by Eureka AI based on patent content.

Smart Images

  • Figure 00000000_0000_ABST
    Figure 00000000_0000_ABST
Patent Text Reader

Abstract

To provide a method, apparatus, program, and storage medium, for training a first neural network which is configured to ascertain, based on sensor signals of a technical system, an output signal characterizing a classification and / or a regression result regarding the sensor signal.SOLUTION: A method includes the steps of: during operation of a technical system (autonomous robot, or the like), receiving, by a control system 40, a sensor signal S of an environment 20; ascertaining a first output signal y1 by way of a first neural network 61 and based on the sensor signal; ascertaining a second output signal y2 by way of a second neural network 62 and based on the sensor signal, the second neural network having a different architecture from the first neural network; and training the first neural network by adjusting parameters Φ1 of the first neural network, depending on the second output signal.SELECTED DRAWING: Figure 1
Need to check novelty before this filing date? Find Prior Art

Description

[Technical Field]

[0001] The present invention relates to a method for training a neural network, a training apparatus, a computer program, and a machine-readable storage medium. [Background technology]

[0002] Advantages of the invention The development of machine learning systems, particularly neural networks, in safety-critical technical systems, necessitates rigorous testing strategies to ensure that decisions made by machine learning systems during operation do not lead to undesirable and / or dangerous consequences.

[0003] Since machine learning systems calculate their decisions based on data, known methods indicate that data must first be collected through cumbersome multiple test runs (or validation runs) of the corresponding technical system, and then this data must be transmitted, for example, from the technical system to an external computing center, where the behavior of the machine learning system can then be analyzed and / or adapted.

[0004] These methods result in the slow development cycle of neural networks mentioned above, as well as the need to transmit enormous amounts of data. [Overview of the Initiative] [Problems that the invention aims to solve]

[0005] It is desirable to at least improve two limitations, namely enabling faster development cycles for machine learning systems and reducing the amount of data transmitted during that process. [Means for solving the problem]

[0006] The advantage of a method having the features of independent claim 1 is that it allows for a faster development cycle and enables training of the neural network in a way that reduces the amount of data transmitted.

[0007] Disclosure of the invention In a first embodiment, the present invention relates to a method for training a first neural network configured to calculate an output signal that characterizes classification and / or regression results relating to a sensor signal of a technical system, a. A step of receiving sensor signals from the technical system while the technical system is in operation, b. A first neural network calculates a first output signal based on the sensor signal, c. A second neural network having a different architecture from the first neural network calculates a second output signal based on the sensor signal. d. A step of training a first neural network by adapting the parameters of the first neural network, wherein the first neural network is trained depending on a second output signal. Regarding methods including

[0008] Each step of this method can be performed by a computer, in particular; that is, this method can be a computer-implemented method.

[0009] This method can be understood, for example, as controlling the behavior of a technical system by using a second neural network during the operation of the technical system, where the second neural network calculates an output signal that characterizes the action to be performed by the technical system based on sensor signals measured by the technical system. In parallel with the second neural network, the first neural network can also calculate an output signal, and this output signal can be compared with the output signal of the second neural network.

[0010] The sensor signal can be understood as the input to a first neural network or the input to a second neural network. The calculation of an output signal based on the sensor signal by the neural network can be understood, in particular, as the neural network receiving the sensor signal as input, processing this sensor signal, and calculating the output signal output from the neural network through this processing.

[0011] The sensor signal can be understood as the signal of a sensor that is, in particular, an optical sensor such as a camera, a LiDAR sensor or a thermal camera, and a radar sensor, an ultrasonic sensor or a piezoelectric sensor. In general, this method can be used for any sensor that can supply a sensor signal to the method.

[0012] The output signals of the first neural network and / or the second neural network can, in particular, characterize the classification of sensor signals. Alternatively or additionally, the output signals of the first neural network and / or the second neural network can also characterize regression results (i.e., real values ​​or real-valued vectors) relating to sensor signals. The output signals can also characterize, for example, object detection and / or semantic segmentation.

[0013] The second neural network can be understood as a neural network that has already been released, especially for use in safety-critical technical systems, for example, by a development strategy and / or a test strategy different from the method described above. Here, based on what has been described above, the first neural network is inspectable and adaptable in terms of corresponding to or at least being similar to the behavior of the second neural network. Here, the behavior can be understood as, in particular, what output signal the neural network calculates when receiving a specific sensor signal as input.

[0014] The object of this method can be understood as adapting the first neural network without intervening in the operation of the technical system. Advantageously, in this way, in a safety-critical technical system, the first neural network can be developed and / or tested without potentially intervening in the safety-critical technical system.

[0015] For example, when the distance between the second output signal and the first output signal reaches or exceeds a predetermined threshold value, the parameters of the first neural network can be adapted. This adaptation does not necessarily have to be executed by the calculation unit of the technical system, but rather can be executed in a calculation unit external to the technical system.

[0016] From this background, in a preferred embodiment of this method, in particular, due to the difference between the architecture of the first neural network and the architecture of the second neural network, the first neural network requires less computing capacity and / or less memory for calculating the first output signal.

[0017] The inventors have confirmed that the first neural network can be optimized in terms of computational capacity and memory consumption, and that it is an advantage of this embodiment that the performance of the first neural network can be maintained with reference to the second neural network. Here, the performance can be understood as the ability of the neural network to calculate a desired output signal based on the sensor signal. This can also be understood as the normalization ability of the neural network.

[0018] This method is particularly preferred when at least method steps a. to c. are executed in an embedded computing architecture. Typical features of an embedded computing architecture are a significantly reduced computational capacity and / or a significantly reduced memory amount compared to a normal computer. For example, it is assumed that the technical system is a vehicle or a robot that is at least partially automated and controlled by a second neural network. In these cases, in the computing unit of the technical system, the first neural network can be operated in parallel with the second neural network.

[0019] The architecture of a neural network can be understood, in particular, as the model selection of the neural network. Model selection characterizes, in particular, what form the input of the neural network should have, which layers (in particular which types of layers) pass the input signal of the neural network in what order and in what layer connection state (e.g., in a feed-forward or recurrent manner), and how the output signal of the neural network is synthesized. The architecture of the neural network can be understood to have a great influence on the computational capacity and / or the required memory amount necessary for the calculation of the output signal.

[0020] In a preferred embodiment of this method, at least one layer of the first neural network corresponds to one layer of the second neural network in its parameterization, and the parameters of the layers of the first neural network may not be adapted during training.

[0021] Parameterization should be understood as referring to both the hyperparameters and weights of a layer. Therefore, this feature can be understood as at least one layer of the second neural network being identical to a layer of the first neural network. In this case, these layers are identical in terms of both their hyperparameters and their weights. This can also be understood as at least one layer being shared between the first and second neural networks. For example, it is conceivable that an entire sub-interval of several layers (also known as a sub-network of a neural network or neural network) is shared between the first and second neural networks. For example, the first neural network can be characterized as a correction of the second neural network by modifying the last several layers of the neural network, for example, the last three layers.

[0022] The advantage of these features of this method is that, because the number of layers to be adapted during training is small, the required computational capacity and / or memory is significantly reduced. Furthermore, this allows step d of this method to be executed in an embedded computing architecture because the required computational capacity and / or memory can be so drastically reduced and minimized.

[0023] Generally, step d of this method can also be performed by a computer that performs steps a to c, i.e., preferably a computer that is part of an technical system.

[0024] In another feature of this method, step d. may be performed by a computer located outside the technical system.

[0025] This can be understood as a system where, for example, the difference between a first output signal and a second output signal is transmitted to an external computer using a wireless transmission medium such as mobile radio, and the output signals are analyzed by this external computer, allowing the first neural network to adapt as needed.

[0026] In particular, the system can be configured to transfer the first output signal and / or the second output signal to a computer outside the technical system if the criteria for the first output signal and / or the second output signal are met. The criteria here can be configured to transfer the signal to the computer outside the technical system only if the first output signal and / or the second output signal deviate from each other by more than a predetermined threshold.

[0027] In particular, this method can be further configured so that a drive control signal for the technical system is calculated based on a second output signal.

[0028] In other words, the second output signal can be used as a measure to determine the action of the technical system. The drive control signal can be used, for example, to control the actuator of the technical system that triggers the action of the technical system.

[0029] Embodiments of the present invention will be described in more detail below with reference to the accompanying drawings. [Brief explanation of the drawing]

[0030] [Figure 1] This is a schematic diagram showing the structure of a control system that drives and controls an actuator. [Figure 2] This is a diagram showing a part of the control system. [Figure 3]This is a schematic diagram illustrating an embodiment of controlling a robot that is at least partially autonomous. [Figure 4] This is a schematic diagram showing an example of controlling a manufacturing system. [Figure 5] This is a schematic diagram showing the training system. [Modes for carrying out the invention]

[0031] Description of the Examples Figure 1 shows an actuator (10) in an environment (20) interacting with a control system (40). The environment (20) is preferably detected at regular time intervals by a sensor (30), such as an optical sensor like a camera sensor, but this sensor may consist of multiple sensors, such as a stereo camera. Sensor signals (S) from sensor (30) (or, in the case of multiple sensors, one sensor signal (S) from each) are transmitted to the control system (40). The control system (40) then receives a sequence of sensor signals (S). The control system (40) calculates a drive control signal (A) from the sequence of sensor signals (S), and this drive control signal (A) is transmitted to the actuator (10).

[0032] The control system (40) receives a sequence of sensor signals (S) from the sensor (30) in a receiving unit (50) as an optional means, and this receiving unit (50) converts the sequence of sensor signals (S) into a sequence of input signals (x) (alternatively, each sensor signal (S) may be received directly as an input signal (x)). The input signal (x) may be, for example, a part of the sensor signal (S) or a further processed version thereof. In other words, the input signal (x) is calculated depending on the sensor signal (S). The sequence of input signals (x) is supplied to the first neural network (61). Furthermore, the sequence of input signals (x) is also supplied to the second neural network (62).

[0033] The first neural network (61) and the second neural network (62) are preferably stored in a parameter memory (P) and parameterized by parameters (Φ1, Φ2) supplied from this parameter memory (P). The neural networks (61, 62) preferably differ in the number of neurons and / or the number of layers and / or the connection state of layers or neurons in their respective architectures. Preferably, these differences result in the first neural network (61) requiring less computational capacity and / or less memory than the second neural network (62) in calculating the output based on the input signal (x).

[0034] The second neural network (62) calculates a second output signal (y2) from the input signal (x). The second output signal (y2) is supplied to a conversion unit (80) as an optional means, which calculates a drive control signal (A) from the second output signal (y2) and supplies this drive control signal (A) to the actuator (10) in order to drive and control the actuator (10) accordingly.

[0035] The actuator (10) receives a drive control signal (A), is driven and controlled accordingly, and performs the corresponding action. In this case, the actuator (10) may include a control logic circuit (which does not necessarily have to be structurally integrated), which calculates a second control signal from the control signal (A), and then drives and controls the actuator (10) using this second control signal.

[0036] Furthermore, the first neural network (61) calculates a first output signal (y1) from an input signal (x). The first output signal (y1) and the second output signal (y2) are preferably supplied together with the input signal (x) to a comparison unit (70). The comparison unit (70) can preferably be configured to calculate the difference between the first output signal (y1) and the second output signal (y2). This difference can be calculated, for example, by a metric, such as Euclidean distance, or by a similarity measure such as cosine distance. The calculated difference can be transmitted to another computer using an optional means of transmission (o), for example, by wireless transmission (o) based on 5G or 6G, in which case the difference can be examined on the other computer. For example, a typical difference value over the operating time of the control system can be examined, thereby providing information on whether the first neural network (61) calculated the same or at least similar output signal compared to the second neural network (62). Preferably, in addition to the two output signals (y1, y2), an input signal (x) is transmitted together as part of the transmission (o). Then, the other computer can, for example, train the first neural network (61), or, if the first neural network (61) has already been trained, it can be further trained. During training, a second output signal (y2) can be selected as the desired output signal, and the first neural network (61) can be trained so that an output signal equivalent to or as similar as possible to the second output signal (y2) is calculated with respect to the input signal (x). Preferably, the transmission (o) can be performed only if the difference exceeds a predetermined threshold.

[0037] However, without transmission (o), the comparison unit (70) can adapt the first neural network (61) based on the difference and the input signal (x), for example, by using gradient descent.

[0038] The difference can preferably characterize the loss value of a loss function, where the loss function calculates the loss value based on a first output signal (y1) and a second output signal (y2). The loss function may be, for example, a squared Euclidean loss function (or mean squared error loss).

[0039] In other embodiments, the control system (40) includes a sensor (30). In yet another embodiment, the control system (40) also includes an actuator (10) either alternatively or additionally.

[0040] In a further preferred embodiment, the control system (40) includes at least one processor (45) and at least one machine-readable storage medium (46) which stores commands for causing the control system (40) to perform the method according to the present invention when executed on the at least one processor (45).

[0041] In an alternative embodiment, a display unit (10a) is provided instead of or in addition to the actuator (10).

[0042] Figure 2 shows a portion of the control system for a first neural network (61) and a second neural network (62). Each network contains neurons (N), and based on these neurons, each network calculates its respective output signals (y1, y2) for an input signal (x). The neurons (N) of the neural networks (61, 62) are preferably arranged within layers (611, 612, 613, 614, 621, 622, 623, 624, 625), respectively. The second neural network (62) contains more neurals and more connections between neurons (N) in order to calculate a second output signal (y2), and therefore requires more memory and computational capacity compared to the first neural network (61), which has fewer neurons (N) and fewer connections between neurons.

[0043] Preferably, in this embodiment, the first neural network (61) can also calculate the first output signal (y1) based on the output of the layer (622) of the second neural network (62). This is feasible in particular when parts of the architectures of the first neural network (61) and the second neural network (62) are equivalent, for example, when they include equivalent parameterized layers and identical parameter values. In this embodiment, this applies to the first two layers (611, 612) of the first neural network (611), or to the first two layers (621, 622) of the second neural network. Preferably, the output of the second layer (622) of the second neural network (622) can be directly used as input for the third layer (613) of the first neural network (611). This is indicated in the figure by the abbreviation (SC). In this case, the first neural network (61) does not need to derive the input signal (x) through the first two layers (611, 612). This is because, in this embodiment, the first two layers (611, 612, 621, 622) are identical, and the output calculated in the second layer (612) corresponds to the output of the second layer (622) of the second neural network (62). In this way, computational operations that would otherwise yield the same result can be omitted.

[0044] The so-called "skipped" layers (611,612) in the first neural network (61) are not considered, particularly during the training of the first neural network (61), and therefore their parameters may not be adapted. Alternatively, the gradients from the first two layers (621,622) of the second neural network (62) can be copied for training the first two layers (611,612) of the first neural network (61). Such training characteristics can be applied to other architectures and are not limited to the specific embodiment shown in Figure 2.

[0045] Figure 3 shows how a control system (40) can be used to control a robot that is at least partially autonomous, in this case an automobile (100) that is at least partially autonomous.

[0046] The sensor (30) may be, for example, a video sensor preferably located inside an automobile (100).

[0047] The second neural network (62) is configured to identify detectable objects in the input image (x), that is, to perform object detection.

[0048] Preferably, the actuators (10) located in the automobile (100) may be, for example, the brakes, drive mechanism, or steering part of the automobile (100). In this case, especially when the object is an object of a predetermined class, such as a pedestrian, a drive control signal (A) can be calculated to drive and control one or more actuators (10) so as to prevent a collision between the automobile (100) and the object identified, for example, by a second neural network (62).

[0049] Alternatively or additionally, the display unit (10a) can be driven and controlled by a drive control signal (A) to display, for example, an identified object. Furthermore, if it is determined that a collision between the automobile (100) and one of the identified objects is imminent, the display unit (10a) can be driven and controlled by the drive control signal (A) to output an optical or acoustic warning signal. Warnings using warning signals can also be provided using tactile warning signals, for example, by vibration of the steering wheel of the automobile (100).

[0050] Alternatively, the at least partially autonomous robot may be another mobile robot (not shown), for example, a robot that moves by flying, swimming, submerging, or walking. The mobile robot may be, for example, an at least partially autonomous lawnmower or an at least partially autonomous cleaning robot. In such cases as well, a drive control signal (A) can be calculated to drive and control the drive mechanism and / or steering part of the mobile robot so as to prevent collisions between the at least partially autonomous robot and an object identified, for example, by a second neural network (62).

[0051] Figure 4 shows an embodiment in which a control system (40) is used for driving control of a manufacturing machine (11) of a manufacturing system (200) by driving control of an actuator (10) that operates the manufacturing machine (11). The manufacturing machine (11) may be, for example, a machine that punches, saws, punctures, and / or cuts. It is also conceivable that the manufacturing machine (11) is configured to grip the manufactured products (12a, 12b) using a gripper.

[0052] In this case, the sensor (30) may be, for example, a video sensor that detects the transport surface of the conveyor belt (13) on which the manufactured products (12a, 12b) can be placed. The second neural network (62) can be configured, for example, to calculate the position of the manufactured products (12a, 12b) on the conveyor belt. In this case, the actuator (10) that operates the manufacturing machine (11) can be driven and controlled depending on the calculated position of the manufactured products (12a, 12b). For example, the actuator (10) can be driven and controlled so that punching, sawing, drilling, and / or cutting of the manufactured products (12a, 12b) are performed at predetermined locations on the manufactured products (12a, 12b).

[0053] Furthermore, it is conceivable that the second neural network (62) be configured to calculate other characteristics in place of or in addition to the location of the manufactured products (12a, 12b). In particular, it is conceivable that the second neural network (62) determines whether the manufactured products (12a, 12b) are defective and / or damaged. In this case, the manufacturing machine (11) can drive and control the actuator (10) to sort and remove the defective and / or damaged manufactured products (12a, 12b).

[0054] Figure 5 shows an example of a training system (140) for training a first neural network (61) using a training dataset (T). The training dataset (T) consists of multiple input signals (x) used to train the first neural network (61). i ) includes, where the training dataset (T) further includes each input signal (x i ) and this input signal (x i ) corresponds to the desired output signal (t i ) includes.

[0055] During training, the training data unit (150) accesses a database (St2) implemented on a computer. Each database (St2) contains a transmission (o) transmitted from the control system (40). Based on this transmission (o), the training data unit (150) retrieves the training dataset (T) and input signals (x i ) for the desired output signal (t i A second output signal is supplied as ( ). Preferably, the training dataset (T) includes all transmissions (o) transmitted by the control system (40).

[0056] The training data unit (150) extracts at least one input signal (x) from the training dataset (T). i ) and this input signal (x i ) corresponds to the desired output signal (ti ) and are preferably calculated randomly, and the input signal (x i ) is transmitted to the first neural network (61). The first neural network (61) calculates an output signal (y i ) based on the input signal (x i ).

[0057] The desired output signal (t i ) and the calculated output signal (y i ) are transmitted to the correction unit (180).

[0058] Next, based on the desired output signal (t i ) and the calculated output signal (y i ), a new parameter (Φ’) for the first neural network (61) is determined by the correction unit (180). For this purpose, the correction unit (180) compares the desired output signal (t i ) and the calculated output signal (y i ) using a loss function (English: Loss Function). The loss function calculates a first loss value that characterizes how much the calculated output signal (y i ) deviates from the desired output signal (t i ). As the loss function, in this embodiment, a negative log-likelihood function (English: negative log-likehood function) is selected. In an alternative embodiment, other loss functions can also be assumed.

[0059] The calculated output signal (y i ) and the desired output signal (t i ) each include a plurality of sub-signals in, for example, the form of a tensor, where it is assumed that each one sub-signal of the desired output signal (t i ) corresponds to the sub-signal of the calculated output signal (y i ). For example, the first neural network (61) is configured for object detection, and the first sub-signal is the input signal (x iThe probability of an object appearing for a portion of the object is characterized, and the second lower-level signal is assumed to characterize the precise location of the object. The calculated output signal (y i ) and the desired output signal (t i If the signal includes multiple corresponding downlinks, preferably a second loss value is calculated for each corresponding downlink using an appropriate loss function, and the calculated second loss value is appropriately combined with the first loss value, for example, by a weighted sum.

[0060] The correction unit (180) calculates a new parameter (Φ') based on the first loss value. In this embodiment, this is done by gradient descent, preferably stochastic gradient descent, Adam, or AdamW. In other embodiments, training may be based on an evolutionary algorithm or second-order optimization.

[0061] The newly calculated parameter (Φ') is stored in the model parameter memory (St1). Preferably, the newly calculated parameter (Φ') is supplied to the first neural network (61) as parameter (Φ1).

[0062] In other preferred embodiments, the training described is repeated over a predetermined number of iteration steps, or until the first loss value falls below a predetermined threshold. Alternatively or additionally, training may be terminated if the average first loss value on the test dataset or validation dataset falls below a predetermined threshold. In at least one of the multiple iterations, a new parameter (Φ') determined in a previous iteration is used as the parameter (Φ1) of the first neural network (61).

[0063] Furthermore, the training system (140) may include at least one processor (145) and at least one machine-readable storage medium (146) which contains instructions that, when executed by the processor (145), cause the training system (140) to perform a training method according to one aspect of the present invention.

[0064] The training system (140) is preferably physically separated from the control system (40). The two systems include, for example, separate computers for executing their respective step sequences. The training system (140) and the control system (40) can communicate with each other via a network connection, such as a LAN or the Internet. Mobile radio and / or wireless transmission lines are also possible in this method.

[0065] The term "computer" includes any device that processes configurable computational rules. These computational rules may exist in the form of software, hardware, or a combination of software and hardware.

[0066] Generally, the plural form can be understood as an index, meaning that each element among the multiple elements is assigned a unique index, preferably a consecutive integer corresponding to the elements included in the plural form. Preferably, if the plural form contains N elements, where N is the number of elements, each element is assigned an integer from 1 to N.

Claims

1. A method for training a first neural network (61) configured to calculate an output signal characterizing classification and / or regression results relating to a sensor signal (S) of a technical system (100, 200), a. A step of receiving a sensor signal (S) of the technical system (100, 200) while the technical system (100, 200) is in operation, b. The first neural network (61) generates a first output signal (y) based on the sensor signal (S). 1 The steps to calculate ) and c. A second neural network (62) having a different architecture from the first neural network (61) generates a second output signal (y) based on the sensor signal (S). 2 The steps to calculate ) and d. The parameters of the first neural network (61) (Φ 1 A step of training the first neural network (61) by adapting the second output signal (y 2 The steps are trained depending on the following: A method that includes this.

2. The first output signal (y 1 ) and the second output signal (y 2 The method according to claim 1, wherein the adaptation is calculated based on the difference between the above and the above.

3. Due to the difference between the architecture of the first neural network (61) and the architecture of the second neural network (62), the first neural network (61) produces the first output signal (y 1 The method according to claim 1, wherein the calculation of ) requires less computing capacity and / or less memory.

4. The method according to claim 1, wherein at least one layer of the first neural network (61) corresponds to a layer of the second neural network (62) in its parameterization, and the parameters of that layer of the first neural network (61) are not adapted during training.

5. The method according to claim 1, wherein steps b. and c. are performed by an embedded computing unit (45) of the technical system (100, 200).

6. The method according to claim 5, wherein step d is performed by a computer located outside the technical system (100, 200).

7. The second output signal (y 2 The method according to claim 1, wherein the drive control signal (A) of the technical system (100, 200) is calculated based on ).

8. The method according to claim 1, wherein the sensor signal (S) is supplied by a camera sensor (30) and characterizes an image.

9. The method according to claim 1, wherein the technical system (100) is at least partially automated, a vehicle (100) or a robot (200).

10. A training device (140) configured to carry out the method described in any one of claims 1 to 9.

11. A computer program configured such that when the computer program is executed by a processor (45, 145), the method described in any one of claims 1 to 9 is performed.

12. A machine-readable storage medium (46, 146) storing the computer program described in claim 11.