当前位置: 首页 > news >正文

九江网站设计黑龙江省建设工程交易中心网站

九江网站设计,黑龙江省建设工程交易中心网站,医疗网站建设基本流程图,东莞阳光网官网首页文 | 重剑无锋知乎源 | 极市平台关于一篇顶会论文是如何产生的这件事—且看作者为你娓娓道来#xff0c;如何从一形成routine的日常科研生活中挖掘到巧妙的产出。最近完成了一篇很满意的论文#xff0c;不仅整个过程愉快#xff0c;回味无穷#xff0c;而且真正做到了“学术…文 | 重剑无锋知乎源 | 极市平台关于一篇顶会论文是如何产生的这件事—且看作者为你娓娓道来如何从一形成routine的日常科研生活中挖掘到巧妙的产出。最近完成了一篇很满意的论文不仅整个过程愉快回味无穷而且真正做到了“学术有影响 工业有产出”可以肯定这篇文章会改变差分隐私differential privacyDP深度学习的范式。因为这次经历实在太过“巧”了 过程充满巧合 结论极其巧妙在此和同学们分享一下自己从观察--构思--实证--理论--大规模实验的完整流程尽量保持lightweight不涉及过多技术细节代码放在底部。论文标题:Automatic Clipping: Differentially Private Deep Learning Made Easier and Strongerarxiv.org/abs/2206.07136论文链接:https://arxiv.org/abs/2206.07136尤其与paper展现的顺序不同paper有时会刻意将结论放在开头吸引读者或者先介绍简化后的定理而将完整的定理放附录而我想将我的经历按时间顺序写下也就是流水账 比如把走过的弯路和研究中突发的状况写出来以供刚踏上科研之路的同学参考。一、 文献阅读我每天都会读arXivDaily学术速递里所有机器学习和统计的文章标题及简介大概每天150篇 所以DP的文章基本第一时间就能知道。事情的起源是斯坦福的一篇论文现在已经录了ICLR文章写的非常好总结起来三个主要贡献在NLP任务中DP模型的accuracy非常高鼓励了privacy在语言模型的应用 与之相对的是CV中DP会产生非常大的accuracy恶化 比如cifar10目前DP限制下只有80%accuracy而不考虑DP可以轻松95%ImageNet当时最好的DP accuracy不到50%在语言模型上模型越大性能会越好。比如GPT2中从4亿参数到8亿参数性能提升很明显也取得了很多SOTA但是在CV和推荐系统中很多时候更大的模型性能会很差甚至接近random guess。比如CIFAR10的DP best accuracy此前是由四层CNN得到的而非ResNet▲NLP任务中DP模型越大性能越好 [Xuechen et al. 2021]在多个任务上取得SOTA的超参数是一致的都是clipping threshold要设置的足够小并且learning rate需要大一些此前所有文章都是一个任务调一个clipping threshold 费时费力并没有出现过像这篇这样一个clipping threshold0.1 贯穿所有任务表现还这么好以上总结是我读完paper瞬间理解的其中括号内的内容并非来此这篇paper而是以往诸多阅读产生的印象这有赖于长期的阅读积累和高度的概括能力才能快速联想和对比出来。事实上很多同学做文章起步难恰恰就在于看一篇文章只能看到一篇文章的内容无法和整个领域的知识点形成网络产生联想。这一方面由于刚入门的同学阅读量不够尚未掌握足够的知识点尤其是长期从老师手中拿课题不自己独立propose的同学容易有这个问题。另一方面则是阅读量随够但没有时时归纳总结导致信息没有凝聚成知识或者知识没有串联。这里补充下DP deep learning的背景知识暂且略过DP的定义不影响阅读所谓DP deep learning 从算法的角度来说其实就是多做两个额外的步骤per-sample gradiet clipping和Gaussian noise addition换句话来说只要你把gradient按照这两步处理完了处理后的gradient叫做private gradient之后该怎么用优化器怎么用SGD/Adam都可以。至于最后算法到底多private就是另一个子领域的问题了称为privacy accounting theory 此领域相对成熟而且需要极强的理论功底由于本文专注于optimization 按下不表。▲g_i 是 一个数据点的梯度per-sample gradientR是clipping threshold, sigma是noise multiplier。其中Clip叫做clipping function 就跟常规的gradient clipping一样梯度长于R就剪到R小于R就不动。比如DP版本的SGD就是目前所有paper全都用的是隐私深度学习开山之作Abadi, Martin, et al. Deep learning with differential privacy.中的clipping function也称为Abadis clipping但这是完全不必要的遵循第一性原理 从privacy accounting theory出发。其实clipping function只需要满足Clip(g_i)*g_i的模小于等于R就可以了也就是说Abadis clipping只是一种满足这个条件函数绝非唯一。二、切入点一篇文章的闪光点很多但是并非都能为我所用要结合自身的需求和擅长去判断最大的贡献是什么。这篇文章前两个贡献其实非常empirical也很难深挖而最后一个贡献很有意思。我仔细看了看超参数的ablation study 发现一个原作者没有发现的点在clipping threshold足够小的时候其实clipping threshold也就是clipping norm C在上面的公式中和R是一个变量没有作用。▲纵向来看 C0.10.41.6对DP-Adam没什么区别 [Xuechen et al. 2021]这引起了我的兴趣感觉背后一定有什么原理于是我手写了他们所用的DP-Adam来看看为什么其实这很简单如果R足够小clipping其实等价于normalization简单代入private gradient1.1可以将R从clipping的部分和noising的部分分别提出来。而Adam的形式使得R会同时出现在梯度和自适应的步长中分子分母一抵消R就没有了顶会idea就有了▲m和v都依赖于梯度同时用private梯度替换即得到DP-AdamW。就这么简单的代换就证明了我的第一个定理在DP-AdamW中足够小的clipping thresholds是互相等价的无需调参的。毫无疑问这是一个很简明而且很有趣的观察但这并没有足够的意义所以我需要思考这个观察在实际中有什么用途。其实这意味着DP训练减少了一个数量级的调参工作假设学习率和R各调5个值如上图 那就要测25种组合才能找到最优超参数现在只需要调学习率5种可能就好调参效率提高了数倍这是对业界来说极有价值的痛点问题。立意足够高数学足够简明一个好的想法已经初具雏形。三、简单扩展只对Adam/AdamW成立的话这个工作的局限性还是太大了。所以我很快扩展到了AdamW和其他adaptive optimizers比如AdaGrad。事实上对于所有的adaptive optimizers 都可以证明clipping threshold会被抵消从而不用调参大大增加了定理的丰富程度。这里面还有一个有趣的小细节众所周知 Adam with weight decay和AdamW不一样后者使用的是decoupled weight decay 就这个区别还发了篇ICLR。▲Adam有两种加weight decay的方式这个区别在DP优化器中也存在同样是Adam 用decoupled weight decay的话缩放R不影响weight decay的大小但是用普通的weight decay的话放大R两倍等价于缩小两倍的weight decay。四、另有乾坤聪明的同学可能已经发现了我一直再强调自适应优化器为啥不讲讲SGD呢? 答案是在我写完DP自适应优化器的理论后Google紧接着就放了一篇DP-SGD用在CV的文章也做了ablation study但是规律和在Adam上发现的完全不同给我留下了一个对角的印象。▲对DP-SGD且R足够小的时候增大10倍lr等于增大10倍R [https://arxiv.org/abs/2201.12328]当时我看到这篇文章的时候很兴奋因为又是一个证明small clipping threshold效果好的论文。在科学界连续的巧合背后往往有着隐藏的规律。简单的代换一下发现SGD比Adam还好分析 1.3可以近似为显然R又可以提出来和学习率 \eta\eta 组合在一起从理论上证明了Google的观察“Specifically, when the clipping norm is decreased k times, the learning rate should be increased k times to maintain similar accuracy.”很可惜 Google只看到现象没有上升到理论的高度这里也有一个巧合那就是上图他们同时画了两种尺度的ablation study 只有左边的尺度能看出对角线光看右边是没有结论的...由于没有自适应步长SGD不像Adam一样无视R而是把R看作学习率的一部分所以不需要调节 反正学习率要调参。再将SGD的理论扩充到momentum所有Pytorch支持的优化器全都分析完毕。五、从直觉到严谨一个创新点是有了但是Abadis clipping严格来说只是近似normalization不能划等号也就没法确凿的分析收敛性。根据多啦A梦铁人兵团原理我直接命名normalization为新的clipping function 替代了整个领域用了6年的Abadi clipping这是我的第二个创新点。经过刚才的证明新的clipping严格不需要R所以称之为automatic clipping AUTO-V; V for vanilla既然形式上与Abadis clipping有不同那么accuracy就会有差异而我的clipping可能有劣势。所以我需要写代码测试我的新方法而这 只需要改动一行代码 (毕竟只是把事实上DP per-sample gradient clipping这个方向总共只有三种clipping functions。除了Abadis clipping以外的两种都是我提出的一个是global clipping还有一个就是这篇automatic clipping而在先前的工作中我就已经知道怎么在各个流行的库中改clipping了。我将修改方法放在文章最后一个appendix。经过我的测试我发现斯坦福的文章中GPT2在整个训练过程中所有itertation所有per-sample gradient都是clip过的。也就是说至少在这一个实验上Abadis clipping完全等价于automatic clipping。虽然后来的实验的确有输于SOTA的情况但这已经说明了我的新方法有足够的价值一个不需要调整clipping threshold的clipping function 而且有时accuracy也不会牺牲。六、 回归抽象思考斯坦福的文章有两大类语言模型的实验一类是GPT2为模型的生成型任务另一类是RoBERTa为模型的分类型任务。虽然在生成任务上automatic clipping和Abadis clipping等价 但是分类型任务却总是差几个点的准确率。出于我自己的学术习惯这个时候我不会去换数据集然后专门挑我们占优的实验发表更不会增加trick比如做数据增强和魔改模型之类的。我希望在完全公平的比较中只比较per-sample gradient clipping的前提下尽可能做出最好的不含水分的效果。事实上在和合作者讨论中我们发现纯粹的normalization和Abadis clipping比梯度大小的信息是完全抛弃的。也即是说对于automatic clipping无论原始的梯度多大 clip后都是R这么大而Abadi对于比R小的梯度是保留了大小的信息的。基于这个想法我们做了一个微小但极其巧妙的改动称之为AUTO-S clipping S代表stable。将R和学习率融合后变成简单一画可以发现这个小小的 \gamma\gamma (一般设为0.01 其实设成别的正数都行 很稳健就能保留梯度大小的信息。基于这个算法还是只改动一行把斯坦福的代码重跑一遍六个NLP数据集的SOTA就到手了。▲在E2E生成任务上AUTO-S超越了所有其他clipping function在SST2/MNLI/QNLI/QQP分类任务也是。七、要做通用算法斯坦福文章的一个局限性是只专注于NLP又很巧合的是紧接着Google刷了ImageNet的DP SOTA两个月后Google子公司DeepMind放出了一篇DP在CV中大放异彩的文章直接将ImageNet从48%提升到84%https://arxiv.org/abs/2204.13650在这篇文章中我第一时间去看优化器和clipping threshold的选择直到我在附录翻到这张图▲DP-SGD在ImageNet上的SOTA也是需要clipping threshold足够小依然是small clipping threshold效果最好有了三篇高质量的文章支撑 automatic clipping已经有了很强的动机了我越发肯定自己的工作会是非常杰出的。巧合的是DeepMind这篇文章也是纯实验没有理论这也导致他们差点就领悟出了他们可以从理论上不需要R。事实上他们真的非常接近我的想法了他们甚至已经发现了R是可以提取出来和学习率融合的 感兴趣的同学可以看看他们的公式2和3 但是Abadis clipping的惯性太大了... 即使他们总结出了规律却没有更进一步。▲DeepMind也发现了small clipping threshold效果最好但是没有理解为什么。受这篇新的工作启发我开始着手做CV的实验让我的算法能被所有DP研究者使用而不是NLP搞一套方法CV搞另一套。好的算法就是应该通用好用事实也证明 automatic clipping在CV数据集上同样能取得SOTA。八、理论为骨 实验为翼纵观以上所有的论文都是SOTA提升显著工程效果拔满但是理论完全空白。当我做完所有实验的时候这份工作的贡献已经超过了一篇顶会的要求我将经验上small clipping threshold所产生的DP-SGD和DP-Adam的参数影响大大简化提出了新的clipping function而不牺牲运算效率、隐私性还不用调参小小的 \gamma\gamma 修复了Abadis clipping和normalization对梯度大小信息的破坏充足的NLP和CV实验都取得了SOTA的准确率。我还没有满意一个没有理论支撑的优化器还是无法为深度学习做出实质贡献。每年顶会提出的新优化器几十个第二年全都扫进故纸堆Pytorch官方支持的、业界真正在用的还是那么几个。为此我和合作者们额外花了两个月做了automatic DP-SGD收敛性分析过程艰难但最后的证明简化到极致。结论也很简单将batch size、learning rate、model size、sample size等变量对收敛的影响都定量的表达出来并且符合所有已知的DP训练行为。特别的我们证明了DP-SGD虽然收敛的比标准的SGD慢但是iteration趋于无穷的话收敛的速度都是一个数量级的这为隐私计算提供了信心DP模型收敛虽迟但到。九、撞车了...终于写了7个月的文章完稿了没想到巧合还没停5月份NeurIPS投稿 6/14内部修改完放arXiv结果6/27看到微软亚州研究院MSRA发表了一篇和我们撞车的文章提出的clipping和我们的automatic clipping一摸一样▲和我们的AUTO-S分毫不差仔细看了看连收敛性的证明都差不多而我们两组人又没有交集可以说隔着太平洋的巧合诞生了。这里稍微讲一下两篇文章的不同对方文章稍偏理论比如额外分析了Abadi DP-SGD的收我只证了automatic clipping 也就是他们文中的DP-NSGD可能我也不知道咋整DP-SGD用的假设也有一些不同而我们实验做的多一些大一些十几个数据集更显式地建立了Abadis clipping和normalization的等价关系比如Theorem 1和2解释为什么R可以不用调参。既然是同时期的工作我很开心能有人literally不谋而合互相能补充共同推动这个算法让整个社群尽快相信这个结果并从中受益当然私心来说也提醒自己下一篇要加速了十、总结回顾这篇文章的创作历程从起点来看基本功一定是前提。而另一个重要的前提是自己心中一直念念不忘调参这个痛点问题正是久旱所以读到合适的文章才能逢甘露至于过程核心在于将观察数学化理论化的习惯反倒在这个工作中代码实现能力不是最重要的我会再写一篇专栏着重讲讲另一个硬核代码工作最后的收敛性分析也是靠合作者和自己的不将就所幸好饭不怕晚继续前进P.S. 我的paper没有公布代码 因为别人的codebase写了几万行 我就改一行实在没有发布的必要比如Facebook的DP代码库Opacus(https://github.com/pytorch/opacus) version 1.1.3只需要把https://github.com/pytorch/opacus/blob/main/opacus/optimizers/optimizer.py(https://github.com/pytorch/opacus/blob/main/opacus/optimizers/optimizer.py) 第400行的per\_sample\_clip\_factor  \(self.max\_grad\_norm / \(per\_sample\_norms  1e-6\)\).clamp\(max1.0\)改成下面这行就好了per\_sample\_clip\_factor  1 / \(per\_sample\_norms  1e-2\)这等价于斯坦门茨的故事画一条线价值一万美元 后台回复关键词【入群】加入卖萌屋NLP、CV、搜推广与求职讨论群
http://www.zqtcl.cn/news/318059/

