Apparatus and method for training a normalization flow using self-normalizing gradients

CN114358276BActive Publication Date: 2026-08-18ROBERT BOSCH GMBH
View PDF 2 Cites 0 Cited by

Patent Information

Application Number
CN202111144023.6
Authority / Receiving Office
CN · China
Patent Type
Patents(China)
Current Assignee / Owner
Priority Date
2020-09-29
Filing Date
2021-09-28
Publication Date
2026-08-18
Estimated Expiration
2041-09-28

AI Technical Summary

Technical Problem

[0013]可逆带来如下缺点:训练标准化流需要对包含权重的标准化的每一层的权重矩阵求逆,其中每个矩阵通常相对较大

✦ Generated by Eureka AI based on patent content.

Smart Images

  • Figure CN114358276B_ABST
    Figure CN114358276B_ABST
Patent Text Reader

Abstract

Apparatus and method for training a normalizing flow using self-normalized gradients. A computer-implemented method for training a normalizing flow, wherein the normalizing flow is configured to determine a first output signal characterizing a likelihood or log-likelihood of an input signal, wherein the normalizing flow comprises at least one first layer, wherein training the normalizing flow comprises the following steps: • determining at least one training input signal; • determining, for each training input signal, a training output signal by means of the normalizing flow; • determining a first loss value, wherein the first loss value is based on a likelihood or log-likelihood of the at least one determined training output signal with respect to a predefined probability distribution; • determining an approximation of a gradient of the first loss value with respect to trainable parameters of the first layer, wherein the gradient depends on an inverse of a matrix of the trainable parameters, and the determination of the approximation of the gradient is achieved by optimizing an approximation of the inverse; • updating the trainable parameters of the first layer based on the approximation of the gradient.
Need to check novelty before this filing date? Find Prior Art

Description

Technical Field

[0001] The present invention relates to methods for training standardized streams, methods for using standardized streams, classifiers, training systems, computer programs, and machine-readable storage media. Existing technology

[0002] Diederik P. Kingma and Prafulla Dhariwal’s “Glow: Generative Flow with Invertible 1x1 Convolutions” (https: / / arxiv.org / abs / 1807.03039v2, July 10, 2018) discloses a method for determining the log-likelihood of data by means of normalized flow.

[0003] Advantages of the present invention

[0004] Many modern devices are equipped with technologies for sensing the internal state of the device and / or the environmental state of the device. This typically results in the generation of a wealth of data from the device.

[0005] Finding a way to automatically filter this data raises several technical questions. One of these questions is finding a method to determine whether, or to what extent, given data characterizing an internal or environmental state is important.

[0006] One way to determine the importance of data is to determine the data's log-likelihood relative to, for example, some previously recorded data. In other words, the importance of data can be measured by determining how likely the data is to be observed given previously recorded data. For example, a dataset of the internal states of a machine during normal operation (e.g., drawn current, heat, pressure) can be recorded. If, during further operation of the machine, an internal state with a low log-likelihood relative to the dataset is sensed, this could indicate a malfunction or other abnormal behavior of the machine.

[0007] Determining the log-likelihood of a classifier is also crucial. For example, a Bayesian classifier determines the log-likelihood of data based on the following formula: x class y probability

[0008] ,

[0009] in It is the prior probability of this class. yes x The data log-likelihood, and The class-conditional log-likelihood is the likelihood of observing a particular class of data. As can be seen from the formula, a Bayesian classifier needs to determine two likelihood values: the class-conditional likelihood and the data log-likelihood. The classification accuracy of a Bayesian classifier depends critically on its ability to correctly determine these two likelihood values.

[0010] Therefore, determining the accurate likelihood or log-likelihood of data is an important technical problem in different technical fields and for different technical tasks.

[0011] Especially when it is necessary to determine the likelihood of high-dimensional data (such as images or audio signals), normalization streams have shown themselves to be best suited for likelihood determination. Normalization streams can be understood as neural networks from the field of machine learning. Normalization streams can map a first distribution of data to a second distribution, where the second distribution can be chosen by the user. The advantage of normalization streams is that the second distribution can be chosen almost arbitrarily. It can be chosen in particular to allow for the efficient determination of the likelihood of the second distribution in a closed-form manner. Based on this likelihood, the likelihood of the data relative to the first distribution can be easily determined. Therefore, even if the first distribution is difficult and / or cannot be evaluated in a closed-form manner, the likelihood of the data can be easily and efficiently computed. Instead of likelihood, normalization streams can also determine log-likelihood.

[0012] Normalized flows are reversible, meaning that normalized flows can map given data to a latent representation and can also map back from a latent representation to the data.

[0013] Invertibility introduces the following drawbacks: Training a normalized flow requires inverting the weight matrix of each layer of normalization, where each matrix is ​​typically relatively large. Since the computational complexity of matrix inversion is usually cubic, a common approach in normalized flows is to construct the corresponding weight matrices so that they are triangular, as this reduces the computational complexity of matrix inversion to quadratic. However, this design of the normalized flow—constraining the weight matrices to be triangular—severely limits the normalized flow's ability to learn a suitable mapping from the first distribution to the second distribution, as it severely restricts the degrees of freedom of the mapping.

[0014] Therefore, it is desirable to obtain a normalized flow that is not limited to including a triangular weight matrix, where the computational complexity of training the normalized flow is quadratic. In the following text, a normalized flow not limited to a triangular weight matrix will be referred to as an unrestricted normalized flow.

