zoukankan      html  css  js  c++  java
  • machine learning (2)-linear regression with one variable

    machine learning- linear regression with one variable(2)

    • Linear regression with one variable = univariate linear regression: 由一个输入变量预测出一个output (regression problem预测连续的值).                                  single input<--->single output 
    1. training set: 机器进行学习的元素集

              

    • univariate linear regression = Linear regression with one variable 
    • The Hypothesis Function(for linear regression):,这是一个关于x的函数(θ0与θ1是固定的).这是一个假设的函数(求出假设的 θ0 和 θ1,这个是我们的目标,愈近的接近真实的y值),这样可以根据input value(x)来计算output value(y)

    • Cost Function(for linear regression): (y为真实的值),这是一个关于θ1与θ2(parameters)的函数,用来衡量假设函数(hypothesis function)的准确性,目的是选择使cost function最小的θ1与θ2的值,这样就能确定假设函数(Hypothesis Function)了.

      • 图片 
    • Squared error function = cost function
    • Mean squared error = cost function
    • Gradient Descent: 一种用来自动提高hypothesis function准确性的方法,使cost function取最小值(不仅适用于linear regression,可用于整个机器学习).

    • 图片 (非cost function for linear regression,一般情况下的J(θ01))

    • 由上图可知,不同的初始值,利用gradient descent可能得出不同的局部最优解(有不同的极小值)

         大概方法步骤:

          function: J(θ01

          目标: 求出J(θ01)的最小值

    1.  先预设 θ01的值    
    2.  利用gradient descent反复求θ01的值    
    3.  直至θ01的值收敛于一个确定的值(J(θ01)的极小值),(收敛是因为当到达极值时,cost function的偏导为0,这时会收敛)
      • learning rate: ∂(大于0),朝着cost function的梯度方向以a(learning rate)系数倍数逼近cost function(θ01为参数)的最小值。
        • learning rate太小:使求出收敛的值时迭代的次数变多,使收敛过程变慢(下图是假设θ0已知,θ1未知时的cost function图形,若都未知则图应是立体的,如上图)
        • learning rate太大:可能会导致无法收敛,得不到正确的值(下图是假设θ0已知,θ1未知时的cost function图形,若都未知则图应是立体的,如上图)
      • The gradient descent equation  (j=0,1)  
        • :=为赋值操作,=为truth assertion操作
        • 要同时更新θ01的值(update simultaneously),即算出θ0的新值后,不能利用这个新值的J(θ01)去算θ1,而是同时更新θ0,θ1
        • 求的是局部最优解(即cost function的极小值,但是不是最小值)
        • 但是由cost function for linear regression的图(像一个碗状)可知,它只有一个极小值(也是它的最小值),所以对于linear regression问题,gradient descent求的是cost function的最小值
      • Gradient Descent for Linear Regression:(是将h(x)=θ01x和J(θ0,θ1)代入求导求得)

        • cost function for linear regression由它的图(上图)可知,它没有局部极小值,只有一个全局最小值。所以用gradient descent求出的是使cost function取最小值的θ01
      • "batch" gradient descent = gradient descent algorithm,因为在计算θ01时是利用了所有的trainning set,帮称为batch
  • 相关阅读:
    eclipse插件egit安装使用
    github 项目版本控制
    div box container随主体内容自动扩展适应的实现
    持续构建与每日集成
    Xshell连接Linux下Oracle无法回退的解决办法
    Java Data JPA +hibernate 保存或者是查询遇到的坑
    C#控件DropDownList下拉列表默认打开
    window.open居中显示
    CSV文件转JSON
    Vue自定义事件,$on(eventName) 监听事件,$emit(eventName) 触发事件
  • 原文地址:https://www.cnblogs.com/yan2015/p/4505618.html
Copyright © 2011-2022 走看看