這一周,主要是將im2txt放在比賽的服務(wù)器跑了起來(lái),然后學(xué)習(xí)了使用RNN進(jìn)行分類。
將im2txt模型跑起來(lái)
首先
將上周的一些錯(cuò)誤解決了,然后放在本地能跑起來(lái)了。至于究竟解決了什么問(wèn)題,現(xiàn)在已經(jīng)忘記了。
然后,將代碼放到比賽的服務(wù)器跑起來(lái)
全球AI挑戰(zhàn)賽這個(gè)提供的服務(wù)器是UCLOUD提供的GPU服務(wù)器。它是通過(guò)docker來(lái)進(jìn)行部署的,流程是:在本地調(diào)試好代碼,然后用docker打一個(gè)本地的鏡像,然后上傳到ucloud的服務(wù)器;之后,在ucloud后臺(tái)創(chuàng)建一個(gè)訓(xùn)練任務(wù),設(shè)置相關(guān)配置就可以 訓(xùn)練了。在后來(lái)的訓(xùn)練的時(shí)候,就會(huì)輕松很多,只需要打包上傳,然后創(chuàng)建任務(wù)。整個(gè)流程有5個(gè)文檔,蠻復(fù)雜的(可能是第一次接觸使用Docker打包上傳代碼的原因)。
最后,我成功了。但是,把代碼放上面去跑的時(shí)候,發(fā)現(xiàn)損失降的沒有那么快。跑了12個(gè)小時(shí),損失還在1.0左右,并且bleu score在13分左右,沒有上升的趨勢(shì)。后來(lái),我將batch_size調(diào)到32,提升訓(xùn)練任務(wù),看效果會(huì)快很多。
RNN進(jìn)行分類
這個(gè)是因?yàn)槲倚瞧谖宓臅r(shí)候,想自己寫個(gè)分類器,居然發(fā)現(xiàn)不會(huì)寫。寫完了之后,跑起來(lái)的時(shí)候,居然又發(fā)現(xiàn)效果奇差。好吧,看來(lái)還不會(huì)。然后回去看了看優(yōu)達(dá)學(xué)城的RNN情緒分類,按照上面的教程,一步一步跑了一遍。整個(gè)流程沒有什么難點(diǎn),就是將內(nèi)容傳給RNN,然后使用RNN最后輸出一步輸出的結(jié)果來(lái)判斷是positive還是negative。需要注意的是,拿取的是output最后的time step的結(jié)果。中途出現(xiàn)了幾個(gè)問(wèn)題,不過(guò)有代碼參考,很快搞定,現(xiàn)在就讓它自己電腦上跑。
總結(jié)與計(jì)劃
總結(jié):上周跑通了模型,并放在了服務(wù)器上跑,只是瞧了一眼seq2seq的代碼,沒有仔細(xì)去看。還有,發(fā)現(xiàn)自己還是對(duì)tensorflow一些東西不會(huì)用,感覺很可能是因?yàn)槔碚撝R(shí)的缺乏。
計(jì)劃:
- 調(diào)整比賽模型,爭(zhēng)取這一周訓(xùn)練出的模型能靠點(diǎn)譜。
- 吳恩達(dá)的深度學(xué)習(xí)課程