在线观看www成人影院-在线观看www日本免费网站-在线观看www视频-在线观看操-欧美18在线-欧美1级

0
  • 聊天消息
  • 系統消息
  • 評論與回復
登錄后你可以
  • 下載海量資料
  • 學習在線課程
  • 觀看技術視頻
  • 寫文章/發帖/加入社區
會員中心
創作中心

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

3天內不再提示

機器學習中所需要的數學知識介紹

zhKF_jqr_AI ? 來源:未知 ? 作者:李倩 ? 2018-08-05 09:00 ? 次閱讀

編者按:Vincent Chen是斯坦福大學計算機科學專業的學生,同時也是斯坦福AI研究室的一名研究助理。本文他給我們帶來了在機器學習中所需要的數學知識介紹。以下是論智對原文的編譯。

很多沒有良好數學基礎或統計學的同學們總會問,到底什么樣的數學水平才能入門機器學習?目前還沒有確切的答案。

在這篇文章中,我會列出在進行機器學習產品搭建或學術研究時所需要的數學背景知識。這些都是我在與機器學習工程師、研究者、教授的談話中以及自己的經驗中總結出的。

為了構建數學的準備知識,首先我會提出與傳統課堂不同的思維模式和學習方法。接著,我會大致敘述在機器學習領域不同類型所需要的具體背景知識,大致涵蓋了高中的統計學和微積分,到最近的概率圖形模型(PGM)。最后,我希望你能找到自己所在領域所需要的數學知識。希望這篇文章對你有用!

關于被數學支配的恐懼

數學可以說是很多人的噩夢,包括工程師們。在開始之前,我想談談那些“數學好的人”到底有什么秘訣。

實際上,數學好的人只是有很多練習的機會而已,他們習慣了在研究數學的過程中遇到困難。最近的一項研究表明,與天生的能力相比,思維方式才是能否學好數學的重要因素。

但是,想達到上述境界仍需要花點時間和努力,這并不是與生俱來的能力。

開始上手

首先,作為基礎,我們希望你有基礎的線性代數、微積分以及概率論入門知識。如果有基礎編程知識更好,這可以作為在具體語境中學習數學的工具。之后,你可以根據具體領域調整學習。

如何在學校之外學習數學

學習的最佳途徑一定是泡在學校,如果脫離了學校環境,也就沒有嚴格的體系架構了,同時也不會有來自學霸的壓力,資源明顯不足。

所以在校外學習,我推薦學習小組或者研討會的形式。在研究機構中,可能有閱讀小組這類組織。有了基本組織框架,小組內可能會一起學習某本教材,并進行討論。

這種課外學習通常不會給日常工作帶來負擔,甚至在互相激勵的環境中還能讓你的本來工作更加高效。

數學和編程

數學和代碼在機器學習研究中通常是高度混合的。大多數情況下,代碼都是直接從數學邏輯中形成,并且能用代碼語法展示出數學表示法。其實現在一些數據科學框架(例如NumPy)就能直接將數學推理(例如矩陣或向量)轉換成可讀代碼,非常直觀高效。

所以這里鼓勵通過代碼夯實數學學習。例如,練習手動實現損失函數或優化的代碼可以進一步了解基礎概念。

這里舉一個通過代碼學習數學的例子:在你的神經網絡中為ReLU激活函數進行反向傳播。反向傳播是利用微積分中的規則來計算梯度的技術。為了在這一環境中實現,我們將upstream導數和ReLU的梯度相乘。

首先,我們對ReLU進行可視化:

為了計算梯度,你可能會對分段函數進行可視化,用指示函數表示如下:

用NumPy我們可以直觀地用代碼表示出激活函數(藍色曲線),其中x是輸入,relu是輸出:

relu = np.maximum(x, 0)

梯度(紅線)也是一樣,下面的等式描述了upstream梯度:

grad[x < 0] = 0

