RM新时代网站-首页

0
  • 聊天消息
  • 系統(tǒng)消息
  • 評論與回復(fù)
登錄后你可以
  • 下載海量資料
  • 學(xué)習(xí)在線課程
  • 觀看技術(shù)視頻
  • 寫文章/發(fā)帖/加入社區(qū)
會員中心
創(chuàng)作中心

完善資料讓更多小伙伴認識你,還能領(lǐng)取20積分哦,立即完善>

3天內(nèi)不再提示

如何搞定做機器學(xué)習(xí)研究需要的數(shù)學(xué)?

MqC7_CAAI_1981 ? 來源:未知 ? 作者:胡薇 ? 2018-08-20 14:24 ? 次閱讀

機器學(xué)習(xí)需要多少數(shù)學(xué)基礎(chǔ)?這是很多初學(xué)者最關(guān)心的問題,答案也眾說紛紜。

有人說,概率論線性代數(shù)要預(yù)先精通;有人說,微積分要懂一點;也有人說,沒必要特地去補;甚至有人專門寫了繞開數(shù)學(xué)的深度學(xué)習(xí)入門教材……

斯坦福大學(xué)計算機系學(xué)生、斯坦福AI實驗室研究助理(RA)Vincent Chen,最近在硅谷最牛孵化器Y Combinator官方博客上發(fā)表的一篇文章,就專門深入探討了里這個問題。

Vincent想要說的是,具體問題具體分析。

他跟領(lǐng)域內(nèi)的很多工程師、研究人員、教育工作者,討論了這個問題,再加上自己的經(jīng)驗,得出了這樣的結(jié)論:解決不同問題,可能需要不同程度的直覺 (Intuition) ,所以首先要知道自己的目標是什么。

構(gòu)建產(chǎn)品和做研究,需要的數(shù)學(xué)就不太一樣。

不過,還是要先從大家都差不多的入門階段說起。

入門須知

熟悉線性代數(shù)/矩陣運算,是機器學(xué)習(xí)的軟性前提。也就是說,最好懂,不強制。

當然,學(xué)習(xí)數(shù)學(xué)最好的環(huán)境還是學(xué)校。沒有了學(xué)校里的壓力、競爭和交流,就要找其他方式來補充:學(xué)習(xí)小組、學(xué)習(xí)型午餐會都是不錯的形式。

想要在工作中學(xué)數(shù)學(xué),編程最好也會一點,它會成為你的學(xué)習(xí)工具。

要知道,在機器學(xué)習(xí)任務(wù)中,數(shù)學(xué)和代碼是交織在一起的。代碼需要數(shù)學(xué)上的直覺,甚至和數(shù)學(xué)符號的語法有共通之處。

舉個例子:練習(xí)手動實現(xiàn)損失函數(shù)(loss functions)或者優(yōu)化算法(optimization algorithm),就是真正理解背后概念的好方法。

再舉個比較實際的例子:在神經(jīng)網(wǎng)絡(luò)里手動為線性整流函數(shù)(ReLU)實現(xiàn)反向傳播,就涉及用微積分里的鏈式法則來有效計算梯度,而運用鏈式法則,需要用ReLU的梯度乘以一個導(dǎo)數(shù)。

最開始,要先將ReLU激活函數(shù)可視化:

計算梯度(就是看起來的斜率),要可視化一個階梯函數(shù),用指示函數(shù)表示:

現(xiàn)在的數(shù)據(jù)科學(xué)框架能直觀地把數(shù)學(xué)運算翻譯成可讀的代碼,NumPy就是其中之一。對于上面這個任務(wù),它就可以將激活函數(shù)(藍色曲線)用代碼表示出來:

relu = np.maximum(x, 0)

梯度(紅色曲線)也可以:

grad[x < 0] = 0

只有親自求了一遍導(dǎo)數(shù),才能理解這行代碼。

掌握基礎(chǔ)之后,就可以根據(jù)你的實際需求自定義學(xué)習(xí)方向了。

造機器學(xué)習(xí)產(chǎn)品需要的數(shù)學(xué)

作為一名學(xué)生,Vincent通過和多名機器學(xué)習(xí)工程師聊天,了解了他們在debug時最有用的數(shù)學(xué)知識。

總的來說,統(tǒng)計學(xué)和線性代數(shù)總是有用的,但面對不同的問題又有不同的需求。

那么,怎么確定該精修哪些數(shù)學(xué)知識呢?

首先,要定義你的系統(tǒng)。

想寫代碼為系統(tǒng)建模,可用的資源多得是。在構(gòu)建系統(tǒng)的過程中,要想著這些問題:

系統(tǒng)的輸入/輸出是什么?

怎樣準備適合系統(tǒng)的數(shù)據(jù)?

怎樣構(gòu)建特征、處理數(shù)據(jù)能讓模型更好地泛化?

怎樣為你的問題定義合理的目標?

然后,在你用到數(shù)學(xué)的時候,去學(xué)習(xí)它。

