新颖训练方法——用迭代投影算法训练神经网络-阿里云开发者社区

开发者社区> 【方向】> 正文

新颖训练方法——用迭代投影算法训练神经网络

简介: 本文介绍了一种利用迭代投影算法对神经网络进行训练的方法,首先介绍了交替投影的基础知识,说明投影方法是寻找非凸优化问题解决方案的一种有效方法;之后介绍了差异图的基础知识,将差异图与一些其他算法相结合使得差分映射算法能够收敛于一个好的解决方案;当投影的情况变多时,介绍了分治算法,最后将迭代投影算法应用到神经网络训练中,给出的例子实验结果表明效果不错。
+关注继续查看

更多深度文章,请关注:https://yq.aliyun.com/cloud

 

作者介绍Jesse Clark

8293cf57e34cba700a3cd9a473017b739d1d3627

研究相位恢复的物理学家、数据科学家,有着丰富的建设网站与设计手机应用的经验,在创业公司有着丰富的经验,对创业有着极大的热情。

 Github: https://github.com/jn2clark

Linkedin: http://www.linkedin.com/in/j3ss3cl4rk

相位恢复(PR)关心的是在给定幅度信息以及受到实空间限制,找到复值函数(通常在傅立叶空间中)的相位[1]

PR是一个非凸优化问题,已经成为大量工作[1,2,3,4,5,6,9]的主题,并且成为结晶学的支柱,是结构生物学的中坚力量

下面显示的是PR重建过程的一个例子,展示了3D弥散数据(傅里叶幅度)重构实空间3D密度纳米晶体[15]

1582d35b16b7b80825386276994866e970e3f9d5

大多PR问题的成功算法是基于投影的方法,这是受到凸优化投影到凸集上的启发[10]。由于基于投影的方法在PR上取得成功探索能否使用类似的方法训练神经网络。

交替投影

738ab9dc7400d4866d941609053aa318dc5958a0

凸集投影(POCS)是找到凸集之间交点的有用方法。上面显示了一个简单的例子,其中两个凸约束集C1(红色)和C2蓝色)。通过简单迭代映射连续地投影每个集合来找到交集:

3cfaf5f2282fa69d39c94bf4b71bc45e4091ebd4

其中P各自的集合上的投影。投影是幂等PP=P并且是距离最小化;

P(x)=y以至于33e2f72835a10956c0b97d8189890d7e54e18db9最小;

当满足下式的时候,能够发现解决方案:

d54977aa9958b20ea6a9af990053242dc8396a0a

当约束集非凸时,很少能得出一般结论。因此,使用简单的交替投影可能导致局部最小值的停滞。下面展示一个例子,其中集合被设置为非凸,找到交集(全局小值)的能力高度依赖于初始猜测

57ebb6657d27c4cebd050bb9571c2f2a74d94e31

尽管集合凸的情况下失去了保障,但投影方法证明是寻找非凸优化问题解决方案的一种有效方法。例子包括数独、n皇后问题图形着色和相位检索[4,10]

差异图

最成功的非凸投影算法之一是差分图(DM)[4,8],可以写成

0f9d77805a8190f99f5a748ed48def79b29f2c69

其中

067d1fc68d787aeb2f3daa4014e24136eebe1bcb

其中y1和y2被称为估计。一旦达到定点

3197703b6a36567a735776b90268658b410227fd

这意味着两个估计等价于解决方案

0f810da3975723b48ed178ac76bdd27f15cde6b5

差异图通过作为泛化或等价特定超参数,关联了PR文献中许多的不同算法[1,3,6]不于上述形式,简单版本差异图经常被使用

b604bfebb15b24b8b92ad4e571fc3b7017e09b51

这种更简单的版本通常表现良好,并减少每次迭代所需的投影数量(投影的顺序也可以切换)。公式中的2P2-I也被称为反射操作,出现在许多投影算法中[9]

