在线观看www成人影院-在线观看www日本免费网站-在线观看www视频-在线观看操-欧美18在线-欧美1级

0
  • 聊天消息
  • 系統(tǒng)消息
  • 評(píng)論與回復(fù)
登錄后你可以
  • 下載海量資料
  • 學(xué)習(xí)在線課程
  • 觀看技術(shù)視頻
  • 寫(xiě)文章/發(fā)帖/加入社區(qū)
會(huì)員中心
創(chuàng)作中心

完善資料讓更多小伙伴認(rèn)識(shí)你,還能領(lǐng)取20積分哦,立即完善>

3天內(nèi)不再提示

快速交付機(jī)器學(xué)習(xí)項(xiàng)目的經(jīng)驗(yàn)

zhKF_jqr_AI ? 來(lái)源:未知 ? 作者:李倩 ? 2018-10-21 09:16 ? 次閱讀

編者按:Insight Data Science AI負(fù)責(zé)人Emmanuel Ameisen和前百度硅谷人工智能實(shí)驗(yàn)室主管Adam Coates分享了快速交付機(jī)器學(xué)習(xí)項(xiàng)目的經(jīng)驗(yàn)。

由于機(jī)器學(xué)習(xí)(ML)日益成為每個(gè)產(chǎn)業(yè)的重要組成部分,對(duì)機(jī)器學(xué)習(xí)工程師的需求增長(zhǎng)迅猛。機(jī)器學(xué)習(xí)工程師結(jié)合機(jī)器學(xué)習(xí)技術(shù)與軟件工程知識(shí),為給定的應(yīng)用尋求表現(xiàn)優(yōu)異的模型,同時(shí)處理隨之而來(lái)的實(shí)現(xiàn)的挑戰(zhàn)——從創(chuàng)建訓(xùn)練基礎(chǔ)設(shè)施到為部署模型做準(zhǔn)備。雖然網(wǎng)上不斷出現(xiàn)訓(xùn)練工程師創(chuàng)建ML模型并解決遇到的各種軟件挑戰(zhàn)的資源,而新ML團(tuán)隊(duì)最常遇到的一個(gè)障礙卻是保持和傳統(tǒng)軟件工程同等水準(zhǔn)的進(jìn)度。

這一挑戰(zhàn)最關(guān)鍵的原因是開(kāi)發(fā)新ML模型的過(guò)程從一開(kāi)始就是高度不確定的。畢竟,在最后的訓(xùn)練完成之前,很難知曉模型表現(xiàn)有多好,更別說(shuō)大量的調(diào)參和采用不同的建模假定對(duì)模型表現(xiàn)有什么影響了。

多種職業(yè)人士面臨類(lèi)似的情況:軟件和商業(yè)開(kāi)發(fā)者,尋求產(chǎn)品-市場(chǎng)契合的初創(chuàng)企業(yè),處于信息有限的演習(xí)之中的飛行員。每種職業(yè)人士采用一種常見(jiàn)框架以幫助團(tuán)隊(duì)在不確定的情況下高效作業(yè):軟件開(kāi)發(fā)的敏捷原則,精益創(chuàng)業(yè),美國(guó)空軍的OODA循環(huán)。機(jī)器學(xué)習(xí)工程師可以遵循類(lèi)似的框架,應(yīng)對(duì)不確定性,迅速交付偉大的產(chǎn)品。

ML工程循環(huán)

本文將介紹機(jī)器學(xué)習(xí)的OODA循環(huán):ML工程循環(huán),其中ML工程師不斷進(jìn)行以下四個(gè)步驟:

分析

選型

實(shí)現(xiàn)

測(cè)量

從而快速、高效地發(fā)現(xiàn)最佳模型,并適應(yīng)未知數(shù)據(jù)。此外,我們也為每個(gè)階段提供了具體的竅門(mén),并將介紹如何優(yōu)化整個(gè)過(guò)程。

ML團(tuán)隊(duì)的成功常常意味著交付滿足給定限制的表現(xiàn)優(yōu)異的模型——例如,在滿足內(nèi)存占用、推理時(shí)間、公平性等限制的前提下,達(dá)到較高的預(yù)測(cè)精確度。表現(xiàn)是由和最終產(chǎn)品最相關(guān)的測(cè)度定義的,不管它是精確度,速度,還是輸出的多樣性。出于簡(jiǎn)單性,下文的表現(xiàn)測(cè)度我們選擇了最小化“誤差率”。

剛開(kāi)始著手一個(gè)新項(xiàng)目時(shí),你應(yīng)該精確地定義成功標(biāo)準(zhǔn),之后將其轉(zhuǎn)換為模型測(cè)度。用產(chǎn)品術(shù)語(yǔ)來(lái)說(shuō),服務(wù)需要具備什么級(jí)別的表現(xiàn)才有用?例如,如果新聞平臺(tái)向用戶分別推薦5篇文章,其中需要多少篇用戶相關(guān)的文章,我們又如何定義相關(guān)性?給定表現(xiàn)標(biāo)準(zhǔn)和現(xiàn)有數(shù)據(jù),你可以創(chuàng)建的最簡(jiǎn)單的模型是什么?

ML工程循環(huán)的目的是提供一個(gè)開(kāi)發(fā)過(guò)程中牢記的心智模型,簡(jiǎn)化決策過(guò)程,以集中精力處理下一個(gè)重要步驟。隨著從業(yè)者經(jīng)驗(yàn)的積累,這一過(guò)程變?yōu)閺臉I(yè)者的第二本能,可以快速果斷地在分析和實(shí)現(xiàn)間切換。話是這么說(shuō),不過(guò),當(dāng)不確定性增加時(shí),即使是最有經(jīng)驗(yàn)的工程師也會(huì)發(fā)現(xiàn)這一框架價(jià)值非凡——例如,模型出乎意料地沒(méi)能滿足需求,團(tuán)隊(duì)目標(biāo)突然調(diào)整(例如,為了體現(xiàn)產(chǎn)品需求的變動(dòng),測(cè)試集做了改動(dòng)),團(tuán)隊(duì)進(jìn)程因缺乏目標(biāo)而停滯。

