91欧美超碰AV自拍|国产成年人性爱视频免费看|亚洲 日韩 欧美一厂二区入|人人看人人爽人人操aV|丝袜美腿视频一区二区在线看|人人操人人爽人人爱|婷婷五月天超碰|97色色欧美亚州A√|另类A√无码精品一级av|欧美特级日韩特级

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

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

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

快速交付機器學(xué)習項目的經(jīng)驗

zhKF_jqr_AI ? 來源:未知 ? 作者:李倩 ? 2018-10-21 09:16 ? 次閱讀
加入交流群
微信小助手二維碼

掃碼添加小助手

加入工程師交流群

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

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

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

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

ML工程循環(huán)

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

分析

選型

實現(xiàn)

測量

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

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

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

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

開始

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

開始設(shè)置訓(xùn)練、驗證、測試集。

實現(xiàn)一個可以工作的簡單模型。

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

竅門

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

由于團隊的目標是在測試集上取得較優(yōu)表現(xiàn),測試集實質(zhì)上描述了團隊的目標。因此,測試集應(yīng)當反映產(chǎn)品或業(yè)務(wù)的需求。例如,如果你正創(chuàng)建一個基于自拍檢測皮膚狀況的應(yīng)用,你可以在任意圖像上訓(xùn)練,但需確保測試集包含光照和畫質(zhì)不佳的圖像,因為一些自拍很可能出現(xiàn)這類情況。

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

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

類似地,你應(yīng)該在實際情況允許的情況下,盡可能確保測試集和驗證集的標簽和標注足夠精確。錯誤標注的測試集差不多等于沒有正確說明的產(chǎn)品需求。

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

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

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

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

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

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

分析

識別表現(xiàn)瓶頸

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

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

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

診斷

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

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

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

模型可能過小、過于簡單。例如,如果你在高度非線性的問題上應(yīng)用線性回歸,你的模型無法很好地擬合數(shù)據(jù)。我們稱為高偏差或欠擬合。

如果驗證集誤差是當前的限制因素,那么可能的問題有:

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

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

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

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

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

如果測試集誤差是當前的限制因素,這常常是因為驗證集太小,或者團隊在多次嘗試的過程中過擬合驗證集了。

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

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

有些樣本可能錯誤標注了,或者有多種合理的標簽。

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

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

例子

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

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

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

選型

找出處理瓶頸的最簡單方式

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

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

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

竅門

取決于你的瓶頸,這里是一些常見的解決方案。

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

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

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

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

如果模型不能很好地擬合訓(xùn)練數(shù)據(jù):

使用更大、更有表達力的那類模型。例如,使用決策樹時,你可以配置更深的決策樹。

檢查訓(xùn)練集中模型出錯的樣本,看看有沒有錯誤標注或缺失項?;〞r間清洗訓(xùn)練數(shù)據(jù)可以顯著改善結(jié)果。

如果模型難以推廣至驗證集:

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

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

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

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

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

實現(xiàn)

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

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

竅門

在收集和標注數(shù)據(jù)時:

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

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

當你為新模型寫代碼時,從一個類似的現(xiàn)有實現(xiàn)開始。許多論文現(xiàn)在都公布代碼——所以在重新實現(xiàn)論文中的一個想法前,先獲取配套的代碼,因為論文常常漏掉一些細節(jié)。這會為你節(jié)省幾小時乃至幾天。如果可能的話,不管是什么問題,我們都建議遵循以下步驟:

尋找一個解決類似問題的模型實現(xiàn)。

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

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

重寫需要重寫的部分

編寫測試以檢查梯度、張量值、輸入數(shù)據(jù)、標簽的格式對不對。剛開始設(shè)置模型的時候就寫測試,這樣,如果捕捉到了錯誤,就不會再犯。

測量

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

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

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

竅門

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

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

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

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

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

竅門

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

