當前位置:編程學習大全網 - 編程語言 - 機器學習對數學功底的要求到底有多高

機器學習對數學功底的要求到底有多高

豆瓣的話題:

研究機器學習需要什麽樣的數學基礎?

來自: 求真 2013-07-11 13:44:22

我是小碩壹枚,研究方向是機器學習。通過閱讀壹些機器學習的教科書,發現機器學習對於數學基礎要求比較高。

我想問壹下:壹般研究機器學習需要怎樣的數學基礎?

我們大學學習的高等數學、線性代數和概率論之類的數學基礎課程能夠用嗎?

skynet 2013-07-12 15:30:26

看方向,不過任何方向都基本上不夠。缺什麽補什麽吧,數學是個坑,機器學習也是個坑,人不可能同時在兩個坑裏掙紮。

贊 (3) 回應

skynet 2013-07-12 15:30:26

看方向,不過任何方向都基本上不夠。缺什麽補什麽吧,數學是個坑,機器學習也是個坑,人不可能同時在兩個坑裏掙紮。

贊 (3) 回應

求真 2013-07-12 16:07:20

看方向,不過任何方向都基本上不夠。缺什麽補什麽吧,數學是個坑,機器學習也是個坑,人不可能同 ... skynet

嗯啊,好的。

贊 回應

frce 2014-06-09 15:39:55

說得好,我喜歡。

贊 回應

opera 2014-06-09 15:43:56

高等數學、線性代數和概率論肯定是要用到的。除了它們可能還有別的。

贊 回應

Mr. L (Live long and prosper) 2014-06-09 20:51:39

應用域呢?

贊 回應

泡泡龍 2014-07-03 17:16:37

具體點應該是微積分、概率論、線性代數、隨機分布、凸優化吧

贊 回應

求真 2014-07-06 10:46:35

具體點應該是微積分、概率論、線性代數、隨機分布、凸優化吧泡泡龍

謝謝!

----------------------------------------------------------------------------------------------------

知乎的話題:

如果對機器學習僅是以應用為目的的話,到底需要多少數學…,比如說微分流形,代數拓撲,泛函之類的需要懂嗎?

“僅是以應用為目的”有點含糊。。乍壹看題主好像想說是在公司裏用,但後面又出來壹大票高大上課程,看起來又好像偏學界。。前面的大大們提到的感覺更偏學界。我補充壹些工業界的情況。

總的來說我偏向匿名用戶的回答。如果對機器學習僅是以應用為目的的話,到底需要多少數學…,比如說微分流形,代數拓撲,泛函之類的需要懂嗎? - 匿名用戶的回答

在思考這個問題之前,要先搞清楚公司花錢雇妳來幹啥的。我的經驗是,這有兩種情況。壹是公司原來沒有壹項業務,現在要把壹些機器學習這個東西跑起來(從無到有)。二是在妳接手的時候公司已經有壹定基礎了,現在要把性能調上去(從差到優)。前者完全不用任何數學,先用別人有的模塊/代碼把系統擼起來是王道。後者看具體問題,大多數情況不用數學。

從無到有的情況,比如我原來在facebook做place deduplication,大概就是說非死不可上面超多可以簽到的地點,要判斷裏面有哪些是重復的地點。類似知乎上面有很多重復的問題,如何鑒別和重定向這些問題。這個問題從機器學習的角度來看並不難,有很多已有工作。但公司更關心的其實是怎麽把隨便壹個系統在fb數十TB的數據上日起來。所以我們的絕大多數時間根本不是花在評估哪個機器學習模型更好,這個流形有什麽性質,那個系統有什麽下限,而是——擼hadoop用幾千個核先把feature抽出來。有了feature以後後臺分類器是特媽隨便找的這種事我會亂說?這種情況跟數學完全沒鳥關系好嗎。