[0015] The method with the features described herein allows for the training of an unrestricted normalized stream, where the computational complexity of training the normalized stream is quadratic. This is advantageously achieved by efficiently approximating the matrix inversion required during normalized stream training.

[0016] For common normalized flows, training the normalized flow in this way eliminates the need to constrain it relative to the weight layers. This results in a more powerful mapping function and thus improves the normalized flow's ability to accurately determine the likelihood or log-likelihood. The ability of the normalized flow to accurately determine the likelihood or log-likelihood can also be referred to as the performance of the normalized flow in the following text.

[0017] Compared to simply training an unrestricted normalized stream using standard gradient descent, training the unrestricted normalized stream using the method described in this paper reduces the computational complexity from cubic to quadratic. Given the same amount of training time, this reduction in computational complexity allows the unrestricted normalized stream to be trained on more training data, and therefore to extract more information during training. This, in turn, advantageously leads to improved performance of the unrestricted normalized stream. Summary of the Invention

[0018] In a first aspect, the present invention relates to a computer-implemented method for training a normalized stream, wherein the normalized stream is configured to determine a first output signal characterizing the likelihood or log-likelihood of an input signal, wherein the normalized stream includes at least one first layer, wherein the first layer includes trainable parameters, and the layer input to the first layer is based on the input signal, and the first output signal is based on the layer output of the first layer, wherein training the normalized stream includes the following steps:

[0019] ● Identify at least one training input signal;

[0020] ● Determine the training output signal for each training input signal using a standardized flow;

[0021] ● Determine a first loss value, wherein the first loss value is based on the likelihood or log-likelihood of the at least one determined training output signal relative to a predefined probability distribution;

[0022] ● Determine an approximation of the gradient of the trainable parameters of the first layer with respect to the first loss value, where the gradient depends on the inverse of the matrix of trainable parameters, and the approximation of the gradient is determined by optimizing the approximation of the inverse.

[0023] ● Approximate update of the trainable parameters of the first layer based on gradient.

[0024] Normalized flow can be understood as a neural network from the field of machine learning. Normalized flow maps a first distribution of data to a second distribution that the user can choose. Preferably, a multivariate normal distribution with the identity matrix as the covariance matrix is ​​chosen as the second distribution.

[0025] A standardized flow can include multiple layers, where the information flow defines the order of the layers. If the first layer provides output to the second layer (i.e., layer output), then the first layer can be considered to precede the second layer, and the second layer to follow the first layer.

[0026] Input signals can be understood as data provided to the normalized stream. Input signals can be used as inputs to layers in the normalized stream, i.e., layer inputs. A layer that receives input signals as layer inputs can also be called an input layer of the normalized stream. Similarly, the layer outputs of layers can be used as output signals for the normalized stream. Such layers can be called output layers of the normalized stream. If a layer in the normalized stream is neither an input layer nor an output layer, it can be understood as a hidden layer.

[0027] The output signal determined from the normalized stream of the input signal can also be understood as a classification representing the importance of the input signal. If the likelihood or log-likelihood represented by the output signal is high, the input signal can be understood as "unimportant" relative to the data used to train the normalized stream, i.e., the input signal is quite similar to at least one training input signal used to train the normalized stream. Similarly, if the likelihood or log-likelihood represented by the output signal is low, i.e., the input signal is quite different from the training input signal used to train the normalized stream, the input signal can be understood as "important". Determining whether the likelihood or log-likelihood is low or high can be achieved by comparing the likelihood or log-likelihood with a predefined threshold. For example, if the likelihood or log-likelihood is below the predefined threshold, the input signal can be classified as "important". If the likelihood or log-likelihood is equal to or higher than the predefined threshold, the input signal can be classified as "unimportant".

[0028] The first layer can be understood as a weight layer. A weight layer can be understood as containing multiple weights, where the layer output is determined based on these weights, and the weights can be adapted during training of the normalized flow. Typical forms of weight layers are fully connected layers or convolutional layers.

[0029] The input signal may include at least one image, particularly an image recorded by a sensor such as a camera sensor, LiDAR sensor, radar sensor, ultrasonic sensor, or thermal camera. The image may also be artificially generated, for example, by means of computer-simulated rendering, rendering of a virtual scene created in a computer, a machine learning system for generating images, or by digitally drawing images. Alternatively or additionally, the input signal may include at least one audio signal, for example, recorded from a microphone. The audio signal may also be artificially generated, for example, from computer simulation, a machine learning system for generating audio signals, or by digitally synthesizing audio signals. The audio signal may, for example, represent a speech recording. Alternatively, the audio signal may represent a recording of an audio event, such as an alarm, siren, or other auditory notification signal.

[0030] The training input signal can be determined by selecting an input signal from a computer-implemented database of input signals. Alternatively, the input signal can be determined from the sensor, preferably during the operation of the sensor or during the operation of the device including the sensor.

[0031] Then, the training output signal can be determined by forwarding the training input signal through the normalization stream, i.e., through the normalization stream layer.

[0032] The training output signal can be in vector form. If it is in tensor form, it can be reshaped into a vector.

[0033] Preferably, the first loss value is determined by determining the negative log-likelihood of the output signal relative to the second probability distribution. Updating the trainable parameters of the first layer can then be achieved using a gradient descent algorithm.

[0034] The normalized stream can also be configured to accept multiple input signals, i.e. a batch of input signals, wherein, for each input signal from the multiple input signals, the normalized stream determines a corresponding output signal characterizing the likelihood or log-likelihood of the corresponding input signal.

