你了解機器學習中的線性回歸嗎

2020-12-06 電子發燒友

你了解機器學習中的線性回歸嗎

AI科技大本營 發表於 2020-02-24 14:03:34

機器學習中的線性回歸是一種來源於經典統計學的有監督學習技術。然而,隨著機器學習和深度學習的迅速興起,因為線性(多層感知器)層的神經網絡執行回歸,線性回歸的使用也日益激增。

這種回歸通常是線性的,但是當把非線性激活函數合併到這些網絡中時,它們就可以執行非線性回歸。

非線性回歸使用某種形式的非線性函數(例如多項式或指數)對輸入和輸出之間的關係進行建模。非線性回歸可以用來模擬科學和經濟學中常見的關係,例如,放射性分子的指數衰減或股票市場的走勢與全球經濟的整體走勢一致。

線性回歸如何工作?

從神經網絡的觀點來看,我們可以將線性回歸模型指定為一個簡單的數學關係。簡單來說,線性回歸是在輸入變量和輸出變量之間建立一個線性依賴關係模型。根據所處的工作環境,這些輸入和輸出使用不同的術語來引用。

最常見的是一個包含k個示例的訓練數據集,每個示例都有n個輸入分量稱為回歸變量、協變量或外生變量。輸出向量y稱為響應變量、輸出變量或因變量。在多元線性回歸中,可以有多個這樣的輸出變量。模型的參數被稱為回歸係數,或者在深度學習環境中稱為權重。對於單個訓練示例,該模型具有以下形式:

我們還可以通過將訓練數據壓縮到矩陣中:

以此將權重壓縮到矢量中來簡化這種表示法。權重構成了模型的核心。它們對輸入和輸出之間的線性關係進行編碼,從而更加重視重要的數據特徵,並降低不重要的數據特徵的權重。注意,我們向X值為1的每一行添加了一個「隱藏組件」。這讓我們能夠計算w的點積,其偏置項為 。偏置項允許模型將其計算的線性超平面移開原點,從而允許模型對非零中心數據中的關係進行建模。簡化後的模型可以表示為。

這是大多數線性回歸實現的基礎模型。然而,在此基本結構上可以存在許多變體,每種變體都有其自身的缺點和益處。例如,有一個線性回歸版本稱為貝葉斯線性回歸,它通過在模型的權重上放置先驗分布來引入一個貝葉斯觀點。這樣可以更容易地推斷模型正在做什麼,隨後使其結果更具有解釋性。

訓練線性回歸模型

那麼我們如何訓練線性回歸模型呢?這個過程類似於大多數機器學習模型所使用的過程。假設我們有一套訓練集,任務是在不影響模型對新示例預測能力的情況下,儘可能緊密地對這種關係進行建模。為此,我們定義一個損失或目標函數

輸入真實輸出y和預測輸出,並測量了給定x時模型在預測y時的「好壞程度」。我們使用下標w來表示J的輸出取決於模型的權重w,並通過預測y對其進行參數化,即使這些權重值未明確顯示在函數的計算中。線性回歸通常使用均方誤差(MSE)損失函數,定義為:

然後,我們可以使用多種技術之一來優化此損失函數。我們可以使用例如梯度下降法,它是訓練神經網絡的實際標準,但是對於線性回歸來說不是必要的。因為我們其實可以直接解決優化問題,以便找到權重的最佳值w*。

由於我們想要針對w優化此設置,對w取梯度,將結果設置為0,然後求解w的最優設置w*。我們有

現在我們將梯度設置為0並求解w

這是w的最優設置,將為模型提供最佳結果。你可以看到,它僅使用X和y的乘積來計算。然而,它需要的矩陣求逆,當X非常大或條件不佳時,這在計算上會很困難。在這些情況下,你可以使用不精確的優化方法如梯度下降法或不實際計算矩陣逆的近似技術。

正則化

