在求使得代价函数最小的参数θ中,也可以不用梯度下降法进行逐步递归求解,可以使用正规方程法(Normal Equation)一次性算出θ。用这种方法不需要进行特征缩放(feature scaling)。在特征数少的情况(吴恩达教授的标准是一万以下)用正规方程法更好,但如果特征数较多,计算量很大,会比较慢,这个时候还是采用梯度下降法比较好。

特征方程法介绍:

(1)现做如下规定:

假设有m个样本实例,每个样本有n个特征,则训练样本可记为:

其中表示第i个样本的第j个特征。

输出可记为:

参数可记为:

拟合的函数h(x)为:

加了正则化的代价函数为:

分式第一项为最初代价函数,第二项为正则化,令优化后的参数的值较小,以防止过拟合

代价函数的矩阵表示如下:

求导可得:

(2)第一项的求导:

有定理如下:若u=u(x),v=v(x),A不是x的函数,则有:

因此,第一项的求导为:

(3)第二项的求导:

第二项展开:

求导得:

(4)第三项的求导:

第三项展开:

求导得:

(5)第四项的求导:

(6)第五项的求导:

第五项展开:

这里的θ是从1开始的,但实际上从0开始也是可以的,这里为了与吴恩达教授课程保持一致在正则化的时候从1开始,即忽略偏置的正则化

因此第五项求导为:

(7)因此,将上面的求导整理可得:

从而得到:

其中:

对于非正则化的正规方程则:

另外,如果有 一定不是奇异矩阵,可逆。因此,正则化还可以解决不可逆的问题

如果是非正则化,则可能是有两列是线性相关的,删除一个特征;亦或者可能是特征值过多,则删除一些特征值。

【机器学习基础】正规方程法(Normal equation)(正则化和非正则化)——吴恩达课程笔记相关推荐

  1. 干货|机器学习零基础?不要怕,吴恩达课程笔记第三周!逻辑回归与正则

    吴恩达Coursera机器学习课系列笔记 课程笔记|吴恩达Coursera机器学习 Week1 笔记-机器学习基础 干货|机器学习零基础?不要怕,吴恩达机器学习课程笔记2-多元线性回归 1 Logis ...

  2. Ex6_机器学习_吴恩达课程作业(Python):SVM支持向量机(Support Vector Machines)

    Ex6_机器学习_吴恩达课程作业(Python):SVM支持向量机(Support Vector Machines) 文章目录 Ex6_机器学习_吴恩达课程作业(Python):SVM支持向量机(Su ...

  3. 机器学习吴恩达课程总结(一)

    文章目录 1. 第一章 简介 1.1 机器学习(Machine Learning) 1.2 有监督学习(Supervised Learning) 1.3 无监督学习(Unsupervised Lear ...

  4. 机器学习和深度学习到底怎么学?顶尖专家吴恩达告诉你

    机器学习和深度学习到底怎么学? 在外国版知乎上,有位网友问:新手如何学习机器学习?学习完MOOC的课程后有没有能力阅读研究论文或者真正的做出一点研究成果? 这个困惑很多人的问题吴恩达给出了详细的回答, ...

  5. 机器学习代码实现:多元线性回归(梯度下降法)吴恩达课后题目

    数据集 数据集如图:(面积,卧室数,价格),来自机器学习吴恩达的课后作业 预测价格 数据集下载:链接: https://pan.baidu.com/s/1MzUq1jPVlic5kkTGsXY87Q? ...

  6. 正规方程法(Normal Equation)

    对于如下图中红框中的特征及其对应结果(房屋价格),添加一列特征值x0,构造成一个矩阵X 令Y为n维列向量:价格矩阵. 其最佳的θ向量可由下式计算得出: 其数学证明参考: 超定方程的最小二乘解 如果在使 ...

  7. 逻辑回归python正则化 选择参数_吴恩达机器学习笔记(三)——正则化(Regularization)...

    1.过拟合的问题(Over-fitting) 如果我们有非常多的特征,我们通过学习得到的假设可能能够非常好地适应训练集(代价函数可能几乎为0),但是可能会不能推广到新的数据. (1)下图是一个回归问题 ...

  8. 机器学习吴恩达课程总结(五)

    文章目录 15. 第十五章 异常检测(Anomaly Detection) 15.1 问题动机 15.2 高斯分布(Gaussian distribution) 15.3 异常检测算法 15.4 开发 ...

  9. 机器学习-吴恩达 p85 笔记

  10. 机器学习-吴恩达网易云课堂笔记

    机器学习-吴恩达网易云课堂笔记 Machine Learning: A computer program is said to learn from experience E with respect ...

最新文章

  1. 在SQL Server中调用.NET程序集
  2. java 中的gc方法
  3. 虚函数与纯虚函数的区别
  4. 数据结构与算法笔记(十一)—— 归并排序
  5. leetcode645. 错误的集合
  6. 用这10个小技巧加速Python编程
  7. UnityShader15:前向渲染
  8. linux定时任务的设置 crontab 配置指南
  9. 深入理解Java的反射与动态代理
  10. Linux Netcat command – The swiss army knife of net
  11. Java String replace replaceAll replaceFirst 执行效果笔记
  12. 记事本写的python怎么运行_Python小白常见难题 如何运行Python
  13. 基于微信小程序的小区防疫监管小程序-计算机毕业设计源码+LW文档
  14. 汇编(五)堆栈平衡和寻址方式-ESP EBP
  15. 什么是熔断? 熔断有哪几种状态 断路器的工作原理、如何开启熔断?
  16. html5 基本布局+新标签+新选择器 + 线性渐变
  17. Java版Word开发工具Aspose.Words功能解析:查找和替换Word文档中的文本
  18. 58同城 Java 笔(面)试题(整理自群友)
  19. 解决编辑页眉页脚时,页码连续问题
  20. Android自定义View之getTextBounds()

热门文章

  1. matlab 蜗杆轮廓,基于MATLAB的直廓环面蜗杆的可视化
  2. 威纶通触摸屏与仪表通讯_威纶通触摸屏与英威腾变频器通信详解
  3. android 公式编辑器,公式编辑器
  4. [BeiJing2006]狼抓兔子
  5. 推荐一款基于.Net Core开发简约漂亮的 WPF UI库
  6. 双臂Matlab仿真建模:正运动学
  7. 大数据课程30天掌握 spark内存计算(python )-徐培成-专题视频课程
  8. 【单片机】按键消抖及原理(硬件和软件方法详解)
  9. uniapp使用阿里巴巴在线图标库
  10. 图书借阅系统软件测试实验报告,C 大作业--图书管理系统-实验报告.doc