IP Library Granted Patent US 12,657,465
Granted Patent B2
US 12,657,465 · App. 17/503,150 · Granted Jun 16, 2026

Knowledge balancing self-distillation with adaptive mutual information (AMI)

Inventors: Ye Yu (Redmond, WA); Gaurav Mittal (Redmond, WA); Mei Chen (Bellevue, WA); Yu Gong (Burnaby, CA)
Assignee: Microsoft Technology Licensing, LLC.
G06N3/082G06F18/214G06F18/2178
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,657,465
App. No.
17/503,150
Granted
Jun 16, 2026
Kind
B2
Abstract

Disclosed solutions for improved machine learning (ML) employ knowledge balancing self-distillation with adaptive mutual information (AMI). Examples include: for a neural network (NN) having a plurality of modules, determining a task objective for at least a final module of the plurality of modules; for the NN, determining a balancing objective using at least an output of the final module and an output of a first intermediate module of the plurality of modules; determining an overall objective, wherein determining the overall objective comprises combining the task objective with the balancing objective; and adjusting weights of the NN to minimize the overall objective. Balancing information may combine mutual information (between an intermediate module output and the output of the final module) with self-information (for the intermediate module output) to produce AMI. Adjusting weights of the NN during training, using the AMI, results in knowledge balancing self-distillation.

Claims (86)

1 . A system comprising:

a processor; and

a computer-readable medium storing instructions that are operative upon execution by the processor to:

receive a computer vision task;

for a neural network (NN) having a plurality of modules, determine a task objective for at least a final module of the plurality of modules;

for the NN, determine a balancing objective using at least an output of the final module and an output of a first intermediate module of the plurality of modules, wherein determining the balancing objective comprises:

for each intermediate module output for a plurality of intermediate modules of the plurality of modules and the output of the final module:

determining mutual information between the intermediate module output and the output of the final module;

extracting self-information from the intermediate module output; and

combining the mutual information and the self-information;

determine an overall objective, wherein determining the overall objective comprises combining the task objective with the balancing objective;

adjust weights of the NN to minimize the overall objective;

determine whether a compressed NN meets an accuracy requirement for the computer vision task;

based on determining the compressed NN meets the accuracy requirement, compress the NN by deleting the final module;

continue deleting an additional module from the plurality of modules while the compressed NN meets the accuracy requirement; and

deploy the compressed NN to perform the computer vision task with the compressed NN.

2 . The system of claim 1 , wherein determining the overall objective comprises:

negating a positive value of the balancing objective, such that maximizing the positive value of the balancing objective minimizes the balancing objective.

3 . The system of claim 2 , wherein determining the balancing objective further comprises:

for each intermediate module output for the plurality of intermediate modules of the plurality of modules and the output of the final module, determining adaptive mutual information, wherein determining the adaptive mutual information comprises combining:

the mutual information between the intermediate module output and the output of the final module

with the self-information for the intermediate module output, and

wherein the negated positive value of the balancing objective comprises the adaptive mutual information.

4 . The system of claim 3 , wherein combining the mutual information between the intermediate module output and the output of the final module with the self-information for the intermediate module output comprises multiplying the mutual information between the intermediate module output and the output of the final module by the self-information for the intermediate module output.

5 . The system of claim 1 , wherein the instructions are further operative to:

during deployment of the NN, perform fine-tuning of the NN with user feedback.

6 . The system of claim 1 , wherein determining the task objective further comprises:

using at least an output of a second intermediate module of the plurality of modules.

7 . The system of claim 1 , wherein the instructions are further operative to:

receive a second computer vision task, the second computer vision task with a lesser accuracy requirement; and

compress the NN to a second compressed NN by deleting two or more modules from the NN, wherein the second compressed NN meets the lesser accuracy requirement, and wherein the second compressed NN has fewer modules than the compressed NN.

8 . A computerized method comprising:

receiving a computer vision task;

for a neural network (NN) having a plurality of modules, determining a task objective for at least a final module of the plurality of modules;

for the NN, determining a balancing objective using at least an output of the final module and an output of a first intermediate module of the plurality of modules, wherein determining the balancing objective comprises:

for each intermediate module output for a plurality of intermediate modules of the plurality of modules and the output of the final module:

determining mutual information between the intermediate module output and the output of the final module;

extracting self-information from the intermediate module output; and

combining the mutual information and the self-information;

determining an overall objective, wherein determining the overall objective comprises combining the task objective with the balancing objective;

adjusting weights of the NN to minimize the overall objective;

