正规方程

正规方程用于一次性求解 \(\theta\) 的最优值。

在计算的时候,将数据集构造为一个矩阵(第一列为 \(x_0\) 均等于\(1\)):

通过公式:

\[\theta = (X^TX)^{-1}X^Ty\]

计算得到最优解 \(\theta\)

关于\(X\)的设计

对于第 \(i\) 组数据:

\[x^{(i)} = \begin{bmatrix}x_0^{(i)} \\x_1^{(i)} \\x_2^{(i)} \\\vdots \\x_n^{(i)}\end{bmatrix}\in \mathbb{R}^{n+1}\quad (1\le i\le m)\]

将其转置后置于 \(X\) 的第 \(i\) 行:

\[X = \begin{bmatrix}\cdots (x^{(1)})^T \cdots \\\cdots (x^{(2)})^T \cdots \\\vdots \\\cdots (x^{(m)})^T \cdots \\\end{bmatrix}\]

\(X\)\(m\times(n+1)\) 规模的矩阵。

正规方程和梯度下降的区别梯度下降

  • 需要选择合适的学习率 \(\alpha\)
  • 需要特征缩放
  • 需要迭代计算
  • 当问题规模较大时也可以正常运行

正规方程

  • 不需要选择学习率 \(\alpha\)
  • 不需要特征缩放
  • 不需要迭代计算
  • 需要进行矩阵的求逆和乘法运算,时间复杂度较高
  • 当问题规模较大时,计算较慢

二者如何选择

经验数值:一般当 \(n\le 10000\) 时,正规方程优于梯度下降。

正规方程中的矩阵不可逆情况

在正规方程的计算过程中,需要对矩阵 \(X\) 求解逆矩阵。

矩阵不可逆的充分必要条件:矩阵 \(X\) 的列(行)向量组线性相关。

在正规方程的计算过程中,可能出现矩阵不可逆的情况有以下两种:

  1. 包含了多余的特征

有多余的特征意味着矩阵 \(X\) 的其中一个特征可以由另外的特征表示。即矩阵 \(X\) 的列向量组线性相关,矩阵不可逆。

  1. 特征太多,多于数据数量