開(kāi)始

為了啟動(dòng)這一循環(huán),你應(yīng)該先從一個(gè)基本不涉及不確定性的最小實(shí)現(xiàn)開(kāi)始。通常我們想要盡可能快地“得到一個(gè)數(shù)字”——?jiǎng)?chuàng)建一個(gè)足以評(píng)估表現(xiàn)并開(kāi)始迭代的系統(tǒng)。這通常意味著:

開(kāi)始設(shè)置訓(xùn)練、驗(yàn)證、測(cè)試集。

實(shí)現(xiàn)一個(gè)可以工作的簡(jiǎn)單模型。

例如,如果我們需要?jiǎng)?chuàng)建一個(gè)樹(shù)檢測(cè)器以調(diào)查某一區(qū)域的樹(shù)木,我們也許可以使用相關(guān)Kaggle競(jìng)賽中現(xiàn)成的數(shù)據(jù)作為訓(xùn)練集,并使用我們自行收集的一組目標(biāo)區(qū)域的照片作為驗(yàn)證集和測(cè)試集。我們接著可以在原始像素上運(yùn)行邏輯回歸,或者在訓(xùn)練圖像上運(yùn)行預(yù)訓(xùn)練好的網(wǎng)絡(luò)(比如ResNet)。這里的目標(biāo)不是一下子完結(jié)這個(gè)項(xiàng)目,而是開(kāi)啟我們的迭代循環(huán)。下面是一些有助于你達(dá)成這一點(diǎn)的竅門(mén):

竅門(mén)

關(guān)于良好的測(cè)試集:

由于團(tuán)隊(duì)的目標(biāo)是在測(cè)試集上取得較優(yōu)表現(xiàn),測(cè)試集實(shí)質(zhì)上描述了團(tuán)隊(duì)的目標(biāo)。因此,測(cè)試集應(yīng)當(dāng)反映產(chǎn)品或業(yè)務(wù)的需求。例如,如果你正創(chuàng)建一個(gè)基于自拍檢測(cè)皮膚狀況的應(yīng)用,你可以在任意圖像上訓(xùn)練,但需確保測(cè)試集包含光照和畫(huà)質(zhì)不佳的圖像,因?yàn)橐恍┳耘暮芸赡艹霈F(xiàn)這類(lèi)情況。

改變測(cè)試集意味著調(diào)整團(tuán)隊(duì)的目標(biāo),所以最好及早固定測(cè)試集,僅當(dāng)項(xiàng)目、產(chǎn)品、業(yè)務(wù)目標(biāo)發(fā)生變動(dòng)時(shí)才改動(dòng)測(cè)試集。

盡量使測(cè)試集和驗(yàn)證集足夠大,這樣才能得到足夠精確的表現(xiàn)測(cè)度,從而很好地區(qū)分不同的模型。如果測(cè)試集太小,你最終將基于噪聲數(shù)據(jù)得出結(jié)論。

類(lèi)似地,你應(yīng)該在實(shí)際情況允許的情況下,盡可能確保測(cè)試集和驗(yàn)證集的標(biāo)簽和標(biāo)注足夠精確。錯(cuò)誤標(biāo)注的測(cè)試集差不多等于沒(méi)有正確說(shuō)明的產(chǎn)品需求。

了解人類(lèi)或現(xiàn)存/競(jìng)爭(zhēng)系統(tǒng)在測(cè)試集上的表現(xiàn)很有幫助。這給出了最優(yōu)誤差率的界限,也就是你可能取得的最佳表現(xiàn)。

對(duì)許多任務(wù)而言,達(dá)到和人類(lèi)相當(dāng)?shù)乃浇?jīng)常是一個(gè)很好的長(zhǎng)期目標(biāo)。在任何情況下,最終目標(biāo)都是使測(cè)試表現(xiàn)盡可能接近我們猜測(cè)的最佳表現(xiàn)。

關(guān)于驗(yàn)證集和訓(xùn)練集:

驗(yàn)證集是測(cè)試表現(xiàn)的代理,可用于調(diào)整超參數(shù)。因此,驗(yàn)證集的分布應(yīng)當(dāng)和測(cè)試集一致。不過(guò),理想情形下,驗(yàn)證集和測(cè)試集應(yīng)該來(lái)自不同組別的用戶/輸入,這可以避免數(shù)據(jù)泄露。確保這一點(diǎn)的一個(gè)好辦法是首先積累大量樣本,然后打亂順序,之后將其分割為驗(yàn)證集和測(cè)試集。

如果在你的設(shè)想中,產(chǎn)品數(shù)據(jù)會(huì)有很多噪聲,確保訓(xùn)練集考慮到了噪聲問(wèn)題(比如使用數(shù)據(jù)增強(qiáng)或數(shù)據(jù)劣化)。你不能期望完全在銳利圖像上訓(xùn)練的模型能很好地推廣到模糊圖像。

實(shí)現(xiàn)了初始原型之后,你應(yīng)該在訓(xùn)練集、驗(yàn)證集、測(cè)試集上測(cè)試它的表現(xiàn)。這標(biāo)志著你度過(guò)了循環(huán)的第一個(gè)(退化的)周期。評(píng)估測(cè)試表現(xiàn)和有用的產(chǎn)品所需表現(xiàn)之間的差距。現(xiàn)在到了開(kāi)啟迭代的時(shí)刻了!