determining whether a compressed NN meets an accuracy requirement the computer vision task;

based on determining the compressed NN meets the accuracy requirement, compressing the NN by deleting the final module;

continuing deleting an additional module from the plurality of modules while the compressed NN meets the accuracy requirement; and

deploying the compressed NN to perform the computer vision task with the compressed NN.

9 . The computerized method of claim 8 , wherein determining the overall objective comprises:

negating a positive value of the balancing objective, such that maximizing the positive value of the balancing objective minimizes the balancing objective.

10 . The computerized method of claim 9 , wherein determining the balancing objective further comprises:

for each intermediate module output for the plurality of intermediate modules of the plurality of modules and the output of the final module, determining adaptive mutual information, wherein determining the adaptive mutual information comprises combining

the mutual information between the intermediate module output and the output of the final module

with the self-information for the intermediate module output,

and wherein the negated positive value of the balancing objective comprises the adaptive mutual information.

11 . The computerized method of claim 10 , wherein combining the mutual information between the intermediate module output and the output of the final module with the self-information for the intermediate module output comprises multiplying the mutual information between the intermediate module output and the output of the final module by the self-information for the intermediate module output.

12 . The computerized method of claim 8 , wherein combining the task objective with the balancing objective comprises summing the task objective and the balancing objective.

13 . The computerized method of claim 8 , wherein determining the task objective further comprises:

using at least an output of a second intermediate module of the plurality of modules.

14 . The computerized method of claim 8 , further comprising:

receiving a second computer vision task, the second computer vision task with a lesser accuracy requirement; and

compressing the NN to a second compressed NN by deleting two or more modules from the NN, wherein the second compressed NN meets the lesser accuracy requirement, and wherein the second compressed NN has fewer modules than the compressed NN.

15 . One or more computer storage devices having computer-executable instructions stored thereon, which, on execution by a computer, cause the computer to perform operations comprising:

receive a computer vision task;

for a deployed neural network (NN) having a plurality of modules, determining a task objective for at least a final module of the plurality of modules;

for the NN, determining a balancing objective using at least an output of the final module and an output of a first intermediate module of the plurality of modules, wherein determining the balancing objective comprises:

for each intermediate module output for a plurality of intermediate modules of the plurality of modules and the output of the final module:

determining mutual information between the intermediate module output and the output of the final module;

extracting self-information from the intermediate module output; and

combining the mutual information and the self-information;

determining an overall objective, wherein determining the overall objective comprises combining the task objective with the balancing objective;

receiving user feedback on an output result of the NN;

based on at least the user feedback, perform fine-tuning of the NN, wherein the fine-tuning comprises adjusting weights of the NN to minimize the overall objective;

determine whether a compressed NN meets an accuracy requirement for accuracy for the computer vision task;

based on determining the compressed NN meets the accuracy requirement, compress the NN by deleting the final module;

continue deleting an additional module from the plurality of modules while the compressed NN meets the accuracy requirement; and

deploy the compressed NN to perform the computer vision task with the compressed NN.

16 . The one or more computer storage devices of claim 15 , wherein determining the overall objective comprises:

negating a positive value of the balancing objective, such that maximizing the positive value of the balancing objective minimizes the balancing objective.

17 . The one or more computer storage devices of claim 16 , wherein determining the balancing objective further comprises:

for each intermediate module output for a plurality of intermediate modules of the plurality of modules and the output of the final module, determining adaptive mutual information, wherein determining the adaptive mutual information comprises combining

the mutual information between the intermediate module output and the output of the final module

with the self-information for the intermediate module output, and

wherein the negated positive value of the balancing objective comprises the adaptive mutual information.

18 . The one or more computer storage devices of claim 17 , wherein combining the mutual information between the intermediate module output and the output of the final module with the self-information for the intermediate module output comprises multiplying the mutual information between the intermediate module output and the output of the final module by the self-information for the intermediate module output.

19 . The one or more computer storage devices of claim 15 , wherein combining the task objective with the balancing objective comprises summing the task objective and the balancing objective, and wherein determining the task objective further comprises using at least an output of a second intermediate module of the plurality of modules.

20 . The one or more computer storage devices of claim 15 , wherein the operations further comprise:

receiving a second computer vision task, the second computer vision task with a lesser accuracy requirement; and

compressing the NN to a second compressed NN by deleting two or more modules from the NN, wherein the second compressed NN meets the lesser accuracy requirement, and wherein the second compressed NN has fewer modules than the compressed NN.