相关文章:

  • 徐州社交网站传奇做网站空间
  • 网站服务器租赁怎样用ps做网站的效果图
  • 温州网站建设制作苏州做网站费用
  • 山东网站建设和游戏开发的公司排名网站开发工程师待遇淄博
  • 创建网站的代码公司网站建设服务公司
  • 徐州建站推广仿织梦长沙网站公司
  • 中山做网站的新闻静态网站模板下载
  • 以学校为目标做网站策划书企业管理软件都有哪些
  • 黄石网站开发云开发小程序源码
  • 重点实验室网站建设萧山好的做网站的公司
  • 物流网站的建设网站建设优化是什么鬼
  • 门户网站建设项目书页面设计一般用什么软件
  • 安徽城乡建设 厅网站电子商务网站建设需要哪些步骤
  • 网站建设应该懂什么知识青岛模板网站建设
  • 免费cms建站系统有哪些网站设计项目总结
  • 做网站湖州网站后台管理系统如何使用
  • 网站建设报价单-中英文版长春省妇幼网站做四维
  • 注册网站免费网站上传小马后怎么做
  • 我省推行制度推动山西品牌建设整站优化网站
  • 临海手机网站设计网站设计 深圳
  • 网站推广做哪个比较好百度怎么优化排名
  • 做jsp网站时怎么预览wordpress安装不上
  • 网站建设深圳官网怎么制作网站镜像
  • 弹幕网站开发难么招生网站建设的意义
  • 网站空间多大合适软件开发培训机构网课
  • 13个实用平面设计网站网络推广一个月的收入
  • 淮安企业网站制作校园网网络规划与设计方案
  • html完整网站开发自媒体平台账号注册
  • 厦门seo网站网站空间 群集
  • 青岛网站推广方案营销自动化平台