何恺明MAE论文简解

MAE这篇论文在2022年发表,当年比较火。

起因是nlp一直有非常棒的预训练模型,比如bert。那么cv能不能仿照一下也得到很棒的模型呢?

为此,研究开始了。

参考资料:https://zhuanlan.zhihu.com/p/439554945

 

 模型的结构简单易懂,就是mask一些像素块,将没有mask的像素块作为encoder的输入,输出的特征再补充一些mask特征,作为解码器的输入,最后输出重构图像。这样模型就可以学到信息密度相当高的潜在表示,可以使用encoder作为特征提取层。

作者用了一个非对称结构,encoder的参数量远大于decoder,毕竟希望得到的是encoder,decoder只是附带品,这一点很好理解。

其次,又有人讨论,这和以往的进行遮挡的数据增广有什么区别呢?

从目的上来讲,遮挡数据增广也就是cutout,其实就是drop out的一种,是强行把一些像素失活,置为某个值,这样做的好处主要是防止过拟合。但也有一个坏处,就是生成的特征特别容易受到这些失活的像素干扰,训练效果反而很差。这个问题grid mask有讲过,详情可以看https://arxiv.org/abs/2001.04086

而MAE有没有将一些特征失活呢?至少在编码器阶段是没有的,这意味编码器生成的特征不会受到失活的像素干扰,还能生成一些密度相当高的潜在表示。但是仔细看解码器阶段,又把这些失活的特征补上了,所以解码器阶段是极有可能会受到失活像素干扰。

posted @   澳大利亚树袋熊  阅读(223)  评论(0编辑  收藏  举报
编辑推荐:
· 基于Microsoft.Extensions.AI核心库实现RAG应用
· Linux系列:如何用heaptrack跟踪.NET程序的非托管内存泄露
· 开发者必知的日志记录最佳实践
· SQL Server 2025 AI相关能力初探
· Linux系列:如何用 C#调用 C方法造成内存泄露
阅读排行:
· 终于写完轮子一部分:tcp代理 了,记录一下
· 震惊!C++程序真的从main开始吗?99%的程序员都答错了
· 别再用vector<bool>了!Google高级工程师:这可能是STL最大的设计失误
· 单元测试从入门到精通
· 【硬核科普】Trae如何「偷看」你的代码?零基础破解AI编程运行原理
点击右上角即可分享
微信分享提示