數據分析學習:入數據科學大坑,我需要什麼樣的數學水平?

2020-12-05 TechWeb

 

作為一門基礎性學科,數學在數據科學和機器學習領域都發揮著不可或缺的作用。數學基礎是理解各種算法的先決條件,也將幫助我們更深入透徹地了解算法的內在原理。所以,本文作者闡釋了數據科學和機器學習為何離不開數學,並提供了統計學與概率論、多變量微積分、線性代數以及優化方法四個數學分支中需要熟悉的一些數學概念。

本文的作者是物理學家、數據科學教育者和作家 Benjamin Obi Tayo 博士,他的研究興趣在於數據科學、機器學習、AI、Python 和 R 語言、預測分析、材料科學和生物物理學。

 

數據科學和機器學習離不開數學

如果你是一個數據科學愛好者,則大概會產生以下兩個疑問:

我幾乎沒有數學背景,那麼能成為數據科學家嗎? 哪些基本的數學技能在數據科學中非常重要呢?

我們都知道,數據科學離不開各式各樣的擴展包。並且,現在有很多性能強大的包可以用來構建預測模型或者用來生成可視化數據。如下列舉了用於描述性和預測性分析的一些最常見包:

Ggplot2 Matplotlib Seaborn Scikit-learn Caret TensorFlow PyTorch Keras

得益於以上這些擴展包,任何人都可以構建模型或者生成可視化數據。但與此同時,要優化模型進而生成性能最佳的可靠模型,擁有強大的數學背景也是很有必要的。

也就是說,構建模型只是一方面,另一方面還需要對模型進行解釋,得出有意義的結論,這樣才能更好地做出數據驅動的決策。

最後,在使用這些包之前,你需要理解每個包中蘊含的數學基礎,這樣才不會只把這些包當作黑盒工具(black-box tool)。

案例分析:構建一個多元回歸模型

假設我們要構建一個多元回歸模型,那麼需要事先問自己幾個問題:

數據集有多大? 特徵變量和目標變量是什麼? 哪些預測特徵與目標變量關聯最大? 哪些特徵比較重要? 是否應該擴展特徵? 數據集應該如何劃分成訓練集和測試集? 主成分分析(principal component analysis, PCA)是什麼? 是否應該使用 PCA 刪除多餘特徵? 如何評估模型?用 R2 值、MSE 還是 MAE? 如何提升模型的預測能力? 是否使用正則化回歸模型(regularized regression model)? 回歸係數是多少? 截距是多少(intercept)? 是否使用像 K 近鄰回歸(KNeighbors regression)或者支持向量回歸(support vector regression)這樣的無參數回歸模型? 模型中的超參數是多少?如何調整超參數使模型性能達到最佳?

很明顯,如果沒有良好的數學背景,你將無法解決上述問題。因此,在數據科學和機器學習中,數學技能和編程技能一樣重要,這很關鍵。

作為一個數據科學的推崇者,投入時間來學習數據科學和機器學習中的理論基礎和數學基礎很有必要。毫不誇張地說,你所構建的可靠有效模型能否用於解決現實世界的問題,這也將取決於你的數學技能有多好。

接下來討論一下數據科學和機器學習中一些必要的數學技能。

數據科學和機器學習中必要的數學技能

數學包羅萬象,任何人都不可能門門精通。所以,在數據科學和機器學習研究中,我們可以根據自身所在的具體領域、手頭的具體工作或者使用的具體算法來有側重地學習對應的數學技能。

1. 統計學與概率論

統計學和概率論可用於可視化變量、數據預處理、特徵變換、數據插補、降維、特徵工程和模型評估等等。

以下是需要熟悉的一些統計學與概率論概念:

平均數、中位數、眾數、標準差 / 方差; 相關係數和協方差矩陣、概率分布(二項分布、泊松分布和正態分布); p 值、貝葉斯定理(精度、召回率、正預測值、負預測值、混淆矩陣和 ROC 曲線)、中心極限定理 ;R_2 值、均方誤差(MSE)、A/B 測試、蒙特卡羅模擬。

2. 多變量微積分(Multivariable Calculus)

大多數機器學習模型是使用包含幾種特徵或預測變量的數據集來構建的。因此,熟悉多變量微積分對於構建機器學習模型非常重要。

以下是你需要熟悉的多變量微積分數學概念:

多元函數、導數和梯度、階躍函數; Sigmoid 函數、Logit 函數、ReLU 函數、損失函數; Plot 函數繪製、函數最小值和最大值。

3. 線性代數

線性代數是機器學習中最重要的數學技能,一個數據集可以被表示為一個矩陣。線性代數可用於數據預處理、數據轉換以及降維和模型評估。

以下是你需要熟悉的線性代數概念:

向量、向量範數; 矩陣、矩陣的轉置、矩陣的逆、矩陣的行列式、矩陣的跡、點積、特徵值、特徵向量。

4. 優化方法

大多數機器學習算法通過最小化目標函數的方法來執行預測建模。

以下是你需要熟悉的優化數學概念:

損失函數 / 目標函數、似然函數、誤差函數、梯度下降算法及其變體。

總之,作為一個數據科學的推崇者,應該時刻謹記,理論基礎對構建有效可靠的模型至關重要。因此,你應該投入足夠的時間去研究每一種機器學習算法背後的數學理論。

原文連結:

https://medium.com/towards-artificial-intelligence/how-much-math-do-i-need-in-data-science-d05d83f8cb19

 

