自然語言處理工程師需要掌握機器學習到什麼程度?
最近在找工作,在面試的時候遇到了一些困難。由於自己平時使用機器學習都是使用一些工具,對各種機器學習演算法都是有簡單的了解,也讀過一些相關書籍,但是我感覺書中繁瑣的公式推導,學習起來很困難,對工作中的使用幫助也不大。面試管問我一些演算法的原理,我感覺無從回答,只能簡單的介紹,無法令面試官滿意。不知道各位已經工作的大神們,有沒有好的書籍或者課程推薦一下,最近很迷茫,望指點迷津,多謝。
謝邀,我也是自然語言中的一個小弱而已,下面說說我的看法:
先說說面試,我深深的覺得刷題檢驗自己知識和鞏固知識的方式,推薦如下:
- 那些深度學習《面試》你可能需要知道的
- 如何準備機器學習工程師的面試 ?
- 七月在線實驗室---BAT機器學習面試題
- 如何準備機器學習工程師的面試 ?
- 讀完這21個機器學習面試問題和答案,入職率提升99%
- ....等等
我覺得上面很多問題可以很好的檢查下自己掌握那些演算法到什麼樣的水平。
然後是推薦我學自然語言處理時的書籍和教材,我覺得自然語言工程師需要知識也差不多這樣吧?(若大神覺得小弟無知,望輕懟)
- 吳恩達的deeplearning.ai,
- 深度學習:cs231n,官網鏈接,
- 自然語言處理課cs224d
- 自然語言處理綜述,arxiv鏈接。機器之心關於這篇綜述的介紹
- 自然語言生成綜述
- 《deep learning》,《neural network and deep learning》
- 工作了工程能力應該是關鍵,推薦TensorFlow 官方文檔中文版和機器學習系列 | 莫煩Python,推薦莫凡教程,這裡有很多教程,推薦其中的numpy,pytorch教程。
- ....等等
具體可以看下我的回答:
Evan:計算機專碩研一新生求教自然語言處理學習?
Evan:想學習深度學習,有哪些中文資源,教程推薦?
知乎有各種,如何入門如何進階的問題和答案,可以查看下,我覺得刷完上面的已經差不多了。
最後最後:歡迎關注在下的專欄:記學習--機器學習 ~~
先分清自然語言處理工作一般是幹嘛的。
底層技術有分詞,詞性標註,命名實體識別,句法分析,語義消岐。不要以為分詞,詞性標註有結巴,,哈工大發布的nlp工具可以直接拿來用,其實對於一些專業的,特定的領域,分詞和詞性標註還是要自己動手去解決的。而這些所有底層技術是很多自然語言處理處理任務的基礎,這些做不好,nlp效果也不會好。
要解決上述問題,先把概率圖模型搞懂,比如隱馬爾科夫模型,貝葉斯網路,條件隨機場,最大熵模型,EM演算法,維特比演算法等等…語言模型:根據你的任務不同語言模型叫法也不同,比如翻譯模型,糾錯模型等等。傳統的方法要學好n-gram模型,目前深度學習比較火,學好word2vec,dov2vec,也就是詞向量句子向量模型,了解理論是什麼,知道怎麼去訓練一些詞向量句子向量模型。
自然語言處理的高層應用:機器翻譯,文本分類,信息檢索,問答系統,自動摘要,信息抽取等。這裡就有涉及到傳統機器學習演算法了,比如做文本分類,那些分類演算法如決策樹樸素貝葉斯支持向量機邏輯回歸k近鄰等演算法你得懂吧,做信息檢索tfidf的概念你得懂吧,句子相似度的演算法你需要了解吧…等等。另外rnn lstm cnn肯定也得懂吧,現在去找工作,即使他們公司不用深度學習,這些還是會問你一下的,因為實在是太火了。
題主問有沒有推薦的書,我這裡就介紹一下吧…李航的《統計學習方法》後面幾章簡直就是專門為自然語言處理所寫的,吹上天的神作PRML裡面概率圖部分寫的很詳細,這本書簡直是貝葉斯方法的機器學習,我現在還沒看,打算後期好好看看…另外深度學習方向自然語言處理,斯坦福的cs224d這個課程我看了目錄和他的部分材料ppt和notes覺得不錯,後期實習結束後打算踏實的學完這個課程。另外吳軍的《數學之美》絕對是本好書,建議優先看看這本。
其實我也是一個剛入門的學習者,寫這個回答權當拋磚引玉了…順便等待大牛的回答,好好學習一下。
最後當然會有一個廣告,明天周六晚八點,我的python機器學習自然語言處理入門指引live就要開始了,有興趣的可以去聽聽???https://www.zhihu.com/lives/903638726255710208推薦閱讀:
※【博客存檔】Machine Learing With Spark Note 4: 構建回歸模型
※那些年我趕過的時髦技術趨勢
※李宏毅機器學習2016 第六講 深度學習
※Python · 決策樹(零)· 簡介