我感到比較累,英語倒還好,記憶就行。但數學導致大腦反應很慢。感覺要重新複習下數學。想問一下,重新訓練學哪裡的數書比較好?


請看我以前的一個回答

數學不好,能學好演算法嗎??

www.zhihu.com圖標

這個也是我最近思考的一個問題。

大學畢業7年了,最近因為搞數據分析和機器學習的原因,也重新溫習了一些必要的數學基礎,比如線性代數、概率論、統計以及時間序列分析。發現之前大學學習的時候是有很大問題的,就是學習是面向做題,面向考試,考分不低但是沒有把他內化成解決其他問題的有力工具。

我覺得現階段數學的二次複習,倒不如把他看做一個實驗課,用一門編程語言作為工具,把這些基礎數學中的概念通過編程來實現一遍,同時結合物理意義、幾何意義梳理數學概念。這樣一來,對上把概念理解透徹了,對下利用編程工具把數學描述出來了,而不僅僅是去做題,這樣就把數學學活了。同時你後續再學機器學習、數據分析的話,這些數學就能馬上用上,因為你本來就是面向實用在學習這些數學內容。

我最近就在按照這個思路在清理數學基礎,邊學習邊總結,寫了一個專欄《python數據科學之路》,有共同愛好的朋友們,可以一起討論討論。

醬油哥:來吧,一起踏上Python數據科學之路?

zhuanlan.zhihu.com圖標

在專欄《Python數據科學之路》中,我們仿照美劇的劇集編排方式和整體邏輯架構進行組織,一共策划了七季內容,他們環環相扣,一步步的帶你踏上數據科學的高峰:

第一季:Python編程語言核心基礎。快速學習python核心編程知識點,掌握探索數據科學的有力工具。

第二季:Python數據分析基本工具。通過介紹NumPy、Pandas、Matplotlib等工具包,快速具備數據分析的專業范兒。

第三季:機器學習線性代數核心-Python描述。從坐標與變換、空間與映射、相似與特徵等相關基礎知識點切入,最終聚焦特徵值分解與主成分分析、奇異值分解與數據降維等重難點內容,環環相扣的展開線性代數與機器學習演算法緊密結合的最核心內容。

第四季:利用python進行時間序列分析。時間序列分析在數據挖掘與統計分析中具有舉足輕重的地位,多種實用的模型幫助人們從已有的時間序列數據中挖掘規律、預測未知,尤其是在金融量化分析領域,這絕對是不可不提、不可不用的利器。

第五季:機器學習概率統計核心-Python描述。概率統計的方法和思想是機器學習的靈魂,我們將對其條分縷析、庖丁解牛,讓貝葉斯、隱馬爾科夫、極大似然、熵等思想和方法為我所用、不再玄妙。

第六季:機器學習典型演算法專題。這一部分利用前面築牢的基礎知識,對機器學習的常用核心演算法進行抽絲剝繭、各個擊破。

第七季:實戰熱點深度應用。在這一部分利用已有的知識進行實戰化的數據分析,初步計劃對基金投資策略、城市房屋租賃等熱門數據展開圍獵。


不知道你說的「補數學」是什麼意思,不過

在你買書之前,先問問自己,為什麼要補數學?

除非你要做數值演算法或者科學計算,否則寫代碼用到的數學是非常基礎的。

基本的big O分析和數據結構用一點級數就夠了。

大(pao)熱(mo)中的深度學習,也只是鏈式求導而已。

機器學習支持向量機號稱演算法最難,有啥了?不就是一個線代推導 + 最優化問題嗎?

杠精可以說搞壓縮搞圖像處理需要學資訊理論啊!

沒錯沒錯,但是資訊理論是零基礎學編程應該擔心的問題嗎?

更不用說除了專門的演算法研究之外,這些東西都是現成庫直接用

工業界誰沒事一遍遍自己造輪子的?

你既然是零基礎,第一步應該是熟悉開發環境和基本語法。

我不知道你的具體情況,但是95%的人學編程一上來就懟數學,

【刻板成見】

僅此而已

如果你是這95%裡面的,與其補數學,不如用最簡單的python命令行寫一個文字遊戲

當然

如果你明確知道自己為什麼要補數學

而且明確你要補哪些方面的數學(e.g., 線代?離散?數分?數值?圖論?概率?抽象代數?微分幾何?密碼學?)

plus你英文不錯,那麼Google一下相關教材,隨便用哪個都行

英文教材普遍比中文教材好用不是一點點

為了預防杠精,再強調一遍,數學有用,很有用,但

編程初學者要考慮的重點

Having a decent grasp on high school algebra can be helpful, but the problem-solving skills that you need for programming are mostly different than the skills you need for mathematics. If you』re not a 「math person」 or failed Calculus in college, you probably still have most of the math skills you need (and if you don』t, you』ll be able to pick them up pretty quickly).

14 Things You Should Never Do While Learning To Code?

blog.thefirehoseproject.com


用什麼學什麼,其實做一件事,不一定只有一種辦法,解決問題才是最主要的,看一下這個

Python3 從入門到精通視頻教程

千里馬:Python3 從入門到精通視頻教程


入門編程和數學無關,學到一定程度滿足一定條件才有學演算法的必要,而且也不需要補數學,只需要自己想明白。人工智慧和大數據什麼的會用到數學,但是和學Python就沒什麼必然的聯繫了。

學數學幹嘛,一般做應用都用不到太多數學呀。如果你是要學人工智慧,需要的數學知識會比較多,但是代碼只是人工智慧的一小部分,你既然是學python,肯定不需要補數學了。


推薦閱讀:
相关文章