IP Library › Granted Patent US 12,619,679
Granted Patent B2
US 12,619,679 · App. 17/444,682 · Granted May 5, 2026

Method for generating a detailed visualization of machine learning model behavior

Inventors: Brian Ermans ('s-Hertogenbosch, NL); Peter Doliwa (Hamburg, DE); Gerardus Antonius Franciscus Derks (Dongen, NL); Wilhelmus Petrus Adrianus Johannus Michiels (Reusel, NL); Frederik Dirk Schalij (Eindhoven, NL)
G06F18/213G06F18/211G06F18/285G06N3/08
View Patent ↗
Loading inventors, assignments & file history…
Monitor This Case
Get email alerts when status or documents change.
Order Certified Copies
Most orders are placed with the USPTO same day — all within 24 business hours.
Order via The Patent Place →
Pre-filled with this patent's details
Quick Facts
Patent No.
US 12,619,679
App. No.
17/444,682
Granted
May 5, 2026
Kind
B2
Abstract

A method is provided for generating a visualization for explaining a behavior of a machine learning (ML) model. In the method, an image is input to the ML model for an inference operation. The input image has an increased resolution compared to an image resolution the ML model was intended to receive as an input. A resolution of a plurality of resolution-independent convolutional layers of the neural network are adjusted because of the increased resolution of the input image. A resolution-independent convolutional layer of the neural network is selected. The selected resolution-independent convolutional layer is used to generate a plurality of activation maps. The plurality of activation maps is used in a visualization method to show what features of the image were important for the ML model to derive an inference conclusion. The method may be implemented in a computer program having instructions executable by a processor.

Claims (38)

1 . A method for generating a visualization for explaining a behavior of a machine learning (ML) model having a neural network, the method comprising:

selecting an image for input to the ML model for an inference operation, wherein the image has an increased resolution compared to an image resolution the ML model was intended to receive as an input;

increasing a resolution of a plurality of resolution-independent convolutional layers of the neural network because of the increased resolution of the input image that is selected for the inference operation;

selecting a resolution-independent convolutional layer of the neural network;

inputting the input image into the ML model for the inference operation;

using the selected resolution-independent convolutional layer to generate a plurality of activation maps;

using the plurality of activation maps in a visualization method to generate the visualization to show a user which features of the image were important for the ML model to derive an inference conclusion; and

presenting results of application of the visualization method to the user on a display for analysis.

2 . The method of claim 1 , wherein selecting the resolution-independent convolutional layer further comprises selecting a final convolutional layer of the plurality of resolution-independent convolutional layers.

3 . The method of claim 1 , wherein the visualization method is a Grad-CAM (gradient-weighted class activation mapping) visualization method.

4 . The method of claim 1 , wherein selecting the image for input to the ML model for an inference operation further comprises upscaling the image to provide the increased resolution.

5 . The method of claim 1 , further comprising generating a plurality of heat maps from the plurality of activation maps to use in the visualization method.

6 . The method of claim 1 , wherein the neural network is used for one of image classification, object detection, semantic segmentation, or instance segmentation.

7 . The method of claim 1 , further comprising adding a layer after a final resolution-independent convolutional layer of the plurality of resolution-independent convolutional layers to adjust for a mismatch between an output size of the final resolution-independent convolutional layer and an input of a first resolution-dependent layer.

8 . The method of claim 7 , wherein the added layer comprises one of either an average pooling layer, max pooling layer, global average pooling layer, or global max pooling layer.

9 . The method of claim 1 , further comprising:

adding a fully connected layer after the plurality of resolution-independent convolutional layers; and

training only the added fully connected layer.

10 . The method of claim 1 , further comprising computing an average gradient for each activation map of the plurality of activation maps.

11 . A computer program comprising instructions executable by a processor, for executing a method for generating a visualization for explaining a behavior of a machine learning (ML) model having a neural network, the executable instructions comprising:

instructions for selecting an image for input to the ML model for an inference operation, wherein the image has an increased resolution compared to an image resolution the ML model was intended to receive as an input;

instructions for increasing a resolution of a plurality of resolution-independent convolutional layers of the neural network because of the increased resolution of the input image;

instructions for selecting a resolution-independent convolutional layer of the neural network;

instructions for inputting the input image into the ML model for the inference operation;

instructions for using the selected resolution-independent convolutional layer to generate a plurality of activation maps;

instructions for using the plurality of activation maps in a visualization method to generate the visualization to show a user which features of the image were important for the ML model to derive an inference conclusion; and

instructions for presenting results of application of the visualization method to the user on a display for analysis.

12 . The computer program of claim 11 , wherein the instructions for selecting the convolutional layer further comprises instructions for selecting a final convolutional layer of the plurality of resolution-independent convolutional layers.

13 . The computer program of claim 11 , wherein the visualization method is a Grad-CAM (gradient-weighted class activation mapping) visualization method.

14 . The computer program of claim 11 , wherein the instructions for selecting the image for input to the ML model for an inference operation further comprises instructions for upscaling the image to provide the increased resolution.

15 . The computer program of claim 11 , further comprising instructions for generating a plurality of heat maps from the plurality of activation maps to use in the visualization method.

16 . The computer program of claim 11 , wherein the neural network is used for one of image classification, object detection, semantic segmentation, or instance segmentation.

17 . The computer program of claim 11 , further comprising instructions for adding a layer after a final convolutional layer of the plurality of resolution-independent convolutional layers to adjust for a mismatch between an output size of the final resolution-independent convolutional layer and an input of a first resolution-dependent layer.

18 . The computer program of claim 17 , wherein the added layer comprises one of either an average pooling layer, max pooling layer, global average pooling layer, or global max pooling layer.

19 . The computer program of claim 11 , further comprising:

adding a fully connected layer after the plurality of resolution-independent convolutional layers; and

training only the added fully connected layer.

20 . The computer program of claim 11 , further comprising computing an average gradient for each activation map of the plurality of activation maps.

Assignments (1)
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Aug 9, 2021
From: ERMANS, BRIAN; DOLIWA, PETER; DERKS, GERARDUS ANTONIUS FRANCISCUS; MICHIELS, WILHELMUS PETRUS ADRIANUS JOHANNUS; SCHALIJ, FREDERIK DIRK
To: NXP B.V.
Reel/Frame 057121/0138 →
Continuity (1)
Related Publication 20230040470A1 · Feb 9, 2023
References Cited (22)
US 20160321784A1 · Annapureddy · 2016 [cited by examiner]
US 20190287264A1 · Chalamala · 2019 [cited by examiner]
US 20190303677A1 · Choutas · 2019 [cited by examiner]
US 20210012156A1 · Vijaykeerthy · 2021 [cited by examiner]
US 20210089827A1 · Kumagai · 2021 [cited by examiner]
US 20210097645A1 · Navarrete Michelini · 2021 [cited by examiner]
US 20210174497A1 · Yoo · 2021 [cited by examiner]
US 20210232927A1 · Lin · 2021 [cited by examiner]
US 20210241776A1 · Sivaraman · 2021 [cited by examiner]
US 20210295019A1 · Sun · 2021 [cited by examiner]
US 20210366080A1 · Jung · 2021 [cited by examiner]
Kanazawa et al., Locally Scale-Invariant Convolutional Neural Network, Dec. 16, 2014, ArXiv, pp. 1-11 (Year: 2014). [cited by examiner]
JP 6723488 B1 (with English translation) (Year: 2020). [cited by examiner]
Hashemi, Mahdi; “Enlarging Smaller Images Before Inputting Into Convolutional Neural Network: Zero-Padding Vs. Interpolation”; Journal of Big Data 6, Article No. 98; Accepted Nov. 4, 2019 and Published online Nov. 14, 2… [cited by applicant]
Morbidelli, Pietro et al.; “Augmented GradCAM: Heat-Maps Super Resolution Through Augmentation”; ICASSP 2020—2020 IEEE International Conference on Acoustics, Speech and Signal Processing (ICASSP); Barcelona, Spain, 2020. [cited by applicant]
Muccino, Eric; “Image Classification with Variable Input Resolution in Keras”; Mindboard, Inc.; Mar. 20, 2020. [cited by applicant]
Rosebrock, Adrian; “Grad-CAM: Visualize Class Activation Maps with Keras, TensorFlow, and Deep Learning”; Mar. 9, 2020; Blog downloaded from the Internet: https://www.pyimagesearch.com/2020/03/09/grad-cam-visualize-clas… [cited by applicant]
Selvaraju, Ramprasaath R. et al.; Grad-CAM: Visual Explanations from Deep Networks via Gradient-Based Localization; arXiv.org > cs > arXiv:1610.02391; Submitted Oct. 7, 2016, Last Revised Dec. 3, 2019; https://doi.org/1… [cited by applicant]
Tagaris, Thanos et al.; “High-resolution Class Activation Mapping”, 2019 IEEE International Conference on Image Processing (ICIP); Sep. 22-25, 2019, Taipei, Taiwan. [cited by applicant]
Tan, Mingxing, et al.; “EfficientDet: Scalable and Efficient Object Detection”; 2020 IEEE/CVF Conference on Computer Vision and Pattern Recognition (CVPR); Jun. 13-19, 2020; Seattle, Washington; DOI: 10.1109/CVPR42600.2… [cited by applicant]
Ulyanin, Stephan “Implementing Grad-CAM in PyTorch”; Feb. 21, 2019; Downloaded from the Internet: https://medium.com/@stepanulyanin/implementing-grad-cam-in-pytorch-ea0937c31e82. [cited by applicant]
U.S. Appl. No. 17/302,592; Inventor: Peter Doliwa; “Method For Generating Detailed Visualization Of Machine Learning Model Behavior;” filed May 7, 2021. [cited by applicant]