線性回歸最常用的變形可能是那些涉及加法正則化的模型。正則化是指對絕對值較大的模型權重進行懲罰的過程。通常這是通過計算一些權重的範數作為附加在成本函數上的懲罰項來完成的。

正則化的目的通常是為了減輕過度擬合的可能性,過度擬合是模型過於緊密地複製其訓練數據中基礎關係的趨勢,無法將其很好地推廣到未知示例中。線性回歸模型的正則化有兩種基本類型:L1和L2。

採用L1正則化的回歸模型可以執行Lasso回歸。L1規範定義為:

相反,L2正則化將權重向量w的L2範數作為懲罰項添加到目標函數中。 L2規範定義為:

採用L2正則化的回歸模型被稱為執行Ridge回歸(嶺回歸)。

那麼,這些正則化懲罰如何定性地影響模型的結果(輸出)的呢?結果表明,L2正則化產生的權重係數很小,但很分散。也就是說,它傾向於生成其中每個係數相對較小並且幅度相對相似的模型。

相比之下,L1正則化在懲罰係數的方式上更加具體。其中某些係數往往受到嚴重的懲罰,趨向於0的值,而有些則保持相對不變。L1正則化產生的權值通常被認為是稀疏的。

因此,也有人認為,L1正則化實際上執行了一種軟特徵選擇,即選擇對產生期望結果最重要的特徵(數據中的分量)。通過將某些權重設為0,該模型表明這些變量實際上對其作用並沒有特別的幫助或解釋作用。

線性回歸的應用

線性回歸可以用在數據中任何可能存在線性關係的地方。對於企業來說,這可能會以銷售數據的形式出現。例如,一家企業可能向市場推出一種新產品,但不確定在什麼價格銷售。

通過在幾個選定的價格點上以總銷售額的形式測試客戶的響應,企業可以使用線性回歸推斷價格和銷售額之間的關係,從而確定銷售產品的最佳點。

同樣,線性回歸可以應用在產品採購和生產線的許多階段。例如,一個農民可能想要模擬某些環境條件(例如降雨和溼度)的變化如何影響總體農作物產量。這可以幫助他確定一個優化的系統,用於種植和輪作農作物,以實現利潤最大化。

最後,線性回歸是對數據中簡單關係建模的寶貴工具。 雖然它不像更現代的機器學習方法那麼花哨或複雜,但它通常是許多存在直接關係的現實世界數據集的正確工具。更不用說,建立回歸模型的簡單性和對它們進行訓練的快速性,使其成為那些想要快速有效地進行建立模型的企業的首選工具。

責任編輯:ct

打開APP閱讀更多精彩內容

聲明:本文內容及配圖由入駐作者撰寫或者入駐合作網站授權轉載。文章觀點僅代表作者本人,不代表電子發燒友網立場。文章及其配圖僅供工程師學習之用,如有內容圖片侵權或者其他問題,請聯繫本站作侵刪。 侵權投訴