[0035] Similarly, the normalized stream can preferably be trained using multiple training input signals. Preferably, a training output signal is determined for each of the multiple training input signals, and for each training output signal, a likelihood or log-likelihood of the corresponding output signal relative to a predefined distribution is determined. Based on the determined multiple likelihoods or log-likelihoods, a first loss value can then preferably be determined by averaging or summing the likelihoods or log-likelihoods.

[0036] If a single training input signal is used for training, the first loss value can be the likelihood or log-likelihood determined by the output signal of the normalized stream for the single training input signal.

[0037] It is also conceivable to optimize the approximation of the inverse based on at least one training input signal.

[0038] The advantage of this approach is that the inverse can be determined during training based on a finite number of training input signals. This significantly speeds up training. Given equal resources, i.e., the same amount of time, this method thus increases the performance of the normalized stream because it can be trained with more training input signals.

[0039] Alternatively, one can imagine the first layer as a fully connected layer, and determine the layer output according to the following formula.

[0040] ,

[0041] in It is the output of the first layer. It is a reversible activation function of the first layer, and It is a matrix that includes the trainable parameters of the first layer. and layer input The result of matrix multiplication.

[0042] The advantage of this method is that fully connected layers can be used in normalized flows, which allows for more degrees of freedom in implementing the mapping represented by the normalized flow. As mentioned above, this leads to improved performance of the normalized flow.

[0043] One can further imagine that the matrix The gradient can be approximated using the following formula.

[0044] ,

[0045] in It is the partial derivative of the first loss value with respect to the result of matrix multiplication, with superscript... T Indicate the transpose of a matrix or vector. It is the training input signal, and It is a matrix The inverse approximation.

[0046] This can be understood as training input signal The likelihood or log-likelihood, for example, the standard formula for likelihood or log-likelihood used in training normalization streams.

[0047] This approximation of the gradient is advantageous because approximating the inverse of the weight matrix reduces the computational complexity of the training method. As mentioned above, this leads to improved performance of the normalized flow.

[0048] It is also conceivable to determine based on the following second loss function.

[0049] ,

[0050] in It is a norm. Specifically, the norm can be the squared Euclidean distance. However, other norms are also possible, such as the Euclidean norm, the Manhattan norm, or another... p Norm.

[0051] If a single training input signal is used to train the normalized stream, then the determination can be made by minimizing the second loss function. If a batch of training input signals is used for training, the following can be preferably used to determine... For each training input signal in this batch, determine For each specific Determine the output of the second loss function and minimize the output relative to... The average or sum.

[0052] Determining the gradient in this way is advantageous because it does not require a matrix. The inverse of.

[0053] Additionally, the inventors surprisingly discovered that by using an iterative optimization algorithm based on a second loss function, optimization... , can find the matrix A sufficient approximation of the inverse, where only one optimization step is performed to determine it. For example, the gradient descent algorithm, which uses only a single step of gradient descent, can be used to determine... .

[0054] The advantage of adapting to the trainable parameters of the first layer in this way is that the time required to determine the gradient approximation is greatly reduced, which in turn leads to accelerated training and ensures that... It doesn't have to be a triangle. As mentioned above, the accelerated training time leads to improved performance of the normalized flow.

[0055] Alternatively, you can imagine the first layer as a convolutional layer, and determine the layer output according to the following formula.

[0056] ,

[0057] in It is the output of the first layer. It is the reversible activation function of the first layer. It is a tensor and layer input The result of discrete convolution, where the tensor Including the trainable parameters of the first layer, and Indicates discrete convolution operation.

[0058] This is advantageous because convolutional layers improve the performance of the normalized stream of input signals, including images.

[0059] We can further imagine that the gradient of the first loss value with respect to the trainable parameters of the first layer can then be determined according to the following formula.

[0060] ,

[0061] ,

[0062] in It is the partial derivative of the first loss value with respect to the discrete convolution result. It is the training input signal. Indicates element-wise multiplication. It is a function that takes a first tensor as input and returns a second tensor with the same shape as the first tensor, where the second tensor is completely filled, and It is a tensor that characterizes the approximation of the third tensor, where the third tensor is compared with... Convolution generation ,and It is a function that determines the tensor of the transpose convolution.

[0063] This is advantageous because approximation reduces the computational complexity of the training method. As mentioned above, this leads to improved performance of the normalized flow.

[0064] Layer input Preferably, it is given in the form of a three-dimensional tensor, where the first dimension corresponds to the number of channels in the layer input, and the second and third dimensions correspond to the height and width of the layer input, respectively. If the first layer is a normalized stream input layer, the layer input can be, for example, an RGB image, where the number of channels will therefore be three.

[0065] tensor This can be understood as the kernel tensor commonly used in convolutional neural networks. Preferably, the kernel tensor is a four-dimensional tensor, where the first dimension corresponds to the number of filters used in the convolutional layer (i.e., the first layer), and the second dimension corresponds to the layer input. The number of input channels, and the third and fourth dimensions of the kernel tensor correspond to the height and width of the kernel, respectively.

[0066] The result of convolving the layer input with the kernel's tensor Preferably, it is a three-dimensional tensor of the feature maps, where the first dimension corresponds to the number of feature maps (there are as many as the number of kernels), and the second and third dimensions correspond to the height and width of the result, respectively.

[0067] The third tensor can be understood as allowing data based on the kernel tensor. Inverse convolution, i.e. ,in It is the third tensor.

[0068] tensor It is an approximation of the third tensor, which can preferably be obtained based on the following second loss function.

[0069] ,

[0070] in It is a norm.

