Coursera-吴恩达机器学习课程笔记-Week3
logistic regression
Binary classification problems
logistic regression 是一个分类算法
Hypothesis function
decision boundary 决策边界
与线性回归算法类似,先了解logistic回归算法的表达式
然后是它的cost function
代价函数本质上就是对每一个训练样本计算真实值和预测值的差距,差距大则代价函数的取值也大(这就是对算法的大惩罚);反之,预测值接近真实值,代价函数也小。下面的函数满足这个条件:
整理得到:
最后用梯度下降min代价函数可以求参
其他最小化代价函数的方法(高级优化)
Conjugate gradient(共轭梯度法)、BFGS (变尺度法) 和L-BFGS (限制变尺度法) 等方法可以用来代替梯度下降法来最小化logistic回归的代价函数。
下面是这些高级方法的优点和缺点:
Multi-class classification problems
面对多分类问题, 同样用logistic回归算法。
有n个分类,就用n个logistic回归分类器,每一次把一个类和其他类看作二元分类,进行n次就可以解决多分类问题。
算法模型训练过后一般会有两种情况:
- 欠拟合 underfitting ——高偏差 high bias
- 过拟合 overfitting ——高方差 high variance -> 泛化能力差
正则化(Regularization)
如何解决过拟合问题:
- 舍弃一些不能帮助我们正确预测的特征。可以是手工选择保留哪些特征,或者使用一些模型选择的算法来帮忙(例如PCA)
- 正则化。 保留所有的特征,但是减少参数的大小(magnitude)。
正则化:在代价函数里加入正则化项。对部分特征参数加入惩罚,使他们参数值接近0。
正则化的线性回归
最小化线性回归的cost function有两种方式:梯度下降和正规方程。
下面是梯度下降的方式:
上面矩阵的尺寸是(n+1)*(n+1)
正则化的logistic回归
正则化后的函数:
正则化总结
无论是对线性回归还是logistic回归。正则化都是在原有的cost function里加入新的正则项来惩罚一些参数(降低参数大小),然后在根据新的cost function利用梯度下降或其他优化方法来最小化代价函数。
Coursera-吴恩达机器学习课程笔记-Week3的更多相关文章
- ML:吴恩达 机器学习 课程笔记(Week3~4)
Logistic Regression Regularization Neural Networks: Representation
- ML:吴恩达 机器学习 课程笔记(Week1~2)
吴恩达(Andrew Ng)机器学习课程:课程主页 由于博客编辑器有些不顺手,所有的课程笔记将全部以手写照片形式上传.有机会将在之后上传课程中各个ML算法实现的Octave版本. Linear Reg ...
- Coursera 吴恩达 机器学习 学习笔记
Week 1 机器学习笔记(一)基本概念与单变量线性回归 Week 2 机器学习笔记(二)多元线性回归 机器学习作业(一)线性回归——Matlab实现 机器学习作业(一)线性回归——Python( ...
- ML:吴恩达 机器学习 课程笔记(Week7~8)
Support Vector Machines Unsupervised Learning Dimensionality Reduction
- ML:吴恩达 机器学习 课程笔记(Week5~6)
Neural Networks: Learning Advice for Applying Machine Learning Machine Learning System Design
- ML:吴恩达 机器学习 课程笔记(Week9~10)
Anomaly Detection Recommender Systems Large Scale Machine Learning
- Coursera-吴恩达机器学习课程笔记-Week2
参考资料: 吴恩达教授机器学习课程 机器学习课程中文笔记 Week2 一. 多变量线性回归(Linear Regression with Multiple Variables) 多变量就时当一个exa ...
- Coursera-吴恩达机器学习课程笔记-Week1
参考资料: 吴恩达教授机器学习课程 机器学习课程中文笔记 Week 1 一. 引言 机器学习模型可分为监督学习Superviese learning(每个数据集给出了正确的值)和无监督学习Unsupe ...
- Machine Learning|Andrew Ng|Coursera 吴恩达机器学习笔记
Week1: Machine Learning: A computer program is said to learn from experience E with respect to some ...
随机推荐
- DE1-GHRD
新建工程socs_system 进入菜单选择Tools---Qsys 配置hps系统 首先选择 在更改参数 配置hps的sdram各项参数 将名字改为hps_0 这样hps配置完成:在配置存储器和其他 ...
- 关于QImage和IplImage之间转换的实现
在嵌入式系统中实现qt和opencv的处理,最基础的就是QImage和IplImage之间的转换.这样两者就可以进行一起使用图像数据,从而达到利用qt显示和利用opencv处理的功能. 下面我将贴出代 ...
- Bootstrap框架学习
Bootstrap框架个人总结 https://blog.csdn.net/To_Front_End/article/details/51142716 Bootstrap 教程 https://www ...
- cc.Sprite 与 ccui.ImageView 改变图片
sprite.setTexture(fileName); imageView.loadTexture(fileName);
- Http接口安全设计
1. 完全开放 2. 基本验证 appid(企业唯一标识)+args(请求参数)->sign(摘要). 3. 时效控制 appid+args+timestamp(时间戳)->sign. ...
- form表单提交且接口回调显示提交成功
前端: <form method="post" enctype="multipart/form-data" id="formSubmit&quo ...
- Linux上后台运行node和springboot服务
环境:Ubuntu18.04 阿里云云服务器 尝试全局安装forever和pm2均失败,最后以linux自带的nohub启动,以前同样用nohub启动springboot 命令: nohup npm ...
- unidac 断线重连
unidac 断线重连 因为物理网络断连或数据库超时踢掉连接等原因,Tuniconnection建立的连接可能会断掉. 在默认状态下,程序会抛出异常框,并罢工. 其实Tuniconnection是可以 ...
- C++四种初始化方式
1. 直接初始化直接调用与实参匹配的构造函数,形式如“T t(u)”.2. 拷贝初始化:复制初始化首先使用指定构造函数创建一个临时对象,然后用复制构造函数将那个临时对象复制到正在创建的对象”,形式如“ ...
- JS字符串的不可变性
js中的字符串特性->不可变性,字符串的值是不可变的 1.改变字符串中的字符 var str = "hello"; str[1] = "W"; conso ...