程式設計師的數學基礎課-黃申-極客時間

wuwu發表於2019-04-25

極客時間出品的《程式設計師的數學基礎課》由黃申所作,黃申是LinkedIn資深資料科學家。本專欄課程黃申將從程式設計的視角,結合自己十多年學術經驗和工業實踐,總結了一套適合程式設計師的數學學習方法和知識體系。希望通過“知識 – 應用 – 知識”的講解路線,為你貢獻一堂實用、精彩的數學課。

《程式設計師的數學基礎課》封面圖

《程式設計師的數學基礎課》課程背景

數學基礎的好壞,會直接決定一個程式設計師的發展潛力。
往大了說,數學是一種思維模式,考驗的是一個人歸納、總結和抽象的能力。把這個能力放到程式設計師的世界裡,其實就是解決問題的能力。
往小了說,不管是資料結構與演算法,還是程式設計,很多底層原理和程式設計技巧都源自數學,比如你熟悉的分頁功能,用的其實是餘數的思想。所以很多大公司招人時,會優先考慮數學專業的畢業生。數學基礎好,學程式設計也更容易上手。
如果說程式語言是血肉,那數學的思想和知識就是靈魂。它可以幫你選擇合適的資料結構和演算法、提升系統效率,並且賦予機器智慧。尤其在大資料和智慧化的時代,更是如此。
因此,學數學絕不是死背那些艱深晦澀的定理和公式,洞悉技術本質,掌握知識規律,具備數學思維,擁有發現問題、分析問題、解決問題的能力,才是你的終極目標。
那程式設計師究竟該如何學習數學呢?在這個專欄裡將系統地為你講解。

 

《程式設計師的數學基礎課》講師介紹

程式設計師的數學基礎課-黃申-極客時間

黃申,LinkedIn 資深資料科學家,博士畢業於上海交通大學電腦科學與工程專業,師從俞勇教授。微軟學者,IBM ExtremeBlue 天才計劃成員。長期專注於大資料相關的搜尋、推薦、自然語言處理、廣告以及使用者精準化領域。

曾在微軟亞洲研究院、IBM 美國研究院、eBay 中國、1 號店和大潤發飛牛網擔任要職,帶隊完成了若干公司級的戰略專案。同時擔任《計算機工程》特邀審稿專家,著有 20 多篇國際論文並擁有 10 多項國際專利。

《程式設計師的數學基礎課》專欄模組

專欄用 51 節,四大模組,精講那些程式設計師真正用得上的數學知識。

基礎思想篇

梳理了程式設計中最常用的數學概念和思想,比如餘數、迭代、排列、組合,由淺入深精講資料結構與數學是如何你中有我,我中有你。幫你徹底掌握這些最基礎、最核心的數學知識,同時也能讓你明白,數學對程式設計和演算法究竟意味著什麼。

概率統計篇

以概率統計中最核心的貝葉斯公式為圓心,向上講解隨機變數、概率分佈這些基礎概念,向下講解樸素貝葉斯,並分析它們在生活和程式設計中的實際應用,在應用中反哺概念。讓你真正理解概率統計的本質,跨過概念和應用之間的鴻溝。

線性代數篇

從線性代數中最核心的概念向量、矩陣、線性方程入手,逐步深入分析,這些概念是如何與計算機互幫互助,融會貫通,解決實際問題的。比如,線性代數究竟是在講什麼?怎樣讓計算機理解現實世界?如何過濾冗餘的新聞?從概念到應用,再到本質,讓你不再害怕新技術中的“舊知識”。

綜合實戰篇

將通過快取系統、搜尋引擎、推薦系統中的實際應用,串講前面講到的數學知識和概念,幫你加深對知識的理解,學會用數學思維來分析問題和解決問題,讓數學思維成為你的一種基礎能力。

程式設計師的數學基礎課 配圖

《程式設計師的數學基礎課》課程表

程式設計師應該怎麼學數學?

01二進位制:不瞭解計算機的源頭,你學什麼程式設計

02餘數:原來取餘操作本身就是個雜湊函式

03迭代法:不用程式語言的自帶函式,你會如何計算平方根?