[0071] Specifically, the norm can be the squared Euclidean distance. However, other norms are also possible, such as the Euclidean norm, the Manhattan norm, or another... p Norm.

[0072] If a single training input signal is used to train the normalized stream, then it can be achieved by minimizing the difference between the normalized stream and the normalized stream. The second loss function determines If a batch of training input signals is used for training, the following can be preferably used to determine... For each training input signal in this batch, determine For each specific Determine the output of the second loss function and minimize the output relative to... The average or sum.

[0073] Determining the gradient in this way is advantageous because it does not require relying on tensors. The matrix inversion. To determine the gradient of the loss value with respect to the trainable parameters of the first layer, convolution can also be expressed as matrix multiplication.

[0074] ,

[0075] in It is a function that flattens a tensor. It is matrix multiplication. It is the kernel tensor The kernel transformation is a function that converts the matrix into a Toeplitz matrix, and yes The inverse function of a function.

[0076] Using this symbol, obtain the included item. gradient That is, based on kernel tensor Inverting a matrix. Determining and using tensors as shown above. Therefore, the need for matrix inversion is eliminated. This, in turn, reduces training time, resulting in the advantages discussed above.

[0077] The result corresponds to the implementation of transposed convolution. The kernel tensor, and by exchanging tensors The input and output channels, as well as the filter height and filter width (space) dimensions of the mirror core, are explicitly given.

[0078] Additionally, the inventors surprisingly discovered that by using an iterative optimization algorithm based on a second loss function, optimization... Sufficient tensors can be found Only one optimization step is performed to determine For example, the gradient descent algorithm, which uses only a single step of gradient descent, can be used to determine... .

[0079] Regardless of the type of the first layer, the activation function can be defined as a function of the scalar input, where, in order to apply the activation function to a tensor, the function is applied individually to each element of the tensor. Activation function Leaky-ReLU is a preferred option.

[0080] It is conceivable that the device could be operated based on the output signal of a standardized stream.

[0081] This is advantageous because the improved performance of standardized flows directly leads to better device operation.

[0082] For example, one can imagine a normalized flow included in a classifier, wherein the classifier is configured to determine a second output signal that characterizes the classification of an input signal, wherein the second output signal is determined based on a first output signal.

[0083] For example, a classifier could be an anomaly detector configured to classify whether an input signal represents anomalous data relative to, for example, known normal data. It can be envisioned that the anomaly detector is configured to compare an output signal obtained for a given input signal with a predefined threshold. This can be understood as determining whether the likelihood or log-likelihood obtained from the normalized stream indicates that the input signal is unlikely relative to the training data of the normalized stream.

[0084] Alternatively, the classifier can also be a multi-class classifier, preferably a Bayesian classifier, which determines the input signal according to the following formula. x class y probability

[0085] ,

[0086] in It is the prior probability of this class. yes x The data log-likelihood, and Class conditional log-likelihood is the likelihood of observing data of a given class. Besides data log-likelihood, class conditional log-likelihood can also be obtained from standardized streams. For example, for each class to be classified, a standardized stream can be trained using only data from that class. During inference, each standardized stream can then predict the log-likelihood representing the class to which the corresponding standardized stream belongs.

[0087] The classifier's second output signal can characterize the classification of the input signal to at least one class. Alternatively or additionally, the second output signal can also characterize the object classification and corresponding location in the input signal. For example, the input signal may include an image, and the second output signal can characterize the object classification and location in the image. Alternatively or additionally, the second output signal can also characterize multiple classifications of the input signal, such as semantic segmentation.

[0088] Regardless of the exact form of the classifier that includes the normalized flow, the improved performance of the normalized flow advantageously leads to an increase in the classification accuracy of the classifier.

[0089] When used as part of a classifier, the training normalization flow can be understood as at least a part of training the classifier; that is, steps included in training the classifier can also be included in training the classifier.

[0090] Alternatively or additionally, it can be imagined that the input signal characterizes the internal state of the device and / or the operating state of the device and / or the environmental state of the device, wherein a first output signal that makes the normalized stream available to the user of the device by means of a display device.

[0091] The advantage of the proposed method is that it can provide users with insights into the internal workings of the device during guided human-computer interaction.

[0092] For example, the device could be a robot, a manufacturing machine, or a vehicle, at least partially automated, wherein the partially automated machine operates at least partially automatically based on input signals from sensors. The input signals can also be provided to a normalized flow. The output signals can then be displayed in a suitable manner on a monitor, for example, for the machine's operator. If the normalized flow determines a low log-likelihood of the input signals, this indicates that the input signals from the sensors include data that might be interpreted as infrequent, unlikely, or even anomalous. It is conceivable that basing the automated operation of the machine on such input signals could lead to undesirable or even unsafe behavior, as infrequent input signals might not be expected to be processed correctly by the machine. Based on the displayed log-likelihood, the operator can therefore take over manual control of the machine to avoid potentially unwanted and / or unsafe behavior. The normalized flow will thus enable the user to gain direct insight into the machine's internal workings, namely the significance of the input signals upon which the machine's automated decisions are based. Attached Figure Description

[0093] Embodiments of the invention will be discussed in more detail with reference to the following figures. The figures illustrate:

[0094] Figure 1 It is a training system used to train standardized streams.

[0095] Figure 2 It is a standardized control system that includes the control of actuators in its environment;

[0096] Figure 3 It is a control system that controls at least partially autonomous robots;

[0097] Figure 4 It is a control system for controlling manufacturing machines;

[0098] Figure 5 It is a control system for controlling automated personal assistants;

