中文字幕在线观看,亚洲а∨天堂久久精品9966,亚洲成a人片在线观看你懂的,亚洲av成人片无码网站,亚洲国产精品无码久久久五月天

優(yōu)秀的機(jī)器學(xué)習(xí)開(kāi)發(fā)者都是這樣做的!

2018-09-13    來(lái)源:raincent

容器云強(qiáng)勢(shì)上線!快速搭建集群,上萬(wàn)Linux鏡像隨意使用

每年我們都會(huì)與一起從事短期機(jī)器學(xué)習(xí)研究項(xiàng)目的學(xué)生溝通。到目前為止,我們已經(jīng)和很多學(xué)生交流過(guò)并且在他們的項(xiàng)目中發(fā)現(xiàn)了很多問(wèn)題,并根據(jù)問(wèn)題給予了他們諸多的建議。我們發(fā)現(xiàn)很多問(wèn)題是大家都存在的,在這篇文章中,我們將集中的介紹這些問(wèn)題并且給出解決方法。這篇文章絕不是全面的,而是強(qiáng)調(diào)了我們一遍又一遍地看到的那些陷阱。例如,我們不會(huì)談?wù)撊绾芜x擇一個(gè)好項(xiàng)目。我們的一些建議通常適用于機(jī)器學(xué)習(xí),特別是深度學(xué)習(xí)或強(qiáng)化學(xué)習(xí)研究的項(xiàng)目。

1、主要陷阱:

1.1假設(shè)你的代碼沒(méi)有錯(cuò)誤

眾所周知,機(jī)器學(xué)習(xí),特別是深度學(xué)習(xí)和強(qiáng)化學(xué)習(xí)模型很難調(diào)試。為了讓你了解無(wú)數(shù)的犯錯(cuò)方式,請(qǐng)查看Andrej Karpathy的Twitter主題。我們所有人,甚至是更高級(jí)的研究人員,都會(huì)一直犯同樣的錯(cuò)誤。使這些如此難以察覺(jué)的原因是即使是有缺陷的模型通常仍然可以學(xué)習(xí)并產(chǎn)生有意義的輸出。錯(cuò)誤可能會(huì)對(duì)你的模型進(jìn)行細(xì)微更改,并且大多數(shù)只會(huì)在運(yùn)行時(shí)顯示?紤]到這一點(diǎn),你可以做的最糟糕的事情是假設(shè)你的代碼不包含任何錯(cuò)誤。機(jī)器學(xué)習(xí)研究者對(duì)待代碼的態(tài)度也是將他們分成生產(chǎn)性和非生產(chǎn)性的原意。如果你的默認(rèn)假設(shè)是你的代碼可能有問(wèn)題,那么你將更仔細(xì)地搜索錯(cuò)誤,逐行完成代碼,仔細(xì)檢查中間輸出。如果可能的話,你還會(huì)可視化它們。你會(huì)考慮張量的形狀是否合適?它們是否已正確初始化?克隆還是分離?在訓(xùn)練期間監(jiān)控梯度并注意NaN。通過(guò)設(shè)置隨機(jī)數(shù)生成器的種子來(lái)編寫(xiě)單元測(cè)試并使你的實(shí)驗(yàn)可重現(xiàn)等等。這些措施可以讓你的代碼更具有實(shí)際性用處,有關(guān)神經(jīng)網(wǎng)絡(luò)調(diào)試的更多提示,請(qǐng)參閱Goodfellow等人的深度學(xué)習(xí)書(shū)。

1.2僅看最終評(píng)估指標(biāo)

雖然你的項(xiàng)目目標(biāo)可能是實(shí)現(xiàn)某些評(píng)估指標(biāo)的改進(jìn),但更重要的是,你應(yīng)該充分了解模型的工作原理和原因。特別是在項(xiàng)目的早期階段,最終評(píng)估指標(biāo)包含的信息很少,但是這些信息對(duì)迭代和開(kāi)發(fā)算法或模型很有用。為了獲得更多的信息,我們必須提出更深入的問(wèn)題并獲得信息反饋。例如,如果你引入了門(mén)控機(jī)制或注意機(jī)制,你的模型實(shí)際上是否使用了它?你提出的哪些模型創(chuàng)新實(shí)際上是有助于整體性能提升?你的模型需要多少個(gè)訓(xùn)練樣例/時(shí)期才能達(dá)到合理的性能,這與你使用的基線有何不同?你的模型運(yùn)行良好或非常嚴(yán)重的測(cè)試實(shí)例之間是否存在系統(tǒng)差異?你可以從模型的隱藏狀態(tài)預(yù)測(cè)重要特征嗎?請(qǐng)記住,你的研究和項(xiàng)目報(bào)告并非真正告知研究界對(duì)先前技術(shù)水平的一些(邊際)改進(jìn),而是為我們對(duì)該領(lǐng)域的理解作出貢獻(xiàn)。

