機器學習裡面數學知識,到底對數學水平要求多高?

2021-09-22 16:46:35 字數 2588 閱讀 5547

過去幾個月裡,有不少人聯絡我,向我表達他們對資料科學、對利用機器學習技術探索統計規律性,開發資料驅動的產品的熱情。但是,我發現他們中有些人實際上缺少為了獲取有用結果的必要的數學直覺和框架。這是我寫這篇文章的主要原因。

最近,許多好用的機器和深度學習軟體變得十分易得,例如 scikit-learn,weka,tensorflow,等等。機器學習理論是與統計學、概率論、電腦科學、演算法等方面交叉的領域,它產生於從資料出發的學習迭代,試圖找出用於開發智慧型應用的隱藏的洞見。儘管機器學習和深度學習有無限的可能性,對這些技術有乙個全面的數學理解對理解演算法的內部工作機制、獲取好的結果是有必要的。

為什麼要關心數學?

為什麼機器學習中的數學很重要?這個問題的理由我想強調以下幾點:

選擇合適的演算法,要考慮的包括演算法準確性、訓練時間、模型複雜度、引數的數量和特徵數量。

選擇引數設定和驗證策略。

理解偏差與方差的權衡以確定欠擬合和過擬合。

預估正確的置信區間和不確定性。

你需要多高的數學水平?

在這裡給大家推薦乙個python系統學習q群:250933691有免費開發工具以及初學資料,(人工智慧,資料分析,資料視覺化,爬蟲,機器學習,神經網路)每天有老師給大家免費授課,歡迎一起交流學習。

試圖了解乙個例如機器學習這樣的跨學科領域,主要的問題是必要的數學知識的量,以及理解這些技術需要的數學水平。這個問題的答案是多方面的,取決於個人水平和興趣。對數學公式和機器學習的理論發展的研究一直在進行著,一些研究人員研究的是更先進的技術。以下我將說明我認為成為一名機器學習科學家/工程師需要的最低程度的數學,以及每個數學概念的重要性。

1. 線性代數

skyler speakman曾說:「線性代數式21世紀的數學」,我完全贊同該論述。在ml領域,線性代數無處不在。主成分分析(pca)、奇異值分解(svd)、特徵分解、lu分解、qr分解、對稱矩陣、正交化&標準正交化、矩陣運算、投射、特徵值&特徵向量、向量空間和規範等這些概念對理解機器學習的優化方法都是必須的。我認為線性代數很棒的一點是,網際網路上的資源非常多。我總是說傳統課堂要消亡,因為網際網路上有如此大量的資源。我最喜歡的線性代數課程是mit的gilbert strang教授的。

2. 概率論與數理統計

機器學習和數理統計並不是完全不同的領域。事實上,最近有人把機器學習定義為「在mac上做數理統計」。ml需要的數理統計基礎和概率論知識包括組合數學、概率規則&公理、貝葉斯定理、隨機變數、方差和均值、條件和聯合分別、標準分布(伯努利、二項、多項、統一和高斯)、矩母函式、最大似然估計(mle)、先驗和後驗、最大後驗估計(map)和取樣方法。

3. 多元微積分

必要的概念包括微積分、偏導數、向量函式、方向梯度、hessian、jacobian、laplacian和lagragian分布。

4. 演算法和複雜性優化

這對理解機器學習演算法的計算效率和可擴充套件性以及資料集的開發稀疏性很重要。需要資料結構(二叉樹、hashing、heap、stack等等)的知識,以及動態程式設計、隨機&次線性演算法、圖形、梯度/隨機趨勢、以及原對偶方法的知識。

5. 其他

這包括上述4個主要領域沒有涉及的其他數學概念。包括實分析與復分析(集合和序列、拓撲結構、度量空間、單值和連續函式、極限)、資訊理論(熵、資訊增益)、函式空間和流形。

下面是部分機器學習所需數學概念的一些mooc和學習資料:

khan academy』s linear algebra, probability & statistics, multivariable calculusandoptimization.

linear algebra – foundations to frontiers by robert van de geijn, university of texas.

joseph blitzstein – harvard stat 110 lectures

larry wasserman』s book – all of statistics: a concise course in statistical inference .

boyd and vandenberghe』s course on convex optimisation from stanford.

linear algebra – foundations to frontiers on edx.

udacity』s introduction to statistics.

最後,本文的主要目的是提供有關機器學習所需的重要數學概念的建議和有用的資源。但是,有些機器學習愛好者可能是數學初學者,會覺得這篇文章令人沮喪(這並不是我的目的)。對初學者來說,你並不需要先學好大量數學知識再開始做機器學習。正如這篇文章提到的,最基本的需要是資料分析,然後你可以在掌握更多技術和演算法的過程中繼續學習數學。在這裡給大家推薦乙個python系統學習q群:250933691有免費開發工具以及初學資料,(人工智慧,資料分析,資料視覺化,爬蟲,機器學習,神經網路)每天有老師給大家免費授課,歡迎一起交流學習。

機器學習 數學 機器學習涉及的數學知識

簡單總結 機器學習涉及的數學知識有 線性代數,概率論和統計學,多變數微積分,演算法和複雜優化,以及其他等。原文 在過去幾個月裡,有幾個人聯絡過我,說他們渴望進軍資料科學領域,使用機器學習 ml 技術探索統計規律,並打造資料驅動的完美產品。但是,據我觀察,一些人缺乏必要的數學直覺和框架,無法獲得有用的...

入門機器學習到底需要多少數學知識

還記得上個月的時候,準備學習機器學習的知識,想著線性回歸模型較簡單一些,那就從它開始吧。可是仔細一看裡面的知識包括矩陣 極大似然函式 求導等方面的知識,這些知識也只是大學的時候學習的,現在也早已還給了老師。於是開始搜尋入門機器學習需要哪些數學知識,應該怎麼去學,搜尋的結果表明,概率論統計 線性代數 ...

機器學習需要這些數學知識

放假在家想寫寫機器學習系列的文章,除夕前先來開個頭,後面會一直寫下去,搞機器學習演算法也有一年多了,體會多少還是有一些的,這裡記錄在部落格中,一來為自己後面的面試做點儲備,二來是為了分享,因為很多都是從大家的部落格中去學習的,所以這裡也要將我理解的新的內容反饋出來,大家一起學習進步。數學在計算機中的...