Symbolic Discovery of Optimization Algorithms

news/2024/11/28 14:54:42/文章来源:https://www.cnblogs.com/MTandHJ/p/18574308

目录
  • Lion
  • 代码

Chen X., Liang C., Huang D., Real E., Wang K., Liu Y., Pham H., Dong X., Luong T., Hsieh C., Lu Y. and Le Q. V. Symbolic discovery of optimization algorithms. NeurIPS, 2024.

本文搜索出了一个优雅的, 且经验上似乎更好的优化器: Lion.

Lion

  • 作者通过一些技巧, 搜索出了一个优雅的优化器, 和 Adam 的最大不同在于:

    1. 它仅需要维护一个 momentum (一阶);
    2. 更新的时候采用的是符号梯度更新.
  • 特别地,

    \[c_t \leftarrow \beta_1 m_{t-1} + (1 - \beta_1) g_t, \]

    这个保证了我们可以像 Adam 一样通过 \(\beta_1\) 控制对当前梯度 \(g_t\) 的一个倾向.

  • 作者认为, 符号梯度 \(\text{sign}(c_t)\) 的一个优势就是能够保证模型整体的参数的大小是保持一致的, 所以泛化性更好. 实际上, 作者发现, 有些时候, Lion 最终的收敛的损失可能是比 AdamW 要高的, 但是最终在验证集上的实际精度却是要更高, 这一定程度上说明了猜想的合理性.

  • 在权重调节方面, 与 AdamW 稍有不同:

    1. \((\beta_1, \beta_2)\) 的建议大小为 \((0.9, 0.99)\) 而不是和 AdamW 一样的 \((0.9, 0.999)\).
    2. Lion 学习率差不多为 AdamW 的学习率的 1/10~1/3 (既然采用的是符号梯度);
    3. Lion 所需要的 weight_decay 系数则要相应的乘上 3-10, 则是为了保持:

      \[lr * \lambda \]

      不变.

代码

[official-code]

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.hqwc.cn/news/842881.html

如若内容造成侵权/违法违规/事实不符,请联系编程知识网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

RAG实验:块大小分割实验、矢量存储;FAISS 与 Chroma、向量存储和 Top k、向量存储中的距离度量

比较 RAG 第 1 部分:块大小分割实验我探索了 RAG 模型中的各种块大小,并使用专为评估检索器组件而设计的 RAGAS 评估器对其进行了评估。如您所知,检索器部分会生成随后输入到语言模型 (LLM) 中的“上下文”。 在这个实验中,我采用了BGE作为嵌入技术(它在 HuggingFace 的排…

ssh登录出现sign_and_send_pubkey: no mutual signature supported

加上-o PubkeyAcceptedKeyTypes=+ssh-rsa 例如:ssh -i key.txt stinky@172.16.1.143 -o PubkeyAcceptedKeyTypes=+ssh-rsa

win小工具合集(持续更新)

日常、工作使用的win小工具推荐 一、Snipaste(截屏)安静的躺在后台,随时随地F1光速截屏和编辑,贴图也OK。 二、Ditto(剪贴板)安静的躺在后台,随时随地Ctrl + ~查看和粘贴曾经复制过的内容(包括图片),且支持搜索,再也不用频繁Ctrl + c了。 三、PotPlayer(音视频播放…

高性能C++内存映射库mio使用心得

背景 在C++编程中,高效的数据访问至关重要,而内存映射文件(Memory Mapped Files)提供了一种强大的工具,它允许我们直接将文件内容加载到进程地址空间,从而以极高的效率进行读写操作。今天,我们要向大家推荐一个轻量级且易于使用的开源库——mio。 项目介绍 mio是一个头文…

destoon8.0开启根据时间归档

destoon8.0开启根据时间归档,代码如下:<?php define(DT_REWRITE, true); require ../common.inc.php; $EXT[archiver_enable] or dheader(DT_PATH); //$DT_BOT or dheader(DT_PATH); $N = $M = $T = array(); $mid or $mid = 5; $vmid = $list = 0; foreach($MODULE as $…

外委项目进度控制全攻略:产品经理如何实现精准把控

在现代企业的项目管理中,尤其是面对外委项目,产品经理扮演着至关重要的角色。作为项目的核心负责人,产品经理需要不仅要把控产品质量,还要合理安排开发进度、协调各方资源,并确保项目能够按期、按质交付。尤其对于外委项目来说,由于涉及到第三方供应商和多个团队的协作,…

新型大语言模型的预训练与后训练范式,苹果的AFM基础语言模型Aq

前言:大型语言模型(LLMs)的发展历程可以说是非常长,从早期的GPT模型一路走到了今天这些复杂的、公开权重的大型语言模型。最初,LLM的训练过程只关注预训练,但后来逐步扩展到了包括预训练和后训练在内的完整流程。后训练通常涵盖监督指导微调和对齐过程,而这些在ChatGPT的…

15个必备项目管理软件与10款最常用的,最终你选哪款?

项目管理软件在现代项目管理中扮演着至关重要的角色,它能帮助团队理清项目脉络、实时追踪进度、确保任务按时完成,提升团队工作效率和协作能力。 在当今竞争激烈的商业环境中,项目的复杂性和多样性不断增加,项目管理软件成为了不可或缺的工具。它可以将庞大的项目分解为具体…

【NLP高频面题 - LLM架构篇】LLM为何使用GQA代替MHA?

【NLP高频面题 - LLM架构篇】LLM为何使用GQA代替MHA? 重要性:★★ 💯 NLP G【NLP高频面题 - LLM架构篇】LLM为何使用GQA代替MHA? 重要性:★★ 💯NLP Github 项目:NLP 项目实践:fasterai/nlp-project-practice 介绍:该仓库围绕着 NLP 任务模型的设计、训练、优化、部…

【NLP高频面题 - LLM架构篇】LLM对Transformer都有哪些优化?

【NLP高频面题 - LLM架构篇】LLM对Transformer都有哪些优化? ⚠︎ 重要性:★★【NLP高频面题 - LLM架构篇】LLM对Transformer都有哪些优化? ⚠︎ 重要性:★★★ 💯NLP Github 项目:NLP 项目实践:fasterai/nlp-project-practice 介绍:该仓库围绕着 NLP 任务模型的设计、…

Win7 .lnk快捷方式被绑定到以wps打开导致所有快捷方式失效

最终通过FileTypesMan解决问题,FileTypesMan可以非常详细的编辑文件类型,找到.lnk,把用户选择项内容按退格键删除:让.lnk属性保持这样:正常的.lnk配置如下:保证类型名称是inkfile,用户选择处为空。 .lnkfile有的电脑没有,也是正常的 重启电脑或者结束explorer进程,重新打…

【应急响应】Linux 计划任务与 DFIR 排查实践(二)

#linux应急响应 at服务 #cron 服务 #隐藏任务 🔖 在上一节【linux应急响应】Linux 计划任务与 DFIR 排查实践(一)中,我们深入探讨了 cron 服务,从基础排查到隐藏任务的分析排查,这一节我们一块看看cron的小兄弟at服务。免责声明 本公众号文章中的程序、方法、信息和工具…