從有到優的情況,我也參與了這個項目的調優。基本經驗是——分類器啊模型啊再復雜精巧數學性質再好沒吊用,關鍵還是看feature。弄壹個有效的feature出來精度呼呼的往上漲,各種分類器瞎JB換啊調啊基本沒差別。。(當然deep learning這種模型的質變除外,但這個和不搞科研的人就沒啥關系了)所以妳要問數學有沒有用,我說有用,根據數學才能提出有效的模型——但這特媽是學界人家十年磨壹劍的人用的。放公司裏用數學拱KPI分分鐘被nen死。隔壁王二狗整倆新feature獎金拿得多多的,這邊妳要死磕泛函產品狗咬死妳。。

當然在偏研究的地方比如Google X的某些部門還是有用的,但我覺得這還是偏學界。

總的來說,我的建議是,如果想去公司的話就不要糾結逼格過高的事情了。學好線性代數,統計和凸優化就出門打怪吧,攢系統經驗和dirty trick才是王道。當然我也不是說就不要搞數學,只是如果妳去公司的話,在學好線代統計凸優化的前提下,同樣的時間花在學計算機系統的構建和系統性的思考方法上,比學習數學更劃算。

編輯於 2015-04-09 35 條評論 感謝

這裏有個80-20原則的應用。

只要20%的機器學習知識,其實已經可以在80%的商業應用裏取得滿意的效果。

但,如果公司精益求精,或者說是專註於機器學習算法的公司,可能要投入指數級別的努力來達到性能的提升。

不請自來,我本人就是從數學轉到數據科學上來的,是完全以應用為目的學的機器學習。本科加PHD九年中,數學方面的課程大概學過:數學分析(微積分),線性代數,概率論,統計,應用統計,數值分析,常微分方程,偏微分方程,數值偏微分方程,運籌學,離散數學,隨機過程,隨機偏微分方程,抽象代數,實變函數,泛函分析,復變函數,數學建模,拓撲,微分幾何,漸近分析等等

從我個人的學習過程中,覺得對機器學習的應用有幫助的數學學科有(重要性從高到低):

1, 線性代數(或叫高等代數):必需,所有的算法最後都會向量化表示,線性代數不熟的話,算法都看不懂啊

2,微積分:這個是所有高等數學的基礎,不細說了

3,統計:這裏包括統計理論基礎,和應用統計(主要就是線性模型)。很多機器學習內容的前身就是統計啊。

3.5, 凸優化: 經 @徐文浩 補充,原因跟6相似

前三個感覺是想要學好機器學習所必需的,後面的雖然不必需,但是適當了解之後,幫助也很大:

4,概率論:基礎概率論就夠了,以測度為基礎的高級概率論對機器學習幫助不大

5,數值分析:數值分析的壹部分包括了插值,擬合,數值求解各種方程,數值積分,這些小技術雖然沒有跟機器學習直接扯上關系,但是可能在妳處理復雜問題時的壹些小地方起到奇效。數值分析的另壹大塊就是數值線性代數了,包括怎麽矩陣求逆了,矩陣的各種分解了,矩陣特征根奇異值什麽了,這裏面很多算法都會被機器學習的書法直接使用的。比如SVD就被Principal Component Analysis直接調用了啊。

6,運籌學:運籌就是做優化,說白了就是把問題表示成數學公式和限制條件,然後求最大值或最小值。所以不少機器學習裏面先進的優化算法,最先都是在運籌裏面出現的

暫時就想到這麽多,至於題主說的泛函,微分流形,代數拓撲啥的,完全不需要了解啊。

編輯於 2015-04-28 26 條評論 感謝

我就是從數學轉ML的。我就知道,肯定有人要扯很多純數學的“基礎背景”。我說壹些實在的,微分幾何,流形,代數拓撲這些知識,只要妳去找相關的研究論文,總能找得到和Ml有交集的地方。但是,不代表妳必須掌握它們。在大部分的ML研究裏,還是微積分和線性代數、概率統計的功底最重要。不要太小看微積分和線性代數,很多時候做研究時要用的推導還是需要很多熟練的技巧才可以勝任。至於其他知識,可以用到時再補充。

----------------------------------------------------------------------------------------------

CSDN的TOPIC:

機器學習需要學習哪些數學知識 [問題點數:20分,結帖人hanyahui88]

收藏

關註

hanyahui88

大眼的小眼

本版等級:

結帖率:100%

