色婷婷狠狠18禁久久YY,CHINESE性内射高清国产,国产女人18毛片水真多1,国产AV在线观看

碩士期間攻讀深度學習還是自然語言處理好

洪振霞2年前15瀏覽0評論

碩士期間攻讀深度學習還是自然語言處理好?

感覺作者應該問的問題是應該攻讀圖像處理好還是自然語言處理好(目前深度學習的兩大分支)。當然深度學習也不完全包含這兩個,比如自然語言處理(NLP)在之前都是用統計學方法處理的,這兩年才流行起來用了深度學習。我的研究方向和NLP相關,就重點說說NLP吧。

首先目前深度學習領域有兩個最主流的模型CNN和RNN。CNN就是卷積神經網絡,通常用在圖像處理上,RNN是循環神經網絡,自然語言領域用的比較多。作者說攻讀深度學習,通常也需要找個小的點來攻讀。比方NLP,也是個非常大的概念,在NLP這個大概念下,又有很小的一些方向,比方說問答系統(類似于聊天機器人),文檔主題抽取,語音識別,機器翻譯等等。還可以應用到其他領域,比如我的方向是利用NLP做安全領域的一些事情,如bug定位,summarize code,漏洞檢測等(代碼本身也是一種語言)。

接下來說說入門的難度吧,無論自然語言處理也好,圖像處理也好,本質上都是把圖片或者語句轉換成向量,然后對向量做一些處理。既然是轉換成向量,就得提到特征提取。個人覺得自然語言處理的提取難度是大于圖片的,畢竟語言這種東西還是比較抽象的東西。提取的方法比如說按照詞頻,高端點的有基于語義的word2vec,但是這種特征再怎么表示,也沒有圖片的像素點,或者圖片二值化以后的特征來的直觀明了。

但是NLP無疑是很容易入門的,為什么這么說呢,因為nlp現在有太多太多容易又好用的工具了。比方說word2vec,可以用的工具太多太多,我最常用的就是gensim,基本上所有自然語言處理的算法都有api。如果想要解析語法樹,可以用stanford corenlp。其他的很多就是簡單的字符串處理。入門可以說很容易,你理解完概念之后就可以上手了。記得我剛入坑的時候,第一個任務是實現14年一篇軟工領域頂會的論文,完全是當做字符串處理,看懂論文就直接上手寫代碼了,都沒用api(當然因為代碼基礎還可以,哈哈,吹個牛)。

但是想深入的話,無論是圖像處理還是NLP都是非常難的,但是我覺得,NLP更難。圖像處理其實是個比較直觀的東西,比如人臉識別,各種識別,很少涉及邏輯理解,但是NLP不一樣,很多領域的任務都是基于理解,而且結果也很難評判,比方機器翻譯,你生成一句句子,雖說有BLEU這種指標,但是具體好壞,我覺得還是需要人閱讀后來衡量的。

比方說上圖,是最近研究的一個通過自然語言自動生成代碼的一個基于Python ast的RNN(ACL 2017的論文的圖),就是根據一句描述,生成代碼,沒錯,我研究的就是那些傳說中能取代程序猿的東西(瞎扯淡),生成的東西,根本沒有一個評判標準,不像圖像,有一個確定的標簽,這是個非常主觀的東西。

另外通過這張圖再說一點,上面這張圖看起來很牛逼,什么attention Bi-directional LSTM RNN(注意力機制雙向長短時記憶循環神經網絡),什么基于Python AST(抽象語法樹)的生成和應用規則,本質上都是一個RNN,做了一些不同的變種而已

第一次打那么多文字。。。希望能有幫助