Logistic Regression(逻辑回归)(一)基本原理
(整理自AndrewNG的课件,转载请注明。整理者:华科小涛@http://www.cnblogs.com/hust-ghtao/)
虽然叫做“回归”,但是这个算法是用来解决分类问题的。回归与分类的区别在于:回归所预测的目标量的取值是连续的(例如房屋的价格);而分类所预测的目标变量的取值是离散的(例如判断邮件是否为垃圾邮件)。当然,为了便于理解,我们从二值分类(binary classification)开始,在这类分类问题中,y只能取0或1。更好的理解问题,先举个小例子:假如我们要制作一个垃圾邮件过滤系统,如果一封邮件是垃圾系统,y=1,否则y=0 。给定训练样本集,当然它们的特征和label
都已知,我们就是要训练一个分类器,将它们分开。
不要用线性回归问题去解决分类问题,这是AndrewNG给出的一个忠告!原因很简单,看下图:
,看着效果还不错吧,那你在看看下图:
,不靠谱吧,只是多了几个正类的点而已,分类线就发生了很大的变化。
为了解决这个问题,我们提出了新的假设函数:
,
其中:
,图像:
,我们把这个函数叫做logistic函数,或者sigmoid函数。我们可以发现,当z趋向无穷时,g(z)趋向于1;当z趋向于负无穷时,g(z)趋向于0 ,即当z从负无穷到正无穷的变化时,现在看来,g(z)从0变化到1 ,且g(0)=0.5 。我们要预测的值为0或1,g(z)的变化范围恰好为(0,1),我们想到概率的取值也为(0,1)哈,那索性就用g(z)表示一概率值吧,所以我们假设:
,也可以写成:
。
下面我们就要用到极大似然原理:一件事情已经发生了,我们就认为这件事情发生的概率最大,用关于参数的函数来表示出这个概率,求出其最大值所对应的参数值就是我们的目的。在们问题中,给出一个训练集(大小为m),其和
都已知,也就是这件事情已经发生,那我们就求其概率,令其最大:
似然函数:

便于计算,要对其取对数:
,接下来的问题就是要求这个函数的极大值了,很简单,梯度下降法啦:
,注意其实应该叫做梯度上升法,梯度下降法是“-”,但这里求极大值,所以是“+”。
其中求偏导的部分由:
,得到:

最终,我们得到参数的更新法则:
,
看着很眼熟把,和Linear Regression的是不是特别像,没错!就差中间一个符号。。。但两个可不是一个算法哦,因为是不同的。记住这个形式!它们相同的形式恰恰体现了数学的美!
Logistic Regression(逻辑回归)(一)基本原理的更多相关文章
- Coursera DeepLearning.ai Logistic Regression逻辑回归总结
既<Machine Learning>课程后,Andrew Ng又推出了新一系列的课程<DeepLearning.ai>,注册了一下可以试听7天.之后每个月要$49,想想还是有 ...
- Logistic Regression逻辑回归
参考自: http://blog.sina.com.cn/s/blog_74cf26810100ypzf.html http://blog.sina.com.cn/s/blog_64ecfc2f010 ...
- Logistic Regression(逻辑回归)(二)—深入理解
(整理自AndrewNG的课件,转载请注明.整理者:华科小涛@http://www.cnblogs.com/hust-ghtao/) 上一篇讲解了Logistic Regression的基础知识,感觉 ...
- Logistic Regression(逻辑回归)
分类是机器学习的一个基本问题, 基本原则就是将某个待分类的事情根据其不同特征划分为两类. Email: 垃圾邮件/正常邮件 肿瘤: 良性/恶性 蔬菜: 有机/普通 对于分类问题, 其结果 y∈{0,1 ...
- 机器学习简要笔记(五)——Logistic Regression(逻辑回归)
1.Logistic回归的本质 逻辑回归是假设数据服从伯努利分布,通过极大似然函数的方法,运用梯度上升/下降法来求解参数,从而实现数据的二分类. 1.1.逻辑回归的基本假设 ①伯努利分布:以抛硬币为例 ...
- Deep Learning 学习笔记(4):Logistic Regression 逻辑回归
逻辑回归主要用于解决分类问题,在现实中有更多的运用, 正常邮件or垃圾邮件 车or行人 涨价or不涨价 用我们EE的例子就是: 高电平or低电平 同时逻辑回归也是后面神经网络到深度学习的基础. (原来 ...
- 【原】Coursera—Andrew Ng机器学习—Week 3 习题—Logistic Regression 逻辑回归
课上习题 [1]线性回归 Answer: D A 特征缩放不起作用,B for all 不对,C zero error不对 [2]概率 Answer:A [3]预测图形 Answer:A 5 - x1 ...
- 【原】Coursera—Andrew Ng机器学习—课程笔记 Lecture 6_Logistic Regression 逻辑回归
Lecture6 Logistic Regression 逻辑回归 6.1 分类问题 Classification6.2 假设表示 Hypothesis Representation6.3 决策边界 ...
- 机器学习之LinearRegression与Logistic Regression逻辑斯蒂回归(三)
一 评价尺度 sklearn包含四种评价尺度 1 均方差(mean-squared-error) 2 平均绝对值误差(mean_absolute_error) 3 可释方差得分(explained_v ...
- 吴恩达深度学习:2.1Logistic Regression逻辑回归及其损失函数
1.Logistic Regression是一个二元分类问题 (1)已知输入的特征向量x可能是一张图,你希望把它识别出来,这是不是猫图,你需要一个算法,可以给出预测值,更正式的y是一个概率,当输入特征 ...
随机推荐
- BZOJ 2242: [SDOI2011]计算器( 快速幂 + 扩展欧几里德 + BSGS )
没什么好说的... --------------------------------------------------------------------- #include<cstdio&g ...
- javascript 学习随笔
var carname="Volvo"; var carname; 重新声明变量后变量的值不变,在这里还是volvo var carname="Volvo"; ...
- gradle项目与maven项目相互转化(转)
根据build.gradle和setting.gradle文件生成idea项目: gradle idea gradle这几年发展迅猛,github越来越多的项目都开始采用gradle来构建了,但是并不 ...
- java高级project师须要掌握的技术
1.你须要精通面向对象分析与设计(OOA/OOD).涉及模式(GOF,J2EEDP)以及综合模式.你应该十分了解UML,尤其是class,object,interaction以及statediagra ...
- 如何将UISearchBar上"Cancel"按钮改为”取消“?
别说话,直接上代码 for (id obj in [searchBar subviews]) { if ([obj isKindOfClass:[UIView class]]) { ...
- 运行复制的ZooKeeper 部署
运行复制的ZooKeeper 运行ZooKeeper 在一个独立模式下是方便评估的, 一些开发,和测试. 但是在生产,你应该运行ZooKeeper 在复制模式.一个复制的servers group 在 ...
- C++中实现对map按照value值进行排序 - 菜鸟变身记 - 51CTO技术博客
C++中实现对map按照value值进行排序 - 菜鸟变身记 - 51CTO技术博客 C++中实现对map按照value值进行排序 2012-03-15 15:32:36 标签:map 职场 休闲 排 ...
- or1200构建sopc系统之软件环境搭建
使用预先编译好的工具链 下载: ftp://ocuser:oc@195.67.9.12/toolchain/or32-elf-linux-x86.tar.bz2 解压 tar xjf or32-elf ...
- 不可表示的数[x/2] + y + x * y
前端是时间在庞果网上看到不可表示的数的编程题(如下),我自己也试着解答了一下,写的算法虽然没有没有错,但是跑了一些还只是跑到a8,后来到自己整理一下网上的解答过程,虽然解答写的很清晰,但是有些知识还是 ...
- Eclipse用法和技巧二十七:定义自己的快速联想词
某天在调试代码的时候,虽然是android的project还是习惯的输入syso,然后在ALT+/一下.旁边的同事就问了一下,这个log打印输出的tag是什么.接着又问了为什么syso能够智能联想出这 ...