自拍偷在线精品自拍偷,亚洲欧美中文日韩v在线观看不卡

論可再現(xiàn)性在機(jī)器學(xué)習(xí)中的重要性

譯文
人工智能 機(jī)器學(xué)習(xí)
本文介紹了更有效的數(shù)據(jù)管理、版本控制和實(shí)驗(yàn)跟蹤方法如何有助于構(gòu)建可再現(xiàn)的機(jī)器學(xué)習(xí)管道。

譯者 | 布加迪

審校 | 重樓

當(dāng)我自學(xué)機(jī)器學(xué)習(xí)時(shí),經(jīng)常試著根據(jù)項(xiàng)目教程編寫代碼,會(huì)按照作者概述的步驟來做。但有時(shí)候,我的模型的表現(xiàn)會(huì)比教程作者的模型差。也許您也遇到過類似的情況?;蛘?,您只是從GitHub了同事的代碼。而您模型的性能指標(biāo)與同事報(bào)告聲稱的性能指標(biāo)不一樣。所以做同樣的事情并不能保證同樣的結(jié)果,是不是?這是機(jī)器學(xué)習(xí)中一個(gè)普遍存在的問題:可再現(xiàn)性難題。

用說,機(jī)器學(xué)習(xí)模型只有在人可以復(fù)制試驗(yàn)現(xiàn)結(jié)果時(shí)才有用。從典型的它在我的機(jī)器上工作”問題到機(jī)器學(xué)習(xí)模型訓(xùn)練方式的細(xì)微變化,再現(xiàn)性存在幾個(gè)挑戰(zhàn)。

我們?cè)?/span>本文中將仔細(xì)研究機(jī)器學(xué)習(xí)中再現(xiàn)性的挑戰(zhàn)和重要性,以及數(shù)據(jù)管理、版本控制和實(shí)驗(yàn)跟蹤在解決機(jī)器學(xué)習(xí)再現(xiàn)性挑戰(zhàn)中的作用。

什么是機(jī)器學(xué)習(xí)背景下的再現(xiàn)性?

不妨看看如何在機(jī)器學(xué)習(xí)的背景下最準(zhǔn)確地定義再現(xiàn)性。

假設(shè)一個(gè)現(xiàn)有的項(xiàng)目針對(duì)給定的數(shù)據(jù)集使用特定的機(jī)器學(xué)習(xí)算法。有了數(shù)據(jù)集和算法,我們應(yīng)該能夠運(yùn)行算法想運(yùn)行多少次就運(yùn)行多少次,并在每次運(yùn)行時(shí)再現(xiàn)復(fù)制)結(jié)果。

但機(jī)器學(xué)習(xí)再現(xiàn)性并非沒有挑戰(zhàn)。我們已經(jīng)討論了其中幾個(gè)挑戰(zhàn)不妨在下一節(jié)中更詳細(xì)地討論它們。

機(jī)器學(xué)習(xí)中再現(xiàn)性的挑戰(zhàn)

任何應(yīng)用環(huán)境都存在可靠性和可維護(hù)性等挑戰(zhàn)。然而在機(jī)器學(xué)習(xí)應(yīng)用中,還存在額外的挑戰(zhàn)。

當(dāng)我們談?wù)摍C(jī)器學(xué)習(xí)應(yīng)用時(shí),我們通常指端到端機(jī)器學(xué)習(xí)管道,它們通常包括以下步驟


由于其中一個(gè)或多個(gè)步驟的變更,可能會(huì)出現(xiàn)再現(xiàn)性問題。大多數(shù)變更都可以記錄在下面其中一種變更中:

  • 環(huán)境變更
  • 代碼變更
  • 數(shù)據(jù)變更

不妨看看這每一種變更在如何阻礙再現(xiàn)性。

環(huán)境變更

Python和基于Python的機(jī)器學(xué)習(xí)框架使開發(fā)機(jī)器學(xué)習(xí)應(yīng)用程序變得輕而易舉。然而,Python中的依賴項(xiàng)管理管理某個(gè)項(xiàng)目所需的不同庫(kù)和版本)卻并非易事。一個(gè)小小的變更就足以破壞代碼,比如使用不同版本的庫(kù)和使用被廢棄的參數(shù)的函數(shù)調(diào)用

包括操作系統(tǒng)的選擇。存在硬件相關(guān)的挑戰(zhàn),比如GPU浮點(diǎn)精度方面的差異等。

代碼變更

清洗輸入數(shù)據(jù)集以確定哪些樣本進(jìn)入訓(xùn)練數(shù)據(jù)集,到訓(xùn)練神經(jīng)網(wǎng)絡(luò)時(shí)隨機(jī)初始化權(quán)重,隨機(jī)性在機(jī)器學(xué)習(xí)中扮演著重要作用。

設(shè)置不同的隨機(jī)種子可能導(dǎo)致全不同的結(jié)果。對(duì)于我們訓(xùn)練的每個(gè)模型,都有一組超參數(shù)。因此,調(diào)整一個(gè)或多個(gè)超參數(shù)也可能導(dǎo)致不同的結(jié)果。

數(shù)據(jù)變更

