Patent ID: 11961275
Assignee: ROBERT BOSCH GMBH
Field: Computer technology (Electrical engineering)
Classification: CPC G | IPC G

Claim 5:
6. A computer-implemented method for classifying a first input image using an image classifier, wherein the image classifier provides an output signal characterizing a classification of the first input image, the method comprising the following steps:
training the image classifier wherein the image classifier is configured to determine an output signal characterizing a classification of a first input image, the image classifier being trained by performing the following steps:
determining a training dataset, wherein the training dataset includes a plurality of second input images, and wherein the training dataset further includes for each of the second input images a corresponding desired output signal, wherein the desired output signal characterizes a classification of the corresponding second input image;
splitting the training dataset into a plurality of subsets, wherein each subset includes the second input images that correspond with the desired output signals that characterize the same class;
training a respective normalizing flow for each of the respective subsets, wherein each of the respective normalizing flows is configured to predict a first density value based on an input image, wherein the first density value characterizes a likelihood of the input image to occur, wherein the first density value is predicted based on an intermediate output of a first convolutional layer of the respective normalizing flow, and wherein the intermediate output is determined based on a plurality of weights of the first convolutional layer, wherein each respective normalizing flow corresponds to the class characterized by the corresponding output signals of the second input images the normalizing flow is trained with, and wherein the training of the respective normalizing flow includes, for each second image of the respective subset:
determining an output tensor, wherein the output is determined by providing the second input image to the normalizing flow and providing an output of the normalizing flow as the output tensor,
determining a second density value based on the output tensor and on the plurality of weights,
determining a natural gradient of the plurality of weights with respect to the second density value, and
adapting the plurality of weights according to the natural gradient;

providing the trained respective normalizing flows to the image classifier;
providing the image classifier as a trained image classifier;

predicting a plurality of first density values, wherein the plurality of first density values is predicted by providing the first input image to the trained normalizing flows from the image classifier and providing the first density values predicted from the normalizing flows as the plurality of first density values;
adapting each first density value of the plurality of first density values, wherein each first density value is adapted by multiplying it with a predefined value;
providing the plurality of first density values as an output signal;
wherein the natural gradient is determined according to the formula:

∇w(l)=δl*(w(l)*Th(l))T+w(l)·Hl·Wl,, wherein ∇w(l) is the natural gradient, δl is an error signal for the first convolutional layer, w(l) is the plurality of weights, Hl is a height of a layer input of the first convolutional layer, Wl is a width of the layer input, * denotes a convolution operation and *T denotes a transposed convolution operation.