Patent Publication Number: US-2022222537-A1

Title: Method for Operating a Deep Neural Network

Description:
CROSS-REFERENCE TO RELATED APPLICATIONS 
     This application claims priority to German Patent Application No. DE 10 2019 207 580.0, filed on May 23, 2019 with the German Patent and Trademark Office. The contents of the aforesaid Patent Application are incorporated herein for all purposes. 
     TECHNICAL FIELD 
     The invention relates to a method for operating a deep neural network. The invention also relates to a device for data processing, a computer program, and to a computer-readable storage medium. 
     BACKGROUND 
     This background section is provided for the purpose of generally describing the context of the disclosure. Work of the presently named inventor(s), to the extent the work is described in this background section, as well as aspects of the description that may not otherwise qualify as prior art at the time of filing, are neither expressly nor impliedly admitted as prior art against the present disclosure. 
     Machine learning, for example on the basis of neural networks, has great potential for an application in modern driver assistance systems and automated motor vehicles. In this case, functions based on deep neural networks process raw sensor data (by way of example, from cameras, radar or lidar sensors) in order to derive relevant information therefrom. This information comprises, by way of example, a type and a position of objects in an environment of the motor vehicle, a behavior of the objects or a road geometry or topology. 
     Among the neural networks, convolutional neural networks have in particular proven to be particularly suitable for applications in image processing. Convolutional neural networks extract various high-quality features from input data (e.g., image data) in stages in an unmonitored form. In this case, the convolutional neural network independently develops feature maps, during a training phase, based on filter channels which process the input data locally in order to derive local characteristics as a result. These feature maps are then processed again by further filter channels which derive higher-quality feature maps therefrom. On the basis of this information, which is compressed in such a way from the input data, the deep neural network finally derives its decision and provides said decision as output data. 
     However, while convolutional neural networks outperform classic approaches in terms of functional accuracy, they also have disadvantages. Thus, interference in captured sensor data or attacks based on adversarial interference can, for example, result in a misclassification or incorrect semantic segmentation taking place despite a semantically unchanged content in the captured sensor data. Attempts are therefore being made to make neural networks robust against this type of interference. 
     SUMMARY 
     A need exists to provide a method and a device for operating a deep neural network, in which the deep neural network is more robust against interference. 
     The need is addressed by a method and a device having the features of the independent claims. Embodiments of the invention are described in the dependent claims, the following description, and the drawings. 
    
    
     
       BRIEF DESCRIPTION OF THE DRAWINGS 
         FIG. 1  shows a schematic representation of an embodiment of the device for data processing; and 
         FIG. 2  shows a schematic representation of an embodiment of a deep neural network. 
     
    
    
     DESCRIPTION 
     The details of one or more embodiments are set forth in the accompanying drawings and the description below. Other features will be apparent from the description, drawings, and from the claims. 
     In the following description of embodiments of the invention, specific details are described in order to provide a thorough understanding of the invention. However, it will be apparent to one of ordinary skill in the art that the invention may be practiced without these specific details. In other instances, well-known features have not been described in detail to avoid unnecessarily complicating the instant description. 
     In some embodiments, a method for operating a deep neural network is made available, wherein the deep neural network is operated with multiple layers between an input layer and an output layer, and wherein, in addition, at least one classic filter is used in the deep neural network between the input layer and the output layer. 
     In some embodiments, a device for data processing is also provided, comprising means for executing the steps of the method according to the teachings herein. In this case, the means may in particular comprise a computing apparatus and a memory. 
     A computer program is further provided in some embodiments, comprising commands which, when the computer program is run by a computer, prompt the latter to execute the steps of the method according to the teachings herein. 
     Furthermore, a computer-readable storage medium is provided in some embodiments, comprising commands which, when run by a computer, prompt the latter to execute the steps of the method according to the teachings herein. 
     The method and the device make it possible to increase a robustness of a neural network, in particular of a convolutional neural network, with respect to interference. This is done by additionally using at least one classic filter as well as the usually randomly initialized filters for feature extraction in the deep neural network. In this case, the at least one classic filter is in particular an integral part of a structure of the deep neural network. In the case of this at least one classic filter, filter parameters are in particular specified when the deep neural network is initialized, that is to say at the start of a training phase. The specified filter parameters can, for example, be selected on the basis of estimates and/or empirical values. Output data of the at least one classic filter is provided to the deep neural network in addition to the unfiltered input data, which has not passed through the at least one classic filter, and to the input data filtered by means of the filter channels. In other words, the features or feature maps extracted by the at least one classic filter constitute a subset of all the features or feature maps used for inferring. This makes it possible for the at least one classic filter to extract particularly discriminative features from input data provided to the input layer, which input data evades the randomly initialized filters or filter channels as a general rule. The teachings herein are based on the realization that deep neural networks are, as a general rule, not necessarily trained for discriminative features in the input data in the context of the training phase, but that features, to which the deep neural network reacts sensitively following the training to infer the output data, are often not very meaningful and therefore more susceptible to interference. Overall, a more robust behavior of the deep neural network with respect to interference (e.g., in the form of adversarial disturbances), which merely produce a semantically irrelevant change in the input data, may be achieved. 
     A benefit of the method and of the device is that a hybrid approach may be implemented, in which both classic filters and taught filters or filter channels are integrated in the deep neural network. Overall, this may increase the robustness of the deep neural network with respect to interference. 
     A neural network is in particular an artificial neural network, in particular a convolutional neural network. The neural network will be or is in particular trained for a specific perception function, for example a perception of pedestrians or other objects in captured camera images. 
     The input data of the deep neural network may be one-dimensional or multidimensional. Accordingly, training data of the training data set used for training is one-dimensional or multi-dimensional, wherein the training data is marked (“labeled”) in terms of a semantically meaningful content. For example, the training data may be captured camera images which are marked in terms of a semantically meaningful content (e.g., pedestrians). In particular, the training data and the input data are two-dimensional data, that is to say image data captured by means of a camera. 
     A training phase and an inference phase of the deep neural network are otherwise executed in a manner known per se. 
     In particular, the method is executed by means of a computing apparatus which may access a memory. The computing apparatus may be configured as a combination of hardware and software, for example as program code which is run on a microcontroller or microprocessor. 
     A classic filter may in particular have a one-dimensional or multi-dimensional input and a one-dimensional or multi-dimensional output. Unlike a filter channel usually used in a deep neural network, in which the filter channel is initialized with random parameters when the deep neural network is initialized, the classic filter is initialized with fixed filter parameters when the deep neural network is initialized. In other words, a classic filter has a fixed filter function which may be parameterized with the aid of filter parameters; these filter parameters are, however, fixed during initialization and are not initialized randomly. 
     In particular, when image data is processed by the deep neural network, a classic filter should comprise a classic computer-vision method. In particular, such a method may be a method for image processing. 
     In this case, a classic filter may in particular be one of the following:
         Center-surround filter of varying size,   Edge filter (e.g., by means of the Canny algorithm),   Contour filter,
           Corner filter,   Pattern filter (e.g., for a hexagon or another geometric figure, etc.),   Gradient filter,   Contrast pattern filter,   Writing filter for identifying writing,   Deriving a position-dependent density map for stipulating an attention filter,   Image sharpness/image blur filter,   etc.   
               

     Filter parameters are parameters of the at least one classic filter. If the filter is, for example, an edge filter for image data, a filter parameter is, for example, a sensitivity value or threshold which indicates the value as of which a pixel or a region in an image is treated as an edge. 
     It is in particular provided that the deep neural network is a convolutional neural network. In this case, the at least one classic filter is arranged in front of or in a feature layer of the convolutional neural network, that is to say in particular in front of a backpropagation network of the convolutional neural network. In this case, output data of the at least one classic filter is fed to the backpropagation network in addition to the feature maps extracted by the filter channels. 
     In some embodiments, it is provided that filter parameters of the at least one classic filter are kept constant during a training phase of the deep neural network. As a result, filter parameters of the at least one classic filter may be specified and also retained during the training phase and a subsequent application of the trained deep neural network in an inference phase. In particular, the at least one filter may, as a result, be deliberately set up for particularly discriminative features in the input data. This is particularly beneficial if filter functions are known for input data, for which filter functions optimal filter parameters for extracting particularly discriminative features are already known. 
     In some embodiments, it is specified that at least one part of filter parameters of the at least one classic filter is changed during a training phase of the deep neural network. As a result, filter parameters of the at least one classic filter may be taught in addition to the parameters of the remaining deep neural network during the training phase. Since, during training of the deep neural network, a deviation (=loss) of an output from a ground truth (or the labels of the training data) is determined at the output layer and parameters of the deep neural network are adapted as a function of the derivation of this deviation established (for multiple training data) in the context of a gradient descent during the training, the filter parameters of the classic filters must in particular depend in a differentiable manner on a cost function (loss function) used for training the deep neural network. 
     If multiple classic filters are present, it may also be provided that only one part of the classic filters is changed during the training phase by way of changing the associated filter parameters; filter parameters of another part of the classic filters are kept constant, by contrast, at the filter parameters specified during the initialization. 
     In some embodiments, it is provided that at least one part of the filter parameters of the at least one classic filter is adapted with a lower learning rate than the remaining deep neural network. As a result, a compromise may be achieved between a possibility of adapting filter parameters of the classic filters in the context of the training phase and a specification of filter parameters. It may further be achieved that a function of the deep neural network may be understood, at least in connection with the at least one classic filter, in terms of effect, that means with regard to certain discriminative features. Overall, the deep neural network may be configured to be more robust due to a lower learning rate, since the classic filter reacts less sensitively to slightly altered input data and, subsequently, too strong an adjustment of the filter parameters in the context of the training phase may be prevented. 
     In some embodiments, it is provided that the at least one classic filter is operated directly after the input layer and/or in the vicinity of the input layer of the deep neural network. As a result, discriminative features may be extracted close to the input. This may increase a beneficial effect on the robustness of the deep neural network. In this case, in the vicinity of the input layer means in particular that the at least one classic filter is arranged in the ith layer after the input layer in the deep neural network, wherein i≤10, for example i≤5, and for example i≤3. 
     In some embodiments, it is provided that an output of the at least one classic filter is fed to multiple layers of the deep neural network. This helps with being able to locate features learnt by the deep neural network relative to the original input data. In particular, in the case of image data, this makes possible a robust location of image features (e.g., edge lines, objects, etc.) to exact pixel regions in the image data. In particular, recognized image features may be located in a robust manner relative to the classic filter maps. 
     Reference will now be made to the drawings in which the various elements of embodiments will be given numerical designations and in which further embodiments will be discussed. 
     Specific references to components, process steps, and other elements are not intended to be limiting. Further, it is understood that like parts bear the same or similar reference numerals when referring to alternate FIGS. It is further noted that the FIGS. are schematic and provided for guidance to the skilled reader and are not necessarily drawn to scale. Rather, the various drawing scales, aspect ratios, and numbers of components shown in the FIGS. may be purposely distorted to make certain features or relationships easier to understand. 
     A schematic representation of a device  1  for executing the method is shown in  FIG. 1 . The device  1  comprises means  2  for executing the method. The means  2  comprise a computing apparatus  3  and a memory  4 . A structure and parameters of a deep neural network  5  are stored in the memory  4 . In order to perform the method, in particular in order to train the deep neural network and in order to apply the deep neural network  5  during an inference phase, the computing apparatus  3  may access the memory  4  and perform arithmetic operations in order to operate the deep neural network  5 . The computing apparatus  3  may be configured as a combination of hardware and software, for example as a computer program which is run on a microcontroller or microprocessor. 
     Marked (“labeled”) training data  6  and filter parameters  7  of at least one classic filter are also stored in the memory  4 , at least during a training phase. 
     During an inference phase, input data  10  is fed to the device  1  or the (trained) deep neural network  5 . This may be, for example, captured camera data, on which the deep neural network executes a perception function. After a completed inference phase, the deep neural network  5  or the device  1  supplies output data  11  which supplies, for example, a classification result of the input data  10 . If the perception function comprises, for example, the recognition of pedestrians in the captured camera data, probability values for the presence of pedestrians in the captured camera data are thus provided, for example, as output data. 
     A schematic representation of an embodiment of a deep neural network  5  is shown in  FIG. 2 . The deep neural network  5  has an input layer  20  and an output layer  21 . 
     The input layer  20  is followed by multiple filter channels  22 , the parameters of which are randomly initialized during the initializing of a deep neural network  5  before a training phase and are subsequently gradually taught during training. Behind the filter channels  22  there follow multiple layers  23  of the deep neural network  5 , which are trained in a monitored manner, in the context of the training phase, in particular by means of methods such as backpropagation, on the basis of a training data set. 
     If the deep neural network  5  executes, for example, a perception function in captured camera data, the input data and the output data thus comprise filter channels  22  of two dimensions each. 
     The deep neural network  5  also comprises, in addition to the filter channels  22  which are to be taught or which are taught, multiple classic filters  24 ,  25 . In the case of the perception function mentioned, the classic filters  24  may be, for example, image processing filters which each execute a computer-vision method on the captured camera images. In order to be particularly discriminative, filter parameters of the classic filters  24 ,  25  are fixed when the deep neural network  5  is initialized, that is to say that the filter parameters are not randomly initialized as in the case of the filter channels  22 . In this case, the fixed filter parameters may be selected on the basis of empirical values, for example. 
     As may be seen in  FIG. 2 , the classic filters  24  are operated directly after the input layer  20  of the deep neural network  5 . By contrast, the classic filter  25  is operated between layers  23  of the deep neural network  5 . 
     The classic filter can, for example, execute one of the following methods:
         Center-surround filter of varying size,   Edge filter (e.g., by means of the Canny algorithm),   Contour filter,
           Corner filter,   Pattern filter (e.g., for a hexagon or another geometric figure, etc.),   
           Gradient filter,   Contrast pattern filter,   Writing filter for identifying writing,
           Deriving a position-dependent density map for stipulating an attention filter,   Image sharpness/image blur filter,   etc.   
               

     The deep neural network  5  may, for example, be configured as a convolutional neural network. The at least one classic filter  24  is then arranged in particular in the region of feature layers of the convolutional neural network, that is to say in front of a backpropagation network of the convolutional neural network. 
     It may be provided that filter parameters of the classic filters  24 ,  25  are kept constant during a training phase of the deep neural network  5 . 
     Alternatively, it may be provided that at least one part of the filter parameters of the classic filters  24 ,  25  is changed during a training phase of the deep neural network  5 . The filter parameters are then taught together with the remaining deep neural network  5 . 
     In a further embodiment, it may be provided that at least one part of the filter parameters of the classic filters  24 ,  25  is adapted with a lower learning rate than the remaining deep neural network  5 . 
     It may be provided that only one part of the classic filters  24 ,  25  is changed during the training phase by way of changing the associated filter parameters. Filter parameters of another part of the classic filters  24 ,  25  can, by contrast, be kept constant at the filter parameters specified during initialization. 
     It may also be provided that an output of a classic filter  25  is fed to multiple layers  23  of the deep neural network  5 . 
     As a result of the method described, a deep neural network  5  is more robust with respect to interference, since considerably discriminative features are deliberately extracted by way of the classic filters  24 ,  25 . 
     LIST OF REFERENCE NUMERALS 
     
         
           1  Device 
           2  Means 
           3  Computing apparatus 
           4  Memory 
           5  Deep neural network 
           6  Training data 
           7  Filter parameters 
           10  Input data 
           11  Output data 
           20  Input layer 
           21  Output layer 
           22  Filter channel 
           23  Layer 
           24  Classic filter 
           25  Classic filter 
       
    
     The invention has been described in the preceding using various exemplary embodiments. Other variations to the disclosed embodiments may be understood and effected by those skilled in the art in practicing the claimed invention, from a study of the drawings, the disclosure, and the appended claims. In the claims, the word “comprising” does not exclude other elements or steps, and the indefinite article “a” or “an” does not exclude a plurality. A single processor, module or other unit or device may fulfil the functions of several items recited in the claims. 
     The term “exemplary” used throughout the specification means “serving as an example, instance, or exemplification” and does not mean “preferred” or “having advantages” over other embodiments. The term “in particular” used throughout the specification means “serving as an example, instance, or exemplification”. 
     The mere fact that certain measures are recited in mutually different dependent claims or embodiments does not indicate that a combination of these measures cannot be used to advantage. Any reference signs in the claims should not be construed as limiting the scope.