zoukankan      html  css  js  c++  java
  • 机器学习笔记二:监督学习应用——梯度下降法

    注:以下所有内容均来自 网易公开课Andrew Ng的机器学习课程

    第二课主要讲以下三个方面的内容

    1、linear regression(线性回归)

    2、Gradient descent(梯度下降)

    3、Normal equations(正规方程组)

    Linear regression

    notation:

      m = 训练样本数目

      x = 输入变量(特征)

      y = 输出变量(目标变量)

      (x, y) = 样本

      h(x) = 预测函数

     

    线性回归的一般步骤:根据训练集合生成学习算法,构造假设函数,最后根据输入的x得出输出y

     对于梯度下降算法,构造函数J(theta),线性回归的目的就是找到一组参数theta使得J(theta)取得最小值

    有许多算法可以实现 J(theta) 取最小值

    核心思想是先设置theta的一个初始值,我们需要样本来一步步修正theta的初始值, 下面介绍两种算法

    Gradient Desecent(梯度下降算法)

    其中 α 是梯度下降的步长

    以上推导是对一个样本进行迭代,通常我们通过多样本反复迭代修正theta的值,所以最终一次迭代公式如下:

    以上称为batch gradient desecent算法,适用于样本数量比较少的情况。

    样本数量庞大的时候,改进的梯度算法称为stochastic gradient descent (also incremental gradient descent)

    即每次只遍历一个样本去修改theta的值。

    Normal equations(正规方程组)

     首先补充几个线性代数中的fact:

    下面是推导过程:

    最后,令导数值等于0,得到:

    此即为正规方程,此时的theta就是让J(theta)最小时的theta的值。

    注:在求解 theta转置 x转置 x theta的导数时,可以依据上面给出的公式(4),也可以将theta和theta转置分别看成是求导对象,求导完成再求和,结果是一样的嘿嘿。

  • 相关阅读:
    A Simple Problem with Integers poj 3468 多树状数组解决区间修改问题。
    Fliptile 开关问题 poj 3279
    Face The Right Way 一道不错的尺取法和标记法题目。 poj 3276
    Aggressive cows 二分不仅仅是查找
    Cable master(二分题 注意精度)
    B. Pasha and String
    Intervals poj 1201 差分约束系统
    UITextField的快速基本使用代码块
    将UIImage转换成圆形图片image
    color转成image对象
  • 原文地址:https://www.cnblogs.com/eraserNut/p/6360311.html
Copyright © 2011-2022 走看看