一、背景说明
临近 ACL 2020 投稿截止时间,跟同学密集讨论,争论哪些研究想法适合投到 ACL 并有机会命中。从自己十多年研究经历来看,如何判断一个研究想法好不好,以及这些研究想法从哪里来,对于初学者而言的确是个难题。所以,简单攒了这篇小短文,分享一些经验和想法,希望对刚进入 NLP 领域的新同学有用。多有舛误请指正。
王家卫的电影《一代宗师》中有段经典的比武桥段,宫会长对叶问说'今天我们不比武术,比想法'。其实,好的点子或者想法(idea),也是一篇优秀研究成果的灵魂。而计算机领域流行着一句话'IDEA is cheap, show me the code',也说明对于重视实践的计算机学科而言,想法的好坏还取决于它的实际效能。这里就来谈下好的研究想法从哪里来。
二、什么算是好的想法
2015 年,我在微博上写过一个调侃的小段子:
ML 派坐落美利坚合众山中,百年来武学奇才辈出,隐然成江湖第一大名门正派,门内有三套入门武功,曰:图模型加圈,神经网加层,优化目标加正则。有童谣为证:熟练 ML 入门功,不会作文也会诌。
到了 2018 年,我又续了一小段:
不期数年,北方 DL 神教异军突起,内修表示学习,外练神经网络,心法众多,曰门,曰注意,曰记忆,曰对抗,曰增强。经 ImageNet 一役威震武林,豢 Alpha 犬一匹无人可近。一时家家筑丹炉,人人炼丹忙,门徒云集,依附者众,有一统江湖之势。有童谣为证:左手大数据,右手英伟达,每逢顶会炼丹忙。
这里面提到的图模型加圈、神经网络加层、优化目标加正则,神经网络中的门、注意、记忆等,都是一些改进模型性能的创新思路,被各大 NLP 任务广泛使用并发表论文,也许就是因为被不同 NLP 任务的重复使用和发表,多少有些审美疲劳而缺少更深的创新思想,被有些网友和学者诟为'灌水',似乎都不算好的想法。
那么什么才是好的想法呢?我理解这个'好'字,至少有两个层面的意义。
三、学科发展角度的'好'
学术研究本质是对未知领域的探索,是对开放问题的答案的追寻。所以从推动学科发展的角度,评判什么是好的研究想法的标准,首先就在一个'新'字。
过去有个说法,人工智能学科有个魔咒,凡是人工智能被解决(或者有解决方案)的部分,就不再被认为代表'人类智能'。计算机视觉、自然语言处理、机器学习、机器人之所以还被列为人工智能主要方向,也许正是因为它们尚未被解决,尚能代表'人类智能'的尊严。而我们要开展创新研究,就是要提出新的想法解决这些问题。这其中的'新'字,可以体现在提出新的问题和任务,探索新的解决思路,提出新的算法技术,实现新的工具系统等。
在保证'新'的基础上,研究想法好不好,那就看它对推动学科发展的助力有多大。深度学习之所以拥有如此显赫的影响力,就在于它对于人工智能自然语言处理、语音识别、计算机视觉等各重要方向都产生了革命性的影响,彻底改变了对无结构信号(语音、图像、文本)的语义表示的技术路线。
四、研究实践角度的'好'
那是不是想法只要够'新'就好呢?是不是越新越好呢?我认为应该还不是。因为,只有能做得出来的想法才有资格被分析好不好。所以,从研究实践角度,还需要考虑研究想法的可实现性和可验证性。
可实现性,体现在该想法是否有足够的数学或机器学习工具支持实现。可验证性,体现在该想法是否有合适的数据集合和广泛接受的评价标准。很多民间科学家的想法之所以得不到学术界的认同,就是因为这些想法往往缺乏可实现性和可验证性,只停留在天马行空的纸面,只是些虚无缥缈的理念。
五、好的研究想法从哪里来
想法好还是不好,并不是非黑即白的二分问题,而是像光谱一样呈连续分布,因时而异,因人而宜。计算机科技领域的发展既有积累的过程,也有跃迁的奇点,积累量变才会产生质变,吃第三个馒头饱了,也是因为前面两个馒头打底。
现在的学术研究已经成为高度专业化的职业,有庞大的研究者群体。'Publish or Perish',是从事学术职业(如教授、研究员、研究生)的人必须做好平衡的事情,不能要求研究者的每份工作都是'诺贝尔奖'或'图灵奖'级的才值得发表。只要对研究领域的发展有所助力,就值得发表出来,帮助同行前进。鲁迅说:天才并不是自生自长在深林荒野里的怪物,是由可以使天才生长的民众产生,长育出来的,所以没有这种民众,就没有天才。这个庞大研究者群体正是天才成长的群众基础。同时,学术新人也是在开展创新研究训练中,不断磨砺寻找好想法能力,鲁迅也说:即使天才,在生下来的时候的第一声啼哭,也和平常的儿童的一样,决不会就是一首好诗。
那么,好的研究想法从哪里来呢?我总结,首先要有区分研究想法好与不好的能力,这需要深入全面了解所在研究方向的历史与现状,具体就是对学科文献的全面掌握。人是最善于学习的动物,完全可以将既有文献中不同时期研究工作的想法作为学习对象,通过了解它们提出后对学科发展的影响——具体体现在论文引用、学术评价情况等各方面——建立对研究想法好与不好的评价模型。我们很难条分缕析完美地列出区分好与不好想法的所有特征向量,但人脑强大的学习能力,只要给予足够的输入数据,就可以在神经网络中自动学习建立判别的模型,鉴古知今,见微知著,这也许就是常说的学术洞察力。
做过一些研究的同学会有感受,仅阅读自己研究方向的文献,新想法还是不会特别多。这是因为,读到的都是该研究问题已经完成时的想法,它们本身无法启发新的想法。如何产生新的想法呢?我总结有三种可行的基本途径:
**实践法。**即在研究任务上实现已有最好的算法,通过分析实验结果,例如发现这些算法计算复杂度特别高、训练收敛特别慢,或者发现该算法的错误样例呈现明显的规律,都可以启发你改进已有算法的思路。现在很多自然语言处理任务的 Leaderboard 上的最新算法,就是通过分析错误样例来有针对性改进算法的 [1]。


