『量子位』“我为什么反对AI论文强制开源代码”

晓查发自凹非寺
量子位报道|公众号QbitAI
AI论文 , 到底该不该强制开源代码?
NeurIPS2020官方近日发布了一份开源指南 。 从2019开始 , NeurIPS就“强烈建议”提交论文代码 , 不过仍非强制 。
但无论如何 , 官方传达出了一种信号:AI学术顶会开源代码已是行业趋势 。
NeurIPS此举也引发了一场“年经”式的讨论:如果将来学术会议要求必须开源 , 投稿人应该拒绝吗?
而让人始料未及的是 , 不少网友认为:不开源 , 我有理 。
『量子位』“我为什么反对AI论文强制开源代码”
文章图片
反对一:代码并没有那么重要
首先 , 开源代码的目的是什么?是为了让其他研究者可以复现结果 。
如果一篇论文包含足够多的细节 , 那么别人就可以根据其中的公式自己写出代码 , 对于这类论文 , 可以不公开代码 。 不过前提必须是提供足够多的细节 。
比如谷歌的AlphaGo就没有开源代码 , 但是没有人怀疑它的正确性 , 事实上也有很多人根据谷歌论文复现了AlphaGo 。
『量子位』“我为什么反对AI论文强制开源代码”
文章图片
而且作者本人的代码可能会出现错误 , 不开源的一个好处就是让其他研究者独立复现 。
万一作者在代码里挖了个不明显的“坑” , 其他人也可以规避 , 防止被带到沟里 。
另外 , 也不要高估代码的价值 , 经典论文可以几十年长盛不衰 , 但是代码很可能十年后就难以运行了 。
当然 , 还有一种观点就是 , 对于AI来说 , 数据集更重要 。 没有数据的代码是没有价值的 , 而很多数据集没法开放 , 这意味着你即使拿到代码 , 也无法复现SOTA结果 。
反对二:要为作者考虑
不开源同时也是为了照顾作者的种种特殊情况 。
比如一些研究者是从事纯理论的研究 。 有一个网友就说 , 他甚至都不知道怎么构建Docker容器 , 虽然发表了多篇论文都在GitHub上开源了代码 , 但它从来不维护 。
『量子位』“我为什么反对AI论文强制开源代码”
文章图片
所以 , 论文是否开源应该根据代码对于文章的重要性而定 , 不该一刀切 。
还有一些商业公司的研究者 , 他们在写论文的时候用到了公司内部专有软件库 , 如果强制开源 , 他们必须从头再写一遍代码 , 费时费力 , 对这些人也是不公平的 。
【『量子位』“我为什么反对AI论文强制开源代码”】还有一些作者 , 本身并不是不想开源 , 而是希望能够将成果保护一段时间 , 在论文发布几个月后再开源代码 , 这对于从事医疗、法律领域的学者很重要 。
综上所述 , 反方网友认为 , 强制开源过于极端 , 应该对论文开源持鼓励态度 , 而不是强制 。
支持开源:不开源怎能让人信服
首先是一名从事石油行业的网友说 , 他们行业的数据都是商业机密 , 所以不会发布任何数据和代码 , 甚至会在文章中丢掉一些公式来隐藏成果 , 还声称98%的正确率 。 结果怎能让人信服 。
他认为不公开数据和代码 , 就像把一篇论文中所有的关键要素都删了 , 这样的研究即使发表出来也毫无价值 。
还有一些人认为 , 强制开源会改变其他行业对机器学习的偏见 。
很多其他学科的人都把机器学习看成伪科学 , 这是为什么?因为AI领域的论文发布过程非常不成熟 。
科学方法的关键是一致性和可重复性 。 追逐单一的指标 , 每个人都对SOTA着迷 , 这是一个巨大的问题 。
而开源是解决此问题的一种方法 。
去年 , AI知名女学者AnimaAnandkumar曾在个人博客里公开喊话 , 强烈
『量子位』“我为什么反对AI论文强制开源代码”