如果你覺得自己對到底嘗試什么毫無頭緒,那就隨便選一樣。一下子嘗試做太多事情會拖慢你的進度。有時候你可以在運行試驗的時候回過頭來嘗試另一個想法!

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

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

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

如果試驗時間過長,考慮花點時間看看能不能優(yōu)化代碼?;蛘吆拖到y(tǒng)專家討論下如何讓訓(xùn)練更快。拿不定主意的時候,考慮升級GPU,或者并行運行更多試驗,這些是ML試驗“時忙時閑”問題久負盛名的解決方案。

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

結(jié)語

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

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

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

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

    關(guān)注

    2

    文章

    1096

    瀏覽量

    42354
  • 機器學(xué)習
    +關(guān)注

    關(guān)注

    66

    文章

    8558

    瀏覽量

    137054

原文標題:快速交付機器學(xué)習項目:ML工程循環(huán)指南

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

收藏 人收藏
加入交流群
微信小助手二維碼

掃碼添加小助手

加入工程師交流群

    評論

    相關(guān)推薦
    熱點推薦

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

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

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

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

    請問如何快速具有項目經(jīng)驗?

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

    機器學(xué)習經(jīng)驗總結(jié)

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

    【米爾MYD-C7Z020開發(fā)板試用申請】機器項目評估

    項目名稱:機器項目評估試用計劃:本人在有機器人和視覺領(lǐng)域有7年多的學(xué)習和開發(fā)經(jīng)驗,曾設(shè)計過AG
    發(fā)表于 10-30 17:03

    機器學(xué)習入門篇:一個完整的機器學(xué)習項目

    機器學(xué)習項目入門篇:一個完整的機器學(xué)習項目
    發(fā)表于 05-11 14:47

    【快包故事簡訊】服務(wù)商競標+交付經(jīng)驗分享,三個成功秘訣和四大誤區(qū)!

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

    11個機器學(xué)習開源項目

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

    Airbnb機器學(xué)習和數(shù)據(jù)科學(xué)團隊經(jīng)驗分享

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

    機器學(xué)習的12大經(jīng)驗總結(jié)

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

    Everyday Robot項目啟動 意在開發(fā)通用學(xué)習機器

    今天,Alphabet的X moonshot部門(以前稱為Google X)啟動了Everyday Robot項目,該項目的目的是開發(fā)“通用學(xué)習機器人”。該想法是,其
    發(fā)表于 11-22 11:29 ?1104次閱讀

    機器學(xué)習模型部署到ML項目的過程

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

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

    由于意外的機器學(xué)習模型退化導(dǎo)致了幾個機器學(xué)習項目的失敗,我想分享一下我在機器
    的頭像 發(fā)表于 05-04 12:11 ?2518次閱讀
    <b class='flag-5'>機器</b><b class='flag-5'>學(xué)習</b>模型在生產(chǎn)中退化的原因

    突破交付瓶頸:FPGA項目速交付的“致勝密碼”

    引言在當今快節(jié)奏的數(shù)字化時代,軟件開發(fā)、工程項目等各類開發(fā)進程猶如一場與時間賽跑的競技賽。然而,項目延遲、瓶頸或設(shè)計挑戰(zhàn)如同賽道上的重重障礙,不斷拖慢開發(fā)的腳步。這些問題不僅影響項目交付
    的頭像 發(fā)表于 06-27 10:13 ?980次閱讀
    突破<b class='flag-5'>交付</b>瓶頸:FPGA<b class='flag-5'>項目</b>加<b class='flag-5'>速交付</b>的“致勝密碼”

    天合儲能深度解析歐洲多國儲能項目的真實部署經(jīng)驗

    。研討會圍繞歐洲多國儲能項目的真實部署經(jīng)驗,梳理了不同市場在系統(tǒng)設(shè)計、并網(wǎng)要求、交付模式與產(chǎn)品演進方面的關(guān)鍵差異與共性趨勢。
    的頭像 發(fā)表于 12-30 10:05 ?485次閱讀