這就是微積分的強大之處——數據可視化中的運用

2020-12-09 老胡說科學

微積分是一種以純粹形式發展起來的抽象理論。

微積分,更確切地說是分析學,是研究數量變化率(可以解釋為曲線的斜率)和物體的長度、面積和體積的數學分支。微積分分為微分學和積分學。

微分
積分

微積分這個詞來自拉丁語,意思是「小石頭」,因為這就像通過觀察小塊來理解一些東西。

微積分是數學的一個固有領域,尤其是在許多機器學習算法中,你不能想要跳過這門課來學習數據科學的本質。

微分學把一個東西切成小塊來研究它是如何變化的。

積分學把這些小塊連接起來,計算出有多少。

我希望你們已經理解了微分和積分的基礎知識。數據科學家幾乎對每一個模型都使用微積分,梯度下降是機器學習中微積分的一個基本但很好的例子。

梯度下降法

梯度測量的是如果你稍微改變一下輸入,函數的輸出會改變多少。

假設你有一個球和一個碗。無論你把球放在碗裡的什麼地方,它最終都會落在碗的底部。

正如你所看到的,這個球沿著一條直到碗底的路徑運動。我們也可以說,球是下降在碗的底部。從圖中可以看出,紅色的線是球的梯度,藍色的線是球的路徑,隨著球的斜率的下降,這被稱為梯度下降。

在我們的機器學習模型中,我們的目標是降低輸入數據的成本。成本函數用於監視ML模型預測中的錯誤。所以最小化這個,基本上意味著得到可能的最小誤差值或者增加模型的準確性。簡而言之,我們在調整模型的參數(權重和偏差)的同時,通過迭代訓練數據集來提高準確性。

讓我們假設我們有一個用戶數據集,其中包含用戶在某些主題中的標記和他們的職業。我們的目標是通過考慮一個人的標記來預測他的職業。

在這個數據集中,我們有張三和李四的數據。根據張三和李四的參考數據,我們必須預測王二麻的職業。

現在把學科中的分數看作是一個梯度,把職業看作是底部的目標。你必須優化你的模型,使它在底部預測的結果應該是準確的。使用張三和李四的數據,我們將創建梯度下降,並調整我們的模型,如果我們輸入張三的標記,那麼它應該在梯度的底部預測醫生的結果,對於李四也是如此。這是我們訓練過的模型。現在,如果我們給我們的模型打分數,那麼我們可以很容易地預測這個職業。

理論上這就是梯度下降法,但是要計算和建模,梯度下降法需要微積分,現在我們可以看到微積分在機器學習中的重要性。

首先讓我們從你現在知道的話題開始。線性代數。讓我們先用線性代數和它的公式來建立我們的模型。

我們可以在這個模型中使用的基本公式是y = m*x +b,其中y =預測變量,m =斜率,x =輸入,b= y截距。

解決這類問題的標準方法是定義一個誤差函數(也稱為成本函數)來度量給定行的「良好」程度。此函數將成(m,b)對出現,並根據該行與數據的匹配程度返回一個錯誤值。為了計算給定線的誤差,我們將遍歷(x,y)數據集中的每個點,並對每個點的y值與候選線的y值之間的平方距離求和(在處計算mx + b)。通常將此距離平方以確保它為正,並使我們的誤差函數可微。

更適合我們的數據的行(其中更好是由我們的錯誤函數定義的)將導致更小的誤差。如果我們最小化這個函數,我們將得到數據的最佳行數。由於誤差函數包含兩個參數(m和b),我們可以把它想像成一個二維曲面。這是我們的數據集的樣子:

這個二維空間中的每個點代表一條直線。函數在每個點處的高度是該行的誤差。您可以看到,有些行產生的誤差比其他行小(例如,以配合我們的數據)。當我們運行梯度下降搜索時,我們將從這個表面的某個位置開始,然後向下移動,找到誤差最小的直線。

在微積分的精髓視頻中你們已經看到,計算斜率,我們使用微分。

函數z=f(x,y)的圖像,z=f(x,y)是一個曲面,固定y=by=b得到一條曲線(綠色表示)。偏導數fx(a,b)fx(a,b)是在x = ax = a處該曲線的切線斜率。要對這個誤差函數運行梯度下降,我們首先需要計算它的梯度。梯度就像指南針一樣,總是指向下坡。為了計算它,我們需要微分誤差函數。因為我們的函數是由兩個參數(m和b)定義的,所以我們需要分別計算它們的偏導數。這些導數是:

現在,我們擁有運行梯度下降所需的所有工具。我們可以將搜索初始化為從任意對m和b值(即任意線)開始,然後讓梯度下降算法沿誤差函數向最佳線行進。每次迭代都會更新,m並b會產生一條比上一次迭代產生的錯誤略低的錯誤行。使用上面的兩個偏導數來計算每次迭代的進入方向。