[0099] Figure 6 It is a control system that controls access control systems;

[0100] Figure 7 It is a control system for the control and monitoring system;

[0101] Figure 8 It is the control system for the imaging system. Detailed Implementation

[0102] Figure 1 An embodiment of a training system (140) is shown, which is used to train an unrestricted normalized stream (60) using a training dataset (T). The training dataset (T) includes multiple training input signals (xi, xi, xi) for training the classifier (60). i An unrestricted normalized flow can contain multiple fully connected layers and / or multiple convolutional layers. The normalized flow is further parameterized by multiple parameters, including the weights of the fully connected layers and / or the weights of the convolutional layers.

[0103] For training purposes, the training data unit (150) accesses a computer-implemented database (St2), which provides a training dataset (T). The training data unit (150) preferably randomly determines at least one training input signal (x) from the training dataset (T). i ), and the training input signal (x) i The signal is transmitted to the classifier normalization stream (60). The normalization stream (60) is based on the input signal (x). i Determine the output signal ( y i The determined output signal (y) i The output signal (y) is preferably given in vector form. In another embodiment, the output signal (y) is... i The output signal can also be given in tensor form. In these additional embodiments, the determined output signal can be flattened to obtain the determined output signal in vector form.

[0104] Determined output signal (y) i) is transmitted to the modification unit (180).

[0105] Based on the determined output signal ( y i ), modify unit (180) and then determine the new parameters of classifier (60) ( For this purpose, the modification unit (180) determines the negative log-likelihood value of the determined output signal (yi) relative to the second probability distribution. In this embodiment, a multivariate standard normal distribution is selected. In another embodiment, other probability distributions may be selected as the second probability distribution.

[0106] Modify unit (180) to determine new parameters based on log-likelihood values. In the given embodiment, this is accomplished using a gradient descent method—preferably stochastic gradient descent, Adam, or AdamW. Gradient descent requires parameters ( The gradient relative to the negative log-likelihood value is used to determine the new parameters. To determine the gradient, the negative log-likelihood value is backpropagated through the normalized flow to determine the gradient of the parameters of the normalized flow layer with respect to the negative log-likelihood value.

[0107] If the gradient propagates through a fully connected layer, the gradient of the weights included in the fully connected layer is determined according to the following formula.

[0108] ,

[0109] in It is the partial derivative of the first loss value with respect to the matrix multiplication result according to the following formula.

[0110] ,

[0111] in It is the output of the fully connected layer. It is a reversible activation function of a fully connected layer, and It is a matrix that includes the weights of the fully connected layers. and the layer input of fully connected layers The result of matrix multiplication. Furthermore, the superscript... T Indicate the transpose of a matrix or vector. It is the training input signal, and By minimizing relative to The matrix determined by the following second loss function

[0112] .

[0113] Preferably, minimizing the second loss function is achieved by performing a single-step gradient descent on the second loss function. In other words, the single-step gradient descent on the first loss function can preferably include a single-step gradient descent on each fully connected layer of the second loss function.

[0114] If the gradient propagates through a convolutional layer of normalized flow, the gradient of the weights included in the convolutional layer is determined according to the following formula.

[0115] ,

[0116] ,

[0117] in It is the gradient of the negative log-likelihood value with respect to the discrete convolution result.

[0118] ,

[0119] in It is the output of the convolutional layer. It is the reversible activation function of the convolutional layer. It is a tensor that includes the weights of the convolutional layers. and layer input The result of discrete convolution, and This indicates a discrete convolution operation. Furthermore... It is the training input signal. Indicates element-wise multiplication. It is a function that takes a first tensor as input and returns a second tensor with the same shape as the first tensor, where the second tensor is completely filled. It is a function that determines the tensor of the transpose convolution, and It is possible to minimize relative to The tensor determined by the following second loss function

[0120] .

[0121] Preferably, minimizing the second loss function is achieved by performing a single-step gradient descent on the second loss function. In other words, the single-step gradient descent on the first loss function can preferably include a single-step gradient descent on each fully connected layer of the second loss function.

[0122] In another preferred embodiment, during each step of gradient descent on the first loss function, multiple training input signals (x) are used. i Training standardization flow.

[0123] Preferably, gradient descent can iteratively repeat a predefined number of iterations, or iteratively repeat until the negative log-likelihood value is less than a predefined threshold. Alternatively or additionally, it is conceivable that training terminates when the average negative log-likelihood value relative to the test or validation dataset falls below a predefined threshold. In at least one iteration, the new parameters (determined in the previous iteration) ) is used as a parameter of the normalized flow (60) ).

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

[0125] In another embodiment (not shown), the training input signal (x) i The input signal can also be provided from a sensor. For example, the training system can be part of a device capable of sensing its environment by means of a sensor. The input signal obtained from the sensor can be used directly to train the normalized stream (60). Alternatively, the input signal can be transformed before being provided to the normalized stream.

[0126] Figure 2 An embodiment is shown that controls the actuator (10) in its environment (20) based on the output signal (y) of the normalized flow (60) included in the control system (40).

[0127] At preferred uniform time intervals, the sensor (30) senses the condition of the environment (20). The sensor (30) may include several sensors. Preferably, the sensor (30) is an optical sensor that captures an image of the environment (20). The output signal (S) of the sensor (30) (or, in the case where the sensor (30) includes multiple sensors, the output signal (S) for each sensor) is transmitted to the control system (40), which encodes the sensed condition.

[0128] Therefore, the control system (40) receives a stream of sensor signals (S). It then calculates a series of control signals (A) based on the stream of sensor signals (S) and transmits the series of control signals (A) to the actuator (10).

