本节为吴恩达教授机器学习课程学习第一部分:线性回归(1),包括:问题定义,最小均方算法,批梯度下降,随机梯度下降及其python实现。

   给定一个映射函数hθ(x)h_{\theta}(x)hθ​(x),并令x0=1x_0=1x0​=1,有:

  其中,x1(i)x_1^{(i)}x1(i)​为训练集中第iii个样本的第一个影响因素,θ\thetaθ则包含了所有影响因素对应的权重/参量。另外,为了衡量该映射函数与真实标签yyy的接近程度,定义如下代价函数:

1. 最小均方算法

  为了选定θ\thetaθ来最小化J(θ)J(\theta)J(θ),引入梯度下降算法,它以θ\thetaθ某个特定的初值开始,不断对其根据下式迭代更新:

  其中α\alphaα为学习率,表示更新的幅度,为了更方便的实现梯度下降算法,需根据符合函数的链式求导法则对上式进行如下变形:

  从而得到单个样本条件下参数θ\thetaθ的更新规则:

  这个规则也成为最小均方法法则(LMS,least mean squares)。
  上面更新规则是针对单个样本的条件,当训练集存在多个样本时,有两种方式来应对,方式一即批梯度下降算法

  批梯度下降算法在每次迭代中都会用到训练集中的每一个样本的信息,使得最终θ\thetaθ收敛到全局最优值,代价即庞大的运算量,python代码如下所示:

  方式二即随机梯度下降算法

  该方式每次迭代只选用训练集中的一个样本对参数进行更新,可能无法收敛到全局最优解,但实践中,最优解附近的解大部分情况也是合理够用的,随机梯度下降算法python代码如下:


欢迎扫描二维码关注微信公众号 深度学习与数学   [每天获取免费的大数据、AI等相关的学习资源、经典和最新的深度学习相关的论文研读,算法和其他互联网技能的学习,概率论、线性代数等高等数学知识的回顾]

吴恩达教授机器学习课程学习【一】- 线性回归(1)相关推荐

  1. 吴恩达Deeplearning.ai课程学习全体验:深度学习必备课程 By 路雪2017年8月14日 11:44 8 月 8 日,吴恩达正式发布了 Deepleanring.ai——基于 Cours

    吴恩达Deeplearning.ai课程学习全体验:深度学习必备课程 By 路雪2017年8月14日 11:44 8 月 8 日,吴恩达正式发布了 Deepleanring.ai--基于 Course ...

  2. 吴恩达《机器学习》学习笔记十一——神经网络代码

    吴恩达<机器学习>学习笔记十一--神经网络代码 数据准备 神经网络结构与代价函数· 初始化设置 反向传播算法 训练网络与验证 课程链接:https://www.bilibili.com/v ...

  3. 吴恩达《机器学习》学习笔记十——神经网络相关(2)

    吴恩达<机器学习>学习笔记十--神经网络相关(2) 一. 代价函数 二. 反向传播算法 三. 理解反向传播算法 四. 梯度检测 五. 随机初始化 1.全部初始化为0的问题 2.随机初始化的 ...

  4. 吴恩达《机器学习》学习笔记九——神经网络相关(1)

    吴恩达<机器学习>学习笔记九--神经网络相关(1) 一. 非线性假设的问题 二. 神经网络相关知识 1.神经网络的大致历史 2.神经网络的表示 3.前向传播:向量化表示 三. 例子与直觉理 ...

  5. 吴恩达《机器学习》学习笔记七——逻辑回归(二分类)代码

    吴恩达<机器学习>学习笔记七--逻辑回归(二分类)代码 一.无正则项的逻辑回归 1.问题描述 2.导入模块 3.准备数据 4.假设函数 5.代价函数 6.梯度下降 7.拟合参数 8.用训练 ...

  6. 吴恩达《机器学习》学习笔记六——过拟合与正则化

    吴恩达<机器学习>学习笔记六--过拟合与正则化 一. 过拟合问题 1.线性回归过拟合问题 2.逻辑回归过拟合问题 3.过拟合的解决 二. 正则化后的代价函数 1.正则化思想 2.实际使用的 ...

  7. 吴恩达《机器学习》学习笔记五——逻辑回归

    吴恩达<机器学习>学习笔记五--逻辑回归 一. 分类(classification) 1.定义 2.阈值 二. 逻辑(logistic)回归假设函数 1.假设的表达式 2.假设表达式的意义 ...

  8. 吴恩达《机器学习》学习笔记四——单变量线性回归(梯度下降法)代码

    吴恩达<机器学习>学习笔记四--单变量线性回归(梯度下降法)代码 一.问题介绍 二.解决过程及代码讲解 三.函数解释 1. pandas.read_csv()函数 2. DataFrame ...

  9. 吴恩达《机器学习》学习笔记三——多变量线性回归

    吴恩达<机器学习>学习笔记三--多变量线性回归 一. 多元线性回归问题介绍 1.一些定义 2.假设函数 二. 多元梯度下降法 1. 梯度下降法实用技巧:特征缩放 2. 梯度下降法的学习率 ...

  10. 吴恩达《机器学习》学习笔记二——单变量线性回归

    吴恩达<机器学习>学习笔记二--单变量线性回归 一. 模型描述 二. 代价函数 1.代价函数和目标函数的引出 2.代价函数的理解(单变量) 3.代价函数的理解(两个参数) 三. 梯度下降- ...

最新文章

  1. 多年没有管理的技术博客了,即日起开始管理起技术博客
  2. 牛客练习赛32 -- Xor Path
  3. java简单编译器源代码_25行代码实现一个简单的编译器
  4. 基于云平台的家居综合监测管理系统的设计与实现
  5. leetcode130. 被围绕的区域
  6. Spring Cloud微服务之模块依赖修改(六)
  7. 2018-03-28 从人机交互角度看中文编程:#39;打开微信#39;
  8. vscode终端无法识别node
  9. 工业上 计算机控制系统分为哪两大类,控制仪表及装置——考试复习题
  10. linux运行getch吗,怎么样在linux下,实现getch函数功能
  11. tinyXml解析XML文件
  12. uniapp canvas 刮刮乐
  13. js正则表达式之 (?=) (?!)
  14. Exceptions In Java
  15. R 语言怎么保存工作目录到当前路径_第一讲 R基本介绍及安装
  16. 浅析代理IP与VPS
  17. UG7.5三四五轴编程+后处理讲解视频教程
  18. 十一、Word参考文献的跳转引用
  19. Qbr 模方神器测试问题
  20. 找不到模块“XXX”或其相应的类型声明

热门文章

  1. 查询视图遇见的问题,以及访问另一个数据库的表
  2. 学习笔记:Unity战斗卡牌游戏(三)-----代码加载预设 及 Tween动画使用及播放回掉...
  3. log4j2 使用详解 (转)
  4. Shell script 笔记
  5. 反编译那些事儿(六)—所编译得.class文件带有$符号
  6. 如何解决第三方JavaScript引入工程后报错
  7. 使用javadoc命令制作帮助文档(API)
  8. /dev/mapper/VolGroup-lv_root空间爆满解决
  9. 43. 算法调用优先于手写的循环
  10. Ribbon负载均衡源码解读