線性回歸是機器學習中的概念,線性回歸預測算法一般用以解決“使用已知樣本對未知公式參數的估計”類問題。
舉個栗子:
商家賣鞋,可利用曆史上每個季度鞋的定價x與銷量y,來預估“定價與銷量的關系”(y=ax b),以輔助對鞋子進行最佳定價。
一、幾個基本概念
回歸(regression):用已知樣本對未知公式參數的估計。Y=f(X1, X2, X3),這裡回歸函數f(X1, X2, X3)可能是任意函數。
線性回歸(linear regression):回歸的一種,回歸函數是一次函數,例如:
Y=f(X1, X2, X3)=aX1 bX2 cX3 d
其中X1,X2,X3是訓練樣本集中樣本的各個維度(feature),a,b,c,d是模型的未知參數。
邏輯回歸(logistic regression):将Y歸一化到[0, 1]區間。
總而言之,邏輯回歸是線性回歸的一種,線性回歸是回歸的一種。
二、線性回歸模型經常是有效的
線性回歸有什麼用?
答:線性回歸的預測模型雖然是一元線性方程,但現實中很多應用場景符合這個模型。
例如例子中商品的定價x與商品的銷量y之間的關系。一般來說價格越貴則銷量越低,價格越便宜則銷量越高,于是就能夠用y=ax b這個評估模型來最大化商家的收益:收益=定價*銷量=x*y=x*(ax b)
什麼場景适用于線性回歸?
答:很多應用場景不能夠使用線性回歸模型來進行預測,例如,月份和平均氣溫,平均氣溫并不随着月份的增長呈線性增長或下降的趨勢。它常用于:
(1)預測或分類,用于分類問題時,需要設定阈值區間,并提前知曉阈值區間與類别的對應關系
(2)線性問題,可以有多個維度(feature)
三、如何求解線性回歸中的維度參數?
在已知樣本集set的時候,如果根據樣本集得到Y=f(X1,X2,X3,…)=aX1 bX2 cX3 …中的未知參數a,b,c呢?
這得先介紹最小二乘法,以及梯度下降法。
什麼是最小二乘法?
答:最小二乘法适用于任意多維度的線性回歸參數求解,它可求解出一組最優a,b,c解,使得對于樣本集set中的每一個樣本data,用Y=f(X1,X2,X3,…)來預測樣本,預測值與實際值的方差最小。
畫外音:方差是我們常見的估值函數(cost function),用來評估回歸出來的預測函數效果。
什麼是梯度下降法?
答:最小二乘法實際上隻定義了估值函數是方差,真正求解a,b,c的方法是梯度下降法,這是一個枚舉型的求解算法,其算法步驟如下:
(1)使用随機的a0, b0, c0作為初始值
(2)分别求解最優a, b, c…,對于每個維度參數的求解,步驟為(以a為例):
2.1)設定a範圍的最大值與最小值
2.2)設定a計算的梯度步長(這就是它叫梯度下降法的原因)
2.3)固定其他維度參數
2.4)計算a的所有取值中,使得估值函數最小的那個a即為所求
數學上可以證明:
(1)上述算法是可以收斂的(顯而易見)
(2)分别求出a,b,c的最優值,組合起來就是整體的最優值(沒這麼明顯了),這個結論是很重要的,假設樣本個數為n,計算a,b,c的算法複雜度都是線性的O(m),這個結論讓算法的整體複雜度是n*O(m) n*O(m) n*O(m),而不是[n*O(m) ]*[n*O(m)]*[n*O(m)]的關系。
畫外音:計算機非常适合幹這個事情,确定範圍和梯度後,這是一個線性複雜度的算法。
四、再來個栗子說明
已知過去4個季度銷量與價格的數據樣本集為:
價格x為10時,銷量y為80
價格x為20時,銷量y為70
價格x為30時,銷量y為60
價格x為40時,銷量y為65
假設銷量y與價格x是線性關系:
y=ax b
假設a的範圍為[-2, 2],a的梯度為1
假設b的範圍為[80, 120],b的梯度為10
畫外音:計算機計算的時候,範圍會很大,梯度精度會很細。
求解最優a和b的過程為:
(1)設a0=-2,b0=80,從最邊緣開始求解
(2.1)先求最優a,固定b=80不動,a從-2到2梯度遞增,求最優a的解
可以看到,a=-1時方差最小,故a=-1是最優解。
(2.2)再求最優b,固定2.1求出的最優a=-1,b從80到120梯度遞增,求最優b的解
可以看到,b=90時方差最小,故b=90是最優解。
(3)得到最優解a=-1,b=90,于是得到定價與銷量的關系是:y=-x 90
(4)最終得到
收益=定價*銷量=x*y=x*(-x 90)
于是,當價格定在45元時,整體收益能夠最大化。
五、總結
邏輯回歸是線性回歸的一種,線性回歸是回歸的一種
線性回歸可以用在預測或分類,多維度(feature)線性問題求解上
可以用最小二乘法,梯度下降法求解線性預測函數的系數
梯度下降法的核心步驟是:設置系數範圍,設定系數梯度,固定其他系數,對某一個系數窮舉求方差最小最優解
希望這一分鐘,對線性回歸預測有了一點點了解。
,更多精彩资讯请关注tft每日頭條,我们将持续为您更新最新资讯!