原文更新在俺的GitHub上,如果覺得好點個star謝謝。
機器學習/人工智能/自然語言處理資料教程集合
前面基本是我看過的書籍和教程推薦,在最后面有我的學習路線,避免多走彎路,實現高效系統學習。
目錄:
基礎概念和認知:
機器學習 機器學習是近20多年興起的一門多領域交叉學科,涉及概率論、統計學、逼近論、凸分析、算法復雜度理論等多門學科。機器學習理論主要是設計和分析一些讓計算機可以自動“學習”的算法。機器學習算法是一類從數據中自動分析獲得規律,并利用規律對未知數據進行預測的算法。因為學習算法中涉及了大量的統計學理論,機器學習與統計推斷學聯系尤為密切,也被稱為統計學習理論。算法設計方面,機器學習理論關注可以實現的,行之有效的學習算法。下面是ML比較完備的知識技能圖
-
機器學習與數據挖掘的區別
- 機器學習關注從訓練數據中學到已知屬性進行預測是方法
- 數據挖掘側重從數據中發現未知屬性是個概念
- 深度學習與機器學習區別
- 人工智能只是定義
- 機器學習、統計分析、數據挖掘、神經網絡、人工智能、模式識別之間的關系是什么?
入門
心路歷程,別人的經驗讓我們少走彎路:
書籍
數學
- 《數學之美》作者:吳軍 講述數學在NLP語音等方面應用
- 《程序員的數學系列》這套共三本含高數,線代,統計。寫的很好
- 《線性代數應該這樣學》 從本質來講,讓你耳目一新,我就感覺線代白學了
- 《The Elements of Statistical Learning》后期精進可以可以讀讀,挺難的
- 《統計學習方法》作者:李航 講解統計的一些方法。是機器學習的數學基礎,另外需要線性代數,概率論,統計學等數學知識 后面階段少不了推算公式的
ML&&NLP
《機器學習》西瓜書 作者:周志華。 本人讀過入門級拿西瓜做案例很清晰,沒有數學基礎還是不要看,特別是程序員,因為周老師層次太高偏學術。
《DeepLearning》花書,最近中文版要出版了,稱為圣書,這個可以慢慢啃,絕對要看的。
《機器學習》作者Mitchell。Mitchell是機器學習的鼻祖,第一個提出機器學習概念的人。這本書很薄,很簡單。內容很陳舊,但是都是機器學習的經典問題。而且,這本書概念清晰正確(很可貴啊,又簡單又正確的書,說明作者功力很強)。
《神經網絡與機器學習》作者:Simon Haykin。 事實上,現在常見的很多機器學習算法都發端于神經網絡,像SVM,深度學習,CNN等等。這本書詳細的介紹了神經網絡及其相關算法的所有細節。如果想深入了解的話,可以看一下。只想運用的話,也可以隨便翻翻算法的介紹。
《模式識別與機器學習》馬春鵬 有數學基礎再搞,不然很難受
《集體編程智慧》代碼豐富,結合理論搞
《機器學習算法原理與編程實戰》有理論有代碼
《機器學習實戰》推薦
《數據挖掘導論》我學習過程中必不可少
NLP自然語言處理怎么最快入門
資料已經完全夠了,沒有必要再貪多了,有積累看論文才是王道
視頻教程
一、基本功
數學基礎機器學習必要的數學基礎主要包括:
- 線性代數
英文無障礙的話推薦MIT的Gilbert Strang
李宏毅也教過線性代數哦
實現不行看看張宇的考研視頻也行,再者還是看看程序員的數學 - 統計基礎
- Introduction to Statistics: Descriptive Statistics
- Probabilistic Systems Analysis and Applied Probability | 概率 ( 可選)
- Introduction to Statistics: Inference
- 以上是國外課程,自己拿大學相關課本看看或者到網易公開課找,推薦《程序員的數學之線性代數》
- 編程基礎
- Python,R這些從廖雪峰,菜鳥教程還有等等看看文檔就行 ,numpy,sk,pandas這些庫也要會
- Programming for Everybody (Python)
- DataCamp: Learn R with R tutorials and coding challenges(R)
- Introduction to Computer Science:Build a Search Engine & a Social Network
二、修行(推薦李宏毅然后后吳恩達深度學習課程,然后決定走CV OR NLP 再看CS231N 或者 CS224N)
- 臺灣國立大學李宏毅中文教學講課幽默易懂,很多不清楚的看了就懂了,它還有個PPT合集,堪稱一天學完深度學習,淺顯易懂可以搜搜
-
吳恩達深度學習新課可以搜單個課程這樣可以旁聽不要錢
【網易云課堂現在和吳恩達合作了,免費的中文字幕體驗更好,作業還在courseras上寫吧】 - 2014 Andrew Ng (Stanford)機器學習:英文原版視頻 這就是針對自學而設計的,免費還有修課認證。“老師講的是深入淺出,不用太擔心數學方面的東西。而且作業也非常適合入門者,都是設計好的程序框架,有作業指南,根據作業指南填寫該完成的部分就行。”(和林軒田課程二選一)
- 2016年 林軒田(國立臺灣大學) 機器學習基石 (Machine Learning Foundations) -- 華文的教學講解
- Neural Networks for Machine Learning Hinton的大牛課程,可想而知
- 沒有公式,沒有代碼的深度學習入門視頻,每集五分鐘
- CS231N Stanford winter 2016FeiFei 計算機視覺大牛李飛飛的課程
- CS224N NLP Winter 2017 搞NLP的可以看看,最新前言課程 slides
- Udacity 的 ML & DL 最近剛看的,DL兩個人合作以對話形式,很幽默
- tornadomeet機器學習筆記
- 上面學好了,足夠了
博客等
WeChat公眾號:機器之心,數盟,量子位,新智元,
文章-論文
The Discipline of Machine LearningTom Mitchell 當年為在CMU建立機器學習系給校長寫的東西。
A Few Useful Things to Know about Machine Learning Pedro Domingos教授的大道理,也許入門時很多概念還不明白,上完公開課后一定要再讀一遍。
其它
矩陣求導
知乎找答案
我自己的學習計劃
已經大致了解這個領域所用到的知識,根據網上的參考進行1.0階段的學習,看了前面的知道我對PGM特別感興趣啊,所以感謝夕小瑤(wx:xixiaoyaoQAQ)按照她的提供的知識結構給自己定個計劃。 已經完成的都會帶有我在學習過程中見到比較好的資料,或者我自己總的,這樣減少大家在學習過程中找資料的成本
第一階段(五月到六月):基本模型
輔助用視頻Ng的courses《machine learning》,臺灣國立大學林老師《機器學習基石》、《數據挖掘導論》第4、5章
- 感知機(Perceptron)(已完成)
- 線性回歸模型(Linear regression model) (已完成)
- 邏輯回歸模型(Logistic regression model) (已完成)
- 淺層神經網絡(Neural Network) (已完成)
- 支持向量機(Support Vector Machine)(已完成)
- 交叉驗證(Cross Validation)[[1]] [2] [3] [4](已完成)
- 聚類[1] (已完成)
- 內積與映射,線性相關/無關,特征值/特征向量、特征向量、特征分解、矩陣的跡、奇異值分解(SVD)、譜定理
第二階段(七月~):最優化(已完成,主要是靠知乎和《統計學習方法》,還得繼續深入理解)
復習《概率論與數理統計》、理解《Deep Learning》中的4.3節和4.4節,《Numerical Optimazation》、《最優化理論與方法》袁亞湘,孫文瑜、《統計學習方法》、《數據 挖掘導論》、《機器學習實戰》、《智能優化方法》
- 一階無約束優化算法
- 梯度下降法(步長的確定方法、線搜索法,信賴域法)
- 二階無約束優化算法
- 牛頓法
- 共軛梯度法
- 擬牛頓法
- 約束優化算法
- 線性規劃(概念與應用、單純形法、內點法)
- 二次規劃(概念與應用、對偶法、積極集法)
- 拉格朗日乘子法的簡單認識
- 感知機模型
- K近鄰模型
- 樸素貝葉斯模型
- 決策樹模型
- 支持向量機模型
- 集成分類器
- Bagging
- Boosting
- Random Forest
- 遺傳算法
- 模擬退火
- 禁忌搜索算法
- 蟻群算法
- 粒子群優化算法
- LDA/PCA
- SVD
第三階段:模式識別與深度學習
- 貝葉斯決策(《模式分類》)
- 參數估計
- 非參數方法
- 線性判別函數
- 淺層神經網絡
- delta方法
- BP算法及其優化
- RBF網絡
- 深度神經網絡(DL中文版書籍)
- Hopfield網絡
- 玻爾茲曼機
- RBM
- DBN
- DBM
- CNN
- Autoencoder
- RNN
- LSTM
(CNN~LSTM)李宏毅教授的課不要太好了。一聽就懂
- 聚類
- 高斯混合密度
- K-means
- 層次聚類
- 決策樹與隨機森林
- 特征提取與特征選擇
第四階段:
應該是各種框架和工程,比賽吧,哈哈,到這個階段就有自己的方向,現在自己也不知道干啥,哈哈哈
貫穿始終:
編程是一定要的,推薦先用Python把常用算法實現一遍,然后把NG深度學習課程作業敲一遍,自己寫神經網絡,你就會明了,一定要code,code,code。后面用tf+keras等都可以。
知識點:(每一周深入學習一種網絡)
《統計學習方法》、《Deep Learning》、《模式分類》
前饋神經網絡
自編碼器(Auto-Encoder)遞歸神經網絡(Recursive NN) / 循環神經網絡(RNN)/ 卷積神經網絡(CNN) / 神經張量網絡 (NTN)
長短時記憶網絡(LSTM) / 卷積長短時神經網絡(convLSTM) / 張量遞歸神經網絡(MV-RNN)/遞歸神經張量網絡(RNTN)
受限波爾茲曼機(RBM) / 玻爾茲曼機
概率圖模型
有向圖模型->貝葉斯網絡
無向圖模型->馬爾科夫隨機場->條件隨機場
原文更新在俺的GitHub上,可能最新。可以進去看看。