一、𝑓(𝒙;𝒘) = 𝒘T𝒙的推導
學習線性回歸,我們那先要對于線性回歸的表達公示,有所認識。
我們先假設空間是一組參數化的線性函數:
其中權重向量𝒘 ∈ R𝐷 和偏置𝑏 ∈ R都是可學習的參數,函數𝑓(𝒙;𝒘,𝑏) ∈ R也稱為線性模型。
不失一般性, 在本章后面的描述中我們采用簡化的表示方法, 直接用 𝒘和 𝒙 分別表示增廣權重向量和增廣特征向量. 這樣, 線性回歸的模型簡寫為 𝑓(𝒙;𝒘) = 𝒘T𝒙.
這就是題目中提到的線性回歸模型的推導由來。
這里為了更好的學習線性回歸模型,這里我們普及一下大學時線性代數的一些概念。
二、向量、增廣向量、增廣權重向量、增廣特征向量的概念:
1. 向量(Vector)
定義:
向量是一組有序排列的數,表示空間中的點、數據樣本或特定屬性的集合。
示例:
假設我們有一個人的身體數據,包括身高和體重,我們可以用一個向量表示:
這個向量表示身高 180 cm,體重 75 kg。
常見類型:
- 列向量(常用): n×1 維,如上例。
- 行向量: 1×n,例如: x=[180,75]。
應用:
- 在機器學習中,向量用來表示數據樣本(輸入特征)、模型參數等。
- 在物理中,向量用來表示力、速度等有大小和方向的量。
2. 增廣向量(Augmented Vector)
定義:
增廣向量是在普通向量的基礎上,增加一個額外的常數(通常是 1),以便于在數學計算中引入偏置項(Intercept/Bias)。
示例:
假設我們有一個特征向量:
增廣后:
為什么要加 1?
在機器學習的線性回歸公式中:
y = w_1 x_1 + w_2 x_2 + b
如果將 b 視為 w_3 并將增廣向量 x 擴展為:
y = w_1 x_1 + w_2 x_2 + w_3 ?1
這時,增廣后的矩陣運算更為簡潔,公式變為:
應用:
- 機器學習: 在回歸、分類等問題中,引入偏置項。
- 計算機視覺: 處理圖像坐標變換(如平移操作)。
- 信號處理: 統一矩陣運算,減少額外計算。
3. 增廣權重向量(Augmented Weight Vector)
定義:
增廣權重向量是在普通權重向量的基礎上,增加一個額外的偏置項 b,以與增廣輸入向量匹配。
示例:
假設我們有普通的權重向量:
增廣后:
這樣,使用增廣權重向量,計算目標值時,可以與增廣向量配合使用:
應用:
- 機器學習: 簡化計算,避免單獨處理偏置項。
- 神經網絡: 統一偏置與權重的管理,提高計算效率。
4. 增廣特征向量(Augmented Eigenvector)
定義:
增廣特征向量是在線性代數的特征值分解問題中,在特征向量的基礎上,附加額外的約束條件或輔助信息,以便解決某些特定問題。
特征向量的基本公式:
給定矩陣 A,特征向量滿足:
Av=λv
如果原始特征向量是:
增廣后:
為什么要增廣?
- 在控制系統、信號處理等領域,增廣特征向量可以用于增加額外信息,如系統約束或觀測量。
- 在奇異值分解(SVD)、PCA等方法中,增加維度可以提高數值穩定性或處理特殊邊界條件。
應用:
- 控制工程:增廣狀態向量來處理觀測噪聲。
- 計算機視覺:在3D變換中加入齊次坐標(如在2D坐標 (x,y)增廣為 (x,y,1))。
5. 總結:區別與聯系
名稱 | 定義 | 增加的元素 | 作用 | 例子 |
---|---|---|---|---|
向量 | 一組數,表示數據或坐標 | 無 | 描述特征或數據點 | [180,75][180, 75] |
增廣向量 | 在向量后加 1,使計算更方便 | 1 | 統一計算偏置項 | [180,75,1][180, 75, 1] |
增廣權重向量 | 在權重后加偏置項 bb 以匹配增廣向量 | 1 | 使得矩陣運算統一,減少額外處理 | [0.5,1.2,20][0.5, 1.2, 20] |
增廣特征向量 | 在特征向量后加常數或約束 | 1 或更多 | 處理約束問題、增加系統觀測能力 | [2,3,1][2, 3, 1] |
它們之間的聯系:
- 增廣向量和增廣權重向量通常一起使用,用于機器學習中的線性模型。
- 增廣特征向量更偏向于線性代數的特征值分解和矩陣分析,并不直接用于機器學習的建模中。
三、這里思考一個問題:空間可以由線性模型表示嗎?
答案是yes,空間可以在一定條件下用線性模型來表示,特別是在歐幾里得空間或特征空間中,線性模型可以用于描述點、方向、平面和超平面等幾何對象。
1. 線性模型的基本形式
線性模型的一般數學形式是:
在向量形式下可以表示為:
其中:
- x?表示輸入向量,描述空間中的點或特征。
- w?是權重向量,表示空間中的方向或特定超平面的法向量。
- b?是偏置,表示超平面與原點的距離。
2. 用線性模型表示幾何空間的例子
例 1:平面在三維空間中的表示
假設我們在三維空間中有一個平面,其方程可以寫成:
2x+3y?z+5=0
將其改寫成線性模型的形式:
z=2x+3y+5z
這實際上是一個線性回歸模型,其中:
- x1=x, x2=y,y=z。
- 權重 w=[2,3]。
- 偏置 b=5。
解釋:
- 這個線性方程表示三維空間中的一個平面,線性模型可以表示任意方向的平面。
- 平面的法向量 (2,3,?1)代表其朝向。
例 2:二維平面上的直線
假設我們要表示一個 2D 平面上的直線:
y=4x+2
這里:
- x?是輸入變量,y?是輸出。
- 斜率 w1=4,偏置 b=2。
這條直線可以看作是一個 2D 空間中的線性模型,描述輸入 x?和輸出 y?之間的線性關系。
解釋:
- 該直線分割了平面空間,表示空間中的一個一維子空間。
- 例如,在分類問題中,它可以用來將數據點分成兩個類別。
例 3:超平面在高維空間中的表示(機器學習中的決策邊界)
在機器學習中,支持向量機(SVM)和線性回歸模型使用超平面來表示數據分布。例如,假設在 3D 空間中,數據點屬于兩個類別,我們可以用一個線性模型來區分它們:
w1x1+w2x2+w3x3+b=0
這個方程描述的是三維空間中的一個超平面,它可以將空間劃分成兩部分。
解釋:
- 在 n?維空間中,線性方程表示的是一個 (n?1)維的超平面。
- 例如,在二維空間中,線性方程表示一條直線,在三維空間中,表示一個平面。
例 4:主成分分析(PCA)用于空間降維
在高維空間中,主成分分析(PCA)是一種常見的線性方法,用于找到數據的最佳投影方向。例如,給定一組三維點 (x1,x2,x3),PCA 試圖找到一個最佳的線性方向來表示這些點,從而將其降維到一個平面或直線。
PCA 線性模型通常可以寫作:
其中:
- W?是投影矩陣,定義了降維后的新坐標軸。
- 這個模型可以找到數據所在的低維子空間。
3. 線性模型表示空間的局限性
盡管線性模型可以表示許多幾何對象,但也存在局限:
- 無法表示非線性空間結構: 如果數據存在曲面或復雜的非線性關系,線性模型無法準確表示。
- 只能描述平直的結構: 例如圓、球等非線性空間無法用簡單的線性方程來表示。
- 需要特征變換: 為了處理復雜空間,通常需要使用特征工程(如多項式特征擴展)或非線性映射(如核方法)。
4. 非線性空間如何用線性模型處理?
如果數據或空間具有非線性特征,可以通過以下方式將其轉換為線性模型:
-
特征變換(Feature Engineering)
通過增加維度,空間變得線性。
-
核方法(Kernel Methods)
- 在支持向量機(SVM)中,核函數(如高斯核)將數據映射到高維線性可分空間。
-
神經網絡(Deep Learning)
- 通過多層非線性激活函數,神經網絡可以近似任意復雜的空間映射。
5. 結論
- 線性模型可以表示許多常見的空間,如直線、平面和高維超平面。
- 對于更復雜的空間結構,需要進行特征變換或使用非線性方法來補充線性模型的局限性。
- 在機器學習、數據分析和幾何處理中,線性模型是非常重要的基礎工具。