分析

識(shí)別表現(xiàn)瓶頸

在實(shí)踐中,可能有許多交叉的問(wèn)題導(dǎo)致了當(dāng)前的結(jié)果,但你的目標(biāo)是首先找出最明顯的問(wèn)題,這樣你就可以快速解決它。不要拘泥于試圖完全理解所有缺陷——轉(zhuǎn)而理解最關(guān)鍵的因素,因?yàn)樵谀愀倪M(jìn)模型之后,許多小問(wèn)題會(huì)改變,甚至消失。

我們下面列出了一些常見(jiàn)的診斷。選擇從哪方面開(kāi)始多多少少是門(mén)手藝,但隨著ML工程循環(huán)的進(jìn)行,你將逐漸獲得嘗試哪個(gè)的直覺(jué)。

對(duì)所有分析而言,一個(gè)很好的起點(diǎn)是查看訓(xùn)練集、驗(yàn)證集、測(cè)試集上的表現(xiàn)。我們建議你寫(xiě)代碼在每次試驗(yàn)后自動(dòng)進(jìn)行這一比較,養(yǎng)成習(xí)慣。平均來(lái)說(shuō),我們有:訓(xùn)練集誤差 <= 驗(yàn)證集誤差 <= 測(cè)試集誤差?(如果三個(gè)數(shù)據(jù)集中的數(shù)據(jù)遵循同一分布)。基于上一次試驗(yàn)的訓(xùn)練、驗(yàn)證、測(cè)試誤差率,你可以快速地獲知哪個(gè)因素是當(dāng)前最大的限制。例如,如果訓(xùn)練誤差和驗(yàn)證誤差存在一定差距,那么訓(xùn)練誤差是提升表現(xiàn)的瓶頸。

診斷

如果訓(xùn)練集誤差是當(dāng)前的限制因素,那么可能的問(wèn)題有:

優(yōu)化算法(例如,深度神經(jīng)網(wǎng)絡(luò)的梯度下降)沒(méi)有調(diào)整準(zhǔn)確。看看學(xué)習(xí)曲線,損失有沒(méi)有下降。檢查下是否能夠過(guò)擬合一個(gè)小很多的數(shù)據(jù)集(例如,在單個(gè)minibatch甚至單個(gè)樣本上訓(xùn)練)。你可以可視化神經(jīng)元反應(yīng)的直方圖,看看它們有沒(méi)有飽和(這可能會(huì)導(dǎo)致梯度消失)。

訓(xùn)練集可能有標(biāo)注錯(cuò)誤或毀壞的數(shù)據(jù)。在傳給訓(xùn)練算法前,手工檢查一些訓(xùn)練樣本。

模型可能過(guò)小、過(guò)于簡(jiǎn)單。例如,如果你在高度非線性的問(wèn)題上應(yīng)用線性回歸,你的模型無(wú)法很好地?cái)M合數(shù)據(jù)。我們稱(chēng)為高偏差或欠擬合。

如果驗(yàn)證集誤差是當(dāng)前的限制因素,那么可能的問(wèn)題有:

模型可能過(guò)大、過(guò)于復(fù)雜,或者正則化不夠。我們稱(chēng)為高方差或過(guò)擬合。

訓(xùn)練數(shù)據(jù)不足。

訓(xùn)練數(shù)據(jù)的分布和驗(yàn)證集、測(cè)試集分布不同。

模型的超參數(shù)設(shè)得不好。如果你搜索最佳超參數(shù)(比如特征集、正則項(xiàng)),那可能是搜索方法難以找到較好的選擇。

模型編碼的“歸納先驗(yàn)”和模型匹配不好。例如,如果數(shù)據(jù)集用一個(gè)線性函數(shù)表示更自然,使用最近鄰方法也許很難推廣,除非你有海量訓(xùn)練數(shù)據(jù)。

如果測(cè)試集誤差是當(dāng)前的限制因素,這常常是因?yàn)轵?yàn)證集太小,或者團(tuán)隊(duì)在多次嘗試的過(guò)程中過(guò)擬合驗(yàn)證集了。

不管是上面哪種情況,你都可以通過(guò)手工檢查一組模型出錯(cuò)的隨機(jī)樣本,理解模型的缺陷(一般情況下你不應(yīng)該在測(cè)試集上這么做,以避免在測(cè)試樣本上“訓(xùn)練”系統(tǒng))。

通過(guò)可視化數(shù)據(jù)嘗試識(shí)別常見(jiàn)類(lèi)型的誤差。然后檢查樣本,記錄每種類(lèi)型的誤差出現(xiàn)的頻率。分類(lèi)問(wèn)題可以看下混淆矩陣,找出表現(xiàn)最差的分類(lèi)。接著你就可以集中精力解決導(dǎo)致最多錯(cuò)誤的那類(lèi)誤差。

有些樣本可能錯(cuò)誤標(biāo)注了,或者有多種合理的標(biāo)簽。

有些樣本可能比其他樣本更難判斷,或者缺乏做出判斷需要的上下文。在若干種誤差同樣常見(jiàn)的時(shí)候,將一些樣本標(biāo)記為“很難”也許有助于你將精力花在容易得到改進(jìn)的地方。類(lèi)似地,將一些樣本標(biāo)記為“很容易”也許有助于你找出系統(tǒng)中細(xì)小的錯(cuò)誤,導(dǎo)致模型在容易的情形上犯錯(cuò)。這有點(diǎn)像在數(shù)據(jù)的不同子集上估計(jì)“最優(yōu)誤差率”,接著深入進(jìn)展空間最大的子集。