Assignments (1)
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Oct 15, 2021
From: YU, YE; MITTAL, GAURAV; CHEN, MEI; GONG, YU
To: MICROSOFT TECHNOLOGY LICENSING, LLC
Reel/Frame 057809/0858 →
Continuity (1)
Related Publication 20230118073A1 · Apr 20, 2023
References Cited (47)
US 10816980B2 · Hazard · 2020 [cited by examiner]
US 11610154B1 · Teig · 2023 [cited by examiner]
US 20190258937A1 · Alemi · 2019 [cited by examiner]
US 20210089922A1 · Lu · 2021 [cited by examiner]
US 20230128637A1 · Kouris · 2023 [cited by examiner]
Dai, Bin, et al. “Compressing neural networks using the variational information bottleneck.” International Conference on Machine Learning. PMLR, 2018. (Year: 2018). [cited by examiner]
Oquab, Maxime, et al. “Learning and transferring mid-level image representations using convolutional neural networks.” Proceedings of the IEEE conference on computer vision and pattern recognition. 2014. (Year: 2014). [cited by examiner]
Yang, Yongxin, et al. “Simple and effective stochastic neural networks.” Proceedings of the AAAI Conference on Artificial Intelligence. vol. 35. No. 4. May 18, 2021. (Year: 2021). [cited by examiner]
Ahn, et al., “Variational information distillation for knowledge transfer”, In Proceedings of the IEEE/CVF Conference on Computer Vision and Pattern Recognition, Jun. 16, 2019, pp. 9163-9171. [cited by applicant]
Alemi, et al., “Deep variational information bottleneck”, In Proceedings of the International Conference on Learning Representations, Apr. 24, 2017, pp. 1-19. [cited by applicant]
Belghazi, et al., “Mutual information neural estimation”, In Proceedings of the 35 th International Conference on Machine Learning, Jul. 3, 2018, 10 Pages. [cited by applicant]
Chung, et al., “Feature-map-level online adversarial knowledge distillation”, In Proceedings of International Conference on Machine Learning, Nov. 21, 2020, 10 Pages. [cited by applicant]
Donsker, et al., “Asymptotic evaluation of certain markov process expectations for large time”, In Journal of communication on pure and applied mathematics, Mar. 1983. [cited by applicant]
Goodfellow, et al., “Generative adversarial nets”, In Journal of Advances in neural information processing systems, Dec. 8, 2014, pp. 1-9. [cited by applicant]
Gou, et al., “Knowledge distillation: A survey”, In Repository of arXiv:2006.05525v4, Oct. 23, 2020, pp. 1-34. [cited by applicant]
Gregor, et al., “Draw: A recurrent neural network for image generation”, In Proceedings of International Conference on Machine Learning, Jun. 1, 2015, 10 Pages. [cited by applicant]
He, et al., “Deep Residual Learning for Image Recognition”, In Proceedings of the IEEE Conference on Computer Vision and Pattern Recognition, Jun. 27, 2016, pp. 770-778. [cited by applicant]
Hinton, et al., “Distilling the Knowledge in a Neural Network”, In Repository of arXiv:1503.02531v1, Mar. 9, 2015, 9 Pages. [cited by applicant]
Hjelm, et al., “Learning deep representations by mutual information estimation and maximization”, In Proceedings of International Conference on Learning Representations, May 6, 2019, pp. 1-24. [cited by applicant]
Hu, et al., “Squeeze-and-Excitation Networks”, In Proceedings of IEEE Conference on Computer Vision and Pattern Recognition, Jun. 18, 2018, pp. 7132-7141. [cited by applicant]
Huang, et al., “Densely connected convolutional networks”, In Proceedings of the IEEE conference on computer vision and pattern recognition, Jul. 21, 2017, pp. 4700-4708. [cited by applicant]
Huang, et al., “Like what you like: Knowledge distill via neuron selectivity transfer”, In Repository of arXiv:1707.01219v2, Dec. 18, 2017, pp. 1-9. [cited by applicant]
Krizhevsky, Alex, “Learning Multiple Layers of Features From Tiny Images”, In Technical report, Apr. 8, 2009, 60 Pages. [cited by applicant]
Lee, et al., “Self-supervised label augmentation via input transformations”, In Proceedings of international Conference on Machine Learning, Nov. 21, 2020, 11 Pages. [cited by applicant]
Linsker, et al., “Self-organization in a perceptual network”, In Journal of Computer, vol. 21, Issue: 3, Mar. 1988, pp. 105-117. [cited by applicant]
Mirzadeh, et al., “Improved knowledge distillation via teacher assistant”, In Proceedings of the AAAI Conference on Artificial Intelligence, Apr. 3, 2020, pp. 5191-5198. [cited by applicant]
Oord, et al., “Representation learning with contrastive predictive coding”, In Repository of arXiv:1807.03748v1, Jul. 10, 2018, pp. 1-13. [cited by applicant]
Redmon, et al., “YOLO9000: Better, faster, stronger”, In Repository of arXiv preprint arXiv:1612.08242, Dec. 25, 2016, 9 Pages. [cited by applicant]
Rezende, et al., “Stochastic backpropagation and approximate inference in deep generative models”, In Proceedings of the 31st International Conference on Machine Learning, Jun. 21, 2014, 14 Pages. [cited by applicant]
Romero, et al., “Fitnets: Hints for thin deep nets”, In Proceedings of the International Conference on Learning Representations, May 7, 2015, pp. 1-13. [cited by applicant]
Sandler, et al., “Mobilenetv2: Inverted residuals and linear bottlenecks”, In Proceedings of the IEEE Conference on Computer Vision and Pattern Recognition, Jun. 18, 2018, pp. 4510-4520. [cited by applicant]
Saxe, et al., “On the information bottleneck theory of deep learning”, In Proceedings of the International Conference on Learning Representations, Apr. 30, 2018, pp. 1-27. [cited by applicant]
Simonyan, et al., “Very Deep Convolutional Networks for Large-Scale Image Recognition”, In Proceedings of 3rd International Conference on Learning Representations, May 7, 2015, 14 Pages. [cited by applicant]
Springenberg, et al., “Striving for simplicity: The all convolutional net”, In Proceedings of 3rd International Conference on Learning Representations, May 7, 2015, pp. 1-14. [cited by applicant]
Tan, et al., “Efficientnet: Rethinking Model Scaling for Convolutional Neural Networks”, In Proceedings of the 36th International Conference on Machine Learning, May 28, 2019, 10 Pages. [cited by applicant]
Tian, et al., “Contrastive Multiview Coding”, In Proceedings of 16th European Conference on Computer Vision, Dec. 18, 2020, pp. 1-16. [cited by applicant]
Tian, et al., “Contrastive representation distillation”, In Proceedings of the International Conference on Learning Representations, Apr. 26, 2020, pp. 1-19. [cited by applicant]
Yang, et al., “Snapshot distillation: Teacher-student optimization in one generation”, In Proceedings of the IEEE Conference on Computer Vision and Pattern Recognition, Jun. 16, 2019, pp. 2859-2868. [cited by applicant]
Yuan, et al., “Revisiting knowledge distillation via label smoothing regularization”, In Proceedings of the IEEE Conference on Computer Vision and Pattern Recognition, Jun. 13, 2020, pp. 3903-3911. [cited by applicant]
Yun, et al., “Regularizing class-wise predictions via self-knowledge distillation”, In Proceedings of the IEEE/CVF conference on computer vision and pattern recognition, Jun. 16, 2020, pp. 13876-13885. [cited by applicant]
Zagoruyko, et al., “Paying more attention to attention: improving the performance of convolutional neural networks via attention transfer”, In Proceedings of 5th International Conference on Learning Representations, Apr… [cited by applicant]
Zeiler, et al., “Visualizing and understanding convolutional networks”, In Proceedings of European Conference on Computer Vision, Sep. 6, 2014, pp. 818-833. [cited by applicant]
Zhang, et al., “Be your own teacher: Improve the performance of convolutional neural networks via self distillation”, In Proceedings of the IEEE/CVF International Conference on Computer Vision, Oct. 27, 2019, pp. 3713-3… [cited by applicant]
Zoph, et al., “Neural Architecture Search with Reinforcement Learning”, In Proceedings of the 5th International Conference on Learning Representations, Apr. 2017, 16 Pages. [cited by applicant]
Chen, et al., “On Self-Distilling Graph Neural Network”, In Repository of arXiv:2011.02255v2, Apr. 30, 2021, 12 Pages. [cited by applicant]
“International Search Report and Written Opinion Issued in PCT Application No. PCT/US22/038411”, Mailed Date: Nov. 15, 2022, 15 Pages. [cited by applicant]
Wang, et al., “Knowledge Distillation And Student-Teacher Learning For Visual Intelligence: A Review And New Outlooks”, In Repository of arXiv:2004.05937v7, Jun. 17, 2021, 40 Pages. [cited by applicant]