相關焦點

  • 入門機器學習之線性回歸
    回歸分析按照涉及的變量的多少,分為一元回歸和多元回歸分析;按照因變量的多少,可分為簡單回歸分析和多重回歸分析;按照自變量和因變量之間的關係類型,可分為線性回歸分析和非線性回歸分析。如果在回歸分析中,只包括一個自變量和一個因變量,且二者的關係可用一條直線近似表示,這種回歸分析稱為一元線性回歸分析。
  • 文科生都能看懂的機器學習教程:梯度下降、線性回歸、邏輯回歸
    本文試圖將機器學習這本深奧的課程,以更加淺顯易懂的方式講出來,讓沒有理科背景的讀者都能看懂。  把複雜的東西簡單化,讓非專業人士也能短時間內理解,並露出恍然大悟的表情,是一項非常厲害的技能。  舉個例子。你正在應聘機器學習工程師,面對的是文科出身的HR,如果能在最短時間內讓她了解你的專業能力,就能極大地提升面試成功率。
  • 機器學習的線性回歸分析
    打開APP 機器學習的線性回歸分析 是DRR啊 發表於 2020-01-23 17:33:00 概述 線性回歸是利用數理統計中回歸分析
  • 盤點| 機器學習入門算法:從線性模型到神經網絡
    回歸或分類 雖然機器學習也可以用於其它的用途,但是我們將在本指南中著重於預測。預測是一種基於輸入變量來估計輸出變量的過程。比如,如果我們輸入特定房子的特徵,則可以預測售價。 有不同形式的線性模型算法,我們將要討論線性回歸(linear regression)和邏輯回歸(logistic regression)。
  • 了解線性回歸的數學原理:線性回歸背後的微積分
    線性回歸通常是任何機器學習課程的起點。目的是預測輸入變量與目標變量之間的線性關係。天真的情況是穿過空間原點的直線。在這裡,我們僅限於二維空間,即笛卡爾平面。讓我們從y = mx格式開始逐步發展,然後從y = mx + c回歸開始。y = mx的簡化方案在這種情況下,我們知道我們要對通過原點的數據擬合一條線。
  • ...詳解線性回歸、樸素貝葉斯、隨機森林在R和Python中的實現應用...
    我將提供對於多個機器學習算法的高水平理解,以及運行這些算法的 R語言代碼和Python代碼。這些應該足夠讓你親自動手試一試了。用R語言和Python實現機器學習算法的要點我特地跳過了這些技術背後的統計數據,因為一開始你還不需要了解這些東西。因此,如果你想要從統計數據層面理解這些算法的話,那你可以去別的地方找找。
  • 【深度】機器學習進化史:從線性模型到神經網絡
    後來有了Spark計算框架,它是開源的,大家都可以了解其核心,為其做貢獻。我感覺Spark的時代已經到來了,因為對絕大多數分布式計算來說,彈性分布式數據集是非常抽象的。機器學習的進化從你在Google工作,到現在Spark計算框架上工作,應該有機會看到機器學習的進化吧,因為它們和分布式計算的聯繫都非常緊密,你會如何描述這種進化呢?
  • 線性回歸中+t值的含義_線性回歸 y截距p值的計算 - CSDN
    線性回歸模型的基本特性就是:模型是參數的線性函數。最簡單的線性回歸模型當然是模型是參數的線性函數的同時,也是輸入變量的線性函數,或者叫做線性組合。對於線性模型而言,一般所選擇的損失函數是平方損失。由於模型是線性的,所以在模式識別和機器學習的實際應用中存在非常大的局限性,特別是當輸入向量的維度特別高的時候,其局限性就更為明顯。但同時,線性模型在數學分析上相對較為簡單,進而成為了很多其他的複雜算法的基礎。
  • 詳解線性回歸、樸素貝葉斯、隨機森林在R和Python中的...
    用R語言和Python實現機器學習算法的要點我特地跳過了這些技術背後的統計數據,因為一開始你還不需要了解這些東西。因此,如果你想要從統計數據層面理解這些算法的話,那你可以去別的地方找找。但是,如果你想要為構建機器學習項目做好準備的話,那你應該會收穫頗豐。
  • 機器學習中常用的5種回歸損失函數
    那你了解Huber損失、Log-Cosh損失、以及常用於計算預測區間的分位數損失麼?這些可都是機器學習大牛最常用的回歸損失函數哦!機器學習中所有的算法都需要最大化或最小化一個函數,這個函數被稱為「目標函數」。其中,我們一般把最小化的一類函數,稱為「損失函數」。它能根據預測結果,衡量出模型預測能力的好壞。
  • 【乾貨】機器學習中的五種回歸模型及其優缺點
    【IT168 技術】線性和邏輯斯蒂(Logistic)回歸通常是是機器學習學習者的入門算法,因為它們易於使用和可解釋性。然而,儘管他們簡單但也有一些缺點,在很多情況下它們並不是最佳選擇。實際上存在很多種回歸模型,每種都有自己的優缺點。  在這篇文章中,我們將介紹5種最常見的回歸算法及特點。
  • 線性回歸模型
    回歸問題就是擬合輸入變量x與數值型的目標變量y之間的關係,而線性回歸就是假定了x和y之間的線性關係,公式如下:          如下圖所示,我們可以通過繪製繪製(x,y)的散點圖的方式來查看x和y之間是否有線性關係,線性回歸模型的目標是尋找一條穿過這些散點的直線,讓所有的點離直線的距離最短。
  • 兩個例子告訴你:什麼是「線性」回歸模型?
    全文共1534字,預計學習時長3分鐘在機器學習和統計領域,線性回歸模型是最簡單的模型之一。這意味著,人們經常認為對線性回歸的線性假設不夠準確。例如,下列2個模型都是線性回歸模型,即便右圖中的線看起來並不像直線。
  • 五分鐘了解機器學習十大算法
    今天,我們將簡要介紹 10 種最流行的機器學習算法,這樣你就可以適應這個激動人心的機器學習世界了!讓我們言歸正傳!1. 線性回歸線性回歸(Linear Regression)可能是最流行的機器學習算法。線性回歸就是要找一條直線,並且讓這條直線儘可能地擬合散點圖中的數據點。它試圖通過將直線方程與該數據擬合來表示自變量(x 值)和數值結果(y 值)。
  • 想了解機器學習?你需要知道的十個基礎算法
    ,你需要知道的十個基礎算法毫無疑問,作為人工智慧的子領域—機器學習在過去的幾年中越來越受歡迎。由於大數據是目前科技行業最熱門的趨勢,基於大量的數據機器學習在提前預測和做出建議方面有巨大的潛力。一些有關機器學習常見的例子有:Netflix基於你以前看過的電影再給你做出影片的推薦,或者亞馬遜根據你以前買過的書籍再給你進行圖書推薦。如果想了解更多有關機器學習的知識,要從哪裡開始呢?作者第一次入門是在哥本哈根海外交流時選了一門有關人工智慧的課程。
  • 這些線性回歸知識是底線!
    無論面試的工作領域是數據科學、數據分析、機器學習或者是量化研究,都有可能會遇到涉及線性回歸的具體問題。要想熟練掌握線性回歸,需要了解以下知識。註:本文僅涉及理論而非代碼。,但在開始介紹之前還是要回顧下線性回歸的公式和假設。
  • 機器學習之詳解Logistic回歸
    而本文旨在從源頭上解釋一下Logistic回歸的原理到底是什麼。 英文單詞Regression翻譯成中文「回歸」,那什麼是回歸呢?事實上,在Logistic回歸出現以前,人們最先引入的是線性回歸。了解二者之間的來龍去脈將幫助你更深刻地認識Logistic回歸。
  • 使用Python中的線性回歸通過語音診斷帕金森氏病
    本文,我們將創建一個簡單的python機器學習算法,以便能夠通過聲音來診斷該人是否為患者。我們將使用一組(健康者和帕金森病患者)音頻文件庫,通過對音頻進行一些測量來構建我們的機器學習數據集。建立機器學習數據集後,我們將使用SciKit Learn庫訓練線性回歸模型。最後,我們將構建一個python庫,這個庫可以輕鬆集成到其他應用程式中。數據集首先,我們需要將音頻文件轉換成包含音頻測量值以及患者是否健康標誌的表格。
  • 8種用Python實現線性回歸的方法
    拋開涉及大量數統的模型分析和檢驗不說,你真的就能熟練應用線性回歸了麼?未必!「寶刀不老」的線性回歸時至今日,深度學習早已成為數據科學的新寵。即便往前推10年,SVM、boosting等算法也能在準確率上完爆線性回歸。
  • 人工智慧機器學習三大類之回歸模型(RM)
    最直接的辦法是依據輸入寫出一個目標值的計算公式,該公式就是所謂的回歸方程(regressionequation)。求回歸方程中的回歸係數的過程就是回歸。回歸是對真實值的一種逼近預測。回歸是統計學中最有力的算法之一。