【机器学习】课程笔记02_单变量线性回归(Linear Regression with One Variable)

单变量线性回归

  • 模型描述(Model Representation)
  • 代价函数(Cost Function)
  • 梯度下降(Gradient Descent)
  • 线性回归的梯度下降

模型描述(Model Representation)

  • 线性回归(Linear Regression)

一些符号:

​ m:训练样本的数量

​ x’s:输入变量

​ y’s:输出变量(预测的目标变量)

​ (x, y):一个训练样本

​ (x(i), y(i)):第i个训练样本

  • 数据集 -> 学习算法 -> 函数h(hypothesis,用来预测输入x所对应的y)

【机器学习】课程笔记02_单变量线性回归(Linear Regression with One Variable)_第1张图片

  • 找到函数 hθ(x)=θ01x 与数据集相拟合

代价函数(Cost Function)

  • 假设函数(Hypothesis) h θ ( x ) = θ 0 + θ 1 x h_\theta(x)=\theta_0+\theta_1 x hθ(x)=θ0+θ1x

  • 参数(Parameters) θ 0 , θ 1 \theta_0, \theta_1 θ0,θ1

  • 代价函数(Cost Function) J ( θ 0 , θ 1 ) = 1 2 m ∑ i = 1 m ( h θ ( x ( i ) ) − y ( i ) ) 2 J(\theta_0,\theta_1)=\frac 1 {2m} \displaystyle \sum^{m}_{i=1}(h_θ(x^{(i)})-y^{(i)})^2 J(θ0,θ1)=2m1i=1m(hθ(x(i))y(i))2

  • 优化目标 m i n i m i z e θ 0 , θ 1   J ( θ 0 , θ 1 ) \displaystyle minimize_{\theta0,\theta1} \ J(\theta0,\theta1) minimizeθ0,θ1 J(θ0,θ1)

    平方误差代价函数是解决回归问题最常用的手段

    最小化问题(减少平均误差):找到θ0和θ1使函数更好地拟合数据。

  • 一个参数(假设θ0=0):

【机器学习】课程笔记02_单变量线性回归(Linear Regression with One Variable)_第2张图片

  • 两个参数

    • 3D-曲面图:

    【机器学习】课程笔记02_单变量线性回归(Linear Regression with One Variable)_第3张图片

    • 等高图(contour plots):

    【机器学习】课程笔记02_单变量线性回归(Linear Regression with One Variable)_第4张图片

梯度下降(Gradient Descent)

  • 梯度下降思路:

    • 给定 θ 0 , θ 1 \theta0,\theta1 θ0,θ1 的初始值(通常 θ 0 = 0 , θ 1 = 0 \theta0=0, \theta1=0 θ0=0,θ1=0
    • 不停地一点点改变 θ 0 , θ 1 \theta0,\theta1 θ0,θ1 的值使 J ( θ 0 , θ 1 ) J(\theta0, \theta1) J(θ0,θ1) 变小直到找到最小值
    • 初值的不同可能会得到两个不同的结果,即梯度下降不一定得到全局最优解
  • 梯度下降算法:

    • α \alpha α 为学习速率(控制更新参数的幅度)

    【机器学习】课程笔记02_单变量线性回归(Linear Regression with One Variable)_第5张图片

    • 同步更新

    【机器学习】课程笔记02_单变量线性回归(Linear Regression with One Variable)_第6张图片

  • 公式由两部分组成: α \alpha α偏导数

    • 偏导数用来计算当前参数对应代价函数的斜率,导数为正则 θ \theta θ减小,导数为负则 θ \theta θ增大,通过这样的方式可以使整体向 θ = 0 \theta=0 θ=0收敛。

    【机器学习】课程笔记02_单变量线性回归(Linear Regression with One Variable)_第7张图片

    • α \alpha α的取值

      • 若太小,梯度下降会很慢。

      • 若太大,梯度下降会越过最低点,甚至可能无法收敛或发散。

【机器学习】课程笔记02_单变量线性回归(Linear Regression with One Variable)_第8张图片

  • θ \theta θ 处于局部最优解时, θ \theta θ 的值将不再更新,因为偏导为0。

【机器学习】课程笔记02_单变量线性回归(Linear Regression with One Variable)_第9张图片

  • 即使 α \alpha α 不变,参数也可能收敛,假设偏导>0,随着接近最小值,偏导逐渐减小,移动的幅度也会变小,所以无需减小 α \alpha α 的值。

  • 结合梯度下降算法和平方差代价函数可以得到一个线性回归的机器学习算法。

线性回归的梯度下降

  • 任务:将梯度下降算法应用到最小化平方差代价函数上。

【机器学习】课程笔记02_单变量线性回归(Linear Regression with One Variable)_第10张图片

  • 梯度下降的过程容易出现局部最优解,但线性回归的代价函数是一个凸函数(convex function),所以总能收敛到全局最优解(只有一个)。
  • Batch梯度下降:每一步梯度下降我们都遍历了整个训练集的样本。

你可能感兴趣的:(机器学习,线性回归,算法)