吴恩达老师机器学习课程chapter03——过拟合与正则化

本文是非计算机专业新手的自学笔记,欢迎指正与其他任何合理交流。

本文仅作速查备忘之用,对应吴恩达(AndrewNg)老师的机器学期课程第七章。



基本概念

特征选取过多,hθ(x)会对训练集学习得过好,以至于对新的样本的判断结果很差。

解决方法有二:

- 减少特征数目
- 手动选择
- 模型选择算法
- 正则化
- 减少某些特征的参数θ,即降低其权重。

正则化

线性回归中的正则化

修改代价函数:

\[J(\theta)=\frac{1}{2 m}\left[\sum_{i=1}^{m}\left(h_{\theta}\left(x^{(i)}\right)-y^{(i)}\right)^{2}
+\lambda \sum_{}^{} \theta_{j}^{2}\right]
\]

于是,进行梯度下降法时候,对于需要参与正则化的θj,其迭代也要做相对的修改,改为:

\[\theta_{j}=\theta_{j}-\alpha\left[\frac{1}{m}
\sum_{i=1}^{m}\left(h_{\theta}\left(x^{(i)}\right)-y^{(i)}\right) x_{j}^{(i)}+
\frac{\lambda}{m} \theta_{j}\right]
\]

进行正规方程法时候,需要作出修改如下:

\[\theta =(X^TX+\lambda diag(a_{1}\cdots a_{m} ))^{-1}X^Ty
\]

其中diag表示对角矩阵,若第j个参数不参与正则化,则aj=0;否则,aj=1。

分类中的正则化

与线性中的同理:

吴恩达老师机器学习课程chapter03——过拟合与正则化的更多相关文章

  1. 机器学习爱好者 -- 翻译吴恩达老师的机器学习课程字幕 http://www.ai-start.com/

    机器学习爱好者 -- 翻译吴恩达老师的机器学习课程字幕 GNU Octave    开源  MatLab http://www.ai-start.com/ https://zhuanlan.zhihu ...

  2. 吴恩达《机器学习》课程笔记——第六章:Matlab/Octave教程

    上一篇  ※※※※※※※※  [回到目录]  ※※※※※※※※  下一篇 这一章的内容比较简单,主要是MATLAB的一些基础教程,如果之前没有学过matlab建议直接找一本相关书籍,边做边学,matl ...

  3. 吴恩达《机器学习》课程总结(5)_logistic回归

    Q1分类问题 回归问题的输出可能是很大的数,而在分类问题中,比如二分类,希望输出的值是0或1,如何将回归输出的值转换成分类的输出0,1成为关键.注意logistics回归又称 逻辑回归,但他是分类问题 ...

  4. 深度学习 吴恩达深度学习课程2第三周 tensorflow实践 参数初始化的影响

    博主 撸的  该节 代码 地址 :https://github.com/LemonTree1994/machine-learning/blob/master/%E5%90%B4%E6%81%A9%E8 ...

  5. 吴恩达《机器学习》课程笔记——第七章:Logistic回归

    上一篇  ※※※※※※※※  [回到目录]  ※※※※※※※※  下一篇 7.1 分类问题 本节内容:什么是分类 之前的章节介绍的都是回归问题,接下来是分类问题.所谓的分类问题是指输出变量为有限个离散 ...

  6. 吴恩达《机器学习》课程总结(18)_照片OCR

    18.1问题描述和流程图 (1)图像文字识别是从给定的一张图片中识别文字. (2)流程包括: 1.文字侦测 2.字符切分(现在不需要切分了) 3.字符分类 18.2滑动窗口 在行人检测中,滑动窗口是首 ...

  7. 吴恩达《机器学习》编程作业——machine-learning-ex1:线性回归

    ❄❄❄❄❄❄❄❄[回到目录]❄❄❄❄❄❄❄❄ 本次编程作业中,需要完成的代码有如下几部分: [⋆] warmUpExercise.m - Simple example function in Octa ...

  8. 跟我学算法-吴恩达老师(超参数调试, batch归一化, softmax使用,tensorflow框架举例)

    1. 在我们学习中,调试超参数是非常重要的. 超参数的调试可以是a学习率,(β1和β2,ε)在Adam梯度下降中使用, layers层数, hidden units 隐藏层的数目, learning_ ...

  9. 跟我学算法-吴恩达老师(mini-batchsize,指数加权平均,Momentum 梯度下降法,RMS prop, Adam 优化算法, Learning rate decay)

    1.mini-batch size 表示每次都只筛选一部分作为训练的样本,进行训练,遍历一次样本的次数为(样本数/单次样本数目) 当mini-batch size 的数量通常介于1,m 之间    当 ...

  10. 跟我学算法-吴恩达老师的logsitic回归

    logistics回归是一种二分类问题,采用的激活函数是sigmoid函数,使得输出值转换为(0,1)之间的概率 A = sigmoid(np.dot(w.T, X) + b ) 表示预测函数 dz ...

随机推荐

  1. maven发布到本地仓库

    <distributionManagement> <repository> <id>localRepository</id> <url>fi ...

  2. DRF限流Throttling

    限流Throttling 可以对接口访问的频次进行限制,以减轻服务器的压力 使用 可以在配置文件中,使用 DEFAULT_THROTTLE_CLASSES 和 DEFAULT_THROTTLE_RAT ...

  3. 解读gitee上的vue3开源项目,并记录不熟悉的API

    1.vue中的getCurrentInstance: 在Vue3中,getCurrentInstance()可以用来获取当前组件实例: 2.vue中使用mitt实现兄弟组件传值: 在vue3中$on, ...

  4. vue实现随机生成图形验证码

    效果展示 安装插件 npm i identify 定义组件 verificationCode.vue <template> <!-- 图形验证码 --> <div cla ...

  5. centos6 编译安装 mysql5.6----------centos7编译安装MySQL5.7

     centos6 编译安装 mysql5.6 安装依赖包 yum install -y ncurses-devel libaio-devel 安装cmake编译工具 cmake 定制功能:存储引擎.字 ...

  6. MySQL Workbench部分出错及可能解决方案

    出错一:8.0.23.0版本,在workbench内建立表eg1,select * from eg1无返回结果,无法向表内导入数据,在如下图的下一步,workbench会直接闪退 可行的办法:(不建议 ...

  7. mysql创建存储过程造数据

    delimiter $$$ DROP PROCEDURE zqtest6; create procedure zqtest6() begin declare i int default 0; set ...

  8. 072_关于Dataloader导入Record的创建时间及修改时间并允许owner是Inactive

    1.在User interface 中 启用 Enable "Set Audit Fields upon Record Creation" and "Update Rec ...

  9. QT控件使用--QPlainTextEdit

    QPlainTextEdit是一个多行文本编辑器,用于显示和编辑多行简单文本. 一些常用的函数有: appendPlainText(const QString) 向 PlainTextEdit 组件添 ...

  10. unixbench测试CPU性能工具

    UnixBench是一个类unix系(Unix,BSD,Linux)统下的性能测试工具,一个开源工具,被广泛用与测试linux系统主机的性能.Unixbench的主要测试项目有:系统调用.读写.进程. ...