如果你自己事先沒有推導出梯度,那么這行代碼可能不好解釋。在我們的代碼中,將upstream梯度中的所有值都設為0,以滿足[h<0]的條件。從數學角度來說,這能高效地展示ReLU梯度的分段表示,當它們乘以upstream梯度時,可以將所有小于0的值變為0。

從這里我們可以看到,了解微積分的基礎概念讓我們對代碼有了清晰的思考。想了解神經網絡部署的完整過程,可以查看:pytorch.org/tutorials/beginner/pytorchwithexamples.html

用數學打造機器學習產品

為了完成這一部分,我與機器學習工程師探討了在debug的過程中都需要哪些數學知識。以下是工程師們的建議,如果你還不了解,沒有關系,以下部分可以為你提供具體的思路。

問:我想對高維客戶數據進行可視化,應該用什么聚類方法?

答:PCA vs tSNE,參考回答:stats.stackexchange.com/questions/238538/are-there-cases-where-pca-is-more-suitable-than-t-sne

問:為屏蔽虛假用戶信息,我應該如何調整閾值(假設置信水平在0.9—0.8)?

答:進行概率校準:scikit-learn.org/stable/modules/calibration.html

問:我想確定某一區域的衛星數據的偏差,應該用哪種方法?

答:答案不唯一,也許可以試試demographic parity?blog.mrtz.org/2016/09/06/approaching-fairness.html

總的來說,統計學和線性代數可以運用到很多問題中,但是想要得到滿意的結果通常需要更專業的方法。那么,我們該如何縮小數學學習的知識呢?

定義你的系統

在利用豐富的資源編寫代碼前,你需要為自己幾個問題:

系統的輸入和輸出分別是什么?

你該如何準備適合系統的數據?

如何創建特征或數據來幫助生成模型?

如何為你的問題定義一個合理的目標?

的確,定義系統很難,但是之后的工程管道搭建也很復雜。換句話說,創建機器學習產品需要做很多工作,但大部分不需要深入的數學知識。

資源

谷歌的研發工程師Martin Zinkevich曾寫過一篇機器學習實踐教程,感興趣的讀者可自行查閱:developers.google.com/machine-learning/guides/rules-of-ml/

按需學習

剛進入機器學習領域,你可能會發現麻煩不斷,尤其是在debug的過程中。當你被某個問題困住時,應該如何解決?權重合理嗎?為什么模型會在特殊損失值下收斂?衡量成功與否的正確方法是什么?這時,對數據進行質疑也許比較有用,可以試試不同的優化方法或者算法

通常你會發現這些在建模或debug過程中用到的數學在做決策時也很有用。Fast.ai的創始人之一Rachel Thomas就是這種“隨即可用”方法的支持者之一,在教學時,她發現讓學生對研究材料感興趣更加重要,在這之后再加入數學教育即可。

資源

課程:Computational Linear Algebra by fast.ai

地址:http://www.fast.ai/2017/07/17/num-lin-alg/ "Computational Linear Algebra by fast.ai"

YouTube:3blue1brown: Essence ofLinear AlgebraandCalculus

地址:https://www.youtube.com/channel/UCYO_jab_esuFRV4b17AJtAw "3blue1brown"

教材:Linear Algebra Done Rightby Axler

地址:http://linear.axler.net/ " Linear Algebra Done Right"

教材:Elements of Statistical Learningby Tibshirani et al.

地址:https://web.stanford.edu/~hastie/ElemStatLearn/ "Elements of Statistical Learning"

課程:Stanford’s CS229 (Machine Learning) Course Notes

地址:http://cs229.stanford.edu/syllabus.html#opt "Stanford’s CS229 (Machine Learning

機器學習研究中的數學

下面我將介紹在機器學習學術研究中所需要的數學思維類型。有些人不屑地認為,機器學習研究中那些即插即用的系統只不過是用更多的計算實現更高的性能。在一些領域里,研究人員仍然懷疑實證方法缺少數學的嚴謹。

很多人擔心,研究領域可能在現有系統和假設上并沒有擴展對領域的基礎了解。研究者們需要提供新的基礎模塊,用于生成全新的觀點和目標。例如,就像Geoff Hinton在他的膠囊網絡論文中提到的,重新思考用于圖像分類的神經網絡模塊。

在機器學習研究中,你不可能學習所有知識,你需要做的就是關注自己感興趣的領域,切勿一味追求熱點。

機器學習研究領域包羅萬象,但是在公平性、可解釋性和可用性方面都有著許多難題。和其他科學研究的準則一樣,基礎思考并不是現成的,它需要在具備高水平數學框架的前提下耐心思考。

資源

博客:Do SWEs need mathematics? by Keith Devlin

地址:https://www.maa.org/external_archive/devlin/devlin_10_00.html "Do SWEs need mathematics? by Keith Devlin"

reddit討論:Confessions of an AI Researcher

地址:https://www.reddit.com/r/MachineLearning/comments/73n9pm/d_confession_as_an_ai_researcher_seeking_advice/ "Confessions of an AI Researcher"

博客:How to Read Mathematics by Shai Simonson and Fernando Gouvea

地址:http://www.people.vcu.edu/~dcranston/490/handouts/math-read.html "How to Read Mathematics by Shai Simonson and Fernando Gouvea"

論文:NIPS and ICML recent conference papers

文章:A Mathematician’s Lament by Paul Lockhart1

地址:https://www.maa.org/external_archive/devlin/LockhartsLament.pdf "A Mathematician’s Lament by Paul Lockhart1"

機器學習的民主化

雖然這篇并未涉及太過高深的概念,但很多機器學習論文仍然充滿著復雜的術語。作為學生,你可以試著將高深的論文分解,記錄自己的理解,通過博客等形式表達出來。在這一點上可以借鑒distill.pub的方式。

結語

希望本文能成為你在機器學習領域開始數學學習的起點。

不同問題需要不同水平的知識來解決,我建議先弄明白你的目標是什么再著手進行學習。

如果你想搭建一款產品,可以找尋同伴或在學習小組中進行。

在研究領域,廣泛的數學基礎可以助你走的更遠。

數學(尤其是研究領域的數學)的確有些令人頭大,但是被難住也是學習的一部分啊!

祝你好運!

聲明:本文內容及配圖由入駐作者撰寫或者入駐合作網站授權轉載。文章觀點僅代表作者本人,不代表電子發燒友網立場。文章及其配圖僅供工程師學習之用,如有內容侵權或者其他違規問題,請聯系本站處理。 舉報投訴
  • 神經網絡
    +關注

    關注

    42

    文章

    4779

    瀏覽量

    101174
  • 機器學習
    +關注

    關注

    66

    文章

    8439

    瀏覽量

    133087

原文標題:資源 |不要再問我什么數學水平才能學機器學習啦

文章出處:【微信號:jqr_AI,微信公眾號:論智】歡迎添加關注!文章轉載請注明出處。

收藏 人收藏

    評論

    相關推薦

    學單片機需要很深的數學知識嗎?

    學單片機需要很深的數學知識嗎?我是大一的想學可以嗎有哪位大神能指個方向 該從哪學起? 謝謝!
    發表于 11-11 12:09

    工程電磁場應具備哪些數學知識

    我是一名大二學生,專業是電氣工程及其自動化,最近學習了工程電磁場,發現有許多數學知識是高等數學中未有的,希望各位學習過的大師們,幫幫我我還應該學習
    發表于 03-30 18:49

    【下載】《機器學習》+《機器學習實戰》

    讀者, 本書附錄給出了一些相關數學基礎知識簡介.目錄:全書共16 章,大致分為3 個部分:第1 部分(第1~3 章)介紹機器學習的基礎
    發表于 06-01 15:49

    BP神經網絡的基礎數學知識分享

    一文看懂BP神經網絡的基礎數學知識
    發表于 06-16 07:14

    高一數學知識點總結

    高一數學知識點總結高一數學知識點總結高一數學知識點總結
    發表于 02-23 15:27 ?0次下載

    高二數學知識點總結

    高二數學知識點總結高二數學知識點總結高二數學知識點總結
    發表于 02-23 15:27 ?0次下載

    一文匯總機器學習和Python(包括數學)速查表

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

    如何自學人工智能?機器學習詳細路徑規劃

    綜述,機器學習的自學簡單來說分為三個步驟 前期:知識儲備包括數學知識機器學習經典算法
    的頭像 發表于 08-04 11:36 ?8904次閱讀
    如何自學人工智能?<b class='flag-5'>機器</b><b class='flag-5'>學習</b>詳細路徑規劃

    機器學習所需數學知識你能夠有效使用嗎

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

    本科生怎樣入門機器學習

    此處我們暫且不論文科生,理科生工科生課程大多在大一會有高等數學和線性代數兩門課,機器學習大約需要多少數學知識呢?
    的頭像 發表于 05-05 16:50 ?2332次閱讀

    深度學習數學基礎(三)之簡單數學

    從本文開始,之后的三四篇我們都將沐浴在數學的海洋里,拼命地撲騰,這個系列我會盡力以通俗易懂的方式來講述這些數學知識
    的頭像 發表于 12-10 19:13 ?908次閱讀

    機器視覺需要哪些基礎_機器視覺行業發展前景

    學習機器視覺,需要具備以下知識和技能:   數學基礎:機器視覺需要用到很多
    發表于 03-12 17:06 ?2223次閱讀

    機器學習理論:k近鄰算法

    KNN(k-Nearest Neighbors)思想簡單,應用的數學知識幾乎為0,所以作為機器學習的入門非常實用、可以解釋機器學習算法使用過
    的頭像 發表于 06-06 11:15 ?694次閱讀
    <b class='flag-5'>機器</b><b class='flag-5'>學習</b>理論:k近鄰算法

    人工智能需要哪些專業知識

    數學是人工智能的另一個重要基礎學科。熟練掌握線性代數、微積分和概率論等數學知識,可以幫助我們更好地理解人工智能算法以及模型背后的數學原理。此外,人們還需要了解
    的頭像 發表于 08-13 13:58 ?2682次閱讀

    自動控制原理需要哪些基礎知識

    基礎數學知識學習自動控制原理的前提。這些數學知識包括: 線性代數:矩陣運算、特征值和特征向量、線性空間等概念。 微積分:導數、積分、微分方程等基本概念和運算方法。 概率論與數理統計:隨機變量、概率分布、期望、
    的頭像 發表于 06-11 11:08 ?3386次閱讀
    主站蜘蛛池模板: 天天摸夜夜爽 | 天天干天天射天天爽 | 日日夜夜天天操 | 中文字幕在线永久在线视频2020 | 欧美色欧美亚洲高清在线观看 | 成人国产一区二区 | 欧美操操操操 | 一级毛片在播放免费 | 国产成在线观看免费视频 | 国产亚洲情侣久久精品 | 手机在线观看毛片 | 777kkk亚洲综合欧美色老头 | 色噜噜狠狠狠色综合久 | 清纯唯美亚洲综合一区 | 成人免费精品视频 | 伊人网站在线 | 一区二区三区视频在线 | 成人18视频拍拍拍拍拍拍 | 在线观看免费精品国产 | 久久婷婷成人综合色 | 日本丝瓜着色视频 | 大尺度很肉污的古代小说 | 4438x成人全国最大 | 一级特黄aa大片免费 | 免费国产不卡午夜福在线观看 | 国产福利在线免费 | 欧美一级高清片在线 | 国模一区二区三区私啪啪 | 在线a人片免费观看不卡 | xxxx日本69xxxxx | 欧美黑人xxxx猛牲大交 | 有一婷婷色 | 伊人网在线免费视频 | 欧美a视频 | 男人操女人免费 | 天堂在线观看中文字幕 | 欧美专区欧美吧 | 成人欧美一区二区三区的电影 | 成人黄色在线网站 | 免费特黄一区二区三区视频一 | 天天干天天插 |