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转置分别看成是求导对象,求导完成再求和,结果是一样的嘿嘿。

  • 相关阅读:
    Linux用root强制踢掉已登录用户;用fail2ban阻止ssh暴力破解root密码
    JDBC开发
    JSP指令与动作元素
    Jsp——状态管理
    JavaBeans
    JSP——九大内置对象
    Jsp基础语法
    WEB-INF目录结构
    JavaWeb简介
    UML——初识
  • 原文地址:https://www.cnblogs.com/eraserNut/p/6360311.html
Copyright © 2011-2022 走看看