摘要: 本文提供了工業中經常使用的關鍵算法和統計技術的概要,以及與這些技術相關的短缺資源。算法
做爲一個在這個行業已經好幾年的數據科學家,在LinkedIn和QuoLa上,我常常接觸一些學生或者想轉行的人,幫助他們進行機器學習的職業建議或指導方面相關的課程選擇。一些問題圍繞教育途徑和程序的選擇,但許多問題的焦點是今天在數據科學領域什麼樣的算法或模型是常見的。網絡
因爲可供選擇的算法太多了,很難知道從哪裏開始學起。課程可能包括在當今工業中使用的不是很典型的算法,而課程可能沒有包含目前不是很流行的但特別有用的方法。基於軟件的程序能夠排除重要的統計概念,而且基於數學的程序能夠跳過算法設計中的一些關鍵主題。架構
我爲一些有追求的數據專家整理了一個簡短的指南,特別是關注統計模型和機器學習模型(有監督學習和無監督學習);這些主題包括教科書、畢業生水平的統計學課程、數據科學訓練營和其它培訓資源。(其中有些包含在文章的參考部分)。因爲機器學習是統計學的一個分支,機器學習算法在技術上歸類於統計學知識,還有數據挖掘和更多的基於計算機科學的方法。然而,因爲一些算法與計算機科學課程的內容相重疊,而且由於許多人把傳統的統計方法重新方法中分離出來,因此我將把列表中的兩個分支也分開了。app
統計學的方法包括在bootcamps和證書程序中概述的一些更常見的方法,還有一些一般在研究生統計學程序中所教授的不太常見的方法(但在實踐中能夠有很大的優點)。全部建議的工具都是我常常使用的工具:框架
1)廣義線性模型,它構成了大多數監督機器學習方法的基礎(包括邏輯迴歸和Tweedie迴歸,它歸納了在工業中遇到的大多數計數或連續結果……)機器學習
2) 時間序列方法(ARIMA, SSA, 基於機器學習的方法)工具
3) 結構方程建模 (模擬和測試介導途徑)學習
4) 因子分析法(調查設計與驗證的探索和驗證)測試
5) 功率分析/試驗設計 (特別是基於仿真的試驗設計,以避免分析過分)優化
6) 非參數檢驗(從零開始的推導, 尤爲經過模擬)/MCMC
7) K均值聚類
8) 貝葉斯方法(Naïve Bayes, 貝葉斯模型求平均值, 貝葉斯自適應試驗...)
9) 懲罰迴歸模型 (elastic net, LASSO, LARS...) ,一般給模型增長懲罰因素(SVM, XGBoost...), 這對於預測值超過觀測值的數據集是有用的(常見於基因組學與社會科學研究)
10) 樣條模型(MARS...) 用於靈活性建模過程
11)馬爾可夫鏈和隨機過程 (時間序列建模與預測建模的另外一種方法)
12)缺失數據填補方案及其假設(missForest, MICE...)
13) 生存分析(很是有助於製造建模和消耗過程)
14) 混合建模
15) 統計推斷與分組測試(A/B測試和在許多交易活動中實施更復雜的設計)
機器學習擴展了許多這樣框架,特別是K均值聚類和廣義線性建模。在許多行業中一些有用的常見技術(還有一些更模糊的算法,在bootcamps或證書程序中出人意料的有用,但學校裏不多教) 包括:
1)迴歸/分類樹(用於高精度、可解釋性好、計算費用低的廣義線性模型的早期推廣)
2)維數約簡(PCA和多樣學習方法如MDS和tSNE)
3)經典前饋神經網絡
4)裝袋組合(構成了隨機森林和KNN迴歸整合等算法的基礎)
7)加速整合(這是梯度提高和XGBoost算法的基礎)
8)參數優化或設計項目的優化算法(遺傳算法,量子啓發進化算法,模擬鍛鍊,粒子羣優化)
9)拓撲數據分析工具,特別適合於小樣本大小的無監督學習(持久同調, Morse-Smale聚類, Mapper...)
10)深度學習架構(通常的深度架構)
11) KNN局部建模方法(迴歸, 分類)
12)基於梯度的優化方法
13)網絡度量與算法(中央度量法、中間性、多樣性、熵、拉普拉斯算子、流行病擴散、譜聚類)
14)深度體系架構中的卷積和匯聚層(專門適用於計算機視覺和圖像分類模型)
15)層次聚類 (聚類和拓撲數據分析工具相關)
16)貝葉斯網絡(路徑挖掘)
17)複雜性與動態系統(與微分方程有關,但一般用於模擬沒有已知驅動程序的系統)
依靠所選擇的行業,可能須要與天然語言處理(NLP)或計算機視覺相關的附加算法。然而,這些是數據科學和機器學習的專門領域,進入這些領域的人一般已是那個特定領域的專家。
以上爲譯文。
本文由阿里云云棲社區組織翻譯。
文章原標題《Key Algorithms and Statistical Models for Aspiring Data Scientists》,譯者:Mags,審校:袁虎。
本文爲雲棲社區原創內容,未經容許不得轉載。