04數學歸納法:如何用數學歸納提升程式碼的執行效率?

05遞迴(上):泛化數學歸納,如何將複雜問題簡單化?

06遞迴(下):分而治之,從歸併排序到MapReduce

07排列:如何讓計算機學會“田忌賽馬”?

08組合:如何讓計算機安排世界盃的賽程?

09動態規劃(上):如何實現基於編輯距離的查詢推薦?

10動態規劃(下):如何求得狀態轉移方程並進行程式設計實現?

11樹的深度優先遍歷(上):如何才能高效率地查字典?

12樹的深度優先遍歷(下):如何才能高效率地查字典?

13樹的廣度優先遍歷(上):人際關係的六度理論是真的嗎?

14樹的廣度優先遍歷(下):為什麼雙向廣度優先搜尋的效率更高?

15從樹到圖:如何讓計算機學會看地圖?

16時間和空間複雜度(上):優化效能是否只是“紙上談兵”?

17時間和空間複雜度(下):如何使用六個法則進行復雜度分析?

18總結課:資料結構、程式設計語句和基礎演算法體現了哪些數學思想?

19概率和統計:程式設計為什麼需要概率和統計?

20概率基礎(上):一篇文章幫你理解隨機變數、概率分佈和期望值

21概率基礎(下):一篇文章幫你理解常用概率公式

22樸素貝葉斯:如何讓計算機學會分類?

23文字分類:如何區分特定型別的新聞?

24語言模型:如何使用鏈式法則和馬爾科夫假設簡化概率模型?

25馬爾科夫鏈:從PageRank到語音識別,背後是什麼模型在支撐?

26資訊熵:如何通過幾個問題,測出你對應的武俠人物?

27決策樹:資訊增益、資訊比率和基尼指數的運用

28熵、資訊增益和卡方:如何通過資訊學尋找關鍵特徵?

29歸一化和標準化:各科成績如何綜合才是最合理的?

30統計意義(上):!《何判斷你的A/B測試結果是不是巧合?

31統計意義(下):如何判斷你的A/B測試結果是不是巧合?

32概率統計篇答疑和總結:為什麼會有欠擬合和過擬合?

33線性代數:線性代數到底是在講什麼?

34向量空間模型:如何讓計算機理解現實事物之間的關係?

35文字檢索:怎樣讓計算機理解自然語言?

36文字聚類:如何過濾冗餘的新聞?

37矩陣(上):如何使用矩陣操作進行PageRank計算?

38矩陣(下):如何使用矩陣操作進行協同過濾推薦?

39線性迴歸(上):如何使用高斯消元法求解線性方程組?

40線性迴歸(中):如何使用最小二乘法進行直線擬合?

41線性迴歸(下):如何使用最小二乘法進行效果驗證?

42PCA主成分分析(上):如何利用協方差矩陣來降維?

43PCA主成分分析(下):為什麼要計算特徵值和特徵向量?

44奇異值分解:如何挖掘潛在的語義關係?

45線性代數篇答疑和總結:矩陣乘法的幾何意義是什麼?

46快取系統:如何通過雜湊表和佇列實現高效訪問?

47搜尋引擎(上):如何打造一個簡單的搜尋引擎?

48搜尋引擎(下):如何通過分類查詢,讓你的搜尋結果更相關?

49推薦系統(上):如何實現基於相似度的協同過濾?

50推薦系統(下):如何通過SVD分析使用者和物品的矩陣?

51綜合應用篇答疑和總結:如何進行個性化使用者畫像的設計?

訂閱價格:

為回報猿人學的粉絲,所有通過我分享的二維碼購買的使用者,請加我微訊號:dismissmewp,備註:返現。

享受完其它優惠後,我再給大家立即返¥12元現金。

程式設計師的數學基礎課 課程返現

猿人學banner宣傳圖

我的公眾號:猿人學 Python 上會分享更多心得體會,敬請關注。

***版權申明:若沒有特殊說明,文章皆是猿人學 yuanrenxue.com 原創,沒有猿人學授權,請勿以任何形式轉載。***

相關文章