Our new X account is live! Follow @wizwand_team for updates
WorkDL logo mark

Penalty Method for Inversion-Free Deep Bilevel Optimization

About

Solving a bilevel optimization problem is at the core of several machine learning problems such as hyperparameter tuning, data denoising, meta- and few-shot learning, and training-data poisoning. Different from simultaneous or multi-objective optimization, the steepest descent direction for minimizing the upper-level cost in a bilevel problem requires the inverse of the Hessian of the lower-level cost. In this work, we propose a novel algorithm for solving bilevel optimization problems based on the classical penalty function approach. Our method avoids computing the Hessian inverse and can handle constrained bilevel problems easily. We prove the convergence of the method under mild conditions and show that the exact hypergradient is obtained asymptotically. Our method's simplicity and small space and time complexities enable us to effectively solve large-scale bilevel problems involving deep neural networks. We present results on data denoising, few-shot learning, and training-data poisoning problems in a large-scale setting. Our results show that our approach outperforms or is comparable to previously proposed methods based on automatic differentiation and approximate inversion in terms of accuracy, run-time, and convergence speed.

Akshay Mehra, Jihun Hamm• 2019

Related benchmarks

TaskDatasetResultRank
Few-shot classificationMini-ImageNet--
175
Few-shot classificationOmniglot
Accuracy99.45
38
Untargeted Poisoning AttackMNIST (test)--
6
Importance LearningMNIST 25% label noise (test)
Test Accuracy98.89
5
Importance LearningMNIST 50% label noise (test)
Test Accuracy97.51
5
Importance LearningCIFAR10 25% label noise (test)
Test Accuracy79.67
5
Importance LearningCIFAR10 50% label noise (test)
Test Accuracy79.03
5
Importance LearningSVHN 25% label noise (test)
Test Accuracy88.12
5
Importance LearningSVHN 50% label noise (test)
Test Accuracy85.21
5
Targeted Poisoning AttackMNIST modified (test)--
4
Showing 10 of 10 rows

Other info

Code

Follow for update