注意,上面的許多診斷有著直接、明顯的解決方案。例如,如果訓(xùn)練數(shù)據(jù)太少了,那就獲取更多訓(xùn)練數(shù)據(jù)!我們發(fā)現(xiàn)在心智上分隔分析階段和(下面的)選型階段是有幫助的,因?yàn)槲覀兒苋菀紫萑腚S機(jī)嘗試各種方法,而沒(méi)有真正分析背后問(wèn)題的狀況。另外,保持開(kāi)闊的思路,勤于返回誤差分析階段,經(jīng)常能夠揭示有用的洞見(jiàn),有助于改善你的決策。

例子

眾所周知,衛(wèi)星數(shù)據(jù)噪聲很多,常常需要仔細(xì)檢查

例如,Insight Data Science的Jack Kwok在創(chuàng)建一個(gè)幫助災(zāi)后重建的分割系統(tǒng)時(shí),注意到盡管分割模型在衛(wèi)星圖像訓(xùn)練集上表現(xiàn)良好,在驗(yàn)證集上的表現(xiàn)卻很差。這是因?yàn)轵?yàn)證集包含受到颶風(fēng)襲擊的城市,這些颶風(fēng)圖像的畫(huà)質(zhì)比訓(xùn)練數(shù)據(jù)差,更加模糊。通過(guò)在訓(xùn)練階段增加一個(gè)額外的數(shù)據(jù)增強(qiáng)步驟,在圖像上應(yīng)用模糊濾鏡,有助于降低訓(xùn)練集和驗(yàn)證集的表現(xiàn)差異。

語(yǔ)音識(shí)別系統(tǒng)上,對(duì)驗(yàn)證集的深入誤差分析可能揭示具有和大多數(shù)用戶很不一樣的濃重口音的說(shuō)話人貢獻(xiàn)了不成比例的誤差數(shù)量。那么接著就可以檢查下訓(xùn)練集,看看是否具備足夠比例的類(lèi)似口音樣本,這些樣本是否正確標(biāo)注,訓(xùn)練算法能否成功擬合這些樣本。部分用戶類(lèi)別代表性不夠或者錯(cuò)誤標(biāo)注是一個(gè)機(jī)器學(xué)習(xí)偏見(jiàn)的例子。Google的語(yǔ)音系統(tǒng)采取的一種解決方案是主動(dòng)向口音很重的用戶請(qǐng)求更多訓(xùn)練數(shù)據(jù)。

選型

找出處理瓶頸的最簡(jiǎn)單方式

完成分析之后,你對(duì)模型造成了哪些類(lèi)型的誤差和影響表現(xiàn)的是哪些因素已經(jīng)心中有數(shù)。就給定的診斷而言,也許有若干潛在的解決方案,下一步就是把它們列舉出來(lái),并制定優(yōu)先級(jí)。

有些診斷直接導(dǎo)向潛在的解決方案。例如,如果你的優(yōu)化器看起來(lái)沒(méi)有調(diào)好,你可以嘗試不同的學(xué)習(xí)率,或者考慮干脆換一種優(yōu)化算法。如果訓(xùn)練數(shù)據(jù)集過(guò)小,收集更多的訓(xùn)練數(shù)據(jù)可能是合理、快速、容易的解決方案。

我們建議ML工程師及其團(tuán)隊(duì)列出盡可能多的也許有效的想法,接著采用簡(jiǎn)單、快速的解決方案。如果現(xiàn)有的解決方案可能有效(例如,使用你的工具箱中已經(jīng)實(shí)現(xiàn)的另一種優(yōu)化算法),就從現(xiàn)有方案開(kāi)始。盡管更復(fù)雜的方法也許看起來(lái)能在一次巨大的轉(zhuǎn)變中解決更多問(wèn)題,我們常常發(fā)現(xiàn)多次快速迭代帶來(lái)的改進(jìn)超過(guò)了摸索當(dāng)前最先進(jìn)技術(shù)帶來(lái)的收益。如果你可以在標(biāo)注1000個(gè)數(shù)據(jù)點(diǎn)和研究最前沿的無(wú)監(jiān)督學(xué)習(xí)方法中做選擇,我們覺(jué)得你應(yīng)該選擇收集和標(biāo)注數(shù)據(jù)。如果你可以從一些簡(jiǎn)單的啟發(fā)式算法開(kāi)始,就這么干。

竅門(mén)

取決于你的瓶頸,這里是一些常見(jiàn)的解決方案。

如果你需要調(diào)整優(yōu)化器,以更好地?cái)M合數(shù)據(jù):

對(duì)數(shù)值優(yōu)化器而言,嘗試調(diào)整學(xué)習(xí)率或動(dòng)量設(shè)定。從一個(gè)小動(dòng)量(0.5)開(kāi)始通常是最容易奏效的方法。

嘗試不同的初始化策略,或者從預(yù)訓(xùn)練模型開(kāi)始。

嘗試一種容易調(diào)參的模型。在深度學(xué)習(xí)中,殘差網(wǎng)絡(luò)和帶批歸一化的網(wǎng)絡(luò)可能訓(xùn)練起來(lái)要容易一點(diǎn)。

如果模型不能很好地?cái)M合訓(xùn)練數(shù)據(jù):

使用更大、更有表達(dá)力的那類(lèi)模型。例如,使用決策樹(shù)時(shí),你可以配置更深的決策樹(shù)。

檢查訓(xùn)練集中模型出錯(cuò)的樣本,看看有沒(méi)有錯(cuò)誤標(biāo)注或缺失項(xiàng)。花時(shí)間清洗訓(xùn)練數(shù)據(jù)可以顯著改善結(jié)果。

如果模型難以推廣至驗(yàn)證集:

增加更多訓(xùn)練數(shù)據(jù)。注意,也許需要集中添加和驗(yàn)證集中所見(jiàn)誤差類(lèi)別類(lèi)似的訓(xùn)練樣本。

基于真實(shí)訓(xùn)練樣本,生成新樣本,以增強(qiáng)數(shù)據(jù)。例如,如果你注意到樹(shù)檢測(cè)器在有霧的圖像上一貫表現(xiàn)糟糕,那么可以加上增強(qiáng)步驟,使用OpenCV讓圖像看起來(lái)霧蒙蒙的。

擴(kuò)大搜索超參數(shù)的范圍,或者進(jìn)行更細(xì)致的搜索,確保找到在驗(yàn)證集上表現(xiàn)最佳的模型。

嘗試不同的正則化方式(例如神經(jīng)網(wǎng)絡(luò)的權(quán)重衰減、dropout,決策樹(shù)的剪枝)。

嘗試不同類(lèi)型的模型。不同類(lèi)型的模型可以改變擬合和推廣的表現(xiàn),所以很難知道什么時(shí)候這個(gè)方法有用。深度學(xué)習(xí)的一大優(yōu)勢(shì)在于,有范圍很廣的神經(jīng)網(wǎng)絡(luò)構(gòu)件可供嘗試。如果你使用傳統(tǒng)的模型(例如決策樹(shù)或高斯混合模型),切換不同類(lèi)型的模型需要花費(fèi)更多精力。如果新模型內(nèi)含的假定更正確,那么這一改變也許會(huì)有幫助——但最好先從容易的模型開(kāi)始嘗試。

實(shí)現(xiàn)

只創(chuàng)建需要?jiǎng)?chuàng)建的,快速創(chuàng)建

你知道應(yīng)該嘗試什么,并且已經(jīng)簡(jiǎn)化了問(wèn)題,現(xiàn)在只不過(guò)是實(shí)現(xiàn)而已……“只不過(guò)”。這一階段的目標(biāo)是快速創(chuàng)建原型,這樣你就可以測(cè)量結(jié)果,并從中學(xué)習(xí),然后快速開(kāi)啟下一輪循環(huán)。因此,我們建議你集中精力創(chuàng)建當(dāng)前試驗(yàn)需要的東西。注意,盡管這一階段的目標(biāo)是快速學(xué)習(xí),而不是打磨一切,你的實(shí)現(xiàn)仍然需要是正確的,這樣你就可以頻繁地檢驗(yàn)代碼是否能如期望一般工作。

竅門(mén)

在收集和標(biāo)注數(shù)據(jù)時(shí):

經(jīng)常查看數(shù)據(jù)。查看原始數(shù)據(jù),查看預(yù)處理后的數(shù)據(jù),查看標(biāo)簽。這些再?gòu)?qiáng)調(diào)也不為過(guò)!僅僅是在收集、標(biāo)注數(shù)據(jù)的流程中留心一點(diǎn),就能捕捉許多誤差。在Insight Data Science,我們經(jīng)常碰到和數(shù)據(jù)清洗、包圍盒坐標(biāo)、分割掩碼相關(guān)的bug。

標(biāo)注、清洗數(shù)據(jù)是日常任務(wù)。大多數(shù)人高估了收集、標(biāo)注數(shù)據(jù)的代價(jià),卻低估了在數(shù)據(jù)匱乏的環(huán)境下解決問(wèn)題的難度。如果方法得到,很容易就在一分鐘內(nèi)標(biāo)注用于分類(lèi)問(wèn)題的20張圖像。你是愿意花一小時(shí)標(biāo)注圖像,得到一個(gè)包含1200張圖像的數(shù)據(jù)集,再花一小時(shí)解決一個(gè)簡(jiǎn)單的分類(lèi)問(wèn)題,還是花3周時(shí)間嘗試讓一個(gè)模型基于5個(gè)樣本學(xué)習(xí)?

當(dāng)你為新模型寫(xiě)代碼時(shí),從一個(gè)類(lèi)似的現(xiàn)有實(shí)現(xiàn)開(kāi)始。許多論文現(xiàn)在都公布代碼——所以在重新實(shí)現(xiàn)論文中的一個(gè)想法前,先獲取配套的代碼,因?yàn)檎撐某3B┑粢恍┘?xì)節(jié)。這會(huì)為你節(jié)省幾小時(shí)乃至幾天。如果可能的話,不管是什么問(wèn)題,我們都建議遵循以下步驟:

尋找一個(gè)解決類(lèi)似問(wèn)題的模型實(shí)現(xiàn)。

在本地重現(xiàn)現(xiàn)有模型的實(shí)現(xiàn)(同樣的數(shù)據(jù)集和超參數(shù))

慢慢調(diào)整模型實(shí)現(xiàn)和數(shù)據(jù)工作流以匹配你的需求

重寫(xiě)需要重寫(xiě)的部分

編寫(xiě)測(cè)試以檢查梯度、張量值、輸入數(shù)據(jù)、標(biāo)簽的格式對(duì)不對(duì)。剛開(kāi)始設(shè)置模型的時(shí)候就寫(xiě)測(cè)試,這樣,如果捕捉到了錯(cuò)誤,就不會(huì)再犯。

測(cè)量

打印測(cè)試結(jié)果和決定是否可以發(fā)布需要考慮的其他測(cè)度(例如,生產(chǎn)環(huán)境限制)。

如果表現(xiàn)某種程度上在提高,那么你也許處于正確的方向上。這種情況下,現(xiàn)在也許是完善你知道工作良好的那些部件的時(shí)機(jī)。另外,確保團(tuán)隊(duì)里的其他成員能夠重現(xiàn)你的試驗(yàn)結(jié)果。

