算法完成太难了?机器学习也需求开源软件
作者头像
  • 金煌轩
  • 2020-08-14 19:21:56 5

概述

机器学习领域近年来取得了显著进展,提供了多种多样的学习算法。这些算法的实际应用效果很大程度上决定了它们的价值。因此,将这些算法应用于新的任务并验证其有效性对于推动整个领域的发展至关重要。

然而,目前很少有机器学习研究人员发布与论文相关的软件或源代码。相比之下,生物信息学界已经形成了良好的开源软件传统,开源软件已成为进一步研究的基础。缺乏公开可用的算法实现成为了该领域发展的主要障碍之一。

我们相信,开源软件的广泛共享将在解决这一问题上发挥重要作用。开源模型有许多优势,包括更高的实验结果可重复性、更快地发现和修复错误、以及在其他学科和行业中的快速应用。然而,目前缺乏足够的动机来鼓励研究人员发布完善的软件。当前援引开源软件的方法也存在一定的局限性。

为了解决这个问题,本文提出了一种正式发布机器学习软件的方法,类似于ACM Transactions on Mathematical Software提供的方法。接下来,本文将探讨开源软件背后的原理,分析开源模型带来的积极影响,讨论当前的主要障碍,并提出可能的改进措施。

开源软件背后的原理

开源软件的基本理念非常简单:用户可以自由阅读、修改和重新分发软件的源代码。虽然存在多种开源软件许可协议,但它们都共享一个共同的目标,即允许信息自由流通和共享。开源模型更加强调合作和共享精神,每位贡献者都可以利用他人已完成的工作,从而避免重复劳动。

开源软件通常具备以下十个特性:

  1. 免费再利用
  2. 源代码开放
  3. 衍生作品许可
  4. 作者源代码完整
  5. 不对个人或团体歧视
  6. 不对工作领域歧视
  7. 许可分配
  8. 许可不针对特定产品
  9. 许可不影响其他软件
  10. 许可中立

开源软件的积极影响

本文简要介绍了开源软件与科学研究(尤其是机器学习)之间的关系,并列举了开源软件的优点。尽管有人可能会认为开源软件的好处被夸大了,但事实上,很难找到确凿证据证明专有系统与开源软件之间的抄袭行为。

从道德、伦理和社会基础的角度来看,开源软件应该成为机器学习研究的首选发布方式。本文重点阐述了开源软件在机器学习研究中的特定优势,这些优势不仅促进了科学进步,还满足了软件使用者和开发者的需求。以下是七个关键优势:

  1. 实验结果的可重复性和算法的合理比较
  2. 更容易发现问题
  3. 利用已有资源,而非重复开发
  4. 持续获得科研工具的支持
  5. 优势互补
  6. 在不同学科和行业中更快地应用
  7. 促进标准化

最后,作者通过一个表格总结了开源软件带来的11个具体好处:

  1. 提高了科学研究的可重复性
  2. 有助于公平比较在相同框架下实现的算法
  3. 更容易发现问题
  4. 可以更快地修复错误和扩展功能
  5. 算法可以更快地被其他人采用
  6. 可以使用高效的算法
  7. 利用现有资源帮助新研究
  8. 广泛应用的算法可以获得更多的认可
  9. 可以开发更复杂的机器学习算法
  10. 加速研究进度
  11. 对新研究人员和小型研究团队特别有益

当前开源社区面临的障碍

尽管开源模型发布实现具有许多优点,但目前很少有研究人员选择这一方式。主要原因可以归纳为以下几点:

  1. 发布软件并不被视为一种科研贡献
  2. 公开发布与商业利益存在根本冲突
  3. 发布开源软件的激励机制不够强
  4. 机器学习研究人员并非都是优秀的程序员
  5. 分散的努力掩盖了新方法的问题,降低了会议和期刊的接受率
  6. 存在一种习惯,对质量相近的论文采用相同的处理方式

建议

为了提交高质量的机器学习开源软件实现,作者建议提交以下内容:

  1. 一封书面信,说明提交内容适用于机器学习开源软件部分,提供开源许可协议,项目网址以及要查看的软件版本。
  2. 最多四页基于JMLR格式的描述。
  3. 包含源代码和文档的压缩包(如ZIP或TAR)。

结论

综上所述,采用开源模型来实现机器学习软件对整个领域都有很大的帮助。开源模型具有许多优点,如提高实验结果的可重复性、更快地发现和修复错误、加速科学研究以及在其他学科和行业中更快地采用机器学习方法。由于当前发布开源软件的动机不足,本文提出了一种发布机器学习软件的平台。此外,本文还讨论了理想的机器学习软件功能,这些功能最终将产生一个高度可用、灵活且可扩展的软件。本文呼吁所有开发机器学习算法的研究人员向JMLR提交机器学习软件实现,以促进高质量机器学习软件的开发。

    本文来源:图灵汇
责任编辑: : 金煌轩
声明:本文系图灵汇原创稿件,版权属图灵汇所有,未经授权不得转载,已经协议授权的媒体下载使用时须注明"稿件来源:图灵汇",违者将依法追究责任。
    分享
开源算法机器需求完成学习软件
    下一篇