從零基礎開始想發一篇深度學習的論文要提前準備什麼?寫論文的周期大概多久?


不是我恐嚇你,等你已經能跟上最新的arxiv之後(需要大半年吧,看能力的),會發現每個分支都已經有人在做,而且機器性能、智商、寫作速度等方面都完爆你。
機器不行,甚至顯卡都沒有怎麼辦呢?你去找老闆,老闆思想僵化,不肯買顯卡,折騰半年後,你安心學java準備去當碼農。
或者你與老闆經過一番鬥爭,下了一定出成果的軍令狀,終於要到顯卡開始做實驗。你會發現跑了好幾天復現別人的結果,卻總是差1-2%,更別說進一步提高了。
然後各個方向都嘗試一下,經過半年的迷茫期,終於狠下心來鑽到一個點上去(不是因為心理因素,而是你終於有個實驗達到了state of the art)。
然後就是創新了,試了一堆方法之後發現並沒有什麼卵用,有用的也只是0.2,0.3這種水平的提升,大概10個idea有一個有用的吧,等你試了30-40次,累積了3-4個小trick,嗯又過了3個月。
然而trick並不能發文章,你開始想它們背後的機理,想要編個好故事,最後終於靈光一閃,發現這幾個trick可以統一到一個架構中。2個月又過去了,你的創新點,實驗結果都有了。
好了,你開始寫論文,第一次寫論文,latex都不會用,畫圖更是不懂,好在有師兄幫忙,教會你很多東西,歷時3個月,論文完成,你很開心,拿給老師修改。
然而老師比較忙,看了你蹩腳的文章更是心情煩躁,但為人師表不得不好好給你一句一句地改。導師批註一章,你改一章,1-2個月後終於成型了。
你非常開心,彷彿明天就能發表論文,去國際舞台演講,拿大把獎學金。睡覺都帶著笑意。
第二天早晨,你無意中在arxiv上看到了一篇3個月前上傳的論文,因為你之前忙著寫論文沒注意到,趕緊下載下來看,發現跟你的idea大同小異,效果卻比你好很多。
你心灰意冷,頹廢了一天,晚上看雞湯文又清醒了過來,苦思冥想1周後終於找出了區別,然後又修改了一周的論文。
但這下,本來要投a類會議,只能投b類,本來要投二區期刊,這下只能投三區。但是,有總比沒有好,你還是把稿件投出去了。嗯,差不多2年時間,你終於發出了第一篇文章。
你以為這就完了?還有大修小修等著你,一不留神就被拒掉。這段我就不多說了,資歷尚淺,而且再說下去怕學弟們退縮。
負能量爆表,匿了。
萬事開頭難。


關鍵是要找個靠譜的科研狗(例如高年級博士生,奮鬥在一線的青椒)來帶啊,簡稱狗帶。


一年以後回來更新了。。
發不出來了,導師不要我了

這真是一個悲傷的故事

==========原答案ToT=========

佔個坑,我現在就是零基礎,等我發出來告訴你


贊同那個高票答案,如果沒有特別牛的人幫助,我也覺得要兩年沉澱吧,當然拿深度學習隨便跑跑一跑工業數據或者什麼文科生用深度學習做一個古文字識別的當我沒說,他們只是把深度學習當一個工具而已。

先說一個事實,深度學習太火導致幾乎世界上最聰明的一批人很多都在研究深度學習,所以這個領域就是一個速度和視野的爭奪,你會發現你吃飯時候覺得自己想了一個特別牛逼的點子,屁顛屁顛回來一查,然後就會內心罵一句:***

說正文,發一篇深度學習論文首先要花半年到一年的時間理論入門,先從傳統的機器學習了解模式識別是什麼,然後在了解神經網路及其bp規則,然後開始學習cnn 卷積神經網路,它的三個特點,怎麼解決了神經網路層數和參數太多無法訓練的問題,然後可以算一個腳趾頭踏進了這個領域,現在你可以考慮選擇一個深度學習框架或者繼續了解深度學習。(算上平時在學校的課程或者實驗室雜七雜八的時間,把基礎打紮實需要半年,即一個學期)

分支一,選擇深度學習框架,這個時候你要開始搭建深度學習工作平台,在Ubuntu和windows搭建GPU環境,可能有些人對計算機和硬體都不明白,很多人問我如何搭建平台的時候,他們連windows的cmd,Ubuntu的終端命令都不知道,顯存和內存也傻傻分不清。windows的cuda還好,Ubuntu的cuda可以讓你瘋掉,裝到讓你懷疑人生。現在主流的框架這麼多,Theano,Tensorlayer,tensorflow,TFlearn,keras,mxnet,torch,每一個框架都有大量的使用者,你會很茫然選擇哪一個框架,去看別人說的各有紛紜,其實最好是自己每個框架都去嘗試一下,如果你不想嘗試那麼多的話,我推薦你tensorflow,keras,tensorlayer這三個框架好好對比使用下,選擇一個自己順手的。然後你需要做一些實驗,從最開始跑源碼到最後可以自己搭基本,調參數,一百次實驗不過分吧?小的程序幾分鐘到幾小時,大的程序幾天到一兩周,加上自己找數據預處理數據的時間,花三個月應該不過分吧

分支二,跟蹤近兩年的深度學習的主要成果,從最開始的CNN卷積網路開始,深度學習就在以一年至少兩次大的突破在高速發展,真的要花很多時間才能跟蹤到位。(1)CNN網路之後的主要發展,先是遞歸網路RNN的誕生,是的深度學習可以處理時序問題,自然語言處理的效果大大提升,為了解決RNN時間軸上的梯度彌散問題,LSTM,GRU等一系列遞歸網路誕生。(2)RNN之後開始出現了Attention based model,在傳統的遞歸網路RNN裡面加入一個Attention model,使得效果進一步提升,這個時期RNN,CNN,Attention model各種亂七八糟的組合誕生了一系列圖文轉換,視覺語義的文章,典型的如DRAM(3)另外一條戰線是CNN反過來的圖像生成DCNN,以前我們都用CNN來提取圖像特徵,後來有一批人想反過來用深度學習來生成圖像,這就是deconvolution反卷積,基於deconvolution的generator network已經可以開始生成圖像了,雖然結果還不是很好,但是是一個突破。(4)GAN流派的誕生,generator network誕生後,生成圖像已經變成了可能,但是效果還不是很好,也不知道誰想出了這個GAN網路,在生成網路後面加一個判別網路,使得生成的圖像/視頻真的很逼真,這一個流派有幾篇經典文章必須要好好讀一讀,比如DCGAN,LPGAN,CGAN。(5)強化學習(reinforcement learning),如此火的一個非監督學習方法我想還是要花時間好好研究一下吧,(6)其他的一些的分支比如batchnorm,relu,優化函數等等理論上的改進我想按照我們的智商也突破不了吧,會用就行;以及其他小眾領域的one/zero shot learning也可以花時間去看看。綜上,這麼多好的文章,加起來起碼一百篇,一天一篇也要三個月,反正我一天是無法好好啃下一篇文章在入門的初期,所以這裡三個月~六個月不過分吧。


當然兩個分支應該是結合起來一起進步的,等你到這裡已經過去一年多了,還是時間很緊湊的情況下,你還要花一些時間去嘗試一些源碼,並嘗試在自己的數據集上運行一些當前流行的主流網路,這些也是要花一些時間的,寒暑假自己還要玩一玩,所以兩年里剩下給自己做論文的時間也真的是不多了,需要想點子刷結果,還要花時間做綜述寫論文,LaTeX第一次寫論文也不是像word那樣傻叉的,說不定你連LaTeX的bug都解決不了。

所以我認為從零基礎到真正發第一篇文章,需要兩年的時間,這是在沒有任何人給你指明方向需要自己去找方向的情景下的,有人告訴你用哪個方法去做哪個問題的話會快很多。

想想自己花了兩年最後給學術界灌了一點水也是蠻心酸的。


我覺得你要是沒個好基礎(比如一個還不錯的導師、以及相關的學術基礎)

那你這個從零開始可是有點久,幾年時間吧,甚至永遠


真心想做research的就不應該問這樣的問題!


其實現在有很多深度學習的代碼可以下載,如果你代碼能力強,很快可以知道怎麼玩。重點是你要對相關的研究領域有認識,知道問題是什麼。這樣才能挖掘出創新點。很多深度模型就是個基本的骨架,外面的肉還是要自己去加的。整個模型美不美也看你設計的手法了。

至於機器,美國人都開始推量子計算機的商用化了,你老闆連個K40都買不起,那你還是把你老闆炒了吧。

當然你要想灌水,拿著一篇已經發表文章的方法去做不同的應用,然後幸運遇見一個百年不看論文的糊塗評審,說不定也可以混個SCI。


更新:誰不想發頂會呢?我也沒覺得做DL方向發SCI是一件多麼驕傲的事。畢竟我以前連英文論文都沒有寫過。
我會努力早點發更高水平的期刊和會議,再回來答題的。
本科大三目前SCI在投
(我也知道不是視覺頂會)

