談談我在自然語言處理高階上的一些個人拙見

2021-09-12 08:28:37 字數 2111 閱讀 7481

自然語言處理這個方向我感覺已經氾濫了,很多方向的人都開始轉向該專業,當然也包括轉向計算機視覺的。之前我寫過一篇文章

談談我在自然語言處理入門的一些個人拙見

我就不一一解答了,其實我也很不好意思解答的,因為我自己現在也沒啥成就,研究生3個多月了,**還木有idea。。啊。我自己都頭疼。但是,我可以通過自己,和身邊師兄師姐,以及導師的經驗來給大家說說。

放下書,動手實踐

我導師是最不推薦看書的,當然我剛開始還是反對的,但是時間長了,覺得說的確實很對,很多資料網上都會有。而且,看書也有個問題,你雖然可以系統的學,但是有些東西你一般不會用到的,這就導致時間長了,你不用,你就忘了。其實你目前的知識已經可以了,你了解了深度學習,早就把cnn,rnn(lstm等變形)懶熟於心,聽都聽煩了。其實基礎已經可以了。該動手實踐了。咳咳,馬克思說過,實踐是檢驗真理的唯一途徑。是吧。

靈活掌握各種常用模型

那麼怎麼實踐呢?我的建議是從學會玩模型開始。當然你有更好的方法,更好。

簡單的cnn你已經會了,你應該知道咱們通常用的是單通道的cnn,那麼你會寫多通道的嗎?(多通道其實nlp中用了也是最多2通道,乙個是隨機化embedding,乙個是預訓練embedding)然後多層cnn也可以嘗試呀。

word級別的你是經常用了,那麼char的呢?寫寫charcnn(char經過cnn 然後和word的embedding cat到一起,得到新的embedding然後再經過cnn)

lstm你會了,那麼和cnn結合怎麼用呢?先cnn在lstm或者先lstm再cnn都可以,你試試。

之前用的都是線性的,那麼非線性的,比如句法樹呢?又該怎麼用呢?現在常用的有treegru和treelstm,你都可以試試。

再高階就是seq2seq模型,這個很常用的,別名也可以說是encoder-decoder模型(這裡的attention機制你需要具體了解下)。

如果你想挑戰下自己,可以看看去年google剛提出的模型transformer!位址為

當然,上述只是說了一部分,你有自己的模型學習路線更好啦。

基礎的都掌握之後,感覺你就不會定性到最初的cnn,lstm模型當中了。覺得模型原來可以這麼靈活?就會對自己產生了自信感。

然後就可以看**,看別人的模型怎麼實現。最之前的時候,我看別人**的模型的時候,都是,額,這是怎麼搭建的?如果你會了上述的模型,你再看別人**的時候,心裡起碼比之前更有底氣,更好的情況是**的模型圖你一看心裡就已經用**搭建完畢這個模型!

上面的模型,網上其實很多的,推薦用github搜尋,然後選擇自己的程式設計偏好的**即可。

當然也可以看我自己最近剛搭建的模型框架(我自己都不好意思放出來,還不完整,每天會抽時間完善下)

starfork

搭建自己的**框架

我之前寫**都不怎麼考慮可讀性,別人的可用性。既然是高階階段,就要學會自己搭建自己的框架。看看導師的github的**風格,看看你敬佩的師兄的**風格,或者看看國外大佬的**風格等。多看看,最終形成自己的**風格。看看模組怎麼搭建?**怎麼注釋?哪些函式用起來即簡單又方便等。

搭建自己github專案時,記得寫readme!(額,我現在還沒寫,但是馬上就會完善的,咳咳)要把readme寫的越詳細越好,最好能讓別人看到你的readme直接就能靈活運用你的**。

對了,這裡說下為什麼要搭建自己的模型框架:因為自己的框架搭建好之後,以後無論寫寫什麼模型,都可以直接套過來用,不用再重新實現一些重複的**。

其他建議

crf你需要了解;要實時關注咱們這個方向的國際大牛的動態;慢慢補充自己的概率論,線數的短板(這個目前我剛開始要補,哎,加油加油);每天學點英語吧,為以後寫**打基礎(我堅持了很長時間後,現在有點鬆懈,不行不行,繼續堅持)

python自然語言處理(一)

1.從nltk的book模組載入所有東西 fromnltk.book import 2.詞語索引檢視。顯示乙個指定單詞的每一次出現,連同上下文一起顯示。text1.concordance monstrous 3.通過索引看到monstrous上下文中有the pictures和the size,查詢...

自然語言處理隨筆(一)

安裝jieba中文分詞命令 pip install jieba 簡單的例子 import jieba seg list jieba.cut 我來到北京清華大學 cut all true print full mode join seg list 全模式 seg list jieba.cut 我來到北...

機器學習 初級高階(自然語言處理 )

一 自然語言處理 要處理的問題 對於多組對話中判斷這段化是消極的還是積極的 處理的短語資料 review liked wow.loved this place.1 crust is not good.0 not tasty and the texture was just nasty.0 stopp...