因為之前寫的「如何成為資料科學家」大哉問 1:當資料科學家數學是不是要很好?頗受好評,大概是我的部落格文章中點擊率最高,觸及人數最多的人一篇,大家都很需要線上學習資源,因此我決定來跟大家說,怎麼樣一毛錢不花,全部看免費的,把很多資料科學家的知識補齊!當然,實務經驗是比較難在課程中學會的,因此這邊文章的課程只能幫大家補足學術上的知識。 (如果想花錢學,大家可以匯100萬台幣給我,我會把這篇文章製作精美的pdf檔寄給您 XD)
微積分與線性代數
- 中階課程 (難易度:3.5 星,推薦度:5星)
微積分一、二 (清大 高淑蓉 教授)
http://ocw.nthu.edu.tw/ocw/index.php?page=course&cid=7
http://ocw.nthu.edu.tw/ocw/index.php?page=course&cid=34
沒修過高微與高高微,別說你來過清大,雖然高淑蓉老師有著滅系傳奇,但高老師的微積分教得很棒,尤其是在建立高維度空間的觀念,非常清楚易懂,對於真的想學習好微積分的朋友不能錯過阿!
- 初階課程 (難易度:2星,推薦度:5星)
線性代數 (交大 巫木誠 教授)
http://ocw.nctu.edu.tw/course_detail.php?bgid=3&nid=50#.WCcJ07J97IU
這門課程就是線性代數的基本觀念及相關定理與運算,算是比較計算與應用的課程,作為對理論不大有興趣的人這門課程算滿不錯的,而且老師講得很簡單易懂,很適合初學者!
- 中階課程 (難易度:3.5 星,推薦度:5星)
線性代數一、二 (交大 莊重 教授)
http://ocw.nctu.edu.tw/course_detail.php?bgid=1&gid=1&nid=271#.WCcKpbJ97IU
http://ocw.nctu.edu.tw/course_detail.php?bgid=1&gid=1&nid=361#.WCcKqrJ97IU
如果大家想要學理論一點的線性代數 (尤其是你需要做機器學習或統計的研究),那我個人會建議大家修莊重老師的線性代數,我個人很喜歡這門課的課本,寫得滿難的,但內容很豐富,對於向量空間的描述也很清楚。其實資料分析中對於空間的掌握是滿重要的,畢竟很多資料都是可以用空間的想法去做分析的!
機率論
- 中階課程 (難易度:3.5 星,推薦度:5星)
機率論 (清大 鄭少為老師)
http://www.stat.nthu.edu.tw/~swcheng/Teaching/math2810/index.html
鄭少為老師真的教的非常非常非常的好!會讓你很系統性、觀念很清楚地學完大學部的機率論,當然這不算是一門簡單的課程,需要一定的微積分基礎。儘管我沒上過鄭老師現場的課程,但是啟發我走向統計這條路的老師!
- 中階課程 (難易度:3.5星,推薦度:4 星)
Probability (Prof. Joe Blitzstein, Havard University)
http://projects.iq.harvard.edu/stat110/home
這門課程滿有趣的,其實是之前我曾經接到一個生意,要寫這個課程的期末考考卷,才發現知道原來有這門課。跟鄭老師的課程比起來,他是一個更偏「機率學」的課,許多習題都是對隨機實驗描述在做機率計算的,這堂課的缺點是比較難去了解機率論的全貌。
統計與數理統計
- 中階課程 (難易度:3.5 星,推薦度:5星)
統計學 (清大 鄭少為老師)
http://www.stat.nthu.edu.tw/~swcheng/Teaching/math2820/index.html
鄭少為老師真的教的非常非常非常的好!(再說一次 XD) 這門課程雖然叫做統計學,但其實是數理統計/高等統計學的難度,針對估計與檢定的部分真是精采絕倫!
- 中階課程
統計學、高等統計學 (交大 陳鄰安教授)
http://ocw.nctu.edu.tw/course_detail.php?bgid=1&gid=1&nid=270#.WCcHcLJ97IU
http://ocw.nctu.edu.tw/course_detail.php?bgid=1&gid=1&nid=362#.WCcHJ7J97IW
這門課程我沒有上過,所以就列在這裡給大家參考囉!
應用統計方法
在這裡列出的課程,全部都是鄭少為老師的上課內容!我只有上過線性模式(也就是迴歸分析)跟 多變量分析,都非常精彩有用喔!基本上這些都算是進階課程,難易度都有4.5顆星喔!
時間序列分析
- 初階課程 (難易度:2星,推薦度:5星)
Business Analytics Using Forecasting (Prof. Galit Shmueli, NTHU)
https://www.futurelearn.com/courses/business-analytics-forecasting
這門課程是清大的徐茉莉教授的時間序列預測課程,課程不需要任何數學或是程式背景,可以幫助你從無到有建立資料分析的觀念,並學習到時間序列預測的精神喔!
- 中階課程 (難易度:3.5星,推薦度:5星)
Forecasting: principles and practice (Prof. Rob J Hyndman, Monash University)
http://robjhyndman.com/seminars/uwa/
這門課程沒有影片檔,但有相關的講義、投影片、以及 R code,其實光看這些教材就完全可以搞懂了。 Hyndman 教授是時間序列(應該可以說是最有名)的套件 forecast 的作者,他也是莫莉老師的好朋友,他的課程內容非常豐富,但需要一點點數學跟coding的基礎。
- 進階課程 (難易度:5星,推薦度:5星)
Analysis of Financial Time Series (Prof. Ruey S. Tsay)
http://faculty.chicagobooth.edu/ruey.tsay/teaching/bs41202/sp2016/
Multivariate Time Series Analysis (Prof. Ruey S. Tsay)
http://faculty.chicagobooth.edu/ruey.tsay/teaching/mts/sp2015/
這兩門課程同樣沒有影片檔,但有相關的講義、投影片、以及 R code,而且對於數學的要求比較高。蔡瑞胸教授是台灣的清大數學系畢業 ,芝加哥大學教授,也是中央研究院院士,是時間序列這個領域的知名學者,是我的偶像XD
機器學習 ─ 一般領域
- 中階課程 (難易度:3.5 星,推薦度:4.5 星)
Statistical Learning (Prof. Trevor Hastie and Prof. Rob Tibshirani)
https://goo.gl/fTf4Tl
這兩位是 Stanford 統計系的兩位大神教授,Tibshirani 是 LASSO 的發明人,Hastie則是 elastic net 的發明人,兩位都是高維度資料分析的大師,我自己看過機器學習的書中寫的最平易近人的應該就是他們的 An Introduction to Statistical Learning,這門課便是以這本書作為主要課本,裡面也有 R 語言的實作,非常棒!
- 中階課程 (難易度:3.5 星,推薦度: 5 星)
Coursera 機器學習專項課程 (University of Washington)
https://www.coursera.org/specializations/machine-learning
這系列的專項課程是我所有機器學習課程中最推薦的,除了老師上課的說明淺顯易懂外,作業也非常應用,但又不會太難,當初雖然我是為了學 Python 而看的,結果卻是所有機器學習課程中我最最最推薦的一門。
- 進階課程 (難易度:4.5 星,推薦度: 4 星)
大規模機器學習實務 (清大 吳尚鴻 教授)
http://datalab-lsml.appspot.com/
這門課程是清大吳尚鴻教授開的機器學習,雖然老師上課的投影片中數學量滿多的,但我覺得老師 lab demo 的 ipython notebook 非常棒,很推薦大家學習!之所以沒有 5 星推薦,是因為這門課程的網頁有可能在課程結束後會被老師關掉~
- 進階課程 (難易度:5 星,推薦度: 4 星)
機器學習基石與技法 (台大 林軒田 教授)
https://www.youtube.com/playlist?list=PLXVfgk9fNX2I7tB6oIINGBmW50rrmFTqf
https://www.youtube.com/playlist?list=PLXVfgk9fNX2IQOYPmqjqWsNUFl2kpk1U2
這門課應該是全台灣最有名的機器學習課程了!是台灣大學林軒田教授開的,這門課的優點是把很多重要的演算法深入淺出地講完了,但因為這是一門相對理論的課程,所以老師的作業都相當理論,比較重視數學的推導,因此可能不適合數學底子不夠深或只想學應用的人修課。
機器學習 ─ 其他主題
- 深度學習 (難易度:4.5 星,推薦度:5 星)
機器學習 ─ 結構化與深層化 (台大 李宏毅 教授)
http://speech.ee.ntu.edu.tw/~tlkagk/courses_MLSD15_2.html
市面上比較少跟 Deep Learning 相關的課程,李宏毅老師的深度學習講解得非常清楚易懂,又有搭配 Theano 教學,雖然我還沒有時間看完,但修過的都說讚!
- 深度學習 (難易度:? 星,推薦度:? 星)
Convolutional Neural Networks for Visual Recognition (Stanford University)
課程影片:https://www.youtube.com/playlist?list=PL3FW7Lu3i5JvHM8ljYj-zLfQRF3EO8sYv
課程講義:http://cs231n.stanford.edu/syllabus.html
這是我的朋友推薦的,將深度學習運用在視覺辨識上,感覺是無人車必備知識啊!
- 增強學習 (難易度:5 星,推薦度:5 星)
Reinforcement Learning (Prof. David Silver)
課程影片:在 youtube上搜尋 David Silver 就可以找到
課程講義:http://www0.cs.ucl.ac.uk/staff/d.silver/web/Teaching.html
David Silver絕對是大師中的大師,如果大家有看 AlphaGo 發在 Nature 的 paper,作者第一位就是他!!!這門課程是相對比較理論一點的課程,但能帶大家看到 reinforcement learning的很多面向,超棒的!
- 機器學習理論 (難易度:爆表 6 星,推薦度:3 星)
Statistical Machine Learning (Prof. Larry Wrassman)
http://www.stat.cmu.edu/~larry/=sml/
這門課程是我非常非常喜歡的一門課(對於統計的人來說超棒的),課程很漂亮的討論了各種機器學習議題背後的統計理論,包括:RKHS、Empirical Risk Minimization、Concentration of Measure、Minimax Theory,到常見的regression, classification, clustering等技巧,有很深入的介紹。這門課真的非常非常非常的難,所以並沒有非常推薦大家去看。
有關 David’s Perspective 的最新文章,都會發布在大鼻的 Facebook 粉絲專頁,如果你喜歡大鼻的文章,還請您不吝嗇地按讚或留言給我喔!
非常棒 又多了很多學習方向
謝謝。
相見恨晚啊XD
太感謝了
Coursera 機器學習專項課程 (University of Washington)
這門課好像不是免費的啊?
Coursera 的課程都可以免費旁聽喔!
謝謝分享!
Convolutional Neural Networks for Visual Recognition (Stanford University)的影片好像沒了,有點可惜
請問機器學習這門學科
跟應用統計的時間序列 , 應用多變量分析….等等這些應用統計的內容有什麼關係嗎
一般機器學習跟多變量會滿有關係的,因為分類、分群與降維過去一直是多變量分析的重要研究主題,時間序列通常是另外自成一格,跟隨機過程比較會有關係!
您好大鼻老師
想請問線性代數跟微積分在機器學習需要會到什麼程度呢?多變量的微積分會很常用到嗎
謝謝
看你想學到什麼境界~如果是想要學研究所等級的機器學習,大學理工科學的微積分跟線性代數都會用到喔!
謝謝分享~
謝謝大鼻老師無私的分享!
不會~希望有幫到大家
你好,
請問清大鄭少為老師回歸分析的課程網站還可以進去嗎?
http://www.stat.nthu.edu.tw/~swcheng/Teaching/stat5410/index.html
謝謝!
您好!請問鄭少為老師的課程是不是不能觀看了呢?請問還有類似的替代課程嗎?
線性模式 (迴歸分析)和多變量的課程~
還是可以觀看喔,建議直接到老師的網頁點選想看的課程:
http://www.stat.nthu.edu.tw/~swcheng/Teaching/stat5191/index.html
版主您好
我是目前大三生,想做機器學習方面相關的專題
自己摸索了一個月 大概對機器學習是針對資料來擷取不同特徵
以更好的分析做預測
我看了 林軒田老師跟李宏毅老師的課 有慢慢進步中。
但我的數學底子並不太好 因為還沒修過機率論 及一些統計的應用
現在大概是學會實作感知機做二元分類跟用梯度下降法實現線性回歸兩種數學模型
我想請問的是 有沒有一條"明確"的路 能學好機器學習 甚至是深度學習
例如我應該依序學什麼樣的數學模型
這些數學模型需要怎麼樣的數學基礎知識 例如機率 線性代數等等
我很困惑 希望可以幫忙解答 謝謝
在機器學習的領域,最重要的數學基礎有:
1. 多變數的微積分
2. 線性代數 (Orthogonal Basis, SVD)
3. 機率論 (隨機變數、機率分佈、收斂性)
4. 數理統計 (MLE, EM Algorithm)
當你有這些基礎之後,可以去學習 Covex Optimization,或者是更進階的機率理論。Funcional Analysis 可能也會有一點幫助。
David 你好~~我在尋找統計學開放課程時,恰巧看到此心得推薦(目前在上高老師的微積分2,多變數函數部分),真的謝謝你的整理跟說明!!
是說有一個問題不知道可不可以向你請教,我大學讀財政
但這幾年來發現自己蠻喜歡數學的
最近有申請到荷蘭的統計學主修資料科學的碩士,打算9月前往。
但這段時間也有點徬徨,讀完大概31歲了,從你的經驗來看,這年紀投入資料科學的領域 ,會不會太遲呢><
謝謝分享,像是鄭少為老師的課不是透過你我完全沒有辦法接觸到,一聽了發現講得好好啊~
謝謝!最近準備FRM 需把離開統計20年的我 快補齊