便使用相同的數(shù)據(jù)集,我們也看到超參數(shù)值和隨機(jī)性的不一致性如何使復(fù)制結(jié)果變得困難。因此,當(dāng)數(shù)據(jù)發(fā)生變化(數(shù)據(jù)分布變化、記錄子集的修改或丟棄某些樣本時(shí),顯然很難再現(xiàn)結(jié)果。

總之,當(dāng)我們?cè)噲D復(fù)制機(jī)器學(xué)習(xí)模型的結(jié)果時(shí),哪怕是代碼、用的數(shù)據(jù)集和機(jī)器學(xué)習(xí)模型運(yùn)行的環(huán)境出現(xiàn)小小的變化,也會(huì)阻止我們獲得與原始模型相同的結(jié)果。

如何應(yīng)對(duì)再現(xiàn)性挑戰(zhàn)

現(xiàn)在我們看看如何應(yīng)對(duì)這些挑戰(zhàn)。

數(shù)據(jù)管理

我們發(fā)現(xiàn)再現(xiàn)性最明顯的挑戰(zhàn)之一是數(shù)據(jù)方面。有某些數(shù)據(jù)管理方法比如對(duì)數(shù)據(jù)集進(jìn)行版本控制),這樣我們就可以跟蹤數(shù)據(jù)集變更,并存儲(chǔ)數(shù)據(jù)集方面的有用元數(shù)據(jù)。

版本控制

應(yīng)該使用Git之類的版本控制系統(tǒng)跟蹤代碼的任何變更。

在現(xiàn)代軟件開發(fā)中,您可能遇到過CI/CD管道,它可以大大簡(jiǎn)化以下操作,并大大提高效率:跟蹤變更、測(cè)試新變更,并將它們推送到生產(chǎn)環(huán)境。

在其他軟件應(yīng)用程序中,跟蹤代碼的變更簡(jiǎn)單直觀。然而在機(jī)器學(xué)習(xí)中,代碼變更還可能需要對(duì)所用的算法和超參數(shù)值進(jìn)行更改。即使對(duì)于簡(jiǎn)單的模型,我們可以嘗試的可能性的數(shù)量也非常。這就是實(shí)驗(yàn)跟蹤的意義所在。

實(shí)驗(yàn)跟蹤

構(gòu)建機(jī)器學(xué)習(xí)應(yīng)用程序等同于進(jìn)行廣泛的試驗(yàn)。從算法到超參數(shù),我們嘗試不同的算法和超參數(shù)值,因此跟蹤這些試驗(yàn)很重要。

跟蹤機(jī)器學(xué)習(xí)試驗(yàn)包括如下:

  • 記錄超參數(shù)掃描
  • 記錄模型的性能指標(biāo)模型檢查點(diǎn)
  • 存儲(chǔ)關(guān)于數(shù)據(jù)集和模型的實(shí)用元數(shù)據(jù)

用于機(jī)器學(xué)習(xí)實(shí)驗(yàn)跟蹤和數(shù)據(jù)管理等操作的工具

如前所述,控制數(shù)據(jù)集版本、跟蹤代碼變更以及跟蹤機(jī)器學(xué)習(xí)實(shí)驗(yàn)都可以復(fù)制機(jī)器學(xué)習(xí)應(yīng)用程序。下面幾個(gè)工具可以幫助您構(gòu)建可再現(xiàn)的機(jī)器學(xué)習(xí)管道:

結(jié)語

綜上所述,我們已回顧了機(jī)器學(xué)習(xí)中再現(xiàn)性的重要性和挑戰(zhàn)。我們討論了數(shù)據(jù)和模型版本控制以及實(shí)驗(yàn)跟蹤等方法。此外,我們還列出了一些可以用于實(shí)驗(yàn)跟蹤和更有效的數(shù)據(jù)管理的工具。

原文標(biāo)題:The Importance of Reproducibility in Machine Learning,作者:Bala Priya C


責(zé)任編輯:華軒 來源: 51CTO
相關(guān)推薦

2021-12-08 14:02:46

小數(shù)據(jù)機(jī)器學(xué)習(xí)人工智能

2023-05-24 16:08:45

深度學(xué)習(xí)工業(yè)4.0

2016-11-07 15:13:54

2020-10-10 09:42:03

聊天機(jī)器人機(jī)器學(xué)習(xí)人工智能

2020-08-26 10:42:15

IIoT智能工廠工業(yè)物聯(lián)網(wǎng)

2009-08-05 15:26:23

需求分析

2023-02-10 10:58:41

智慧城市數(shù)據(jù)隱私

2022-08-26 15:54:34

云原生Kubernetes物聯(lián)網(wǎng)

2018-07-06 14:14:15

數(shù)據(jù)中心備份服務(wù)器

2011-08-11 10:12:11

2020-09-22 16:26:46

云計(jì)算

2009-03-24 09:05:54

資源管理IT管理廣通信達(dá)

2021-12-19 13:50:42

大數(shù)據(jù)信息安全隱私

2022-10-28 08:00:00

云計(jì)算控制平面架構(gòu)

2011-08-04 09:50:46

2022-05-13 08:00:00

EiPaaS容器

2017-06-13 08:33:10

程序日志代碼

2023-12-20 14:10:53

2019-02-27 08:50:02

機(jī)器學(xué)習(xí)人工智能

2009-09-28 13:23:00

CCNA學(xué)習(xí)方法CCNA
點(diǎn)贊
收藏

51CTO技術(shù)棧公眾號(hào)