Linear Regression Problem

Linear Regression Problem

  • 直观的概念:对一个客体的多个特征x=(x0,x1,,xd)\bold x = (x_0, x_1, \ldots, x_d),使用加权和计算得到一个实数值作为结果:yi=0dwixiy \approx \sum_{i=0}^d w_i x_i(不需要像感知器一样做进一步的符号判断,即分类)
  • 线性回归假设:h(x)=wTxh(\bold x) = \bold w^T \bold x
  • 误差衡量:平方误差err(y^,y)=(y^y)2err(\hat y, y) = (\hat y - y) ^ 2

Linear Regression Algorithm

  • 线性回归的样本内误差Ein(w)=1Nn=1N(wTxnyn)2=1NXwy2E_{in}(\bold w) = \frac 1N \sum_{n=1}^N(\bold w^T \bold x_n - y_n)^2= \frac 1N \| \bold X \bold w - \bold y\|^2
  • 求梯度
    • Ein(w)=1NXwy2=1N(wTXTXw2wTXTy+yTy)E_{in}(\bold w) = \frac 1N \| \bold X \bold w - \bold y\|^2 = \frac 1N (\bold w^T \bold X^T \bold X \bold w - 2 \bold w^T \bold X^T \bold y + \bold y^T \bold y)
    • Ein(w)=2N(XTXwXTy)\nabla E_{in}(\bold w) = \frac 2N(\bold X^T \bold X \bold w - \bold X^T \bold y)
  • 对可逆的XTX\bold X^T \bold X
    • 唯一解:wlin=(XTX)1XTy=Xy\bold w_{lin} = (\bold X^T \bold X)^{-1}\bold X^T \bold y = \bold X^\dagger \bold yX\bold X^\daggerd+1d+1个特征值为1)
    • 普遍情形:一般情况下都有Nd+1N \gg d+1,逆矩阵存在
  • 没有反矩阵存在:
    • 可能有多个解:wlin=Xy\bold w_{lin} = \bold X^\ast \bold y,以其他方式定义X\bold X^\ast

Generalization

  • 线性回归是一种学习算法:
    • EinE_{in}很小
    • EoutE_{out}也很小
    • 隐式地迭代“伪逆”过程
  • 另一种解释方法:Ein{E_{in}}的平均值
    • Eˉin=ϵDPN{Ein(wLIN w.r.t. D)}\bar E_{in} = \epsilon_{\mathcal D \sim P^N} \{ E_{in}(\bold w_{LIN} \ w.r.t. \ \mathcal D) \}
    • 上式可表示为noise level(1d+1N)\text{noise level} \cdot (1 - \frac {d + 1} {N}),即数据量越大越接近噪声水平
    • 还有Eˉout=noise level(1+d+1N)\bar E_{out} = \text{noise level} \cdot (1 + \frac {d + 1} {N})
  • 学习曲线
    • NN \to \infty时,两个误差都收敛于σ2(noise level)\sigma^2(\text{noise level})
    • 泛化误差期望:2d+1N2 \frac{d + 1}{N}
    • 当噪声不是很大时,学习确实发生了

Coursera - 机器学习基石 - 课程笔记 - Week 9

Linear Regression for Binary Classification

  • 可否使用线性回归来完成二元分类
  • 可以证明err01errsqrerr_{0-1} \le err_{sqr}
  • 可以使用线性回归的平方误差给出EoutE_{out}的更宽松上界err^\widehat {err}
  • 相对于二元分类PLA算法这一NP任务,线性回归求得最佳解的效率更高
    • 使用上界的松紧程度权衡算法效率
  • 思路:可以先使用线性回归达到一个足够好的程度作为初始状态进行PLA

相关文章: