引言
沒有或者只有很少的數學知識,我能做乙個資料科學家嗎?
資料科學必需的數學工具有哪些?
有很多優秀的包可用於建立**模型或者資料視覺化。其中最常用的用於描述和**分析的一些包有:
多虧了這些包,任何人都可以建立起乙個模型或者實現資料視覺化。然而, 堅實的數學基礎對於修改你的模型讓你的模型效能更好更加可靠來說是十分必要的。建立模型是一回事,解釋模型得出可用於資料驅動的決策的有意義的結論又是另一回事。用這些包之前,理解每個包中的數學原理是很重要的。因為這樣你才不是簡單地只是把這些包作為乙個黑盒來使用。
案例學習:建立多重回歸模型
假設我們要建立乙個多重回歸模型。在此之前,我們需要問一下自己下面的這些問題:
我的資料集有多大?
我的特徵變數和目標變數是什麼?
什麼**特徵與目標變數關聯性最大?
什麼特徵是重要的?
我需要量化特徵值嗎?
我的資料集應該如何分成訓練集和測試集?
什麼是主成分分析(pca)
我應該用pca移除多餘特徵嗎?
我要如何評估我的模型?用r2,mse還是mae?
我應該如何提公升模型**的能力?
我應該使用正則化的回歸模型嗎?
什麼是回歸係數?
什麼是截距?
我應該使用諸如k近鄰回歸或者支援向量回歸這種非引數回歸模型嗎?
我的模型中有哪些超引數,如何對其進行微調以獲得效能最佳的模型?
沒有良好的數學背景,你就無法解決上面提到的問題。 最重要的是,在資料科學和機器學習中,數學技能與程式設計技能同等重要。 因此,作為有志於資料科學的人,你必須花時間研究資料科學和機器學習的理論和數學基礎。 你構建可應用於實際問題的可靠而有效的模型的能力取決於您的數學基礎。
現在我們來聊聊資料科學還有機器學習所必需的一些數學工具。
資料科學與機器學習必需的數學工具
1. 統計與概率
統計與概率學可用於特徵的視覺化,資料預處理,特徵轉換,資料插入,降維,特徵工程,模型評估等。
這裡是你需要熟悉的概念:均值,中位數,眾數,標準差/方差, 相關係數和協方差矩陣,概率分布(二項,泊松,正太), p-值, 貝葉斯理論(精確性,召回率,陽性**值,陰性**值,混淆矩陣,roc曲線), 中心極限定理, r_2值, 均方誤差(mse),a/b測試,蒙特卡洛模擬。
2. 多元微積分
大多數機器學習模型都是由帶有許多特徵或者**因子的資料集建立的。因此,熟悉多元微積分對於建立機器學習模型及其重要。
這裡是你需要熟悉的概念:多元函式;導數和梯度; 階躍函式,sigmoid函式, logit函式, relu(整流線性單元)函式;損失函式;函式作圖;函式最大最小值。
3. 線性代數
線性代數是機器學習中最重要的數學工具。 資料集通常都表示為矩陣。 線性代數常用於資料預處理,資料轉換,降維和模型評估。
這裡是你需要熟悉的概念:向量;向量的範數;矩陣;矩陣轉置;矩陣的逆;矩陣的行列式;矩陣的跡;點積;特徵值;特徵向量
4. 優化方法
大多數機器學習演算法通過最小化目標函式來建立**模型,由此學習應用於測試資料的權重以獲得**的標籤。
這裡是你需要熟悉的概念:損失函式/目標函式;似然函式;誤差函式;梯度下降演算法及其衍生(如隨機梯度下降)
總結與結論
想從事人工智慧方面,需要自學什麼?
學習人工智慧,你要先確定方向,方向很重要,選錯了,那你就是浪費時間,就算選對了,你可能也需要花很多很多時間去學習相關的知識。具體學什麼,你最好多查詢一些資料,多方面對比一下。就以學習人工智慧當中計算機視覺去闡述說明,需要學什麼。1 你首先需要學python語言,python語言是人工智慧當中必會的程...
想從事大資料工作,如何自學打基礎
海量資料分成兩塊,一是系統建設技術,二,海量資料應用。先說系統建設,現在主流的技術是hadoop,主要基於mapreduce的分布式框架。目前可以先學習這個。但是我的觀點,在分布式系統出來之前,主要是集中式架構,如db2,oracle。為什麼現在用分布式架構,那是因為現在集中式架構受限於io效能,出...
想從事資料分析崗位該學習Python還是大資料
首先,資料分析是大資料技術體系當中的乙個重要組成部分,所以未來要想在資料分析領域走得更遠,應該對大資料整體的技術體系有乙個全面的了解,涉及到資料採集 資料儲存 資料呈現 資料安全和資料應用等。python語言在資料分析領域的應用比較廣泛,採用機器學習的方式進行資料分析,往往也需要採用python語言...