1. 程式人生 > >斯坦福大學Andrew Ng教授主講的《機器學習》公開課觀後感

斯坦福大學Andrew Ng教授主講的《機器學習》公開課觀後感



看過之後,都沒有總結,這個總結的比較真實,記錄下來。

之後的連結資源,比較好

Andrew Ng教授的Deep Learning維基,有中文翻譯
http://deeplearning.stanford.edu/wiki/index.php/UFLDL_Tutorial


---------------------------------------

近日,在網易公開課視訊網站上看完了《機器學習》課程視訊,現做個學後感,也叫觀後感吧。

學習時間
從2013年7月26日星期五開始,在網易公開課視訊網站上,觀看由斯坦福大學Andrew Ng教授主講的計算機系課程(編號CS229)《機器學習》(網址

http://v.163.com/special/opencourse/machinelearning.html)(注:最早是在新浪公開課上發現的這門課,看了前幾集沒有字幕的視訊。後來經由技術群網友的指引才找到網易,看到了全部翻譯完的視訊)。我基本上每天看1-2集,不熟悉的內容會在第二天覆習一遍。到2013年8月17日全部視訊看完,前後用了23天,中間有幾天有事或者腦子不在狀態就沒看。全部看完之後,又找自己感興趣的重看,我翻看了第11集的內容,“對開發機器學習應用的建議”,老師根據自己的實際專案經驗提出了很好的建議,對我們的實戰有很大的幫助。

課程設定和內容
視訊課程分為20集,每集72-85分鐘。實體課程大概一週2次,中間還穿插助教上的習題課,大概一個學期的課程。

內容涉及四大部分,分別是:監督學習(2-8集)、學習理論(9集-11集)、無監督學習(12-15集)、強化學習(16-20集)。監督學習和無監督學習,基本上是機器學習的二分法;強化學習位於兩者之間;而學習理論則從總體上介紹瞭如何選擇、使用機器學習來解決實際問題,以及除錯(比如:誤差分析、銷蝕分析)、調優(比如:模型選擇、特徵選擇)的各種方法和要注意的事項(比如,避免過早優化)。

監督學習,介紹了迴歸、樸素貝葉斯、神經網路、SVM(支援向量機)、SMO(順序最小優化)演算法等;無監督學習講了聚類、K-means、GMM(混合高斯模型)、EM演算法 、PCA(主成分分析)、LSI(潛在語義索引)、SVD(奇異值分解)、ICA(獨立成分分析)等;強化學習主要講了這類連續決策學習(馬爾科夫決策過程,MDP)中的值迭代(VI)和策略迭代(PI),以及如何定義回報函式,如何找到最佳策略等問題。

授課方式

網上有老師的講義,可以在網易這門課的主頁面上打包下載(網址http://v.163.com/special/opencourse/machinelearning.html)。老師基本上是寫板書的,PPT是輔助。在黑板上用粉筆邊講解邊書寫,有助於帶動學生的思考,使師生之間有交流有互動。個人以為,比直接顯示PPT效果好。數學公式的推導很費時間,課堂上也不可能大多數的時間用來推導公式,所以大量的推導老師要求學生在課下看講義,或者通過習題課聽助教講解。

授課語言
因為是美國的課堂,當然的教學語言是英語。網易做的不錯,除了把老師說的話全部轉寫下來,還做了中文翻譯,前14集翻譯得不錯,除了偶有錯別字之外,專業術語翻譯的很好,語句也很流暢。第15集以後一直到最後一堂課,翻譯的不是太準確,一些專業術語都翻譯錯了,很讓觀者感到不適。但是,無論如何,還是感謝網易這些轉寫和翻譯的無名網友無私的付出。這些小的瑕疵不會讓真正熱愛這門課程的學習者放棄學習,反而想加入翻譯者的隊伍,為傳播科學知識而貢獻力量呢。

觀後感

總體感覺,老師講的不錯,是個真正懂機器學習的人。老師在課上也說過,很容易區分那些真正懂機器學習的人,和那些只會紙上談兵的人。我希望成為第一類,併為此努力著。

老師是華裔,中文名字叫吳恩達,生於倫敦,看上去很親切。課堂很活躍,老師注重和學生交流,每講完一個主題,會問學生有問題嗎,然後一一作答。

視訊大概錄製於2007年(個人推測,未經考證),內容上,與現在的機器學習技術比,稍微顯得不夠多。近年來,機器學習領域有了長足的發展,學術界和工業界齊發力,二者相互促進,達到了前所未有的高度。即便是曾經沉寂的神經網路,近年來也改頭換面成了深度學習。不過,從專家的角度看,這不是一種新的機器學習技術,它只是涉及到其中的一個環節——特徵選擇,並不構成一個獨立的學習方法。

老師沒有涉及實戰。受限於課堂講授的方式和時間上的限制,課上只能做必要知識點的講解。

數學公式比較多,似懂非懂的。如果不滿足於“知其然”,還要“知其所以然”,以後的方向是搞模型、演算法研究的話,那還要補習一下數學知識,必須的。如果僅是為了解決實際問題,對演算法要求不高的話,那知道如何運用就夠了。剩下的,隨著應用系統的不斷進展,對整個系統各方面要求的提高,那時會倒逼你進階的。

遺憾的是,因為沒有完全掌握,所以再回看已經看過的視訊,還是似懂非懂,但是比第一次要好很多。建議大家多看幾遍,加強練習,跟自己的專案相結合,動手實現會加深理解。“精通的目的全在於應用”(毛語),機器學習只是工具,應用到解決實際問題上才能真正體現它的價值。

跟這個課程最接近的,是加州理工學院的《機器學習與資料探勘》(18集)(網址http://v.163.com/special/opencourse/learningfromdata.html),主講老師有口音,很重,如果沒有中文字幕的幫助,很難快速掌握。目前網易的進展是,翻譯完了前4集。

順便說一句,以後想練專業口語的話,可以多看Andrew Ng這個,跟著說,以後在國際會議上就能充分表達了。聽加州理工的這個,也能聽懂那些非英語母語國家講的英語了。不同的地方有不同的英語口音,我們還不算難聽的,應該算是好聽的,呵呵。

又及,自己心裡暗想,土鱉也能“準”“海歸”一回。網路帶來了革命,網路也給我們這些愛學習的人帶來了真正“免費的午餐”。其實,話說回來,就像免費的搜尋引擎一樣,他們收穫的是更大的名聲上的勝利,擴大了影響,傳播了美譽。像耶魯大學的一個教授的一句玩笑話,其目的是爭取“世界學術霸權”。

Andrew Ng教授的《機器學習》公開課視訊(30集)
http://openclassroom.stanford.edu/MainFolder/CoursePage.php?course=MachineLearning

Andrew Ng教授的Deep Learning維基,有中文翻譯
http://deeplearning.stanford.edu/wiki/index.php/UFLDL_Tutorial

其他教學資源
韓家煒教授在北大的《資料探勘》暑期班視訊,英文PPT,中文講解(22集)
http://v.youku.com/v_show/id_XMzA3NDI5MzI=.html(視訊:01資料探勘概念,課程簡介,資料庫技術發展史,資料探勘應用)

韓家煒教授(UIUC大學)的《資料探勘》線上課程
https://wiki.engr.illinois.edu/display/cs412/Home;jsessionid=6BF0A2C36A95A31D2DA754A017756F4B

卡內基•梅隆大學(CMU)的《機器學習》線上課程
http://www.cs.cmu.edu/~epxing/Class/10701/lecture.html

麻省理工學院(MIT)的《機器學習》線上課程
http://ocw.mit.edu/courses/electrical-engineering-and-computer-science/6-867-machine-learning-fall-2006/index.htm

加州理工學院(Caltech)的《機器學習與資料探勘》線上課程
http://work.caltech.edu/telecourse.html(同上述網易公開課http://v.163.com/special/opencourse/learningfromdata.html

UC Irvine的《機器學習與資料探勘》線上課程
http://sli.ics.uci.edu/Classes/2011W-178

斯坦福大學的《資料探勘》線上課程
http://www.stanford.edu/class/stats202/

其他資源
北京機器學習讀書會
http://q.weibo.com/1644133

機器學習相關電子書
http://t.cn/zjtPuCS(開啟artificial intelligence找子目錄machine learning)

附:
主講教師介紹:(新浪公開課:機器學習http://open.sina.com.cn/course/id_280/
講師:Andrew Ng
學校:斯坦福
斯坦福大學計算機系副教授,人工智慧實驗室主任,致力於人工智慧、機器學習,神經資訊科學以及機器人學等研究方向。他和他的學生成功開發出新的機器視覺演算法,大大簡化了機器人的感測器系統。