Py学习  »  机器学习算法

深度学习领域有哪些瓶颈?

AINLP • 2 年前 • 234 次点击  



前几天在知乎刷到一个提问,关于深度学习的瓶颈。

回想自己每天“焚香沐浴,架炉炼丹”,却很少去思考底层的约束。于是我回顾了过去的科研和工作经历,做了8方面总结。

去年秋招,我面试不少大厂时其实被问过这个问题,面试官基本是部门总监。所以能关注该问题,恭喜你已经比绝大部分人站得更高,想得更远了哈。

1. 对标注数据依赖性大

众所周知,无论是传统的分类、匹配、序列标注、文本生成任务,还是近期的图像理解、音频情感分析、Text2SQL等跨模态任务,凡是采用深度学习的地方都对标注数据有很高的依赖。

这也是为什么前期数据不足或冷启动阶段,深度学习模型效果差强人意。相比人类而言,模型在学习新事物时需要更多的事例。

虽然近期有了一些 low-resource 甚至 zero-resource 工作(例如对话生成的两篇论文[1-2]),总体来说这些方法仅适用于某些特定领域,难以直接推广。

2. 模型具有领域依赖性,难以直接迁移

紧接上一话题,当我们通过标注团队或众包经长时间迭代获得了大规模标注数据,训好了模型,可是换了一个业务场景时,模型效果又一落千丈。

或者模型仅在论文数据集上表现良好,在其余数据中无法复现类似效果。这些都是非常常见的问题。

提升模型的迁移能力是深度学习非常有价值的课题,可以大幅减少数据标注带来的成本。好比我一个同学玩跑跑卡丁车很老练,现在新出了QQ飞车手游,他开两局就能触类旁通,轻松上星耀和车神,而不需要从最原始的漂移练起。

虽然NLP预训练+微调的方式缓解了这一问题,但深度学习可迁移性还有待进一步增强。

3. 巨无霸模型对资源要求高

虽然近两年NLP领域频现效果惊人的巨无霸模型,却让普通科研人员望而却步。先不考虑预训练的数万(BERT->1.2w$, GPT2->4.3w$)乃至上百万美金成本,仅使用预训练权重就对GPU等硬件有很高的要求。

因为大模型的参数量在呈指数增长趋势:BERT(1.1亿)、T5(110亿)、GPT3(1500亿)、盘古(2000亿)...开发高性能小模型是深度学习另一个很有价值的方向。

庆幸的是,在NLP领域已经有了一些不错的轻量化工作,例如TinyBERT[3],FastBERT[4]等。

4. 模型欠缺常识和推理能力

当前深度学习对人类情感的理解还停留在浅层语义层面,不具备良好的推理能力,无法真正理解用户诉求。

另一方面,如何有效地将常识或背景知识融入模型训练,也是深度学习需要克服的瓶颈之一。

将来的某天,深度学习模型除了能写诗、解方程、下围棋,还能回答家长里短的常识性问题,才真正算是拥有了“智能”。

5. 应用场景有限

虽然NLP有很多子领域,但是目前发展最好的方向依旧只有分类、匹配、翻译、搜索几种,大部分任务的应用场景依然受限。

例如闲聊机器人一般作为问答系统的兜底模块,在FAQ或意图模块没有命中用户提问时回复一个标准拟人话术。但如果在开放域直接应用闲聊机器人,很容易从人工智能拐向人工智障,让用户反感。

6. 缺少高效的超参数自动搜索方案

深度学习领域超参数众多,尽管目前也有一些自动化调参工具如微软的nni[5],但整体还依赖于算法工程师的个人经验;由于训练时间长,参数验证过程需要很高的时间成本。

此外,AutoML仍旧需要大规模计算力才能快速出结果,因此也需要关注增大运算规模。

7. 部分paper仅以比赛SOTA为导向

把某个知名比赛刷到SOTA,然后发一篇顶会是很多研究人员的做法(包括曾经的我)。一种典型的pipeline是:

1)不惜任何资源代价把榜单刷到第一;

2)开始反推和解释这种方法为何如此有效(王婆卖瓜,自卖自夸)。

当然这里并不是说这种方法不好,只是我们做研究不应该只以刷榜为唯一目标。因为很多时候为了提升小数点后那0.XX%的分数真的意义不大,难以对现有的深度学习发展带来任何益处。

这也解释了面试官问“如何在某比赛中获得了不错的成绩”,听到“多模集成”等堆模型的方式上分就反感。因为实际场景受限于资源、时间等因素,一般不会这么干。

8. 可解释性不强

最后一点也是该领域的通病,整个深度学习网络像是一个黑盒子,缺少清晰透澈的可解释性。

比如为什么给大熊猫图片增加了一点噪声扰动(相当于对抗样本),被分类为长臂猿的置信度就高达 99.3%了呢?

对一些模型学到的特征可视化(CNN、Attention等),或许可以帮助我们理解模型是怎样学习的。此前,机器学习领域也有利用降维技术(t-SNE等)来理解高维特征分布的方法。

更多深度学习可解释性研究可以参考[6]。


我是Giant,一个喜欢用接地气的文风,为年轻朋友分享职场经验和算法知识的小码农,有任何问题欢迎和我交流哈。

Reference

[1] (NeurIPS, 2020) Zero-resource knowledge-grounded dialogue generation

[2] (ICLR, 2020) LOW-RESOURCE KNOWLEDGE-GROUNDED DIALOGUE GENERATION

[3] (EMNLP, 2020) TinyBERT: Distilling BERT for Natural Language Understanding

[4] (ACL, 2020) FastBERT: a Self-distilling BERT with Adaptive Inference Timev1/README.md#question-generation---squad

[5] microsoft/nni

[6] 要研究深度学习的可解释性,应从哪几个方面着手?https://www.zhihu.com/question/320688440

欢迎加入NLP相关方向技术交流群
请添加AINLP小助手微信(id: ainlper)
请备注具体方向+所用到的相关技术点

关于AINLP

AINLP 是一个有趣有AI的自然语言处理社区,专注于 AI、NLP、机器学习、深度学习、推荐算法等相关技术的分享,主题包括文本摘要、智能问答、聊天机器人、机器翻译、自动生成、知识图谱、预训练模型、推荐系统、计算广告、招聘信息、求职经验分享等,欢迎关注!加技术交流群请添加AINLPer(id:ainlper),备注工作/研究方向+加群目的。


阅读至此了,分享、点赞、在看三选一吧🙏

Python社区是高质量的Python/Django开发社区
本文地址:http://www.python88.com/topic/118762
 
234 次点击