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

machine learning (2)-linear regression with one variable的更多相关文章

  1. Machine Learning #Lab1# Linear Regression

    Machine Learning Lab1 打算把Andrew Ng教授的#Machine Learning#相关的6个实验一一实现了贴出来- 预计时间长度战线会拉的比較长(毕竟JOS的7级浮屠还没搞 ...

  2. CheeseZH: Stanford University: Machine Learning Ex1:Linear Regression

    (1) How to comput the Cost function in Univirate/Multivariate Linear Regression; (2) How to comput t ...

  3. 【Coursera - machine learning】 Linear regression with one variable-quiz

    Question 1 Consider the problem of predicting how well a student does in her second year of college/ ...

  4. Machine learning(2-Linear regression with one variable )

    1.Model representation Our Training Set [训练集]: We will start with this ''Housing price prediction'' ...

  5. Machine Learning 学习笔记2 - linear regression with one variable(单变量线性回归)

    一.Model representation(模型表示) 1.1 训练集 由训练样例(training example)组成的集合就是训练集(training set), 如下图所示, 其中(x,y) ...

  6. [Machine Learning] 单变量线性回归(Linear Regression with One Variable) - 线性回归-代价函数-梯度下降法-学习率

    单变量线性回归(Linear Regression with One Variable) 什么是线性回归?线性回归是利用数理统计中回归分析,来确定两种或两种以上变量间相互依赖的定量关系的一种统计分析方 ...

  7. Stanford机器学习---第二讲. 多变量线性回归 Linear Regression with multiple variable

    原文:http://blog.csdn.net/abcjennifer/article/details/7700772 本栏目(Machine learning)包括单参数的线性回归.多参数的线性回归 ...

  8. Stanford机器学习---第一讲. Linear Regression with one variable

    原文:http://blog.csdn.net/abcjennifer/article/details/7691571 本栏目(Machine learning)包括单参数的线性回归.多参数的线性回归 ...

  9. 机器学习 (一) 单变量线性回归 Linear Regression with One Variable

    文章内容均来自斯坦福大学的Andrew Ng教授讲解的Machine Learning课程,本文是针对该课程的个人学习笔记,如有疏漏,请以原课程所讲述内容为准.感谢博主Rachel Zhang的个人笔 ...

随机推荐

  1. docker+k8s基础篇五

    Docker+K8s基础篇(五) service资源介绍 A:service资源的工作特性 service的使用 A:service字段介绍 B:ClusterIP的简单使用 C:NodePort的简 ...

  2. 03 Mybatis框架---学习笔记1--框架的概念及优势

    1.框架的概念 框架其实就是某种应用的半成品,就是一组组件,供你选用完成你自己的系统.简单说就是使用别人搭好的舞台,你来做表演.而且,框架一般是成熟的,不断升级的软件.框架是我们软件开发中的一套解决方 ...

  3. Docker创建镜像 并推拉Harbor

    创建镜像 一.根据dockerfile创建镜像 文件详解 1.mkdir dockerfile/lib/centos7base/ 创建目录 2.创建Dockerfile vim Dockerfile ...

  4. Django——用户认证

    Django--用户认证 用户与Authentication(身份验证) Django 用户认证系统处理用户帐号,组,权限以及基于cookie的用户会话. 这个系统一般被称为 auth/auth (认 ...

  5. xorm -Get方法实例

    查询单条数据使用Get方法,在调用Get方法时需要传入一个对应结构体的指针,同时结构体中的非空field自动成为查询的条件和前面的方法条件组合在一起查询 package main import ( & ...

  6. 使用 Angular RouteReuseStrategy 缓存(路由)组件

    使用 Angular RouteReuseStrategy 缓存组件 Cache components with Angular RouteReuseStrategy RouteReuseStrate ...

  7. 使用PHP开发HR系统(5)

    本节讲述如何拆分页面以及使用jquery和ajax实现局部刷新. =================================================================== ...

  8. java 简易日历表

    在页面上输出1900年以后任意一年的简易日历表 package text3; import java.util.Scanner; public class MyCalendar { public st ...

  9. vue 项目中assets 和static的区别

    一.Webpacked Assets 为了回答这个问题,我们首先需要了解Webpack如何处理静态资产.在 *.vue 组件中,所有模板和CSS都会被 vue-html-loader 及 css-lo ...

  10. asp.net mvc 使用bootstrap的模态框插件modal

    编译器:vs2012 jquery版本:jquery-1.10.2.js bootstrap:bootstrap.js v3.0.0,包含modal插件 我们要实现一个使用模态框展示从服务器获取的数据 ...