AI Model Design Effectiveness
导言
作为非AI从业者,而是(即将成为)HPC赋能AI的工作者。我一直在思考,我对AI模型的了解应该止步于什么程度?
从AI模型设计的有效性角度切入,应该是我的学习的Sweet Spot / tradeoff。
意义:明白哪些层和哪些参数是有效的,对于模型压缩(模型裁剪,权重剪枝)来说是必要。远比算子融合等带来的提升大。
有待了解的内容:
- 相对于领域的复杂的信息量,一个十层的模型竟然能将其表达,Miracle!
- 有研究表明模型的参数大部分都是无用的,如何判断,如何剔除。
困惑:如何证明网络是学习或存储了真实世界的内在关联,而不只是通过增大了训练数据量和参数而存储了问题的答案。(使用测试集的准确度来量化)
AI的现状/困境: 1. AI研究人员,由具体问题场景出发,利用已有的工具或者特殊设计网络来拟合/建模问题,尝试提取不知名的隐含的特征到网络中,来解决这一类问题。 2. 明显的缺陷:就是不可重复性,缺乏一个模型来统一描述世界的问题,每个问题都要单独设计。
对象:transformer, gpt, stable diffusion(先看效果,在看是否成熟到值得学习,之前生成的多指图简直是精神污染), YOLO。
稀疏激活带来的推理局部性¶
常见设计的理由¶
设计有效性的解释
Loss function¶
理论上 如果能精确的建模输出结果到目标的相似度(Loss function), 比如设计一个loss来计算xbox和switch之间的相似度?, 那么网络结构就不再重要,只需要正常反向传播就好了。
但是实际情况是,我们需要通过复杂的网络将结果的分布映射到简单的loss function上。来实现有效的建模。
定制化loss/cost function¶
- 添加新的成分(penalty)到cost function 来对特定信息进行惩罚。例如,魔改的GAN,通过在cost里添加图片的相似度,来惩罚相似图片的情况。
Loss的选择¶
常用各种空间距离的度量方法:
- JS divergency, f-divergency
- Wasserstein distance
卷积层¶
往往能保留spatial information,多用于图像。
Mask的思想¶
- 之前NLP领域BERT模型的MASK比例通常在15%左右,视觉领域ViT论文的MASK比例是20%,而MAE通过实验,得出的结论是在75%的Mask比例下,模型可以更好的学到和吸收语义知识。
- 作者在解释原因的时候引入了信息密度的概念,解释自然语言和视觉的在信息含量上的不同,
- 自然语言是人类的高级语言,每一个字符都蕴含着比较多的语义和信息,
- 而视觉信息在像素粒度上有着比较大的冗余,可以很轻松用周围像素恢复该像素,进而引出视觉任务要提升难度,做更大比例的mask,让模型去学习更多的知识
有效性的理解¶
我认为:
- 基础一:当前端到端的AI设计,就难以评估网络是否学到了高纬空间的特征,或者是否有冗余内容。 因为设计者只能通过唯一的指标来评估:测试集的准确性。导致内部的推导是黑盒。
- 基础二:当前的AI设计,由于归一化了输入,其实就规整了输入空间,和其中的数据分布。在输入不矛盾的情况下。支持函数导数连续的模型,将正确的训练集答案串联起来,使得该空间里中剩余的点能有连续的输出表达。
- 我觉得数据空间样本的连续性反而更重要。
- 设计者的局限:在确定好大框架后,只能不断的调参,加部件,减部件尝试来提高最终精度,得出增大数据感知野的结论。但是对于是否有效难以判断。
我的观点、AGI的未来形态:
- 当前的网络设计,相对于复杂的问题还是太过简单了, 或许网络的复杂预留了空间来学习到表征问题的参数,但是没有特殊设计的网络难以快速学习到。(就类似于视频播放时没有专用的解码器)(并不是增加了网络的层数,网络就复杂了,只是网络的某个维度的表征能力上限变高了。
- 递归拆分模型:需要使用我们已有的知识,先尽可能的将输入空间划分成更小的子空间,网络需要拟合的问题就会变得更简单。
- 思路来源:世界模型,和逻辑链。还有AI4HPC时,设计网络支持粒子的平移旋转不变性。
- 划分的维度:文本和图像的逻辑关系,和情感色彩。(当然怎么用导数连续的数学方式表达是一个关键问题。
- 划分的举例: 1. 文本可以把主谓宾,疑问句陈述句反问句都识别出来。 2. 图像可以先做对象识别,把人物,物体,动物,场景识别出来, 3. 然后比如对于人物,把头,身体和手腿识别出来, 4. 再在脸里面识别出眼睛,鼻子,嘴。 5. 假如人为先分类到了嘴的维度,留给AI表征的维度就很简单了,就嘴形,大小,厚度,唇色和质感。 6. 如果分类到了唇色这个维度,AI需要表征的就色号一个维度了
- 好处: 1. 评价维度不再单一,并且可跟踪。 2. 可解释, 3. 可控。限制AI的认识维度的类别,比如去掉毒品和犯罪的分类。
- 可能的缺点:需要引入一种机制,使得整个系统能自动拓展类型。不然整个模型的表征能力被固定在有限的类别里了。
- 总结:我认为可能的AGI或者多模态的实现,是一个人为或者特殊AI的分类器 + 子模块的AI模型。
常见问题¶
梯度消失¶
- 特点:gradients vanish(梯度消失)让 网络 学不到新东西。
- 原因:https://zhuanlan.zhihu.com/p/72589432
- 解决办法:
梯度爆炸¶
Non-convergence(不收敛):模型参数振荡、不稳定且永不收敛。