同样的非凸问题如下所示,使用差分映射算法被困在局部最小值中,而是能够逃脱搜索更多的解空间,最后收敛一个解决方案。

cf220dd0037aed4ef5be11f9cde3603f1efcdec2

分治算法

差异图先前被定义为两个投影,那么当有两个以上时会发生什么呢?在这种情况下,定义一个新的迭代X,它是n重复连接[10]

038a1bc7b2887968ff1137a27a40ab0b18ca6d0d

然后定义平均和直积投影;

52d66299f71d58223d288321e042b522957f9e61

其中Pll投影,x是加权和;

a6147e595ed94442a7c9173f154a4a1c8eeb4782

那么许多预测的差异图

9e6026186163a00142f9243b725b779ecfda30d4

更新X:

84ad0d1eb3d398afc1c9df8f8218591372302551

这种方法被称为“分治算法”。下面是一个数独拼图的迭代例子,收敛使用差异图与分治算法

2fe9c5ca429d38df178803b77b92f64c6f08bfca

数独有4个约束每行的数字为1到9,每列的数字为1到9,3x3子方格的数字为1到9,最后数字与部分填充的模板一致。代码实现这个例子

用于训练神经网络的投影

对差异图投影及其在非凸优化中的应用有了解,下一步是对神经网络的训练进行预测。下例仅考虑一个分类任务基本思想是寻找一个正确分类数据的权重向量将数据分解成K个子集

719a9e052cabc837fe4a64508976ed5b7ae3c335

定义一个“投影”权重的投影,使得子集中的所有训练数据被正确分类(或者损失为0)。实际上,使用的是子集的梯度下降来实现投影(基本上是过度拟合的点)。目标是获得能正确分类每个数据子集的权重,并且查找这些集合的交集。

结果