相關焦點

  • 什麼樣的人適合學習數據分析?小白如何自學數據分析?
    主圖時下的大數據時代與人工智慧熱潮,有很多人對數據分析感興趣,卻下手無從。零基礎小白剛接觸數據分析會有這樣的疑問,沒有數學基礎,可以學習數據分析嗎?如何找到一份數據分析的實習呢?什麼叫數據分析?什麼樣的人適合學習數據分析?應該學習哪些內容?需要用到哪些學習資料?自學數據分析如何安排時間?不是相關專業,如何打造簡歷?
  • 資源| 自學數據科學&機器學習?19個數學和統計學公開課推薦
    如果你正面臨著這樣的難題,不要驚慌,現在我已經把這項艱辛的工作幫你完成了。這份列表推薦了來自 Coursera、edX、Udemy 和 Udacity 的最受歡迎的數據科學數學基礎公開課。這份列表經過了精心的編排,讓你可以結構化地自學數據科學所需的數學概念。現在就開始學習吧!什麼樣的課程適合你?
  • 在數據科學領域中,你需要多少數學知識?
    引言如果你有心學習數據科學,那麼你一定會在腦海中想過下面的問題:沒有或者只有很少的數學知識,我能做一個數據科學家嗎?數據科學必需的數學工具有哪些?有很多優秀的包可用於建立預測模型或者數據可視化。建立模型是一回事,解釋模型得出可用於數據驅動的決策的有意義的結論又是另一回事。用這些包之前,理解每個包中的數學原理是很重要的。因為這樣你才不是簡單地只是把這些包作為一個黑盒來使用。II. 案例學習:建立多重回歸模型假設我們要建立一個多重回歸模型。在此之前,我們需要問一下自己下面的這些問題:">我的數據集有多大?
  • 100天學習計劃|一份詳實的數據科學指南
    我遇到過許多對學習數據科學充滿熱情的人,但僅僅幾周後,他們就放棄了學習。我想知道為什麼一個人對一個領域如此熱情卻不去追求它?如何學習數據科學要成為一名數據科學家,你需要從以下條目中學到足夠多的知識: Python或R編程的基礎知識如果選擇Python,那麼像panda和Numpy這樣的庫可視化庫,如ggplot、Seaborn和Plotly。統計數據SQL編程數學,尤指線性代數和微積分在下面的視頻中,我提到了學習數據科學的分步指南。
  • 女生是否適合學習數據科學與大數據技術
    首先,在當前的大數據時代背景下,女生選擇學習數據科學與大數據技術是不錯的選擇,未來也有較多的就業機會。從技術體系結構來看,數據科學與大數據技術涉及到數學、統計學和計算機三大塊內容,總體上的知識量和學習難度都相對比較大,所以女生選擇大數據方向之前,應該首先考慮一下自己的知識結構和學習能力。另外,學習大數據知識還需要進行大量的實踐,而實踐環節還涉及到很多行業領域的知識,包括經濟學、社會學、醫學等等,所以學習大數據技術還是比較辛苦的。
  • 學習Python數據分析,需要幾個階段?
    Python這種特性稱為「偽代碼」,它可以使你只關心完成什麼樣的工作任務,而不是糾結於Python的語法。 因此,學習Python對於有志於向大數據分析崗位發展的數據分析師來說,是一件非常節省學習成本的事。 Python的眾多優點讓它成為受歡迎的程序設計語言之一,國內外許多公司也已經在使用Python,例YouTube,Google,阿里雲等等。
  • 乾貨滿滿|不容錯過的數據科學入門數學指南
    作者 | Randall Hall 來源 | 機器之心 想要入行數據科學而又不知如何開始嗎?先看看這篇使用的數據科學入門數學指南吧!數學就像一個章魚:它的「觸手」可以觸及到幾乎所有學科。雖然有些學科只是沾了點數學的邊,但有些學科則被數學的「觸手」緊緊纏住。數據科學就屬於後者。如果你想從事數據科學工作,你就必須解決數學問題。如果你已經獲得了數學學位或其它強調數學技能的學位,你可能想知道你學到的這些知識是否都是必要的。而如果你沒有相關背景,你可能想知道:從事數據科學工作究竟需要多少數學知識?在本文中,我們將探討數據科學意味著什麼,並討論我們到底需要多少數學知識。
  • 成為偉大的數據科學家需要掌握的基本數學
    數學是任何當代科學學科的基石。現代數據科學的幾乎所有技術,包括機器學習,都有深厚的數學基礎。毫無疑問,想要成為一個頂級的數據科學家,需要在各個方面都具有優勢如編程能力、一定的商業智慧、以及獨特的分析能力等。但了解「引擎蓋下的機械原理」總是有好處的。對算法背後的數學機制有一個深入的理解,將使你在同行中具有優勢。
  • 如果能重來,我選擇這樣學習數據科學……
    我花了大量的時間了解應該從哪裡開始,首先學習什麼,以及利用哪些資源。在過去的兩年裡,筆者學到了一些希望有人能早早教導我的事情,比如應該首先關注編程還是統計,應該利用什麼資源學習新技能,以及如何學習新技能等等。因此,本文旨在為那些正在數據科學道路上迷茫徘徊的人提供一些指導和見解。一名有抱負的數據科學家通常會希望能完全理解各種機器學習算法、數據科學思想等的概念和細節。
  • 數據科學50人·吳明輝:用數學思維,打破數據悖論
    於是我就選擇了全國最好的北大數學學院,現在回過頭來看,真的很感謝當年的選擇。」在北大數學系,《高等代數》《解析幾何》以及《數學分析》是吳明輝大一時必修的三門課程。這是數學中最基礎的三門課,分別講了時間、空間和變化的概念,而這也是數學研究的三大主要領域。「《高等代數》就是算數,算數是怎麼來的呢?其實最開始是為了算時間。
  • 2020數據分析崗位報告:數據分析師需要哪些能力?
    數據分析崗位報告:數據分析師需要哪些能力?看起來很複雜對吧,不用擔心,我將在後面的部分分解它。我之所以在以上部分中包含許多技能,是因為數據科學涉及的領域非常廣泛。儘管我們能夠在上面的部分中描述一些頂級技能,但它仍然不能滿足本文分析的目的。讓我們深入了解一下這個趨勢。3.5.1. 必備技能?
  • 關於數據科學中數學和統計學的完全指南
    數學和統計學對學習數據科學至關重要,因為這些學科構成了所有機器學習算法的基礎。成為一名數據科學家,除了對程式語言要有很好的了解,還必須要掌握機器學習算法、數據驅動方法。但數據科學並不只涉及這些領域。在本文中,您將了解數學和統計學對數據科學的重要意義以及如何將其用於建立機器學習模型。
  • 高考志願填報:數據科學與大數據技術專業適合什麼樣的考生報考?
    今天我們來介紹的是數據科學與大數據技術專業。一、專業基本信息數據科學與大數據技術,是2016年我國高校設置的本科專業,專業代碼為080910T,修業年限四年,畢業生授予的是工學學士學位。二、專業學習內容Python程序設計、Linux伺服器配置與管理、計算機網絡、資料庫原理及應用、數據結構、面向對象程序設計(Java)、並行計算與分布式計算、Hadoop核心技術與實戰、數據挖掘與分析、數據可視化、機器學習與模式識別、大數據安全分析、大數據實踐等課程三、專業相關信息1、"數據科學與大數據技術",顧名思義,大數據,數據,就是告訴我們
  • 被稱為21世紀最性感的工作,我們要如何學習「數據科學」?
    說到數據科學,我們腦海裡可以立即聯想到一些相關的學科如基礎的計算機科學,網絡工程,編程,和數學。實際上「數據科學」通常被認為是下列學科的組合:計算機科學、統計、專業領域。3.數據科學應用1 / 2:完成以業務為中心的端到端數據科學項目。這一主題在最後幾年可能應該重複兩次。它應該非常重要地包括連接到真實的資料庫和在生產環境中部署模型,而不僅僅是對靜態數據集的特殊分析。
  • 大數據分析學習之路
    從事數據分析工作的前提就會需要懂業務,即熟悉行業知識、公司業務及流程,最好有自己獨到的見解,若脫離行業認知和公司業務背景,分析的結果只會是脫了線的風箏,沒有太大的使用價值。2、懂管理。一方面是搭建數據分析框架的要求,比如確定分析思路就需要用到營銷、管理等理論知識來指導,如果不熟悉管理理論,就很難搭建數據分析的框架,後續的數據分析也很難進行。
  • 數據科學邊界:數據不能解決什麼?
    如何構建學科體系數據世界觀數據分析整體框架問題分析/數據預處理/數據預分析數據分析核心:建模模型空間概述數據科學邊界(這篇文章)……數據科學 = 數學/統計學 + 科學方法論 + 計算機 (+ 業務經驗)我們在剛剛接觸一個新奇的事物的時候,總有一種衝動:這種東西可以改變全宇宙。比如:我們剛接觸區塊鏈的時候,啊,區塊鏈就要改變全宇宙了。
  • 喬治城大學數據科學與分析碩士項目介紹
    數據科學與分析碩士(Master of Science in Data Science and Analytics) 屬於專業碩士項目,課程包括大數據和雲計算,機器學習和深度學習,交互式和複雜可視化方法,高級資料庫,自然語言處理,高等數學和統計建模等。使用的語言包括R,Python和SQL。
  • 大數據時代!香港數據科學(Data Science)專業院校推薦
    大數據時代的到來,為各個科學領域帶來了新的改革。  在時代高速發發展的今天,大數據時代已經正式來臨,分析大數據可以幫助企業更好的進行產品指定與推廣規劃,從而最大程度的幫助企業盈利,所以各個大公司對於數據科學專業人才可謂是求知若渴。
  • 解讀數據挖掘與數據科學之間鮮為人知的區別
    因此需要了解數據挖掘與數據科學之間的重要區別。什麼是數據科學?數據科學是一門專注於數據分析並在此基礎上取得最佳解決方案的科學。在以往,這些問題是由數學和統計學專家來處理的。隨著人工智慧的進步得到了更廣泛的應用,這使得將優化和信息學納入分析方法成為可能。
  • 不學好數學也想當數據科學家?不存在的
    為什麼數據科學依舊離不開數學?我們又需要會哪些數學知識?讓我們聽這位大咖一一道來。作為一名技術開發工程師,我的日常工作內容主要涉及半導體物理,矽製造過程的有限元模擬,以及電子電路理論。當然,這其中會涉及一些數學,但令人難過的是,我並沒有用到過數據科學家們所需要的那些數學。