開源工具已經趨于成熟,這使其能構建大規模的自然場景下的系統。與此同時,機器學習領域為各種應用開發了大量強大的學習算法。但是,由于沒有公開共享現有的實現方式,去真正的利用這些方法,從而導致軟件的可用性和互操性較弱。
本文作者認為,可以通過提高研究人員在源代碼模型下發布軟件的動機來明顯改善這種情況。此外,本文概述了作者在嘗試發布機器學習算法的實現時所面臨的問題。作者認為,經過同行評審的軟件資源以及簡短的文檔對機器學習和整個科學界非常有價值。
概述
機器學習領域發展迅速,為不同的應用提供了各種各樣的學習算法。這些算法的最終價值在很大程度上取決于它們在解決實際問題中的成功。因此,將算法進行復制并應用于新任務對于該領域的進步至關重要。
但是,目前很少有機器學習研究人員發布與其論文相關的軟件和/或源代碼。這與生物信息學界的做法形成了鮮明對比,后者的開源軟件已經成為進一步研究的基礎。缺少公開可用的算法實現是我們這一學科進步的主要障礙。
我們相信,機器學習軟件的開源共享可以在消除障礙方面發揮非常重要的作用。
開源模型具有許多優勢,這些優勢將帶來更好的實驗結果重現性:更快地檢測錯誤,創新性應用以及在其他學科和行業中更快地采用機器學習方法。但是,目前缺乏完善和發布軟件的動機。已發布的軟件本身在我們領域中沒有標準的,可接受的引用方式。
目前引用它的唯一方法是引用與代碼相關聯的論文,或者通過引用以某種技術報告的形式發布的用戶手冊。為了解決這一難題,本文提出了一種正式發布機器學習軟件的方法,類似于ACM Transactions on Mathematical Software提供的用于數值分析的方法。
注:本文作者隨后簡要解釋了開源軟件背后的思想,然后介紹了廣泛采用開源的模型將產生的一些積極影響。接下來,本文討論了當前主要的阻礙,并提出可能的改變以改善這種情況。最后,作者為JMLR(JMLR-MLOSS)中的機器學習開源軟件提出了一個新的、單獨的track。
開源背后的思想
開源軟件的基本思想非常簡單;程序員或用戶可以閱讀,修改和重新分發軟件的源代碼。盡管有各種開源軟件許可,但它們都有一個共同的出發點,那就是允許自由交換和使用信息。開源模型更注重貢獻者的協作。每個貢獻者都可以利用網絡中其他人所做的工作,從而最大程度地減少“重新造輪子”所花費的時間。
開源的軟件主要有下面的10個屬性:
1.免費重新使用
2.源代碼
3.衍生作品
4.作者源代碼的完整性
5.不歧視個人或群體
6.不歧視工作領域
7.許可證的分配
8.許可不得用于特定產品
9.許可不得限制其他軟件
10.許可必須是技術中立的
開源的積極影響
這一部分主要是簡要概述開源軟件及其與科學活動(特別是機器學習)的關系。讀者可能會認為我們對開源的好處過于樂觀,而沒有討論負面影響。事實是,要獲得專有系統與開源軟件之間抄襲的確鑿證據是極其困難的。
本文從道德,倫理和社會基礎三個方面進行闡釋,開源應該是機器學習研究的首選軟件發布選項,并向讀者介紹開源軟件的許多優點。在這里,本文將重點放在用于機器學習研究的開源軟件的特定優勢上,該優勢結合了科學進步以及軟件生產者和消費者的需求和要求。作者從以下7點說明了開源的優勢:
1.科學結果的可重復性和算法的合理比較;
2.發現問題;
3.利用已有資源(而不是重新實現);
4.不斷獲得科學的工具;
5.優勢結合;
6.在不同學科和行業中更快地適用某方法;
7.出現協同標準。
最后,作者使用一個表格總結了開源會帶來的優點,一共有11條,分別如下:
1.提高了科學研究的可復現性
2.有助于公平比較在相同框架中實施的算法
3.可以更快地發現問題
4.可以修復bug和擴展外部來源的錯誤
5.方法可以被其他人更快地采用
6.可以使用高效的算法
7.能利用現有資源來幫助新研究
8.廣泛的使用算法會使其得到廣泛的認可
9.可以開發更復雜的機器學習算法
10.可以加速研究進展
11.對新研究者和較小的研究小組非常有幫助
開源社區當前主要的障礙
盡管根據開源模型發布實現方式具有許多優點,但是當前很少采用此選項。作者認為,有六個主要的原因,總結起來概括如下:
1、發布軟件不能夠被視為一種科學貢獻
2、公開與商業利益存在根源上的沖突
3、發布開源軟件的激勵措施沒有足夠高
4、機器學習研究人員不是一個優秀的程序員
5、這種松懈能掩蓋新方法的問題,并降低會議和期刊的接收難度
6、存在一種習慣,對質量相似的論文采用相同的處理方法
建議
作者給出了提交高質量機器學習開源軟件實現的描述。提交的內容至少應包括:
1、一封書面信,說明該提交內容適用于機器學習開源軟件部分,發布該軟件的開源許可證,項目的網址以及要查看的軟件版本。
2、最多四頁基于JMLR格式的描述。
3、包含源代碼和文檔的zip或tar壓縮的歸檔文件。
結論
綜上,作者認為,采用共享信息的開源模型來實現機器學習軟件對整個領域都非常有幫助。開源模型具有許多優勢,例如提高了實驗結果的可重復性,更快地檢測錯誤,加速科學進步以及在其他學科和行業中更快地采用了機器學習方法。由于當前發布開源軟件的動機不足,本文概述了一個發布用于機器學習的軟件平臺。
此外,本文討論了機器學習軟件的理想功能,這些功能最終將產生一個高度可用,靈活和可擴展的軟件。本文邀請所有開發機器學習算法的機器學習研究人員提交機器學習軟件的JMLR track。定義精心設計的界面對于提高交互操作至關重要,這將使社區能構建一套高質量的機器學習軟件。
-
算法
+關注
關注
23文章
4600瀏覽量
92647 -
人工智能
+關注
關注
1791文章
46872瀏覽量
237594 -
機器學習
+關注
關注
66文章
8378瀏覽量
132415
發布評論請先 登錄
相關推薦
評論