另一方面,如果表現(xiàn)在下降,或者沒(méi)怎么提高,你需要決定是再試一下(重返分析階段)還是放棄當(dāng)前想法。如果ML循環(huán)的每一步都相對(duì)廉價(jià),那就更容易做出決策:你不必花費(fèi)過(guò)多精力讓你的代碼趨于完美,再嘗試一次也不會(huì)花費(fèi)太多時(shí)間——所以你可以根據(jù)想法的風(fēng)險(xiǎn)和收益做出決策,而不會(huì)受到沉沒(méi)成本的干擾。

竅門(mén)

有用的表現(xiàn)測(cè)度包括ML方面的精確度和損失,以及商業(yè)價(jià)值測(cè)度。記住商業(yè)價(jià)值測(cè)度是最終的測(cè)度,因?yàn)檎撬鼈儧Q定了你創(chuàng)建的產(chǎn)品的有用程度。如果測(cè)試測(cè)度(ML代碼優(yōu)化的目標(biāo))偏離了商業(yè)測(cè)度,那么測(cè)量階段結(jié)束之后,應(yīng)該停下來(lái)考慮修改優(yōu)化標(biāo)準(zhǔn)或測(cè)試集。

既然每個(gè)開(kāi)發(fā)循環(huán)的末尾總是需要打印測(cè)度,同時(shí)計(jì)算分析階段所需的其他測(cè)度會(huì)比較方便。

經(jīng)常情況是,你最終創(chuàng)建了一個(gè)類(lèi)似“控制面板”的東西,其中包含測(cè)試測(cè)度和商業(yè)測(cè)度,還有其他有用的數(shù)據(jù)。這在團(tuán)隊(duì)協(xié)作中特別有用。

優(yōu)化循環(huán)

盡管機(jī)器學(xué)習(xí)任務(wù)具有內(nèi)在的不確定性,上面的ML工程循環(huán)將幫助你有條不紊地邁向一個(gè)更好的模型。不幸的是,它一點(diǎn)也不神奇——你需要發(fā)展在每個(gè)階段做出良好決策的能力,例如識(shí)別表現(xiàn)瓶頸,決定嘗試哪種解決方案,如何正確地實(shí)現(xiàn)它們,以及如何測(cè)量應(yīng)用的表現(xiàn)。你也需要習(xí)慣快速迭代的節(jié)奏。因此,你也應(yīng)該花時(shí)間思考如何提高迭代的質(zhì)量和速度,這樣可以在每次循環(huán)中最大化進(jìn)展,并且可以快速地完成多次迭代。

竅門(mén)

如果分析階段拖慢了你的進(jìn)度,那就創(chuàng)建一個(gè)腳本,總結(jié)每次試驗(yàn)結(jié)果,從訓(xùn)練集和驗(yàn)證集搜集誤差,并以良好的格式打印出來(lái)。這種包含常用診斷信息的“控制面板”可以幫助你戰(zhàn)勝“啊!我又得手工運(yùn)行這些分析了……不如試試這個(gè)隨機(jī)解決方案吧”這樣的想法。

如果你覺(jué)得自己對(duì)到底嘗試什么毫無(wú)頭緒,那就隨便選一樣。一下子嘗試做太多事情會(huì)拖慢你的進(jìn)度。有時(shí)候你可以在運(yùn)行試驗(yàn)的時(shí)候回過(guò)頭來(lái)嘗試另一個(gè)想法!

收集數(shù)據(jù)是取得更好表現(xiàn)的常用方式。如果獲取更多數(shù)據(jù)聽(tīng)起來(lái)很痛苦,但是確實(shí)可以改變結(jié)果,那么也許應(yīng)該投資讓數(shù)據(jù)更容易收集、清洗、標(biāo)注的工具。

如果你覺(jué)得自己陷入了困境,診斷不出瓶頸,或者選不出接下來(lái)試驗(yàn)的模型,考慮向?qū)<易稍儭nI(lǐng)域?qū)<医?jīng)常能夠就誤差分析提供寶貴的洞見(jiàn)(例如,指出導(dǎo)致某些情形困難或容易的微妙差別),而研究論文或有經(jīng)驗(yàn)的ML從業(yè)者也許可以為你提供值得嘗試的創(chuàng)造性解決方案(如果你可以和他們分享詳細(xì)的分析,他們可以更好地幫助你)。

良好的實(shí)現(xiàn)技能很重要,代碼規(guī)范可以防止bug產(chǎn)生。話是這么說(shuō),由于相當(dāng)大比例的想法會(huì)失敗,因此在迭代過(guò)程中,在試驗(yàn)代碼中使用一些臨時(shí)性的不規(guī)范做法也沒(méi)什么大不了的,畢竟失敗的代碼最終會(huì)被丟棄。一旦你確信自己取得了有用的進(jìn)展,你可以在下一次循環(huán)之前根據(jù)規(guī)范清理代碼。

如果試驗(yàn)時(shí)間過(guò)長(zhǎng),考慮花點(diǎn)時(shí)間看看能不能優(yōu)化代碼。或者和系統(tǒng)專(zhuān)家討論下如何讓訓(xùn)練更快。拿不定主意的時(shí)候,考慮升級(jí)GPU,或者并行運(yùn)行更多試驗(yàn),這些是ML試驗(yàn)“時(shí)忙時(shí)閑”問(wèn)題久負(fù)盛名的解決方案。

和其他決策一樣,僅當(dāng)可以解決當(dāng)前痛點(diǎn)的時(shí)候才致力于這些事項(xiàng)。有些團(tuán)隊(duì)花了太多時(shí)間創(chuàng)建“完美”的框架,最后發(fā)現(xiàn)真正的問(wèn)題在別的地方。

結(jié)語(yǔ)

