憑良心說,自然語言處理方向需要哪些數學知識?
請答主不要只是簡單地說什麼概率論、數理統計、線性代數,因為肯定不是這些學科的所有章節全部都需要。肯定只是需要其中的一部分。哪位高人能詳細指點一下,到底需要哪些學科的哪些部分?
直接看Stanford CS 224n就好了,遇到不懂的數學隨便查查。其實真的就只需要些微積分線性代數概率論(本科level),所以我覺得你沒必要先去補什麼數學,遇到不懂的概念google就行,一般看一下Wikipedia就夠了。這種level的數學比起理論物理很trivial的,大哥你沒問題^_^
課程鏈接:http://web.stanford.edu/class/cs224n/index.htmlThe matrix calculus you need for deep learning?explained.ai
微積分
最優化計算
概率論和數理統計
數值分析
首先大學肯定學過高數概率論,這就基本足夠了。
然後在學習斯坦福224n的過程中,用到的基本就是些求導的知識,偏導要會,雅可比矩陣要了解,矩陣的一些性質了解一下,比如對角矩陣,單位矩陣之類的。
其他的其實暫時用不到多少,用到了再去學就行,用到最多的就是求導和矩陣相關知識。
自然語言處理方向的數學知識個人感覺有以下幾個方面:
微積分(主要是導數、偏導數、梯度等)
概率論與數理統計(幾個概率公式,理解幾大概率分布,懂得極大似然估計等)
線性代數(矩陣計算、求導等,MIT線性代數了解一下)
隨機過程(馬爾可夫那一塊內容,CRF 和 最大熵模型都用得到)
個人感覺買一本最新的自然語言綜論可以大致了解一番
入門的話看Michael Collins 的公開課和講義(B站有視頻) http://www.cs.columbia.edu/~mcollins/
接著看看 Stanford CS224n ,了解一下Deep Learning 在 NLP 應用進展,CMU 好像也有對應的課程絕大部分情況下,nlp不需要任何數學知識,加減乘除都不需要,如果需要的化,帶個計算器即可。。 當然如果你是做那1%的底層,可能需要些數學知識
Atitit nlp常用的類庫和技術目錄
1. Atitit nlp用到的技術與常見類庫 1
2. Atitit python nlp類庫 1
2.1. Atitit java的nlp自然語言處理類庫 2
3. Other 2
3.1. Mmseg分詞,ik分詞器 2
3.2. 文檔讀取處理類 2
3.3. 索引與檢索類 2
1. Atitit nlp用到的技術與常見類庫
目錄
1. 常用的技術 1
1.1. 語言處理基礎技術 分詞 相似度等 1
1.2. 新聞摘要 2
1.3. 情感傾向分析 2
1.4. 文章標籤 2
1.5. 文章分類 2
1.6. 文本審核 2
1.7. 機器翻譯 2
1.8. 智能寫作平台 3
2. Ati常用技術 3
2.1. 分詞 關鍵詞提取 3
2.2. 摘要 關鍵詞提取 與目錄提取 3
2.3. 抽取 3
2.4. 索引與 檢索 3
2.5. Zip壓縮文檔抽取技術 3
2.6. Office pdf系列文檔讀取技術 3
2.7. Eml html系列溫暖的讀取技術 3
2. Atitit python nlp類庫
目錄
1.1. snownlp 1
1.2. ·Spacy是NLTK的主要競爭對手。這兩個庫可用於相同的任務。 1
1.3. ·Scikit-learn為機器學習提供了一個大型庫。此外還提供了用於文本預處理的工具 1
2. Ati 使用記錄 2
3. ref 2
OpenNLP
2.1. Atitit java的nlp自然語言處理類庫
目錄
1.1. OpenNLP是一個基於Java機器學習工具包, 1
1.2. Java自然語言處理 LingPipe 1
1.3. 2.中文自然語言處理工具包 FudanNLP 1
1.3.1. 5、Stanford CoreNLP 斯坦福大學NLP 2
1.4. 1.IKAnalyzer 2
1.5. 3.FudanNLP 2
1.6. jcseg 3
3. Other
3.1. Mmseg分詞,ik分詞器
3.2. 文檔讀取處理類
mail類庫,poi類庫(處理officex系列),jsoup html類庫。
org.apache.tools.zip_1.9.6 處理zip庫
java-unrar 處理rar文檔
pdfbox-1.8.16.jar
3.3. 索引與檢索類
Lucence imap類庫mail。Jar zip庫讀取庫
Atitit python nlp類庫
你去看唄,總不會把需要的數學知識學完後,才去學nlp吧,都是看到哪裡,不會再去補充的,加油嘍 ,需要的不多,慢慢補充。
搞自然語言處理你所需要的是更強的數學思維,而非這些章節的對應知識點,就你列的這些課本來就很簡單,也沒什麼對思維有幫助的。憑良心說,就算你現在學了這些課,跑跑 demo 該個模型,也就只夠現在這幾年了。
宗成慶的統計自然語言處理肯定是要學的,我也是初學者,個人感受就是必須得學這本書,其他的倒是可以一邊看論文一邊靠網路自學。
哦還有吳恩達的深度學習,第五課也講了一些基礎知識,要學。
推薦閱讀: