#Week4 Logistic Regression
一、Classification
主要讨论二元分类。
线性回归处理分类问题显然不靠谱,所以采用逻辑回归。
二、Hypothesis Representation
假设函数变为\(h_\theta(x)=g(\theta^TX)\),使得分类器的输出在[0,1]之间。
\(g(z)=\frac{1}{1+e^{-z}}\),叫做sigmoid函数:

这个算出的值代表\(y\)是正向类的概率。
三、Decision Boundary
将阈值设为0.5,那么可以得知:当\(\theta^TX>=0\)时,预测\(y\)为1,否则为0。
Decision Boundary就是分隔\(y=1\)与\(y=0\)的边界,这个边界可以是任何形状,取决于假设函数。
上图:

效果非常好,那么如果训练集的数据不是这么规则呢?

四、Cost Function
将逻辑回归的代价函数定义为:


如果沿用线性回归的cost function,那么得到的\(J(\theta)\)是非凸的,这样不利于寻找全局最优解。
如果预测值\(h_\theta(x)=1\),实际的标签\(y\)也是1,那么\(cost=0\);
如果预测值\(h_\theta(x)=0\),而实际的标签\(y\)是1,那么\(cost=+\infin\),可以看作是对算法预测错误的惩罚。。。
同样的,\(y=0\)也具有相似的特征。
简化上述代价函数:

所以cost function的向量化表示:
\]
\]
可以通过求出\(J(\theta)\)的最小值,得出参数\(\theta\),接着用\(h_\theta(x)=\frac{1}{1+e^{-\theta^Tx}}\)得到我们的预测值。
怎么求出\(J(\theta)\)的最小值呢?对了,就是Gradient Descent.

向量化表示:

这个和之前线性回归更新参数的公式是一样的,但是由于\(h_\theta(x)\)不同,所以这两个梯度下降是完全不同的。
五、Multiclass classification

将其中的一个类作为正向类(y=1),其余作为负向类,分别训练出很多分类器,最后选择令输出值\(h_\theta^{i}(x)\)最大的一个\(i\)作为预测值。
相当于每一个分类器都可以识别一种类别:

#Week4 Logistic Regression的更多相关文章
- 逻辑回归 Logistic Regression
逻辑回归(Logistic Regression)是广义线性回归的一种.逻辑回归是用来做分类任务的常用算法.分类任务的目标是找一个函数,把观测值匹配到相关的类和标签上.比如一个人有没有病,又因为噪声的 ...
- logistic regression与SVM
Logistic模型和SVM都是用于二分类,现在大概说一下两者的区别 ① 寻找最优超平面的方法不同 形象点说,Logistic模型找的那个超平面,是尽量让所有点都远离它,而SVM寻找的那个超平面,是只 ...
- Logistic Regression - Formula Deduction
Sigmoid Function \[ \sigma(z)=\frac{1}{1+e^{(-z)}} \] feature: axial symmetry: \[ \sigma(z)+ \sigma( ...
- SparkMLlib之 logistic regression源码分析
最近在研究机器学习,使用的工具是spark,本文是针对spar最新的源码Spark1.6.0的MLlib中的logistic regression, linear regression进行源码分析,其 ...
- [OpenCV] Samples 06: [ML] logistic regression
logistic regression,这个算法只能解决简单的线性二分类,在众多的机器学习分类算法中并不出众,但它能被改进为多分类,并换了另外一个名字softmax, 这可是深度学习中响当当的分类算法 ...
- Stanford机器学习笔记-2.Logistic Regression
Content: 2 Logistic Regression. 2.1 Classification. 2.2 Hypothesis representation. 2.2.1 Interpretin ...
- Logistic Regression vs Decision Trees vs SVM: Part II
This is the 2nd part of the series. Read the first part here: Logistic Regression Vs Decision Trees ...
- Logistic Regression Vs Decision Trees Vs SVM: Part I
Classification is one of the major problems that we solve while working on standard business problem ...
- Logistic Regression逻辑回归
参考自: http://blog.sina.com.cn/s/blog_74cf26810100ypzf.html http://blog.sina.com.cn/s/blog_64ecfc2f010 ...
随机推荐
- 深度解析Java中的5个“黑魔法”
现在的编程语言越来越复杂,尽管有大量的文档和书籍,这些学习资料仍然只能描述编程语言的冰山一角.而这些编程语言中的很多功能,可能被永远隐藏在黑暗角落.本文将为你解释其中5个Java中隐藏的秘密,可以称其 ...
- Linux基础篇,磁盘及文件使用管理
在windows系统下,我们可以使用图形化界面很明了的看出当前硬盘使用量与某个文件的占用空间大小和文件数量.但是在linux系统中,我们应该如何得到这些信息呢? 当然是功能强大的df与du了. 一.d ...
- Flutter 实现网易云音乐字幕
老孟导读:没有接触过音乐字幕方面知识的话,会对字幕的实现比较迷茫,什么时候转到下一句?看了这篇文章,你就会明白字幕so easy. 先来一张效果图: 字幕格式 目前市面上有很多种字幕格式,比如srt, ...
- json文件操作
1.把字典或list转换成字符串方法 json.dumps() 2.把字符串转换成字典方法 json.loads() 3.indent 存储文件时每行加缩进数 4.ensere_asci 文件中有中文 ...
- 28.4 Calendar 日历
/* * Calendar:日历,提供了一些操作年月日时的方法 * 获取 * 修改 * 添加 */ public class CalendarDemo { public static void mai ...
- python3(三十七) filepath
""" file path """ __author__on__ = 'shaozhiqi 2019/9/23' # !/usr/bin/e ...
- 《深入理解 Java 虚拟机》读书笔记:垃圾收集器与内存分配策略
正文 垃圾收集器关注的是 Java 堆和方法区,因为这部分内存的分配和回收是动态的.只有在程序处于运行期间时才能知道会创建哪些对象,也才能知道需要多少内存. 虚拟机栈和本地方法栈则不需要过多考虑回收的 ...
- [转] Roguelike开发建议
该文所述的Roguelike为典型的Roguelike游戏,而非带着Roguelike元素的游戏. 以下内容为他在今年Roguelike开发者大会上的发言文字版. 引言 几年前召开的首届Rogueli ...
- 2019-05-25 Python之Mongodb的使用
Mongodb学习总结: one.插入数据pass two.查看数据pass three.修改数据pass four.数据排序pass five.删除数据pass 一.安装Mongodb https: ...
- 03-css3中的3D转换
一.CSS3-3D转换 1.3D 特点:近大远小,物体和面遮挡不可见 1.1三维坐标系 x 轴:水平向右 -- x 轴右边是正值,左边是负值 y 轴:垂直向下 -- y 轴下面是正值,上面是负值 z ...