一頭扎進機器學(xué)習(xí)里,你就會發(fā)現(xiàn)自己會卡在某些步驟。卡住的時候,該查什么呢?你的權(quán)重合理嗎?你的模型為什么用這種損失就不收斂?

這時候,就需要對數(shù)據(jù)做假設(shè),換個方式約束優(yōu)化,或者換個算法試試。于是在這個建模或者debug過程里,你會發(fā)現(xiàn)懂數(shù)學(xué)對做決定有很大幫助,比如說要選擇損失函數(shù)和評價指標,數(shù)學(xué)就是個好工具。

這可以說是一種“按需”學(xué)習(xí)的方法了。

做機器學(xué)習(xí)研究需要的數(shù)學(xué)

如果是做研究的話,就需要廣泛的數(shù)學(xué)基礎(chǔ),來給你鋪路。

現(xiàn)在,很多研究都是在現(xiàn)有系統(tǒng)之上進行的,缺少對基礎(chǔ)的理解。

這樣還不夠,研究者應(yīng)該貢獻更基本的模塊。比如說,可以像深度學(xué)習(xí)教父Geoff Hinton提出的膠囊網(wǎng)絡(luò)(Capsule Networks)一樣,重新思考卷積神經(jīng)網(wǎng)絡(luò)(CNN)這種基本模塊。

要想在機器學(xué)習(xí)領(lǐng)域做出這樣的成就,就需要問一些基礎(chǔ)問題,也就需要對數(shù)學(xué)的深刻理解?!渡窠?jīng)網(wǎng)絡(luò)與深度學(xué)習(xí)》教材的作者Michael Nielsen稱之為“帶著玩心的探索”。

這個探索過程中,可能會在一個問題上卡幾個小時,可能需要換個角度去看問題。不過,只有這樣,科學(xué)家才能超越直觀想法和架構(gòu)的組合,提出深刻、有見地的問題。

和構(gòu)建產(chǎn)品不一樣的是,機器學(xué)習(xí)研究里的基礎(chǔ)思考不是“按需”進行的,想要以高級的數(shù)學(xué)框架所要求的廣度來思考、批判性地解決問題,需要耐心學(xué)習(xí)。

不要怕

總的來說,數(shù)學(xué)可能是有點可怕,你會卡在一個又一個地方。但是,這本來就是數(shù)學(xué)學(xué)習(xí)很重要的部分。

不要害怕。

實際上,數(shù)學(xué)好的人都要花好多時間來練習(xí),于是,他們對這種做數(shù)學(xué)“被卡住”的感覺就習(xí)以為常了。想要學(xué)好數(shù)學(xué),首先需要建立學(xué)生的心態(tài)。

想要習(xí)以為常,當然需要付出時間和努力,加油~

聲明:本文內(nèi)容及配圖由入駐作者撰寫或者入駐合作網(wǎng)站授權(quán)轉(zhuǎn)載。文章觀點僅代表作者本人,不代表電子發(fā)燒友網(wǎng)立場。文章及其配圖僅供工程師學(xué)習(xí)之用,如有內(nèi)容侵權(quán)或者其他違規(guī)問題,請聯(lián)系本站處理。 舉報投訴

原文標題:怎樣搞定機器學(xué)習(xí)里的數(shù)學(xué)?斯坦福高手教你具體問題具體分析

文章出處:【微信號:CAAI-1981,微信公眾號:中國人工智能學(xué)會】歡迎添加關(guān)注!文章轉(zhuǎn)載請注明出處。

