还在苦恼怎么给优化器调整更好的参数吗?
现在,谷歌大脑搞出了一个新的优化器 VeLO,无需手动调整任何超参数,直接用就完事了。
与其他人工设计的如 Adam、AdaGrad 等算法不同,VeLO 完全基于 AI 构造,能够很好地适应各种不同的任务。
当然,效果也更好。论文作者之一 Lucas Beyer 将 VeLO 与其他“重度”调参的优化器进行了对比,性能不相上下:
有网友看到了一丝优化器进步的曙光:
在 Adam 之后出现了不少优化器,却都表现得非常失败。这个优化器或许确实能表现更好。
所以,这个基于 AI 的优化器是如何打造的?
在训练神经网络的过程中,优化器(optimizer)是必不可少的一部分。
但 AI 模型应用都这么广泛了,训练 AI 模型用的优化器却仍然是人工设计的,听起来多少有点不合理。
于是谷歌大脑的研究人员灵机一动:为何不用 AI 来做一个优化器呢?
设计上,优化器的原理基于元学习的思路,即从相关任务上学习经验,来帮助学习目标任务。
相比迁移学习,元学习更强调获取元知识,它是一类任务上的通用知识,可以被泛化到更多任务上去。
基于这一思想,VeLO 也会吸收梯度并自动输出参数更新,无需任何超参数调优,并自适应需要优化的各种任务。
架构上,AI 优化器整体由 LSTM(长短期记忆网络)和超网络 MLP(多层感知机)构成。
其中每个 LSTM 负责设置多个 MLP 的参数,各个 LSTM 之间则通过全局上下文信息进行相互协作。
训练上,AI 优化器采用元训练的方式,以参数值和梯度作为输入,输出需要更新的参数。
经过 4000 个 TPU 月(一块 TPU 运行 4000 个月的计算量)的训练,集各种优化任务之所长后,VeLO 终于横空出世。
结果表明,VeLO 在 83 个任务上的加速效果超过了一系列当前已有的优化器。
其中 y 轴是相比 Adam 加速的倍率,x 轴是任务的比例。
结果显示,VeLO 不仅比无需调整超参数的优化器效果更好,甚至比仔细调整过超参数的一些优化器效果还好:
与“经典老大哥”Adam 相比,VeLO 在所有任务上训练加速都更快,其中 50% 以上的任务比调整学习率的 Adam 快 4 倍以上,14% 以上的任务中,VeLO 学习率甚至快上 16 倍。
而在 6 类学习任务(数据集 + 对应模型)的优化效果上,VeLO 在其中 5 类任务上表现效果都与 Adam 相当甚至更好:
值得一提的是,这次 VeLO 也被部署在JAX中,看来谷歌是真的很大力推广这个新框架了。
巴特,也有网友认为耗费 4000 个 TPU 月来训练 VeLO,计算量成本过大:
虽然这个进展很重要,但它甚至都快赶上 GPT-3 的训练量了。
目前 VeLO 已经开源,感兴趣的小伙伴们可以去试试这个新的 AI 优化器。
前段时间,一位哈佛博士生提了个有意思的想法,得到不少人赞同:
更多论文的作者们也应该像演职员表一样,公开自己在论文中的工作内容。
Kareem Carr 是生物统计学领域的博士生,作者贡献在生物论文中比较常见,不过之前在 AI 论文中见得不多。
现在,这篇谷歌大脑论文的作者们也这样做了,谁写的论文、谁搭建的框架一目了然:
不知道以后会不会成为机器学习圈的新风气(手动狗头)。
GitHub 地址:
https://github.com/google/learned_optimization/tree/main/learned_optimization/research/general_lopt
论文地址:
https://arxiv.org/abs/2211.09760
参考链接:
[1]https://twitter.com/jmes_harrison/status/1593422054971174912
[2]https://medium.com/huggingface/from-zero-to-research-an-introduction-to-meta-learning-8e16e677f78a#afeb
[3]https://mp.weixin.qq.com/s/QLzdW6CMkcXWQbGjtOBNwg
本文来自微信公众号:量子位 (ID:QbitAI),作者:萧箫
广告声明:文内含有的对外跳转链接(包括不限于超链接、二维码、口令等形式),用于传递更多信息,节省甄选时间,结果仅供参考,IT之家所有文章均包含本声明。