[0129] The control system (40) receives a stream of sensor signals (S) from the sensor (30) in an optional receiving unit (50). The receiving unit (50) transforms the sensor signals (S) into an input signal (x). Alternatively, in the absence of a receiving unit (50), each sensor signal (S) can be directly taken as the input signal (x). The input signal (x) can be given, for example, as an extract from the sensor signals (S). Alternatively, the sensor signals (S) can be processed to generate the input signal (x). In other words, the input signal (x) is provided based on the sensor signals (S).

[0130] The input signal (x) is then passed to a normalization stream (60). In another preferred embodiment, the input signal (x) may also be passed to a classifier (61) configured to determine a second output signal (c) characterizing the input signal (x). The second output signal (c) includes information assigning one or more labels to the input signal (x). In these other embodiments, the normalization stream (60) is preferably used with the training input signal (x) for training the classifier (61). i (To train)

[0131] The normalized stream (60) is stored in the parameter storage device ( St 1) and the parameters provided by it ( Parameterization.

[0132] The output signal (y) is transmitted to an optional conversion unit (80), which converts the output signal (y) into a control signal (A). If the control system includes a classifier (61), a second output signal (c) is also transmitted to the optional conversion unit (80) and used to obtain the control signal (A). The control signal (A) is then transmitted to the actuator (10) to control the actuator (10) accordingly. Alternatively, the output signal (y) or the output signal (y) and the second output signal (c) can be directly used as the control signal (A).

[0133] The actuator (10) receives the control signal (A), is controlled accordingly, and performs an action corresponding to the control signal (A). The actuator (10) may include control logic that transforms the control signal (A) into another control signal, which is then used to control the actuator (10).

[0134] In one embodiment, the control system (40) may include a sensor (30). In even another embodiment, the control system (40) may alternatively or additionally include an actuator (10).

[0135] In even more alternative embodiments, it is conceivable that a control system (40) replaces the actuator (10) or controls the display (10a) in addition to the actuator (10).

[0136] In yet another embodiment, the classifier (61) may include a normalization flow. The classifier (61) may be, for example, a Bayesian classifier, wherein the normalization flow (60) is configured to determine class-conditional log-likelihood values ​​for classes of the classifier (61).

[0137] Furthermore, the control system (40) may include at least one processor (45) and at least one machine-readable storage medium (46) thereon storing instructions which, if executed, cause the control system (40) to perform the method according to aspects of the invention.

[0138] Figure 3 An embodiment is shown in which a control system (40) is used to control a robot that is at least partially autonomous, such as a vehicle (100) that is at least partially autonomous.

[0139] The sensor (30) may include one or more video sensors and / or one or more radar sensors and / or one or more ultrasonic sensors and / or one or more LiDAR sensors. Some or all of these sensors are preferably, but not necessarily, integrated into the vehicle (100). Thus, the input signal (x) can be understood as an input image, and the classifier (60) can be understood as an image classifier.

[0140] The image classifier (60) can be configured to detect objects near at least part of the autonomous robot based on the input image (x). The second output signal (c) may include information characterizing that the object is located near at least part of the autonomous robot. A control signal (A) can then be determined based on this information, for example, to avoid collisions with the detected objects.

[0141] The output signal (y) can characterize the log-likelihood of the input image (x) and is preferably also used to determine the control signal (A). For example, if the output signal (y) characterizes a log-likelihood below a predefined threshold, the autonomous operation of the vehicle (100) can be suspended, and the operation of the vehicle can be transferred to the driver or operator of the vehicle (100).

[0142] The actuator (10), preferably integrated in the vehicle (100), can be provided by the vehicle's (100) brakes, propulsion system, engine, drivetrain, or steering. A control signal (A) can be determined to cause the actuator (10) to be controlled so that the vehicle (100) avoids collisions with detected objects. The detected objects can also be classified according to what an image classifier (60) deems most likely to be—e.g., a pedestrian or a tree—and the control signal (A) can be determined based on this classification.

[0143] Alternatively or additionally, the control signal (A) may also be used to control the display (10a), for example, to display objects detected by the image classifier (60). It is also conceivable that if the vehicle (100) approaches and collides with at least one detected object, the control signal (A) may control the display (10a) to generate a warning signal. The warning signal may be an audible warning and / or tactile signal, such as vibration of the vehicle's steering wheel.

[0144] The display can further provide a visual representation of the output signal. The driver or operator of the vehicle (100) can thus be informed of the log-likelihood of the input image (x) and thus gain insight into the internal operation of the vehicle (100).

[0145] In another embodiment, the at least partially autonomous robot may be provided by another mobile robot (not shown), which may move, for example, by flying, swimming, diving, or walking. The mobile robot may, in particular, be a lawnmower that is at least partially autonomous, or a cleaning robot that is at least partially autonomous. In all the above embodiments, a control signal (A) may be determined such that the propulsion unit and / or steering and / or braking of the mobile robot are controlled, enabling the mobile robot to avoid collisions with the identified object.

[0146] In even further embodiments, at least partially autonomous robots may be provided by household appliances (not shown), such as washing machines, stoves, ovens, microwave ovens, or dishwashers. Sensors (30), such as optical sensors, can detect the state of the object to be processed by the household appliance. For example, in the case of a washing machine, sensor (30) can detect the state of the clothes inside the washing machine. A control signal (A) can then be determined based on the detected material of the clothes.

[0147] Figure 4An embodiment is shown, wherein a control system (40) controls a manufacturing machine (11), such as a stamping tool, cutting tool, gun drill, or jig, of a manufacturing system (200) that is at least partially automated as part of a production line. The manufacturing machine may include transport equipment, such as a conveyor belt or assembly line, for moving manufactured products (12). The control system (40) controls an actuator (10), which in turn controls the manufacturing machine (11).

[0148] The sensor (30) can be provided by an optical sensor that captures, for example, the characteristics of the manufactured product (12). The classifier (60) can therefore be understood as an image classifier.

[0149] The image classifier (60) can determine the position of the manufactured product (12) relative to the transport equipment. The actuator (10) can then be controlled depending on the determined position of the manufactured product (12) for subsequent manufacturing steps of the manufactured product (12). For example, the actuator (10) can be controlled to cut the manufactured product at a specific location on the manufactured product itself. Alternatively, it is conceivable that the image classifier (60) classifies whether the manufactured product is broken or exhibits defects. The actuator (10) can then be controlled to remove the manufactured product from the transport equipment.

[0150] The log-likelihood, characterized by the output signal (y) of the normalized flow, can be displayed on a monitor (10a) to the operator of the manufacturing system (200). Based on the displayed log-likelihood, the operator can determine whether to intervene in the automated manufacturing process of the manufacturing system (200). Alternatively or additionally, if the log-likelihood value characterized by the output signal (y) is less than a predefined threshold or has been less than the predefined threshold for a predefined amount of time, the automated operation of the manufacturing machine (200) can be stopped.

[0151] Figure 5 An embodiment is shown, in which a control system (40) controls an automated personal assistant (250). The sensor (30) may be an optical sensor, such as a video image of a user's (249) gesture. Alternatively, the sensor (30) may also be an audio sensor, such as a voice command from the user (249).

[0152] The control system (40) then determines a control signal (A) for controlling the automated personal assistant (250). The control signal (A) is determined based on sensor signals (S) from the sensor (30). The sensor signals (S) are transmitted to the control system (40). For example, a classifier (60) can be configured to, for example, implement a gesture recognition algorithm to identify gestures made by the user (249). The control system (40) can then determine the control signal (A) to be transmitted to the automated personal assistant (250). It then transmits the control signal (A) to the automated personal assistant (250).

[0153] For example, a control signal (A) can be determined based on a user gesture identified by a classifier (60). This can include information that causes an automated personal assistant (250) to retrieve information from a database and output that retrieved information in a form suitable for the user (249) to receive.

[0154] In another embodiment, it is conceivable that, instead of the automated personal assistant (250), the control system (40) controls a household appliance (not shown) controlled according to an identified user gesture. The household appliance may be a washing machine, stove, oven, microwave oven, or dishwasher.

[0155] Figure 6 An embodiment is shown, in which the control system (40) controls the access control system (300). The access control system (300) can be designed to physically control access. For example, it can include a door (401). The sensor (30) can be configured to detect scenarios related to deciding whether access is permitted. For example, it can be an optical sensor for providing image or video data, such as for detecting a person's face. The classifier (60) can therefore be understood as an image classifier.

[0156] An image classifier (60) can be configured to classify a person's identity, for example, by matching the detected person's face with other faces of known people stored in a database. A control signal (A) can then be determined based on the classification by the image classifier (60), for example, according to the determined identity. An actuator (10) can be a lock that opens or closes a door depending on the control signal (A). Alternatively, the access control system (300) can be a non-physical, logical access control system. In this case, the control signal can be used to control a display (10a) to show information about the person's identity and / or whether the person has been granted access.

[0157] The log-likelihood, characterized by the output signal (y), can also be displayed on the display (10a).

[0158] Figure 7 An embodiment is shown, wherein the control system (40) controls the monitoring system (400). This embodiment is largely consistent with... Figure 5The embodiments shown are identical. Therefore, only the differences will be described in detail. The sensor (30) is configured to detect the monitored scene. The control system (40) does not necessarily control the actuator (10), but may instead control the display (10a). For example, the image classifier (60) may determine the classification of the scene, for example, whether the scene detected by the optical sensor (30) is normal or whether the scene exhibits anomalies. The control signal (A) transmitted to the display (10a) may then be configured, for example, to cause the display (10a) to adjust the displayed content based on the determined classification, for example, highlighting objects that the image classifier (60) considers abnormal.

[0159] Figure 8 An embodiment of a medical imaging system (500) controlled by a control system (40) is shown. The imaging system may be, for example, an MRI device, an X-ray imaging device, or an ultrasound imaging device. The sensor (30) may be, for example, an imaging sensor that captures at least one image of the patient, thereby displaying, for example, different types of the patient's body tissues.

[0160] The classifier (60) can then determine the classification of at least a portion of the sensed image. Thus, at least a portion of the image is used as the input image (x) to the classifier (60). The classifier (60) can therefore be understood as an image classifier.

[0161] The control signal (A) can then be selected based on the classification, thereby controlling the display (10a). For example, the image classifier (60) can be configured to detect different types of tissue in the sensed image, for example, by classifying the tissue displayed in the image as malignant or benign tissue. This can be accomplished by semantic segmentation of the input image (x) by the image classifier (60). The control signal (A) can then be determined to cause the display (10a) to display different tissues, for example, by displaying the input image (x) and coloring different regions of the same tissue type with the same color.

[0162] In another embodiment (not shown), the imaging system (500) can be used for non-medical purposes, such as determining the material properties of a workpiece. In these embodiments, an image classifier (60) can be configured to receive an input image (x) of at least a portion of the workpiece and perform semantic segmentation of the input image (x) to classify the material properties of the workpiece. A control signal (A) can then be determined to cause a display (10a) to show the input image (x) and information about the detected material properties.

[0163] The term "computer" can be understood to encompass any device used to process predefined computational rules. These computational rules can be in the form of software, hardware, or a combination of both.

[0164] Generally, "multiple" can be understood as being indexed, that is, preferably by assigning consecutive integers to the elements contained in the multiple, with each element in the multiple being assigned a unique index. Preferably, if the multiple has N There are elements, among which N If the number of elements in a plurality is a given number, then the elements are assigned a number from 1 to 1. N Integers. It can also be understood that multiple elements can be accessed through their indices.

Claims

1. A computer-implemented method for training a normalized stream (60), wherein the normalized stream (60) is configured to determine a first output signal (y) characterizing the likelihood or log-likelihood of an input signal (x), wherein the input signal (x) characterizes current, heat, or pressure of a device obtained from a sensor, or an image obtained from a sensor, or an audio signal obtained from a microphone, wherein the likelihood or log-likelihood characterizes how likely it is to observe the input signal (x) given a previously recorded training input signal (xi), wherein the normalized stream (60) includes at least one first layer, wherein the first layer includes trainable parameters, and the layer input to the first layer is based on the input signal (x), and the first output signal (y) is based on the layer output of the first layer, wherein training the normalized stream includes the following steps: ● Determine at least one training input signal (x) i ); ● Using the normalized flow (60) for each training input signal (x) i Determine the training output signal (y) i ); ● Determine a first loss value, wherein the first loss value is based on the at least one determined training output signal (y). i Likelihood or log-likelihood relative to a predefined probability distribution; ● Determine an approximation of the gradient of the trainable parameters of the first layer with respect to the first loss value, where the gradient depends on the inverse of the matrix of trainable parameters, and the approximation of the gradient is determined by optimizing the approximation of the inverse. ● Approximate update of the trainable parameters of the first layer based on gradient.