ML項(xiàng)目?jī)?nèi)在地具有不確定性,我們上面推薦的方法可以作為引導(dǎo)你前進(jìn)的扶手。由于試驗(yàn)的命運(yùn)不確定,你很難為達(dá)成特定的精確度目標(biāo)而負(fù)責(zé),但你至少可以負(fù)責(zé)完成誤差分析,列出想法列表,編碼實(shí)現(xiàn),看看它們表現(xiàn)如何。就我們的經(jīng)驗(yàn)而言,拒絕那些閃閃發(fā)光的模型的召喚,果斷地集中精力于取得遞增的進(jìn)展,可以在研究和應(yīng)用中導(dǎo)向杰出的成果。這曾經(jīng)轉(zhuǎn)變了很多團(tuán)隊(duì),讓無(wú)數(shù)Insight Data Science的工程師得以交付前沿項(xiàng)目。

如果你有什么要問(wèn)的,歡迎留言,或通過(guò)Twitter聯(lián)系兩位作者(EmmanuelAmeisen和adampaulcoates)。

感謝Lacey Cope和Adam Coates對(duì)本文草稿給出的反饋。

聲明:本文內(nèi)容及配圖由入駐作者撰寫(xiě)或者入駐合作網(wǎng)站授權(quán)轉(zhuǎn)載。文章觀點(diǎn)僅代表作者本人,不代表電子發(fā)燒友網(wǎng)立場(chǎng)。文章及其配圖僅供工程師學(xué)習(xí)之用,如有內(nèi)容侵權(quán)或者其他違規(guī)問(wèn)題,請(qǐng)聯(lián)系本站處理。 舉報(bào)投訴
  • 圖像
    +關(guān)注

    關(guān)注

    2

    文章

    1089

    瀏覽量

    40592
  • 機(jī)器學(xué)習(xí)

    關(guān)注

    66

    文章

    8446

    瀏覽量

    133126

原文標(biāo)題:快速交付機(jī)器學(xué)習(xí)項(xiàng)目:ML工程循環(huán)指南

文章出處:【微信號(hào):jqr_AI,微信公眾號(hào):論智】歡迎添加關(guān)注!文章轉(zhuǎn)載請(qǐng)注明出處。

