自學人工智能之數學篇,數學入門並不難面試
http://blog.itpub.net/31549715/viewspace-2200126/算法
寫這篇文章好久想了好久,到底該怎麼寫?機器學習
關於數學與機器學習的關係,觀點不少。函數
寫本文的目的,但願結合衆家之長,試圖解決數學對機器學習入門的困擾。學習
如今數學困擾你們主要有這幾個方面:優化
一、 機器學習須要的數學知識是否是很難,網上的公式都看不懂?人工智能
二、 不少人都說工做後就是調參,調包,不太須要用到數學吧?spa
三、 零基礎究竟該怎麼自學數學,學到哪一個程度?.net
觀點:blog
一、數學是必須的。
數學對於機器學習來講是必備基礎,數學是內功,你要理解一個算法的內在邏輯,沒有數學是不行的。之後跑算法的時候,你可能就是調參、調包,不會用到數學。可是你發現效果很差的時候,若是你數學不懂,就很難做優化,數學是你在機器學習路上的天花板。
二、數學也不是很難。
可是,數學真的很難嗎?說實話,對於通常人來講,是有點門檻的,但沒有你想的那麼難。這裏假設你上過大學的數學課,你就具有了機器學習的數學入門門檻了,以後的數學啃一啃是能夠下來的。若是說你沒有上過大學的數學,emmm,挺難的,這說明你除了跟別人付出一樣的努力以外,還要多付出一些大學數學的學習。
三、 相比於數學,實際項目能力更重要。
這句話沒錯,但是大部分人在沒接觸到實際項目的時候,就已經被擋在門外了。不少從事機器學習的你問他數學,他可能也不是很懂,但是你能咋辦。人家面試你的時候就要問你這些,問你對算法的理解,你不會那你就過不了面試啊。
四、 學習是枯燥的,可是有辦法緩解。
在學習算法的時候,咱們會看到不少推導,學着學着就怕了,就失去興趣了,這裏有個方法能夠有效緩解。我以前的系列中有本書叫作機器學習實戰,跟着上面的代碼敲一敲,很容易出成果,你會看到在現實中的實際應用,頗有成就感。
五、 數學的學習是能夠「取巧」的
這裏說的取巧指的是,數學的學習是有跡可循的,由於入門階段的數學實際上就須要那些,列出來,你本身啃一下就能夠了。具體的學習方法不是等你把數學都學好了再去學算法知識。而是你在學習算法的時候,看到你數學缺哪塊再去補哪塊,這是最高效的。固然了,在這以前你能夠通讀一遍數學的基礎,對學習有個大概是更好的。
數學必備知識點
一、 線性代數
標量、向量、矩陣和張量;矩陣向量的運算;單位矩陣和逆矩陣;行列式;方差,標準差,協方差矩陣;範數;特殊類型的矩陣和向量;特徵分解以及其意義;奇異值分解及其意義
Moore-Penrose 僞逆;跡運算;
二、 機率統計
機率學派和貝葉斯學派;何爲隨機變量和何又爲機率分佈;條件機率,聯合機率和全機率公式;邊緣機率;獨立性和條件獨立性;指望、方差、協方差和相關係數;經常使用機率分佈;貝葉斯及其應用;中心極限定理;極大似然估計;機率論中的獨立同分布。
三、 優化
計算複雜性與NP問題;上溢和下溢;導數,偏導數及兩個特殊矩陣;方向導數和梯度;梯度降低法;牛頓法;仿射集,凸集和凸錐;超平面,半空間及凸集分離定理;不改變凸性的運算;凸函數及凸優化簡述;無約束的優化,等式約束優化,不等式約束優化;線性規劃中對偶理論;拉格朗日對偶理論
四、 信息論及其餘
信息熵;條件熵;相對熵 (KL散度);互信息;幾種經常使用的距離度量;圖論;樹論
上面數學基本上就是咱們所要學的數學的所有了,看上去有點嚇人是不?不要慌,沒有那麼難,一點點啃下去就能夠了。
推薦資料:
資料一:機器學習王牌課程CS229課後配套數學,專門配套機器學習的。
連接: https://pan.baidu.com/s/1Fh__7N7rqGEgjsyb4YpNSg 密碼:48n4
資料二:Yoshua Bengio的《深度學習》書,網上公開的,前面有一部分是對數學的專門講解,很基礎很全面。
連接: https://pan.baidu.com/s/1A9mcO8_ORQmTJ-V7z9bLdw 密碼:hwjn
資料三:知乎答主的優秀回答,很細緻,適合初學者
線代專欄: https://zhuanlan.zhihu.com/p/30191876
機率統計: https://zhuanlan.zhihu.com/p/30314229
優化(上): https://zhuanlan.zhihu.com/p/30383127
優化(下): https://zhuanlan.zhihu.com/p/30486793
信息論及其餘: https://zhuanlan.zhihu.com/p/30383356
我看過不少數學材料,上面三個是我總結過來最好的,必看。可是每一個人基礎不一樣,可能看完上面三個後,仍是有須要去看別的。
數學實在太弱怎麼辦?
若是你上面三個材料看起來很吃力,或者說你的數學沒有達到大學的水平。那就是數學基本功的問題了。針對這種狀況,我以爲只能把相關的大學數學書拿出來翻一翻,基本概念要弄懂,什麼是矩陣、導數等等,偷不了懶。
一、數學分析與機率論
同濟大學數學教研室,高等數學,高等教育出版社,1996
王鬆桂、程維虎、高旅端,機率論與數理統計,科學出版社,2000
二、矩陣和線性代數
同濟大學數學系編,工程數學線性代數(第五版),高等教育出版社2007
以上三本數學書,若是你對基礎概念忘了的話,能夠選擇性看下相應的篇章。
重申:
最好的數學學習方式是邊學邊補,不必百分之百看懂數學的推導過程,初級階段懂個70%也就夠了,有些實在太難的,就不必鑽牛角尖了。網上動輒看到幾百塊錢的數學教程,但願你們不要被割智商稅。