收藏 人收藏

    評論

    相關(guān)推薦

    【下載】《機器學(xué)習(xí)》+《機器學(xué)習(xí)實戰(zhàn)》

    、謀發(fā)展的決定性手段,這使得這一過去為分析師和數(shù)學(xué)家所專屬的研究領(lǐng)域越來越為人們所矚目。本書第一部分主要介紹機器學(xué)習(xí)基礎(chǔ),以及如何利用算法進行分類,并逐步介紹了多種經(jīng)典的監(jiān)督
    發(fā)表于 06-01 15:49

    構(gòu)建機器學(xué)習(xí)產(chǎn)品必需的數(shù)學(xué)背景

    必讀我們該如何學(xué)習(xí)機器學(xué)習(xí)中的數(shù)學(xué)
    發(fā)表于 08-15 11:44

    如果只是應(yīng)用機器學(xué)習(xí),而不是研究需要哪些知識

    如果只是應(yīng)用機器學(xué)習(xí),而不是研究需要哪些知識?還用深入學(xué)習(xí)數(shù)字么
    發(fā)表于 08-30 14:51

    什么是數(shù)學(xué)?對思想和方法的基本研究有哪些?

    什么是數(shù)學(xué)?數(shù)學(xué)對思想和方法的基本研究有哪些?
    發(fā)表于 06-21 07:56

    什么是機器學(xué)習(xí)? 機器學(xué)習(xí)基礎(chǔ)入門

    中,我將概述機器學(xué)習(xí),它是如何工作的,以及為什么它對嵌入式工程師很重要。什么是機器學(xué)習(xí)?機器學(xué)習(xí)
    發(fā)表于 06-21 11:06

    一文匯總機器學(xué)習(xí)和Python(包括數(shù)學(xué))速查表

    新手學(xué)習(xí)機器學(xué)習(xí)很難,就是收集資料也很費勁。所幸Robbie Allen從不同來源收集了目前最全的有關(guān)機器學(xué)習(xí)、Python和相關(guān)數(shù)學(xué)知識的
    的頭像 發(fā)表于 07-04 08:25 ?2298次閱讀

    機器學(xué)習(xí)中所需要數(shù)學(xué)知識介紹

    數(shù)學(xué)和代碼在機器學(xué)習(xí)研究中通常是高度混合的。大多數(shù)情況下,代碼都是直接從數(shù)學(xué)邏輯中形成,并且能用代碼語法展示出
    的頭像 發(fā)表于 08-05 09:00 ?4298次閱讀

    機器學(xué)習(xí)需要數(shù)學(xué),調(diào)包就行?

    大部分機器學(xué)習(xí)從業(yè)者不需要過度的把時間精力放在數(shù)學(xué)上,而該用于熟悉不同算法的應(yīng)用場景和掌握一些調(diào)參技巧。好的數(shù)學(xué)基礎(chǔ)可以使你的模型簡潔高效,
    的頭像 發(fā)表于 09-30 10:38 ?5283次閱讀

    機器學(xué)習(xí)中應(yīng)用數(shù)學(xué)應(yīng)該要注意的幾點注記

    本章討論的主題是我覺得在應(yīng)用機器學(xué)習(xí)(和其他地方)中經(jīng)常假設(shè)的,但是很少詳細解釋。這項工作是針對學(xué)生誰采取了一些線性方法和分析的課程,但誰想看到一些技巧使用的研究人員討論更詳細一些。這里描述的
    發(fā)表于 11-16 16:17 ?3次下載

    如何用TensorFlow進行機器學(xué)習(xí)研究

    從理論上講,這幾乎是您使用 TensorFlow 進行機器學(xué)習(xí)研究所需要的全部內(nèi)容。
    的頭像 發(fā)表于 02-05 10:06 ?1962次閱讀
    如何用TensorFlow進行<b class='flag-5'>機器</b><b class='flag-5'>學(xué)習(xí)</b><b class='flag-5'>研究</b>

    機器學(xué)習(xí)所需的數(shù)學(xué)知識你能夠有效使用嗎

    開始機器學(xué)習(xí)之旅,需要什么層次的數(shù)學(xué)功底? 尤其是對于那些沒有學(xué)過數(shù)學(xué)和統(tǒng)計學(xué)的同學(xué)們來說,這個問題當前不甚清楚,在這篇文章中,我將要為那些
    的頭像 發(fā)表于 02-02 17:10 ?1961次閱讀

    為什么物聯(lián)網(wǎng)的未來需要依賴機器學(xué)習(xí)

    人工智能是對感知周圍世界、形成計劃并為實現(xiàn)目標而做出決策的智能體的研究。它的基礎(chǔ)包括數(shù)學(xué)、邏輯、哲學(xué)、概率論、語言學(xué)、神經(jīng)科學(xué)和決策理論。許多領(lǐng)域都屬于人工智能的范疇,如計算機視覺、機器人學(xué)、
    發(fā)表于 07-18 15:22 ?780次閱讀

    數(shù)據(jù)科學(xué)和機器學(xué)習(xí)需要的基本數(shù)學(xué)技能

    作為一切科學(xué)的基礎(chǔ),數(shù)學(xué)在數(shù)據(jù)科學(xué)領(lǐng)域也占據(jù)著重要地位。如果你是一名數(shù)據(jù)科學(xué)愛好者,一定想過這些問題: 我可以在幾乎沒有數(shù)學(xué)背景的情況下,成為一名數(shù)據(jù)科學(xué)家嗎?在數(shù)據(jù)科學(xué)中,哪些基本的數(shù)學(xué)技能是重要的?
    的頭像 發(fā)表于 07-06 09:39 ?2573次閱讀

    阿里云機器學(xué)習(xí)研究員對大規(guī)模機器學(xué)習(xí)實踐的見解

    近年來,機器學(xué)習(xí)技術(shù)的發(fā)展歸因于我們有極其龐大的數(shù)據(jù)用來訓(xùn)練算法。當企業(yè)需要落地大規(guī)模機器學(xué)習(xí)時,往往會面臨很多難題,如何解決這些問題?如何
    發(fā)表于 07-31 16:22 ?755次閱讀

    機器視覺需要哪些基礎(chǔ)_機器視覺行業(yè)發(fā)展前景

    學(xué)習(xí)機器視覺,需要具備以下知識和技能:   數(shù)學(xué)基礎(chǔ):機器視覺需要用到很多數(shù)學(xué)知識,如線
    發(fā)表于 03-12 17:06 ?2107次閱讀
    RM新时代网站-首页