算法实现太难了?机器学习也需要开源软件

译者 | 刘畅

出品 | AI科技大本营(ID:rgznai100)

导读:开源工具已经趋于成熟,这使其能构建大规模的自然场景下的系统。与此同时,机器学习领域为各种应用开发了大量强大的学习算法。但是,由于没有公开共享现有的实现方式,去真正的利用这些方法,从而导致软件的可用性和互操性较弱。

概述

机器学习领域发展迅速,为不同的应用提供了各种各样的学习算法。这些算法的最终价值在很大程度上取决于它们在解决实际问题中的成功。因此,将算法进行复制并应用于新任务对于该领域的进步至关重要。

但是,目前很少有机器学习研究人员发布与其论文相关的软件和/或源代码。这与生物信息学界的做法形成了鲜明对比,后者的开源软件已经成为进一步研究的基础。缺少公开可用的算法实现是我们这一学科进步的主要障碍。

我们相信,机器学习软件的开源共享可以在消除障碍方面发挥非常重要的作用。

开源模型具有许多优势,这些优势将带来更好的实验结果重现性:更快地检测错误,创新性应用以及在其他学科和行业中更快地采用机器学习方法。但是,目前缺乏完善和发布软件的动机。已发布的软件本身在我们领域中没有标准的,可接受的引用方式。

开源背后的思想

开源软件的基本思想非常简单;程序员或用户可以阅读,修改和重新分发软件的源代码。尽管有各种开源软件许可,但它们都有一个共同的出发点,那就是允许自由交换和使用信息。开源模型更注重贡献者的协作。每个贡献者都可以利用 络中其他人所做的工作,从而最大程度地减少“重新造轮子”所花费的时间。

开源的软件主要有下面的10个属性:

1.免费重新使用

2.源代码

3.衍生作品

5.不歧视个人或群体

6.不歧视工作领域

7.许可证的分配

8.许可不得用于特定产品

9.许可不得限制其他软件

10.许可必须是技术中立的

开源的积极影响

这一部分主要是简要概述开源软件及其与科学活动(特别是机器学习)的关系。读者可能会认为我们对开源的好处过于乐观,而没有讨论负面影响。事实是,要获得专有系统与开源软件之间抄袭的确凿证据是极其困难的。

1.科学结果的可重复性和算法的合理比较;

2.发现问题;

3.利用已有资源(而不是重新实现);

4.不断获得科学的工具;

5.优势结合;

6.在不同学科和行业中更快地适用某方法;

7.出现协同标准。

1.提高了科学研究的可复现性

2.有助于公平比较在相同框架中实施的算法

3.可以更快地发现问题

5.方法可以被其他人更快地采用

6.可以使用高效的算法

7.能利用现有资源来帮助新研究

8.广泛的使用算法会使其得到广泛的认可

9.可以开发更复杂的机器学习算法

10.可以加速研究进展

11.对新研究者和较小的研究小组非常有帮助

开源 区当前主要的障碍

1、发布软件不能够被视为一种科学贡献

2、公开与商业利益存在根源上的冲突

3、发布开源软件的激励措施没有足够高

4、机器学习研究人员不是一个优秀的程序员

5、这种松懈能掩盖新方法的问题,并降低会议和期刊的接收难度

6、存在一种习惯,对质量相似的论文采用相同的处理方法

建议

1、一封书面信,说明该提交内容适用于机器学习开源软件部分,发布该软件的开源许可证,项目的 址以及要查看的软件版本。

2、最多四页基于JMLR格式的描述。

3、包含源代码和文档的zip或tar压缩的归档文件。

结论

声明:本站部分文章及图片源自用户投稿,如本站任何资料有侵权请您尽早请联系jinwei@zod.com.cn进行处理,非常感谢!

上一篇 2020年7月12日
下一篇 2020年7月12日

相关推荐