2. The method of claim 1, wherein the at least one training input signal (x) is used as the basis for the method. i To optimize the approximation of the inverse.

3. The method according to claim 1 or 2, wherein the first layer is a fully connected layer, and the layer output is determined according to the following formula. , in It is the output of the first layer. It is a reversible activation function of the first layer, and It is a matrix that includes the trainable parameters of the first layer. and layer input The result of the matrix multiplication, where the first loss value is approximately determined by the following formula relative to the gradient of the trainable parameters. , in It is the partial derivative of the first loss value with respect to the result of matrix multiplication. This is the first loss value, superscript. T Indicate the transpose of a matrix or vector. It is the training input signal, and It is a matrix The inverse approximation.

4. The method of claim 3, wherein the determination is based on the following second loss function. , in It is a norm.

5. The method of claim 4, wherein the determination is made by means of an iterative optimization algorithm. Only one optimization step is performed to determine .

6. The method according to claim 5, wherein the iterative optimization algorithm is a gradient descent algorithm.

7. The method according to claim 1 or 2, wherein the first layer is a convolutional layer, and the layer output is determined according to the following formula. , in It is the output of the first layer. It is the reversible activation function of the first layer. It is a tensor and layer input The result of discrete convolution, tensor Including the trainable parameters of the first layer, and The discrete convolution operation is indicated, where the gradient of the first loss value with respect to the trainable parameters is determined by the following formula. , , in It is the partial derivative of the first loss value with respect to the discrete convolution result. This is the first loss value. It is the training input signal. Indicates element-wise multiplication. It is a function that takes a first tensor as input and returns a second tensor with the same shape as the first tensor, where the second tensor is completely filled, and It is a tensor that characterizes the approximation of the third tensor, where the third tensor is compared with... Convolution generation ,and It is a function that determines the tensor of the transpose convolution.