1.3嘗試隨機(jī)變化并沒(méi)有明確的期望

使用當(dāng)前的深度學(xué)習(xí)庫(kù),通過(guò)添加更多組件、層和優(yōu)化技巧,可以輕松地使模型更復(fù)雜。但是,當(dāng)你對(duì)代碼或模型進(jìn)行更改時(shí),你至少應(yīng)該對(duì)此更改有一個(gè)大致的直覺(jué)。同樣,當(dāng)你進(jìn)行實(shí)驗(yàn)時(shí),你應(yīng)該對(duì)其結(jié)果有明確的期望。你期望繪制的結(jié)果看起來(lái)像什么,他們會(huì)告訴你什么?當(dāng)你發(fā)現(xiàn)自己的模型沒(méi)有按照預(yù)期的方式進(jìn)行時(shí),這一點(diǎn)就更為重要。通過(guò)這些措施,你更有可能看到出現(xiàn)錯(cuò)誤的原因,因?yàn)閿U(kuò)展你的模型不會(huì)幫助你找到該錯(cuò)誤,甚至可能使得更難以找到問(wèn)題。在使模型更復(fù)雜之前,先了解它可能出錯(cuò)的底線。此外,請(qǐng)記住,在你的報(bào)告中,你必須證明你的所作所為。因?yàn)槟愕膱?bào)告是別人幫你解決問(wèn)題的唯一切入口。如果你不能制定一個(gè)研究假設(shè),并向自己解釋為什么你在做這個(gè)工作,那么其他任何人更沒(méi)有機(jī)會(huì)了解你在干什么。

1.4過(guò)度復(fù)雜

我們經(jīng)?吹椒e極的學(xué)生立即跳出難題并嘗試復(fù)雜的解決方案。其實(shí)真正的出現(xiàn)問(wèn)題,一般都會(huì)很難分析。相反,問(wèn)問(wèn)自己:應(yīng)該起作用的最小的東西是什么?模型能學(xué)會(huì)記住一個(gè)小數(shù)據(jù)集嗎?只使用幾個(gè)參數(shù)時(shí)會(huì)學(xué)到什么?在單個(gè)訓(xùn)練實(shí)例而不是批處理訓(xùn)練時(shí),代碼是否有效?我們期望看到的最簡(jiǎn)單的概括形式是什么?

1.5迭代太慢了

進(jìn)行訓(xùn)練實(shí)驗(yàn)可能需要很長(zhǎng)時(shí)間。特別是深度學(xué)習(xí)和強(qiáng)化學(xué)習(xí)在積累統(tǒng)計(jì)顯著數(shù)量的隨機(jī)種子時(shí)可能非常耗時(shí)。因此,在短期項(xiàng)目過(guò)程中不要過(guò)早陷入緩慢的迭代周期是至關(guān)重要。盡量使用簡(jiǎn)單的環(huán)境調(diào)試你的模型,并實(shí)現(xiàn)你的想法的概念驗(yàn)證,爭(zhēng)取整個(gè)過(guò)程可以在你的個(gè)人計(jì)算機(jī)上運(yùn)行。有時(shí),簡(jiǎn)單的矩陣游戲或網(wǎng)格世界實(shí)驗(yàn)也可以提供有用的想法驗(yàn)證。類似的你也可以使用MDP的精確值函數(shù)來(lái)測(cè)試算法思想,而不必亂用梯度估計(jì),演員評(píng)論訓(xùn)練等。當(dāng)轉(zhuǎn)向更大規(guī)模的實(shí)驗(yàn)時(shí),簡(jiǎn)化你啟動(dòng)實(shí)驗(yàn)和檢查結(jié)果的過(guò)程。在實(shí)驗(yàn)完成全部過(guò)程之前檢查這些結(jié)果,看看性能是否平穩(wěn)。投資訓(xùn)練模型使用的基礎(chǔ)設(shè)施在開(kāi)始時(shí)可能很耗時(shí),但在項(xiàng)目結(jié)束時(shí)都會(huì)有所回報(bào)。

2一些建議:

2.1在項(xiàng)目開(kāi)始之前,開(kāi)始閱讀背景知識(shí)和準(zhǔn)備相關(guān)工作