16年3月份接觸ML(大二)
Ng的課 模式識別 各種電子書 優秀的ML DLpaper 不加區分的學習
(當時ML還沒有這麼火,至少我找到的資料現在看來都比較經典)
突然阿爾法 就火了
於5月初確定了本科生導師(實驗學院)
暑假有機器人的比賽 對識別提出了要求
自己學了opencv 再後來應用了一點SVM
湊合著解決了比賽的視覺

上述過程鍛煉了編程能力
確定導師,建立了DL的一點基礎 老闆提供了伺服器之後,finetuning了很多經典網路 研究參數 源代碼。大概一個月(6月份)之後,老闆給了一個idea,提出一種方法來提高識別精度。我的理解大概是要在底層實現很多新東西(原諒我當時只會caffe)教研室其他人忙著發頂會。這個活自然就落在我身上了(大概也是老闆在考驗我)
頂會的paper csdn github 各種社區 讀了很多關於caffe的帖子(同時在推導idea的公式)
暑假期間也做了很多努力
(複習一下c++ 以前還不知道多態 繼承)
大三開學(9月份)覺得萬事俱備可以做實驗
開始長達多半年的 寫代碼-調代碼死循環
(c++剛入門 熟練掌握matlab編程以及擁有python基礎)

2017年1月1日-10日
每天早上9點到晚上11.30都在做實驗
持續10天完成了整個實驗
最終將結果提高3%個點

我知道SCI發DL不是多麼有說服力
不過我很享受這個過程
感謝老闆給我平台
感謝賈大佬的caffe框架讓我提高c++編程

只要努力,找一個平台
life is short ,show me code


看多了零基礎學python 零基礎學攝影 這些都有可以理解啊 確實可以一步一步的快速入門 特么發paper也能0基礎了 也有21天精通了?那我五年讀博為什麼


其實,不要想太多,要當下就開始,說不定已經知道怎麼弄了,而且不要把目標定的這麼死,非得要發個頂級的論文。就目前AI界,特別是CV界來說,入門的門檻已經非常低了,有了最新的idea瞬間掛arXiv,動不動就公開代碼,學習的時間已經大大縮短。再說出路的問題,你人生就為了發論文而存在?如果不是,那你在學習的過程中學到的知識肯定都是有用的。你發不了CVPR,但把知識學到手,找個工作總沒問題吧,能掙到錢買上房減輕生活壓力,有啥不好的。所以,當下就開始吧,如果真的打算入門人工智慧,就進來,門口站半天啥也沒有,進來看看,說不定能找到自己合適的座位,坐下,人生就明確了。


難道沒人說,多讀點文獻,然後發個綜述嘛?


綜述也是論文呀,摔~

羞恥地逆了


剛剛推免到深度學習方向的研究生,等我發論文告訴你我的整個過程。


Do not be worry! Three steps may help you to get your job done!

Step 1. Catch what I have said, and find out what was wrong.

Step 2. Start to write now ! No matter you are read this on phone or PC. This is most important, just like you questioned on this page.

Step 3. Just go ahead, repeat reading and writing! Just like you will go back to check this page.


智商不行,臉憋的通紅,正在鑽研梯度上升法的DSG飄過


突然想起個好點子:找個自帶深度學習論文的漢子/妹子,搞定ta。


可恥的匿了。。。


首先你要有個顯卡。然後是讀paper,想idea,做實驗。沒有基礎的學生想的idea相當不靠譜,先要淘汰好多不靠譜的idea。花的時間看個人天賦、導師指導的水平定。

單單寫論文兩周就可以了。


20170418佔個坑吧,一年之後再來看吧
現在研一,nlp 聊天機器人對話方向 基本屬於放養狀態,導師給的意見是自己想idea 可老夫想不到啊 論文要求也不高啊 ei就行 有時候真想說一句我就是不行


至少一年吧 如果有天賦 有人帶~


什麼車最豪華


占坑 我現在就是零基礎的剛入門碩士》》》》》等我發一篇CCF B我再來寫攻略


推薦閱讀:

零基礎學習 Hadoop 該如何下手?
自學編程和計算機科班出身的差別在哪?
關於 Python 的經典入門書籍有哪些?
編程是否該作為基礎教育的一部分?
Visual Studio 有哪些好用的插件?

TAG:人工智慧 | 演算法 | 編程 | 機器學習 | 深度學習(Deep Learning) |