Learning Based Optimization
回放地址
报告内容
概述
林宙辰教授(北京大学教授,智源研究员)本次报告的题目是Learning Based Optimization(基于学习的优化),使用机器学习来帮助解决优化问题。主要介绍了两种方法:1,Use learnable parameters in the traditional algorithms 2,Use machine learning algorithms to predict solutions;
主要内容
大纲
Part Ⅰ Complexities in Optimization
影响优化收敛的因素
- Structure of problem ; 问题的结构,比如是否是convex的,是否是constrained。
- Choice of parameters in the optimization algorithms ; 选择不同的参数可能会使得时间复杂度不同。
- Characteristic of data ; 数据的特点,比如在图中是否具有Restricted Isometric Property会产生Linear和Sublinear的不同。
在实际问题中,因为问题的结构已经确定,所以我们不能对第一点进行修改,但是我们可以使用机器学习来更好的处理第二点和第三点。
Part Ⅱ Learning Based Optimization : Overview
我们先解释什么是Learning Based Optimization :一般来讲,优化算法中的某些部分是数据依赖的(data depent)。
目前解决的方法大致是有三种:
- Learn optimization algorithms;但是没有理论依据,只能工作在简单任务上。
- Use learnable parameters in the traditional algorithms;
- Use machine learning algorithms to predict solutions;使用机器学习来帮助我们预测方法,如果好的话则接受,不好的话就使用传统方法。
Part Ⅲ Learning Based Optimization : Paradigm 1
这一部分是介绍了 Use learnable parameters in the traditional algorithms;它可以分为三步
- Unfold the iterations of traditional algorithms into DNNs(Computational Graph in a general sense);将传统算法迭代展开成DNN(一般意义上的计算图)
- Introduce learnable parameters in the traditional algorithms(在传统算法中引入可学习参数)
- Train the learnable parameters on training data(在训练数据上训练可学习参数)
以前的工作的很少或者局限性很大。
在我们的工作中我们关注下面这个优化问题。
使用传统的Linear ADMM我们可以将原来的问题分解成下面的几个iterations,注意这里面有一个很特别的运算proximal operator(prox),之后我们会看到如何通过这个特别的让算法变得learnable。
大意是将quadratic部分变成linear,然后它就变成了f的Prox(式2),之后我们可以证明prox可以作为DNN中的activation function,然后我们就可以 p r o x t f prox_{tf} proxtf替换成任意的non-decreasing activation function,以及替换 t A T tA^{T} tAT为可学习参数(learnable parameter) W k − 1 W_{k-1} Wk−1,这样就得到了更一般的形式(式3)。
基于上面的思想,我们就可以将传统的Linear ADMM变成Learnable version。
图中是iteration的过程。之后我们需要准备训练策略(Training Strategy),处理输入和输出,并准备接收新的训练数据。
经过分析可学习方法要比traditional方法要好。
Part Ⅳ Learning Based Optimization : Paradigm 2
这一部分介绍了第二个方法,Use machine learning algorithms to predict solutions,它可以分为三步:
- Predict a solution; 预测一个解决方法
- Test with a monitor condition; 使用一个monitor条件进行测试
- Correction:If the monitor condition is satisfied,accept the predicted solution;otherwise,choose the traditional solution; 矫正:如果monitor条件满足,那么就接受这个预测的方法。否则,使用传统的方法。
之前也有采用monitor机制的,但是他们不是learning based。
我们考虑一个Nonconvex Inverse Problem,Inverse problem(见图公式)是给定观测值y和一些噪音n来恢复ground true x。比如下图中的模糊图像是y和n,它的清晰图像就是x。所以我们可以抽象一个目标函数。
算法的结构。
介绍详细的算法:
eFIMA(Explicit momentum Flexible Iterative Modularization Algorithm)由三部分组成,explicit的原因是在monitor condition中进行了显式的比较。
我们可以看出算法最坏的情况和传统情况相同,所以可以保证算法可以收敛(converge)。
我们给了eFIMA可以收敛的弱证明(因为我们没有假设objective function是convex)
iFIMA(Implicit momentum Flexible Iterative Modularization Algorithm)
同样我们可以证明它的一些属性。
然后,我们将会展示一些使用learning-based algorithm的例子。
Non-blind Deconvolution;后面展示了它的效果。
同样也可以在Blind Deconvolution中使用我们的算法。
去除图片中雨水痕迹,能看出我们的算法更好。
Conclusions
- 机器学习长期都从优化算法中获益。是时候让机器学习帮助优化算法了。这样两个领域的交互更加完整。
- 基于学习的优化可以更好的适用数据的特征来达到更好的表现和更快的收敛。
- 在基于学习的优化算法中,保证收敛非常重要。
- 如果想要得到很好的学习效果的话,基于学习的优化可以很难,并且需要很多技巧(理论和实验上)。
- 我们希望基于学习的优化能收到越来越多的关注。