今年疫情在家時間比較長,拿來進修正好。公司也有進修補助,等於免費送我去念書,這種好康怎麼能錯過,一定要修好修滿。我從開始工作以來每年都有申請進修補助,之前進修補助幾乎都拿去念博士了,今年選了MIT xPro為期六週的Data Science & Big Data Analysis課程。
科學日新月異,數據科學這幾年大爆發更是跑飛快。我工作其實不是真的賣時間,是賣腦賣分析見解和解決問題的服務,所以唯有不斷更新知識,才能保有職場的競爭力。之前還在邊念博士時都選一天或一週密集班等比較小型的進修課; 今年既然不用寫論文了,就可以來好好上一堂重一點的課。
一上,真的是開眼界。我自己之前其實也很常去Cousera, Data Camp, Udemy之類的去自學程式和一些統計分析的知識,那些平台的課通常我都可以放1.25~1.5倍速快轉,或是週末集中一次飆完之類的。但上這堂真的無法,他進度飛快,我常常需要暫停寫筆記,或不斷倒回去再看一遍,
其中一章我甚至人生第一次放慢影片用0.75倍速看!有時候還要去google一下,所以一個五分鐘的影片我通常要看20分鐘。然後上了兩小時就極限,再看也無法吸收,只能穩扎穩打每天念幾小時,也因此常常晚上跟週末都在唸書。當全家都睡了我還在念書時,都覺得不是才剛結束論文地獄,怎麼又挖了一個坑給自己跳?(勞碌命😅)
上完這六週的課,我寫乾快兩隻筆Mitsubishi 0.28藍筆,填滿三個筆記本。但確實很有收穫!比方說,有練習做一個影片推薦系統,還有有時間序列的分析計程車的運量等等。
很多身邊之前知其然不知其所以然的東西,如 臉書怎麼都知道我很愛買智慧家電,Yelp到底怎麼驗算餐廳推薦,都變得比較清楚,看世界有更宏觀的感覺。也忍不住不時思考怎麼把這些應用到環境領域?很喜歡大腦高速旋轉然後一直甩出新點子的感覺。
這堂課有很多抽象的理論和算式,很多可能在大學要講一學期課的東西,他兩小時飆完。我個人覺得稍微有點數學/統計背景且至少能寫基本程式的人會比較有收穫,
更適合已經有點底子然後想更上一層樓的人。有興趣的話可以參考本文下方的章節心得分享,如果每一章節你都大概知道一些關鍵字,然後不知道一些,那應該就會是適合你的程度的課程。
這堂課的優點是真的很扎實的大補帖,一次把很多數據科學從理論到應用很密集地一次講給你聽, 所以步調非常快。缺點就是課程結束後只保留半年, 不像一般線上課程是可以終身重複觀看,而且只能下載字幕,不能保存影片。所以真的要筆記抄很勤。
整體來說,我很喜歡這堂課,雖然我現在工作會用到的範圍集中在第一二三章,但不代表將來用不到其他的。我本來就是很喜歡問為什麼,想知道一切事物背後遠裡的好奇寶寶,數據科學充滿在生活各個面向,所以覺得很有趣。
博士畢業只是個開始,
我對這個世界的探索才正要展開呢!
以下為 MIT xPRO Data Science & Big Data Analysis課程個章節的簡介
第一章:Unstructured data
講Unsupervised learning, 包含一些基礎clustering的技巧(K mean, PCA, Eigenvalue/Eigenvector),
晉一級的spectral clustering, modularity clustering等high dimensional clustering。
這個部分我覺得有上過多變量分析或是線性代數就懂基礎clustering的原理,可以很快掌握。
主要功能:在海量資量中看出規律並分門別類
實例分析:臉部辨識,新聞分類/老師專長分類
第二章:回歸分析
除了基本的線性迴歸和logit regression外, 也有比較進階的LASSO, Ridge, 跟Elastic net,
也提怎麼判斷回歸模型品質好不好?怎麼樣Penalized
如何回答inference question, 怎麼判斷關聯性有沒有因果關係
最後也帶到樹狀回歸,跟衍伸出來的random forest, boosted tree, 還有Neural Network等
這個部分我也覺得有上過基本統計也可以很快掌握, 雖然這個講師上課有點無聊有點像在唸稿
主要功能:找出規律並預測結果
實例分析:女性工資是否偏低(同樣條件的低多少)?黑人是否更容易被入罪(同樣背景高多少?)
第三章:Hypothesis testing & Deep Learning
介紹基礎假說測試,typeI/II error, precision/recall, p-value, Confidence Interval, estimate likelihood 等基礎機率和統計理論。還有常見統計的誤區。
然後進一步帶到Support vector machine, perception algorithm, Maximum likelihood等用基礎機器學習,
最後再帶Neural Network, Deep Neural Network, 包含Convex vs. Nonconvex Optimization, Backpropagation
統計的誤用這部分我真的很有感,我之前工作常常為了類似的問題爆氣,
最常見的應該就是誤解correlation跟causation, 還有誤用p-value。
這堂課用了火箭升空爆炸的實例也很有趣,
抽絲剝繭看為何工程師只把過去失敗和當時溫度做個回歸,
說明做出發射失敗與溫度無關本身就是個錯誤的分析方式,把可避免的失誤變成悲劇。
然後分析從統計的角度應該要怎麼切入,不能只記錄失敗的,成功的也要,
然後就可以估算出當天的溫度(過去從未有過的低溫)的失敗機率是多少,
反而會得到相反的結論了。
主要功能:機器學習
實例分析:圖片辨識, 下棋Alpha GO
第四章:Recommendation System
我最喜歡這個章節, 覺得老師真的講得非常好!深入淺出,也是我覺得學到最多東西的地方。
講述當使用者不是很明確地知道自己在找什麼(所以有別於搜尋引擎),
然後你有的資料量又很有限的情況下,
比方說你有上千萬部電影,只有很小一搓的使用者對超級滄海一粟(如0.1%)的電影評分,
在資料matrix大部分都是空白的情況下,
並且開始導入Markov Chain, Graphic Model, 和active learning 的概念
主要功能:在資料有限大部分的空白的情況下找出可用的線索
實例分析:Netflix電影推薦, Yelp餐廳推薦
第五章:Networks & Graphic models
比第四章更深入地講Network model& Graphic model.
從介紹什麼是network, 有哪些分類, 然後用不同方法估算哪個節點或連結最有影響力,
如下廣告要下給誰效果最好。
或好幾個城市要選一個蓋機場,哪裡對交通最有助益?哪條路施工最會堵車?
跟現在最相關的就是病毒傳播了,會怎麼傳,傳多快?都是Network model
講解各種不同的Network models, Graphic models, 各別演算法還有應用,
比上一章花更多時間講Markov chain, Bacum-Welch algorithm,
主要功能:分析事物彼此的關係及隨時間的變化
實例分析:疾病傳播, 辨識造成自閉症的基因
第六章:Predictive Modeling for temporal data
這張相對前幾章比較應用,算式比較少, 整體也比較短,是比較可惜的地方。
講如何從零開始打造一個商業預測模型(entity, feature engineering, Deep feature synthesis等),
比方說一個顧客資料本身的資料庫+
還有行為的記錄表 (如9:00 顧客A點閱某產品X細節 , 9:01 顧客B瀏覽OO部門,9:03 A把X放入購物車) + 產品庫存資料庫,
是連續的時間行為資料,然後怎麼整理,用一段時間建模,預測下兩週要對哪些顧客送什麼促銷,
然後validation。
主要功能:如何從時間行為資料建一個模型然後預測下一個時段不同顧客的不同行為
實例分析:網路商店投放促銷廣告
評分方式:
每章有小考+兩個計分Projects (另外四個不計分)。
每章小考大部分都是選擇題, 單覆選都有, 偶而有一些計算題和填空;
開卷,但是每題依難易程度只有1-3次作答機會。
實作部分的數據跟code等所有步驟都會給你,
所以不是考programming,而是看你會不會基礎操作還有能否看懂結果然後分析。
最後總成績 >60 %算過關。(我是93%過的,不罔我這麼認真。)
結業會發給你一個有式有序號的證書,
等同1.8 Continuing Education Units,
可以放在Linkedin或履歷表上。
總結
學習不止於學校。尤其在現在網路發達,不管在哪裡都可以上各種學校的各種課程,進修機會不再受國家和學歷限制。因此擁有獨立學習的能力, 可能比什麼學歷證書都能帶你走更遠。而培養學習能力唯一方法就是一直學習,
一直把自己放在自己能力知識的邊界,習慣那個不舒服不懂不會的感覺,擴展出去,然後你的舒服圈就大了。