8. The method of claim 7, wherein the determination is based on the following second loss function. , in It is a norm.

9. The method of claim 8, wherein the determination is made by means of an iterative optimization algorithm. Only one optimization step is performed to determine .

10. The method according to claim 9, wherein the iterative optimization algorithm is a gradient descent algorithm.

11. The method according to any one of claims 1-2, wherein the devices (100, 200, 250, 300, 400, 500, 600) operate according to the output signal (y) of the normalized stream.

12. The method according to any one of claims 1-2, wherein the normalized flow (60) is included in a classifier (61), wherein the classifier (61) is configured to determine a second output signal characterizing the classification of the input signal (x), wherein the second output signal is determined based on the first output signal (y).

13. The method according to any one of claims 1-2, wherein the input signal (x) characterizes the internal state of the device (100, 200, 250, 300, 400, 500, 600) and / or the operating state of the device (100, 200, 250, 300, 400, 500, 600) and / or the environmental state of the device (100, 200, 250, 300, 400, 500), wherein the information included in the first output signal (y) of the normalized stream (60) is made available to the user of the device (100, 200, 250, 300, 400, 500, 600) by means of a display device (10a).

14. A training system (140) configured to perform a training method according to any one of claims 1 to 9.

15. A computer program product configured such that, if executed by a processor (45, 145), it causes a computer to perform the method and all steps thereof according to any one of claims 1 to 13.

16. A machine-readable storage medium (46, 146) thereon storing a computer program product according to claim 15.

Citation Information

Patent Citations

  • Nonparametric model for detection of spatially diverse temporal patterns

    CN107077609A

  • Machine learning systems and methods for predicting risk of renal function decline

    WO2020006571A1