收藏 人收藏

    評(píng)論

    相關(guān)推薦

    如何快速部署邊緣就緒的機(jī)器學(xué)習(xí)應(yīng)用

    作者:Stephen Evanczuk 機(jī)器學(xué)習(xí) (ML) 為創(chuàng)造智能產(chǎn)品提供了巨大的潛力,但神經(jīng)網(wǎng)絡(luò) (NN) 建模和為邊緣創(chuàng)建 ML應(yīng)用非常復(fù)雜且困難,限制了開(kāi)發(fā)人員快速交付有用解決方案的能力
    的頭像 發(fā)表于 10-03 14:29 ?621次閱讀
    如何<b class='flag-5'>快速</b>部署邊緣就緒的<b class='flag-5'>機(jī)器</b><b class='flag-5'>學(xué)習(xí)</b>應(yīng)用

    [轉(zhuǎn)帖]如何快速擴(kuò)充你的項(xiàng)目經(jīng)驗(yàn)

    如何快速擴(kuò)充你的項(xiàng)目經(jīng)驗(yàn)     作為就業(yè)培訓(xùn),項(xiàng)目的好壞對(duì)培訓(xùn)質(zhì)量的影響非常大,常常是決定性的作用。????一:
    發(fā)表于 09-09 10:07

    請(qǐng)問(wèn)如何快速具有項(xiàng)目經(jīng)驗(yàn)

    DS – STD001 學(xué)習(xí)板是店主本人根據(jù)工作中的實(shí)際項(xiàng)目衍生而來(lái)的,100% 保留了原實(shí)際工程項(xiàng)目,便于初學(xué)者以及在校,應(yīng)屆畢業(yè)生了解在公司中實(shí)際項(xiàng)目的開(kāi)發(fā),調(diào)試。DS – STD
    發(fā)表于 07-06 02:01

    機(jī)器學(xué)習(xí)經(jīng)驗(yàn)總結(jié)

    面試經(jīng)驗(yàn)機(jī)器學(xué)習(xí)
    發(fā)表于 08-16 14:20

    【瑞芯微RK1808計(jì)算棒試用申請(qǐng)】基于機(jī)器學(xué)習(xí)的視覺(jué)機(jī)械臂研究與設(shè)計(jì)

    項(xiàng)目名稱(chēng):基于機(jī)器學(xué)習(xí)的視覺(jué)機(jī)械臂研究與設(shè)計(jì)試用計(jì)劃:申請(qǐng)理由本人在深度學(xué)習(xí)領(lǐng)域有四年開(kāi)發(fā)經(jīng)驗(yàn),申請(qǐng)理由:基于視覺(jué)的機(jī)械臂伺服控制系統(tǒng),并根
    發(fā)表于 09-23 15:39

    【米爾MYD-C7Z020開(kāi)發(fā)板試用申請(qǐng)】機(jī)器項(xiàng)目評(píng)估

    項(xiàng)目名稱(chēng):機(jī)器項(xiàng)目評(píng)估試用計(jì)劃:本人在有機(jī)器人和視覺(jué)領(lǐng)域有7年多的學(xué)習(xí)和開(kāi)發(fā)經(jīng)驗(yàn),曾設(shè)計(jì)過(guò)AG
    發(fā)表于 10-30 17:03

    【 平頭哥CB5654語(yǔ)音開(kāi)發(fā)板試用連載】智能取貨機(jī)器人語(yǔ)音交互模組

    項(xiàng)目名稱(chēng):智能取貨機(jī)器人語(yǔ)音交互模組試用計(jì)劃:申請(qǐng)理由本人在機(jī)器人控制有七年多的學(xué)習(xí)和開(kāi)發(fā)經(jīng)驗(yàn),曾參與設(shè)計(jì)過(guò)類(lèi)似巡檢
    發(fā)表于 02-25 16:05

    機(jī)器學(xué)習(xí)入門(mén)篇:一個(gè)完整的機(jī)器學(xué)習(xí)項(xiàng)目

    機(jī)器學(xué)習(xí)項(xiàng)目入門(mén)篇:一個(gè)完整的機(jī)器學(xué)習(xí)項(xiàng)目
    發(fā)表于 05-11 14:47

    【快包故事簡(jiǎn)訊】服務(wù)商競(jìng)標(biāo)+交付經(jīng)驗(yàn)分享,三個(gè)成功秘訣和四大誤區(qū)!

    摘要:快包故事簡(jiǎn)訊——定期報(bào)道項(xiàng)目交易進(jìn)程,分享項(xiàng)目管理經(jīng)驗(yàn)以及承接項(xiàng)目技巧。本期簡(jiǎn)訊從交付、選中、服務(wù)商、雇主四個(gè)維度闡述
    發(fā)表于 08-11 11:49

    11個(gè)機(jī)器學(xué)習(xí)開(kāi)源項(xiàng)目

    隨著機(jī)器學(xué)習(xí)越來(lái)越受到開(kāi)發(fā)者關(guān)注,出現(xiàn)了很多機(jī)器學(xué)習(xí)的開(kāi)源項(xiàng)目,在本文列舉的11個(gè)機(jī)器
    發(fā)表于 02-14 14:25 ?2836次閱讀

    Airbnb機(jī)器學(xué)習(xí)和數(shù)據(jù)科學(xué)團(tuán)隊(duì)經(jīng)驗(yàn)分享

    Airbnb資深機(jī)器學(xué)習(xí)科學(xué)家Shijing Yao、前Airbnb數(shù)據(jù)科學(xué)負(fù)責(zé)人Qiang Zhu、Airbnb機(jī)器學(xué)習(xí)工程師Phillippe Siclait分享了在Airbnb產(chǎn)
    的頭像 發(fā)表于 07-07 09:24 ?3911次閱讀

    機(jī)器學(xué)習(xí)的12大經(jīng)驗(yàn)總結(jié)

    本文整理了關(guān)于機(jī)器學(xué)習(xí)研究者和從業(yè)者的 12 個(gè)寶貴經(jīng)驗(yàn),包括需要避免的陷阱、需要關(guān)注的重點(diǎn)問(wèn)題、常見(jiàn)問(wèn)題的答案。希望這些經(jīng)驗(yàn)對(duì)機(jī)器
    的頭像 發(fā)表于 12-13 15:29 ?2726次閱讀

    Everyday Robot項(xiàng)目啟動(dòng) 意在開(kāi)發(fā)通用學(xué)習(xí)機(jī)器

    今天,Alphabet的X moonshot部門(mén)(以前稱(chēng)為Google X)啟動(dòng)了Everyday Robot項(xiàng)目,該項(xiàng)目的目的是開(kāi)發(fā)“通用學(xué)習(xí)機(jī)器人”。該想法是,其
    發(fā)表于 11-22 11:29 ?820次閱讀

    機(jī)器學(xué)習(xí)模型部署到ML項(xiàng)目的過(guò)程

    在構(gòu)建一個(gè)大的機(jī)器學(xué)習(xí)系統(tǒng)時(shí),有很多事情需要考慮。但作為數(shù)據(jù)科學(xué)家,我們常常只擔(dān)心項(xiàng)目的某些部分。
    的頭像 發(fā)表于 05-04 11:56 ?2182次閱讀

    機(jī)器學(xué)習(xí)模型在生產(chǎn)中退化的原因

    由于意外的機(jī)器學(xué)習(xí)模型退化導(dǎo)致了幾個(gè)機(jī)器學(xué)習(xí)項(xiàng)目的失敗,我想分享一下我在機(jī)器
    的頭像 發(fā)表于 05-04 12:11 ?1968次閱讀
    <b class='flag-5'>機(jī)器</b><b class='flag-5'>學(xué)習(xí)</b>模型在生產(chǎn)中退化的原因
    主站蜘蛛池模板: 99成人在线 | 色老头·com 色老头成人免费综合视频 色老头久久久久 | 亚洲午夜日韩高清一区 | 优优国产在线视频 | 深夜视频免费在线观看 | 午夜视频福利在线 | 日产精品卡二卡三卡四卡无卡乱码 | 色最快国产| 午夜福免费福利在线观看 | 奇米影视9999 | 国产一区二区三区美女图片 | 日韩一级欧美一级一级国产 | 天天澡天天干 | 三级在线观看免播放网站 | 欧美午夜影院 | 九九热精品在线 | 夜夜操夜夜爱 | 久久天天躁狠狠躁夜夜 | 国产片一级aaa毛片视频 | 天天添天天射 | 亚洲综合五月天欧美 | 激情五月亚洲色图 | 欧洲性开放大片免费观看视频 | 婷婷网址 | 亚洲第一页在线 | 国产美女精品久久久久久久免费 | 天天天操天天天干 | 天堂一区二区三区在线观看 | 国产精品久久久久乳精品爆 | 操女网站 | 一区二区免费视频 | 国产成人夜间影院在线观看 | 日日射天天射 | 久久久久国产一级毛片高清片 | 综合伊人 | 国产亚洲一区二区在线观看 | 亚洲成a人片毛片在线 | 五月激情综合网 | 最近2018中文字幕免费视频 | 色多多最新地址福利地址 | 5252欧美在线观看 |