最小二乘法

最小二乘法

在线性回归模型(y = f(x)=b + sum w_ix_i)中,可将使得损失函数: (L(f)=sum_{n=1}^N(y^n - f(x^n))^2) 最小的问题转化为线性代数的问题。

1. 将训练数据,待求解参数和模型表示为向量形式

首先分别将每一个数据表示为一个向量(old{x^n}:(x_1^n, x_2^n, x_3^n,..., x_I^n, 1))

  • (x)的上标表示第n个数据
  • (x)的下标表示数据的第几维度的值,共有(I)个维度。注:加上一个常量维度1。

再定义一个向量(old{w}: (w_1, w_2, w_3,..., w_I, b))

那么线性回归模型可表示为(y=old{x}^Told{w})

2. 将训练数据表示为矩阵形式,并将问题转换成线性代数问题

将所有训练数据集表示为一个矩阵(old{A})

[egin{matrix} x_1^1 & x_2^1 & ... & x_I^1 & 1 \ x_1^2 & x_2^2 & ... & x_I^2 & 1 \ &&... \ x_1^N & x_2^N& ... & x_I^N & 1 \ end{matrix}]

其中(x)的上标表示第几个数据,共有(N)个数据. (x)的下标表示数据的第几维度的值。

所有数据对应的实际label值表示为一个向量(hat{old{y}}: (y^1, y^2, y^3,...,y^N))

现在问题就转换为找一个向量(old{w})使得(old{A}old{w}-hat{old{y}} = old{e})最小

3. 求解线性代数问题

要使(old{e})最小,即是(old{e})垂直于(old{A})的向量空间,则有:(old{A}^Told{e}=old{0})

求解得到(old{w}=(old{A}^Told{A})^{-1} old{A}^That{old{y}})

原文地址:https://www.cnblogs.com/YajunRan/p/11494341.html