學習率變量控制我們在每次迭代中向下走的步的大小。如果我們邁出太大的一步,我們可能會超過最小的一步。然而,如果我們採取小的一步,它將需要許多迭代達到最小。

雖然我們對學習梯度下降法有了初步的了解,但還有一些我們無法討論的概念值得注意。其中包括:

凸性-在我們的線性回歸問題中,只有一個最小值。我們的誤差曲面是凸的。不管我們從哪裡開始,最終都會得到絕對最小值。一般來說,情況不一定如此。梯度搜索可能會陷入局部極小值的問題。有幾種方法可以緩解這種情況(例如,隨機梯度搜索)。

收斂-我們沒有討論如何確定何時搜索找到一個解決方案。這通常是通過在錯誤迭代到迭代中尋找小的變化來完成的(例如,梯度接近於零)。

多元微積分

後面我們將深入研究多元變量演算,它將教我們如何在實際生活中最終獲得的多元數據演算。

相關焦點

  • 微積分的運用
    微積分應用在普羅大眾的生活中真的像被打入冷宮一般難以發光發熱,就像下面這則笑話在1972年秋天
  • 這16個數據可視化案例,驚豔了全球數據行業
    數據可視化可以幫你更容易的解釋趨勢和統計數據。  數據是非常強大的。當然,如果你能真正理解它想告訴你的內容,那它的強大之處就更能體現出來了。  通過觀察數字和統計數據的轉換以獲得清晰的結論並不是一件容易的事。必須用一個合乎邏輯的、易於理解的方式來呈現數據。  談談數據可視化。
  • 為什麼可視化數據有一定的誤差值?
    已經討論得太多太多,但是還是有很多值得聊一聊的,比如,大數據信息可視化,這是 大數據應用 於實際中必須要解決的問題。因此,在整個大數據開發利用的閉環中,讓大數據能夠被感知並看到,是必不可少的一環。目前正在貴陽觀山湖燈會上所運用的大數據人力地圖,即是大 數據可視化 的具體體現,可視化的最終目標就是讓每一個人都能看到大數據到底是什麼。
  • 淺談數據可視化
    我主要進行了少量數據處理和系統可視化部分,在這個過程中,覺得數據可視化是一個非常迷人的話題,這過程中也了解了很多相關的資料,學習了一些基礎的工具,在這裡分享給大家,也是為自己做一個整理和記錄。1、什麼是數據可視化?
  • 企業為什麼要做數據可視化系統
    比較類圖表顯示值與值之間的不同和相似之處。使用圖形的長度、寬度、位置、面積、角度和顏色來比較數值的大小, 通常用於展示不同分類間的數值對比,不同時間點的數據對比。 柱形圖有別於直方圖,柱狀圖無法顯示數據在一個區間內的連續變化趨勢。柱狀圖描述的是分類數據,回答的是每一個分類中"有多少?"這個問題。 需要注意的是,當柱狀圖顯示的分類很多時會導致分類名重疊等顯示問題。
  • 在數據可視化中,最容易犯的十大錯誤
    使用數據可視化來進行數據分析的過程是「獲取無聊的平面數據,並通過可視化將其變為現實。」 但是,在數據分析的過程中很多人開始敏銳地意識到可視化有可能會變成讓數據以錯誤的方式呈現,甚至有的人開始提出:「可視化經常被用來擾亂數據分析過程。」
  • 從數據可視化到交互式數據分析
    簡單起見,我將其稱為:數據分析,或者是視覺數據分析,甚至是交互式視覺數據分析,以強調是可以與之交互的圖形表現(學術界和商界也稱之為視覺分析)。為何更多地談論數據分析?這篇文章,以及之前的演講,旨在更好地定義可視化在數據分析中的角色,並激發更多關於可視化領域正在發生的事情的討論,遺憾的事,這件事情並沒有像其他事情那樣引人注目。
  • 使用Matplotlib可視化數據的5個強大技巧
    數據可視化用於以更直接的表示方式顯示數據,並且更易於理解。它可以用柱狀圖、散點圖、折線圖、餅圖等形式形成。許多人仍然使用Matplotlib作為後端模塊來可視化他們的圖形。在這個故事中,我將給你一些技巧,使用Matplotlib創建一個優秀圖表的5個強大技巧。1.
  • 數據可視化之旅(三):數據圖表的選擇(中)
    作者 | Destiny 來源 | 木東居士 0x00 前言數據圖表的選擇(上),分享了「時序數據」和「比例數據」的可視化圖表方案。不同的數據類型、不同的闡述目的,決定了數據可視化展現形式的差異。因此,今天這篇文章,主要是分享兩類不同的可視化目的及其可選擇的圖表形式。「對比型數據」:對比兩組或兩組以上數據的差異。
  • 數據可視化圖表怎麼做才好看?
    可視化技術仿佛有一種化平凡為非凡的魔力,冷冰冰的數據,經過可視化技術的加工,便酒麴入甕般幻化成視覺的盛宴,炫酷的、繽紛的、簡約的、繁複的……數據之美被展現的淋漓盡致。一張可視化圖片,我們主要關注2個點,一個是配色,一個是構圖。好的顏色搭配應該是不刺眼的,顏色間過渡自然的。什麼是顏色間過渡自然?就是不會一下從大紅色,跳到天藍色,又一下跳到黃色,突兀的配色會打破圖片的美感。
  • 數據可視化的一些思考丨從三個問題看數據可視化的商業前景
    數據可視化的本質,是將數據呈現,讓觀眾有視覺化思考能力,放在十年前,其實就是EXCEL與PPT的結合。隨著相關技術的成熟,和人們對閱讀體驗的需求更新,越來越多的數據中控大屏、人機互動系統應運而生。這是一個值得深入的市場嗎?不妨從以下三個問題,找出答案。
  • 大數據時代可視化新聞的特點及發展趨勢
    摘要:大數據時代對新聞生產的改變,不但是讓報導擁有了海量的數據,關鍵在於數據的「廣度」和「深度」,讓新聞報導的方式也發生了深刻的改變。可視化新聞就是隨著數據在新聞中的廣泛運用出現並發展起來的。   二 可視化新聞的主要特點 1 數據為核心,專門的數據新聞團隊生產     數據是可視化新聞存在的基礎,以數據作為新聞表現的內容核心,也是可視化新聞跟一般文字新聞的最大區別之處。
  • 城市大屏數據可視化 - CSDN
    數據可視化大屏設計大多以藍色調為主,因為藍色比較容易營造大屏所追求的科技感,所以在眾多行業中運用最廣泛。例如公安系統、城市交通、科技公司、政企單位、製造業等眾多行業。但電商類大屏需要另一種與其他大多數行業不同的調性。
  • 這5種數據可視化方式是數據科學家標配!
    Matplotlib是一個流行的Python庫,可以用來很容易地創建數據可視化。但是,每次執行新項目時,設置數據、參數、圖形和繪圖都會變得非常繁瑣。在這篇博客文章中,我們將著眼於5個數據可視化,並使用Python的Matplotlib為他們編寫一些快速簡單的功能。與此同時,這裡有一個很棒的圖表,用於為工作選擇正確的可視化圖表!
  • 「微積分府邸」——積分之屋 以微積分計算與線條之美為靈感的建築
    探究: 這是一座以數學家斯圖爾特的微積分知識為靈感,由加拿大設計事務所Shim-Sutcliffe Architect進行設計的一所極具個人個性風格的豪宅—「數學府邸」,通過結合微積分之中的曲線與直線關係,以曲線為主,將微積分中的曲線美感附著在建築物上,使其蘊含了靈動的曲線感
  • 極坐標系在數據可視化中的巧妙運用
    這樣的圖表形式有一個好聽的名字,叫做南丁格爾玫瑰圖,其本質就是極坐標系中的柱狀圖。 在matplotlib中,可以輕鬆的使用極坐標繪圖,基本用法如下 將projection參數的值設置為polar,表示該axes將採用極坐標系,接下來只需要指定極坐標系中的點的坐標即可,輸出結果如下
  • 百度數據可視化實驗室正式成立,發布深度學習可視化平臺 Visual DL
  • Python數據可視化實例之繪製圖表
    Python數據可視化實例之繪製圖表原創 蟲蟲安全 2018-09-05 17:41:57得利於語言的簡單明了、豐富的數據結構、豐富的類和模塊,Python如今成了數據科學中的香餑餑,成了matlab、R語言之外又一強大的數據分析工具。拋開其他方面的、今天蟲蟲帶大家一起來探索Python在數據可視化方面的應用。
  • 微積分之三角函數
    泰勒展開的發現,傅立葉級數的發現(三角級數),直到這個時候,三角函數才能稱為三角函數,不僅有理論證明,還有生活中的實用性。由於此時的三角函數比起一千多前已經實用了太多,並且物理大佬們也有了一些基本的物理理論:簡諧振動,電磁波等等。所以現代數學將三角函數列為重要理論之一。留考階段的我們需要掌握的三角函數知識並不難。靈活運用公式可以讓我們思路更加清晰。
  • 數據可視化技術的應用,行業優秀案例分享
    這種數據對公司很有使用價值,探尋和剖析的意向明顯,其才被更廣泛運用到每個行業中。數據可視化技術有如下特點:交互性。用戶可以方便地以交互的方式管理和開發數據。多維性。對象或事件的數據具有多維變量或屬性,而數據可以按其每一維的值分類、排序、組合和顯示。