樓主發表於: 2014-10-16 11:07:37

機器學習數學數據分析算法

最近公司做數據分析,但是以前都沒有接觸過,看了壹下所有的算法,很多都是跟數學有關,看不懂很多數學符號,所以問問我應該學習什麽數學 好像離散數學是必須的

更多0分享到:

相關推薦:

阿裏雲機器學習算法應用實踐

統計機器學習入門——重抽樣方法

統計機器學習入門——分類2

統計機器學習入門——線性模型選擇與正則化2

對我有用[0] 丟個板磚[0] 引用 | 舉報 | 管理

回復次數:9

關註

OrthocenterCh...

Kenney_Qin

本版等級:

#1 得分:3回復於: 2014-10-16 13:18:23

以我平時接觸到的機器學習算法來說,與其相關的的數學知識有:求導,求梯度,拉格朗日乘子法,拉格朗日對偶,牛頓叠代法等,數學知識是基礎,很多機器學習算法是建立在數學的基礎上,是數值計算的比較多,和離散數學關系不是特別大,如果妳要做圖算法,那離散數學就很重要了。

對我有用[0] 丟個板磚[0] 引用 | 舉報 | 管理

關註

hanyahui88

大眼的小眼

本版等級:

#2 得分:0回復於: 2014-10-17 09:12:48

引用 1 樓 OrthocenterChocolate 的回復:以我平時接觸到的機器學習算法來說,與其相關的的數學知識有:求導,求梯度,拉格朗日乘子法,拉格朗日對偶,牛頓叠代法等,數學知識是基礎,很多機器學習算法是建立在數學的基礎上,是數值計算的比較多,和離散數學關系不是特別大,如果妳要做圖算法,那離散數學就很重要了。

我最近在研究均值漂移算法,裏面的核函數,好多公式都看不懂 我也不知道學什麽數學可以看懂這些公式。

妳說的求導,求梯度,拉格朗日乘子法,拉格朗日對偶,牛頓叠代法等 這些是什麽數學中的

對我有用[0] 丟個板磚[0] 引用 | 舉報 | 管理

關註

longburulin

longburulin

本版等級:

#3 得分:2回復於: 2014-10-17 09:51:41

引用 2 樓 hanyahui88 的回復:Quote: 引用 1 樓 OrthocenterChocolate 的回復: 以我平時接觸到的機器學習算法來說,與其相關的的數學知識有:求導,求梯度,拉格朗日乘子法,拉格朗日對偶,牛頓叠代法等,數學知識是基礎,很多機器學習算法是建立在數學的基礎上,是數值計算的比較多,和離散數學關系不是特別大,如果妳要做圖算法,那離散數學就很重要了。我最近在研究均值漂移算法,裏面的核函數,好多公式都看不懂 我也不知道學什麽數學可以看懂這些公式。

妳說的求導,求梯度,拉格朗日乘子法,拉格朗日對偶,牛頓叠代法等 這些是什麽數學中的

數值分析裏面好像除了拉格朗日對偶沒有 其他好像有

對我有用[0] 丟個板磚[0] 引用 | 舉報 | 管理

關註

OrthocenterCh...

Kenney_Qin

本版等級:

#4 得分:0回復於: 2014-10-19 21:38:16

引用 2 樓 hanyahui88 的回復:Quote: 引用 1 樓 OrthocenterChocolate 的回復: 以我平時接觸到的機器學習算法來說,與其相關的的數學知識有:求導,求梯度,拉格朗日乘子法,拉格朗日對偶,牛頓叠代法等,數學知識是基礎,很多機器學習算法是建立在數學的基礎上,是數值計算的比較多,和離散數學關系不是特別大,如果妳要做圖算法,那離散數學就很重要了。我最近在研究均值漂移算法,裏面的核函數,好多公式都看不懂 我也不知道學什麽數學可以看懂這些公式。

妳說的求導,求梯度,拉格朗日乘子法,拉格朗日對偶,牛頓叠代法等 這些是什麽數學中的

