什麼是線性回歸? 它如何用於機器學習

已發表: 2021-07-16

線性回歸不是統計的一部分嗎?

毫無疑問,是的。

事實上,大多數  機器學習  (ML)算法是從各個領域借來的,主要是統計學。 任何可以幫助模型更好地預測的東西最終都會成為 ML 的一部分。 因此,可以肯定地說,線性回歸既是一種統計算法,也是一種機器學習算法。

線性回歸是一種流行且簡單的算法,用於數據科學和機器學習。 它是  監督學習  算法和最簡單的回歸形式,用於研究變量之間的數學關係。

更準確地說,線性回歸用於確定因變量與一系列其他自變量之間關聯的特徵和強度。 它有助於創建模型以進行預測,例如預測公司的股價。

在嘗試將線性模型擬合到觀察到的數據集之前,應該評估變量之間是否存在關係。 當然,這並不意味著一個變量會導致另一個變量,但它們之間應該存在一些明顯的相關性。

例如,更高的大學成績並不一定意味著更高的薪水。 但是這兩個變量之間可能存在關聯。

你可知道? 術語“線性”意味著類似於線或屬於線。

創建散點圖是確定解釋(獨立)變量和變量之間關係強度的理想選擇。 如果散點圖未顯示任何增加或減少的趨勢,則將線性回歸模型應用於觀察值可能沒有好處。

相關係數用於計算兩個變量之間的關係有多強。 它通常用r表示,值介於 -1 和 1 之間。正相關係數值表示變量之間存在正相關關係。 同樣,負值表示變量之間的負關係。

提示:僅當相關係數為正或負 0.50 或更高時才執行回歸分析。

如果您查看學習時間和成績之間的關係,您可能會看到一種積極的關係。 另一方面,如果您查看社交媒體上的時間與成績之間的關係,您很可能會看到負相關關係。

在這裡,“成績”是因變量,學習時間或社交媒體時間是自變量。 這是因為成績取決於你花多少時間學習。

如果您可以通過散點圖和相關係數在變量之間建立(至少)中等相關性,則所述變量具有某種形式的線性關係。

簡而言之,線性回歸試圖通過將線性方程應用於觀察到的數據來模擬兩個變量之間的關係。 線性回歸線可以用直線方程表示:

y = mx + b

在這個簡單的線性回歸方程中:

  • y是估計的因變量(或輸出)
  • m是回歸係數(或斜率)
  • x是自變量(或輸入)
  • b是常數(或 y 截距)

找到變量之間的關係可以預測值或結果。 換句話說,線性回歸可以根據現有數據預測新值。

一個例子是根據收到的降雨量預測作物產量。 在這種情況下,降雨量是自變量,作物產量(預測值)是因變量。

自變量也稱為預測變量。 同樣,因變量也稱為響應變量

線性回歸中的關鍵術語

理解線性回歸分析也意味著熟悉一堆新術語。 如果您剛剛踏入統計學或機器學習的世界,對這些術語有一個公平的理解會很有幫助。

  • 變量:可以計算或測量的任何數字、數量或特徵。 它也稱為數據項。 收入、年齡、速度和性別就是例子。
  • 係數:它是一個數字(通常是整數)乘以它旁邊的變量。 例如,在 7x 中,數字 7 是係數。
  • 異常值:這些數據點與其他數據點顯著不同。
  • 協方差:兩個變量之間線性關係的方向。 換句話說,它計算兩個變量線性相關的程度。
  • 多變量:這意味著涉及兩個或多個因變量導致單一結果。
  • 殘差:因變量的觀測值和預測值之間的差異。
  • 可變性:缺乏一致性或分佈被擠壓或拉伸的程度。
  • 線性:與比例關係密切的數學關係的屬性,可以用圖形表示為一條直線。
  • 線性函數:它的圖形是一條直線的函數。
  • 共線性:自變量之間的相關性,使得它們在回歸模型中表現出線性關係。
  • 標準差 (SD):它是數據集相對於其平均值的離散度的量度。 換句話說,它是衡量數字分散程度的指標。
  • 標準誤差 (SE):統計樣本總體的近似 SD。 它用於測量可變性。

線性回歸的類型

線性回歸有兩種類型:簡單線性回歸多元線性回歸

簡單線性回歸方法試圖找出單個自變量與相應因變量之間的關係。 自變量是輸入,對應的因變量是輸出。

提示:您可以在各種編程語言和環境中實現線性回歸,包括 Python、R、MATLAB 和 Excel。

多元線性回歸方法試圖找到兩個或多個自變量與相應因變量之間的關係。 還有一個多元線性回歸的特殊情況,稱為  多項式回歸。

簡單地說,簡單的線性回歸模型只有一個自變量,而多元線性回歸模型將有兩個或多個自變量。 是的,還有其他非線性回歸方法用於高度複雜的數據分析。

邏輯回歸與線性回歸

線性回歸預測給定自變量集的連續因變量,而邏輯回歸預測分類因變量。

兩者都是監督學習方法。 但是,雖然線性回歸用於解決回歸問題,但邏輯回歸用於解決分類問題。

線性回歸與邏輯回歸

當然,邏輯回歸可以解決回歸問題,但主要用於分類問題。 它的輸出只能是 0 或 1。在需要確定兩個類之間的概率或者換句話說,計算事件的可能性的情況下,它很有價值。 例如,邏輯回歸可用於預測今天是否會下雨。

線性回歸的假設

在使用線性回歸來建模變量之間的關係時,我們做了一些假設。 假設是我們使用模型進行預測之前應該滿足的必要條件。

