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 ...
随机推荐
- crowdfunding项目01——感人的错误
四十搭环境,半个小时下载jar包,网速感人,一个半小时找bug真是感动 首先SSM项目,主要功能进行增删改查 建立父工程和子工程,产生依赖关系 父工程:pom 子工程:jar.war(web工程) 错 ...
- dijkstra堆优化板子
咕咕咕. #include<queue> #include<cstdio> #include<cstring> #include<algorithm> ...
- bzoj4765: 普通计算姬 (分块 && BIT)
最近一直在刷分块啊 似乎感觉分块和BIT是超级棒的搭档啊 这道题首先用dfs预处理一下 得到每一个sum值 此时查询是O(1)的 (前缀和乱搞什么的 但是修改需要O(n) (需要修改该节点所有祖先的 ...
- 文件操作_python
一.基础文件操作读写 1.建立文件对象两种建立对象方式: f=open('文件1','r',encoding='utf8') with open('文件1','r',encoding='utf8') ...
- 2.springboot------微服务
什么是微服务? 微服务是一种架构风格,它要求我们在开发一个应用的时候,这个应用必须构建成一系列小服务的组合:可以通过http的方式进行互通.要说微服务架构,先得说说过去我们的单体应用架构. 单体应用架 ...
- Linux - cron - 基础
概述 cron 相关的理解与使用 背景 最近实在没啥写的了 我写东西, 一般是是这些 看了书过后, 做一些系统的整理 比如之前的 docker 和 git 系列 遇到了实际问题, 解决过程也不是那么顺 ...
- HTML学习(2)编辑器
HTML编辑常用的编辑器:Notepad++.Sublime Text.VS Code 可以使用Emmet插件来提高编码速度. 注:emmet只支持32位的Notepad++. 注意这里要把这两个dl ...
- 每天进步一点点------ISE 12.4的FPGA设计基本流程
基于ISE 12.4的FPGA设计基本流程 ISE是使用XILINX的FPGA的必备的设计工具,它可以完成FPGA开发的全部流程,包括设计输入.仿真.综合.布局布线.生成BIT文件.配置以及在线调试等 ...
- PMP概略学习下--主体内容
4 知识主体 4.1 主要知识简介 PMP所有的知识围绕五大过程组和十大知识领域展开.五大过程组包括启动.规划.执行.监控.结尾.启动的内容主要是定义项目或阶段.获得授权以及正式开始:规划的内容主要 ...
- 第二十六篇 玩转数据结构——二分搜索树(Binary Search Tree)
1.. 二叉树 跟链表一样,二叉树也是一种动态数据结构,即,不需要在创建时指定大小. 跟链表不同的是,二叉树中的每个节点,除了要存放元素e,它还有两个指向其它节点的引用,分别用Node l ...