为了测试训练方案(代码,使用标准方法[13]训练一个小型网络,并将其与基于投影的方法进行比较。小型网络使用非常简单的层,大约包含22000个参数; 1个卷积层,8个3x3滤波器2个子采样1个全连接层(激活函数为ReLU),16个节点最后softmax10个输出(MNIST的10类)。使用Glorot uniform[11]初始化权重

下图显示其平均训练和测试损失曲线:

e03afedc47bfb2f7abbc76e75a0e3f06ec99cb0c

训练损失曲线

9682470245de3125f87ee3b2d642e85bacedc693

测试损失函数

从图中可以出效果不错。训练数据被分为大小相同的3组,都被用于投影约束。对于投影而言,需要找到一组最新的权重,使其与先前一组权重的距离最小另外使用梯度下降法进行训练,一旦训练数据的准确度达到99%就终止投影。更新后的权重投影到3组上产生3个新的权重集合,这些集合连接在一起以形成

41b46f89b66cf3bff2e165d3f5ea9ae0f9cf55d7

平均投影可以通过将权重平均得到之后进行复制并连接形成新的向量

1dc98aa873d97c3b500e0ab37fc7f954f4187ad7

根据差异图将这两个投影步骤组合以获得权重的更新方案。除了常规度量外,还可以监视差异图误差来寻找收敛。差异映射误差由下式定义:

a8b67c2bc4dc65fdc7480ba806a2783547f649e2

上式值越低,表明解决方案越。差异图错误达到稳定表明已经找到了一个近似的解决方案。差异图错误通常在稳定突然下降[4],表明找到合适的解决方案。

67c3015a68fe1bacf4378314fa989e94bec8e49e

在上例中,投影是通过训练数据子集上的反复梯度变化定义,本质上是过度拟合的点。在下例中,遍历完一次训练数据终止投影

下面显示的是平均cv测试和训练误差(与上述相同的常规训练相比)

9eb15578194f31947ad2cdaea989b9ab57a6080d

66ba6ca81398eeb0776abdda16df2cdbeeaeb147

478674c51c616a43265b9186c4e12014ab9605d4

从图中可以看到这种方法仍然可行,为什么会这样呢?如果投影操作提前终止,那么想到的一点就是简单地将投影视为一个松弛投影或非最佳投影。凸优化和PR的结果[4,5,7,14]仍然表明,松弛投影或非最佳投影趋于的解决方案。另外,在单遍历投影限制中,可以通过交替投影来恢复传统的基于梯度下降的训练方案(以3组为例)

a5bc188b28b440f651733ed296c1c0f4027fd8f1

最后,常规训练中的参数设置会对网络的结果产生很大的影响,具体参数设置可以查看原文。训练这样的网络并执行提前终止,传统训练方法最终损失和准确度分别为0.0724和97.5%,使用差异图方法的结果分别为0.0628和97.9%。

投影方法扩展

关于投影方法的好处之一是可以轻松实现额外的约束。对于L1正则化而言,可以定义收缩或软阈值操作,如

944752dbcecf0a5c5056b6545c4f54d9e3210974

其他投影可以是卷积核的对称性或权重的直方图约束。

其他注意事项

本文还有很多未回答的问题,并没有深入研究比如最佳集合数是多少投影操作如何工作、近解决方案平均有助于泛化等问题。虽然还有很多问题需要回答,但是使用相位检索和非凸投影方法来重新构建训练得到了一些有趣的结果。

参考文献

[1] J.R. Fienup, "Phase retrieval algorithms: a comparison". Applied Optics 2758-2769 (1982).

[2]  H.H. Bauschke, P.L. Combettes, and D.R. Luke, "Phase retrieval, error reduction algorithm, and Fienup variants: a view from convex optimization". Journal of the Optical Society of America A. 19:1334-1345 (2002).

[3] Bauschke H H, Combettes P L and Luke D R "Hybrid projection–reflection method for phase retrieval" J. Opt. Soc. Am. A 20 1025–34 (2003).

[4] V. Elser, 'Phase retrieval by iterated projections', J. Opt. Soc. Am. A/Vol. 20, (2003).

[5] S. Marchesini, H. He, H. N. Chapman, S. P. Hau-Riege, A. Noy, M. R. Howells, U. Weierstall, and J. C. H. Spence, "X-ray image reconstruction from a diffraction pattern alone" Phys. Rev. B 68, 140101 (2003).

[6]Luke Russel D, “Relaxed averaged alternating reflections for diffraction imaging” Inverse problems, 21, 37-50 (2005).

[7] Pierre Thibault, Veit Elser, Chris Jacobsen, David Shapiro and David Sayre, 'Reconstruction of a yeast cell from X-ray diffraction data', Acta. Cryst. (2006).

[8]  V. Elser, et al. "Searching with iterated maps" 104 (2), 418-423 (2007).

[9] S. Marchesini, "A unified evaluation of iterative projection algorithms for phase retrieval", Review of Scientific Instruments 78 (2007).

[10] S. Gravel, V. Elser, "Divide and concur: A general approach to constraint satisfaction". Physical Review E. (2008).

[11]  X Glorot, Y Bengio, "Understanding the difficulty of training deep feedforward neural networks.", Aistats 9, 249-256 (2010).

[12]  Pierre Thibault& Andreas Menzel, "Reconstructing state mixtures from diffraction measurements"", Nature 494, 68–71 (2013).

[13] Diederik Kingma, Jimmy Ba, "Adam - A Method for Stochastic Optimization" (http://arxiv.org/abs/1412.6980v8) (2014).

[14]  J. N. Clark, X Huang, RJ Harder, IK Robinson, "Dynamic Imaging Using Ptychography"" Physical Review Letters 112, 113901 (2014).

[15]Jesse N. Clark, Johannes Ihli, Anna S. Schenk, Yi-Yeoun Kim, Alexander N. Kulak, James M. Campbell, Gareth Nisbet, Fiona C. Meldrum & Ian K. Robinson "Three-dimensional imaging of dislocation propagation during crystal growth and dissolution", Nature Materials 14, 780–784 (2015)

 数十款阿里云产品限时折扣中,赶紧点击领劵开始云上实践吧!

本文由北邮@爱可可-爱生活老师推荐,阿里云云栖社区组织翻译。

文章原标题《Training neural networks with iterative projection algorthms》,作者:Jesse Clark,译者:海棠,审阅:tiamo_zn

文章为简译,更为详细的内容,请查看原文

 

版权声明:本文内容由阿里云实名注册用户自发贡献,版权归原作者所有,阿里云开发者社区不拥有其著作权,亦不承担相应法律责任。具体规则请查看《阿里云开发者社区用户服务协议》和《阿里云开发者社区知识产权保护指引》。如果您发现本社区中有涉嫌抄袭的内容,填写侵权投诉表单进行举报,一经查实,本社区将立刻删除涉嫌侵权内容。

相关文章
《BI那点儿事》Microsoft 神经网络算法
原文:《BI那点儿事》Microsoft 神经网络算法 Microsoft神经网络是迄今为止最强大、最复杂的算法。要想知道它有多复杂,请看SQL Server联机丛书对该算法的说明:“这个算法通过建立多层感知神经元网络,建立分类和回归挖掘模型。
767 0
阿里云服务器怎么设置密码?怎么停机?怎么重启服务器?
如果在创建实例时没有设置密码,或者密码丢失,您可以在控制台上重新设置实例的登录密码。本文仅描述如何在 ECS 管理控制台上修改实例登录密码。
9950 0
阿里云服务器端口号设置
阿里云服务器初级使用者可能面临的问题之一. 使用tomcat或者其他服务器软件设置端口号后,比如 一些不是默认的, mysql的 3306, mssql的1433,有时候打不开网页, 原因是没有在ecs安全组去设置这个端口号. 解决: 点击ecs下网络和安全下的安全组 在弹出的安全组中,如果没有就新建安全组,然后点击配置规则 最后如上图点击添加...或快速创建.   have fun!  将编程看作是一门艺术,而不单单是个技术。
10878 0
神经网络图的简介(基本概念,DeepWalk以及GraphSage算法)
本文旨在介绍图形神经网络的基础知识两种较高级的算法,DeepWalk和GraphSage。
484 0
阿里云服务器如何登录?阿里云服务器的三种登录方法
购买阿里云ECS云服务器后如何登录?场景不同,阿里云优惠总结大概有三种登录方式: 登录到ECS云服务器控制台 在ECS云服务器控制台用户可以更改密码、更换系.
13698 0
【AAAI Oral】阿里提出新神经网络算法,压缩掉最后一个比特
在利用深度网络解决问题的时候人们常常倾向于设计更为复杂的网络收集更多的数据以期获得更高的性能。但是,随之而来的是模型的复杂度急剧提升,参数越来越多,给深度学习在设备上的应用带来挑战。阿里iDST团队最新提出的ADMM神经网络压缩和加速算法,可以无损地压缩掉最后一个比特。
4326 0
计算机网络 自顶向下方法 第三章 运输层
版权声明:本文为博主原创文章,未经博主允许不得转载。 https://blog.csdn.net/a724888/article/details/78206492 第三章 运.
1114 0
网络安全与机器学习(一):网络安全中的机器学习算法
网络安全遇见机器学习,会摩擦出怎样的火花呢?
2984 0
计算机网络 自顶向下方法 第二章 应用层
版权声明:本文为博主原创文章,未经博主允许不得转载。 https://blog.csdn.net/a724888/article/details/78197072 计算机网络 自顶向下方法 第二章 应用层  分类:计算机网络-笔记(2)  版权声明:本文为博主原创文章,未经博主允许不得转载。
1228 0
+关注
【方向】
欢迎各位对内容方向及质量提需求,我们尽量满足,将国外优质的内容呈现给大家!
707
文章
5
问答
文章排行榜
最热
最新
相关电子书
更多
《2021云上架构与运维峰会演讲合集》
立即下载
《零基础CSS入门教程》
立即下载
《零基础HTML入门教程》
立即下载