通常有四個與線性回歸模型相關的假設:

  • 線性關係:自變量x和因變量y之間存在線性關係。
  • 獨立性:殘差是獨立的。 時間序列數據中的連續殘差之間沒有相關性。
  • 同方差性殘差在所有級別上具有相等的方差。
  • 正態性:殘差是正態分佈的。

求解線性回歸模型的方法

在機器學習或統計術語中,學習線性回歸模型意味著使用可用數據猜測係數的值。 可以將幾種方法應用於線性回歸模型以使其更有效。

提示:使用機器學習軟件消除單調的任務並做出準確的預測。

讓我們看看用於解決線性回歸模型的不同技術,以了解它們的差異和權衡。

簡單線性回歸

如前所述,簡單線性回歸中有一個輸入或一個自變量和一個因變量。 它用於找到兩個變量之間的最​​佳關係,因為它們是連續的。 例如,它可以用來根據消耗的卡路里來預測體重增加的數量。

普通最小二乘

普通最小二乘回歸是另一種在有多個自變量或輸入時估計係數值的方法。 它是求解線性回歸的最常用方法之一,也稱為正規方程

此過程試圖最小化殘差平方和。 它將數據視為一個矩陣,並利用線性代數運算來確定每個係數的最佳值。 當然,這種方法只有在我們可以訪問所有數據的情況下才可以應用,並且還應該有足夠的內存來容納數據。

梯度下降

梯度下降是解決線性回歸問題最簡單和常用的方法之一。 當有一個或多個輸入並且涉及通過迭代最小化模型的誤差來優化係數值時,它很有用。

梯度下降從每個係數的隨機值開始。 對於每對輸入和輸出值,計算平方誤差的總和。 它使用比例因子作為學習率,每個係數在方向上更新以最小化誤差。

重複該過程,直到無法進一步改進或達到最小平方和。 當存在包含大量行和列而無法放入內存的大型數據集時,梯度下降很有幫助。

正則化

正則化是一種嘗試使模型的平方誤差之和最小化,同時降低模型複雜度的方法。 它使用普通最小二乘法減少平方誤差之和。

套索回歸嶺回歸是線性回歸中正則化的兩個著名例子。 當自變量存在共線性時,這些方法很有價值。

亞當的方法

自適應矩估計ADAM是一種優化算法,用於  深度學習。 這是一種迭代算法,在噪聲數據上表現良好。 它易於實現,計算效率高,並且內存要求最低。

ADAM 結合了兩種梯度下降算法——均方根傳播 (RMSprop)自適應梯度下降。 ADAM 不是使用整個數據集來計算梯度,而是使用隨機選擇的子集來進行隨機近似。

ADAM 適用於涉及大量參數或數據的問題。 此外,在這種優化方法中,超參數通常需要最少的調整併且具有直觀的解釋。

奇異值分解

奇異值分解SVD是線性回歸中常用的降維技術。 這是一個預處理步驟,可減少學習算法的維數。

SVD 涉及將矩陣分解為其他三個矩陣的乘積。 適用於高維數據,對於小數據集高效穩定。 由於其穩定性,它是求解線性回歸線性方程的最優選方法之一。 但是,它容易受到異常值的影響,並且在使用龐大的數據集時可能會變得不穩定。

為線性回歸準備數據

在大多數情況下,現實世界的數據是不完整的。

與任何其他機器學習模型一樣,數據準備和預處理是線性回歸中的關鍵過程。 會有缺失值、錯誤、異常值、不一致和缺少屬性值。

這裡有一些方法可以解釋不完整的數據並創建更可靠的預測模型。

  • 線性回歸認為預測變量和響應變量沒有噪聲。 因此,通過多次數據清除操作消除噪聲至關重要。 如果可能,您應該刪除輸出變量中的異常值。
  • 如果輸入和輸出變量具有高斯分佈,線性回歸會做出更好的預測。
  • 如果您使用歸一化或標準化重新調整輸入變量,線性回歸通常會做出更好的預測。
  • 如果有很多屬性,則需要將數據轉換為線性關係
  • 如果輸入變量高度相關,則線性回歸將過擬合數據。 在這種情況下,去除共線性

線性回歸的優缺點

線性回歸是最容易理解和最容易實現的算法之一。 它是分析變量之間關係的好工具。

以下是線性回歸的一些顯著優勢

  • 由於其簡單性,它是一種首選算法。
  • 雖然它很容易出現過擬合,但可以藉助降維技術來避免這種情況。
  • 它具有良好的可解釋性。
  • 它在線性可分數據集上表現良好。
  • 空間複雜度低; 因此,它是一種高延遲算法。

但是,對於大多數實際應用,通常不建議使用線性回歸。 這是因為它通過假設變量之間的線性關係過度簡化了現實世界的問題。

以下是線性回歸的一些缺點

  • 異常值會對回歸產生負面影響
  • 由於變量之間應該存在線性關係以擬合線性模型,因此假設變量之間存在直線關係
  • 它認為數據是正態分佈的
  • 它還研究了自變量和因變量的平均值之間的關係
  • 線性回歸不是對變量之間關係的完整描述
  • 變量之間存在高度相關性會顯著影響線性模型的性能

先觀察,再預測

在線性回歸中,評估變量是否具有線性關係至關重要。 儘管有些人確實試圖在不看趨勢的情況下進行預測,但最好確保變量之間存在適度強的相關性。

如前所述,查看散點圖和相關係數是很好的方法。 是的,即使相關性很高,最好還是看看散點圖。 簡而言之,如果數據在視覺上是線性的,那麼線性回歸分析是可行的。

雖然線性回歸可以讓您預測因變量的值,但有一種算法可以對新數據點進行分類或通過查看它們的鄰居來預測它們的值。 它被稱為 k-最近鄰算法,它是一種惰性學習器。