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是一个概率,当输入特征 ...
随机推荐
- Visual Studio 2015编译安装配置QT5.5.1(含QTWEBKIT)
尽管QT5.5.1和VisualStudio 2015都已经发布很久了,但是QT项目组视乎不会为QT5.5.1专门发布预编译的QT5.5.1 for windows(2015)版本的,也不会专门发布V ...
- JavaScript 的数组操作--删除元素
在JavaScript中,可以很方便的删除指定位置的元素,这个是用到 splice方法, 该方法用于删除或替换数组中的部分数据. 其语法定义是 : splice(start , count [,new ...
- Computer Transformation(规律,大数打表)
Computer Transformation Time Limit: 2000/1000 MS (Java/Others) Memory Limit: 65536/32768 K (Java/ ...
- java生产者消费者问题代码分析
作者要的是一个生产者生成,接着必须有一个消费者消费,那这不是需要单线程吗?或者使用1个大小的阻塞队列.所以只谈论问题本身,不谈论好不好. 具体代码: import java.util.concurre ...
- GREENPLUM简单介绍
原帖:http://www.itpub.net/thread-1409964-1-1.html 什么是GREENPLUM? 对于非常多IT人来说GREENPLUM是个陌生的名字.简单的说它就是一个与O ...
- 往Amazon上upload bundle经常中断的处理方法
首先可以按如下脚本进行重复提交 #!/bin/bash ;i<=;i=i+)) do ret1=`bin/ec2-upload-bundle -b myrawbucket -m /ec2-ami ...
- BZOJ 3196: Tyvj 1730 二逼平衡树( 树套树 )
这道题做法应该很多吧.... 我用了线段树套treap.... -------------------------------------------------------------------- ...
- perl oracle utf-8 结果匹配中文字符
[oracle@oadb sbin]$ cat s1.pl #!/usr/bin/perl use DBI; use Encode; use HTTP::Date qw(time2iso str2ti ...
- date、datetime、string的相互转换
import datetime import time string转datetime str = '2012-11-19' date_time = datetime.datetime.strptim ...
- HDOJ 5071 Chat 模拟
大模拟: 1>saygoodbye要先对 always on top 的人说 2>对没有说过话的不要说good bye 3>用long long Chat Time Limit: 2 ...