我們通常在正式開(kāi)始日期前就應(yīng)該分析項(xiàng)目。其中一個(gè)原因是了解背景和相關(guān)工作,接著我們要進(jìn)行實(shí)施和實(shí)驗(yàn),最后要認(rèn)真撰寫(xiě)一份好的報(bào)告,在做項(xiàng)目之前一定要有一個(gè)大局觀的設(shè)定。另一個(gè)原因是我們通常會(huì)提出研究項(xiàng)目,如果成功,可能會(huì)在機(jī)器學(xué)習(xí)論壇或者雜志上公布。雖然我們都知道整個(gè)項(xiàng)目過(guò)程中會(huì)有很多事情發(fā)生,但大多數(shù)時(shí)候我們都會(huì)鼓勵(lì)你至少提前開(kāi)始閱讀相關(guān)文獻(xiàn)。理想情況下,當(dāng)你開(kāi)始全職工作時(shí),你應(yīng)該知道該做什么,它如何與現(xiàn)有方法相關(guān),并且知道如何做到這一點(diǎn)。

2.2正確用軟件版本及備份

你真的應(yīng)該為你的項(xiàng)目代碼和項(xiàng)目報(bào)告使用嚴(yán)格的版本控制,并且及時(shí)做好備份。沒(méi)有什么比在截止日期之前失去所有辛苦工作更糟的了。如果你還沒(méi)有,請(qǐng)打開(kāi)GitHub帳戶,作為一個(gè)學(xué)生,你可以獲得免費(fèi)的私人存儲(chǔ)庫(kù)。

2.3使用隨機(jī)重復(fù)進(jìn)行評(píng)估

在學(xué)術(shù)界,你不可能在項(xiàng)目期間使用多個(gè)GPU進(jìn)行訓(xùn)練。然而,另外一個(gè)尷尬的事情,特別是在深層強(qiáng)化學(xué)習(xí)中,不能簡(jiǎn)簡(jiǎn)單單的就從單個(gè)或幾個(gè)實(shí)驗(yàn)中得出過(guò)早的結(jié)論。理想情況下,你希望多次重復(fù)實(shí)驗(yàn),并且如上所述,可以了解不同起始條件和超參數(shù)的穩(wěn)健性。

2.4在實(shí)施項(xiàng)目中盡早開(kāi)始寫(xiě)文檔

如果你正在做一個(gè)碩士項(xiàng)目,你的工作將根據(jù)你的書(shū)面報(bào)告進(jìn)行評(píng)估,而不是基于你所做的杰出工作,這個(gè)時(shí)候你需要有足夠的時(shí)間來(lái)寫(xiě)清楚你做了那些工作。我個(gè)人建議是盡早開(kāi)始寫(xiě)作,不要低估傳播研究的價(jià)值。明確說(shuō)明你的目標(biāo)、假設(shè)和貢獻(xiàn),并讓讀者遵循你的思維過(guò)程,認(rèn)真的讀你的文章。你需要在文檔中解釋你的設(shè)計(jì)選擇并清楚地討論你的發(fā)現(xiàn)。理想情況下,你應(yīng)該在項(xiàng)目過(guò)程中始終如一地編寫(xiě)報(bào)告。這樣,你就強(qiáng)迫自己考慮下一步,在截止日期到達(dá)時(shí)你不太可能忘記任何重要信息。

2.5在需要時(shí)主動(dòng)尋求幫助

你的上級(jí)是忙碌的人,但他們的存在是為了幫助你。一旦出現(xiàn)問(wèn)題時(shí)一定要及時(shí)反饋聯(lián)系上級(jí),千萬(wàn)不要等到下次預(yù)定會(huì)議時(shí)再反饋。積極主動(dòng)地溝通并準(zhǔn)備你想要提前討論的結(jié)果。充分利用你的主管!最后,不要驚慌!他們都經(jīng)歷過(guò)這一切,一些問(wèn)題在你這里可能是個(gè)不能解決的問(wèn)題,但是在你上級(jí)哪里可能就是順手的事情。

文章原標(biāo)題《ADVICE FOR SHORT-TERM MACHINE LEARNING RESEARCH PROJECTS》,

作者:Jakob Foerster and Greg Farquhar 譯者:虎說(shuō)八道

標(biāo)簽: 代碼 搜索 網(wǎng)絡(luò)

版權(quán)申明:本站文章部分自網(wǎng)絡(luò),如有侵權(quán),請(qǐng)聯(lián)系:west999com@outlook.com
特別注意:本站所有轉(zhuǎn)載文章言論不代表本站觀點(diǎn)!
本站所提供的圖片等素材,版權(quán)歸原作者所有,如需使用,請(qǐng)與原作者聯(lián)系。

上一篇:機(jī)房的未來(lái)趨勢(shì),互聯(lián)網(wǎng)數(shù)據(jù)中心(IDC)行業(yè)前

下一篇:軟件定義電源如何提高數(shù)據(jù)中心容量