求導,求梯度,拉格朗日乘子法是高等數學裏面的,拉格朗日對偶,牛頓叠代法妳可以看看凸優化,其實凸優化應該包含了妳想看的很多機器學習中的數學知識,只不過它們是建立在壹些更為基礎的數學知識上(如求導)。

對我有用[0] 丟個板磚[0] 引用 | 舉報 | 管理

關註

hanyahui88

大眼的小眼

本版等級:

#5 得分:0回復於: 2014-10-21 14:40:54

引用 4 樓 OrthocenterChocolate 的回復:Quote: 引用 2 樓 hanyahui88 的回復:Quote: 引用 1 樓 OrthocenterChocolate 的回復: 以我平時接觸到的機器學習算法來說,與其相關的的數學知識有:求導,求梯度,拉格朗日乘子法,拉格朗日對偶,牛頓叠代法等,數學知識是基礎,很多機器學習算法是建立在數學的基礎上,是數值計算的比較多,和離散數學關系不是特別大,如果妳要做圖算法,那離散數學就很重要了。我最近在研究均值漂移算法,裏面的核函數,好多公式都看不懂 我也不知道學什麽數學可以看懂這些公式。

妳說的求導,求梯度,拉格朗日乘子法,拉格朗日對偶,牛頓叠代法等 這些是什麽數學中的求導,求梯度,拉格朗日乘子法是高等數學裏面的,拉格朗日對偶,牛頓叠代法妳可以看看凸優化,其實凸優化應該包含了妳想看的很多機器學習中的數學知識,只不過它們是建立在壹些更為基礎的數學知識上(如求導)。

也就是看高等數學 和凸優化 基本就可以了?

對我有用[0] 丟個板磚[0] 引用 | 舉報 | 管理

關註

OrthocenterCh...

Kenney_Qin

本版等級:

#6 得分:5回復於: 2014-10-23 14:32:40

引用 5 樓 hanyahui88 的回復:Quote: 引用 4 樓 OrthocenterChocolate 的回復:Quote: 引用 2 樓 hanyahui88 的回復:Quote: 引用 1 樓 OrthocenterChocolate 的回復: 以我平時接觸到的機器學習算法來說,與其相關的的數學知識有:求導,求梯度,拉格朗日乘子法,拉格朗日對偶,牛頓叠代法等,數學知識是基礎,很多機器學習算法是建立在數學的基礎上,是數值計算的比較多,和離散數學關系不是特別大,如果妳要做圖算法,那離散數學就很重要了。我最近在研究均值漂移算法,裏面的核函數,好多公式都看不懂 我也不知道學什麽數學可以看懂這些公式。

妳說的求導,求梯度,拉格朗日乘子法,拉格朗日對偶,牛頓叠代法等 這些是什麽數學中的求導,求梯度,拉格朗日乘子法是高等數學裏面的,拉格朗日對偶,牛頓叠代法妳可以看看凸優化,其實凸優化應該包含了妳想看的很多機器學習中的數學知識,只不過它們是建立在壹些更為基礎的數學知識上(如求導)。

也就是看高等數學 和凸優化 基本就可以了?

對,還有些矩陣運算,如果不熟悉的話再看看線性代數,建議妳碰到不會的再去查,而不是事先全部看完, 不然太多了。

對我有用[0] 丟個板磚[0] 引用 | 舉報 | 管理

關註

q243021856

狼痕

本版等級:

#7 得分:5回復於: 2014-10-23 14:58:16

微積分、線性代數、概率論、離散數學、統計學

對我有用[0] 丟個板磚[0] 引用 | 舉報 | 管理

關註

shaowei213

Tracysw

本版等級:

#8 得分:5回復於: 2014-10-23 15:38:32

引用 7 樓 q243021856 的回復:微積分、線性代數、概率論、離散數學、統計學

專業

對我有用[0] 丟個板磚[0] 引用 | 舉報 | 管理

關註

hanyahui88

大眼的小眼

本版等級:

#9 得分:0回復於: 2014-10-28 11:45:36

好的 謝謝大家

  • 上一篇:如何挑選好的星月菩提?
  • 下一篇:師父風靈月影怎麽用 師父風靈月影使用教程
  • copyright 2024編程學習大全網