ng机器学习视频笔记(四) ——logistic回归

ng机器学习视频笔记(四)

——logistic回归

(转载请附上本文链接——linhxx)

一、概述

1、基本概念

logistic回归(logistic regression),是一个分类(classification)算法(注意不是回归算法,虽然有“回归”二字),用于处理分类问题,即结果是离散的。另外,由于有固定的结果,其是监督学习算法。

例如,预测天气、预测是否通过考试等,结果是离散的值,而预测房价这种就属于“回归”算法要解决的问题,而不是分类算法解决的问题。

2、公式

现在考虑只有两种结果情况下的logistic回归,结果只有0和1两种,即预测事件是否发生,1表示发送,0表示不发生。其h函数公式如下图所示:

其中,g函数又层S型函数(sigmoid function)。易知g函数范围:0<=g(z)<=1。

函数图像如下:

h(x)=g(z)的值,表示y=1的概率。即h(x)=p(y=1|x; θ)。y=1表示事件发生。因此h函数的结果即为事件发生的概率。

由于事件只有发生和不发生两种状态,因此,事件发生+事件不发生的概率为1,即如下公式:

二、决策边界

决策边界(decision boundary)表示h(x)=0时的x的表达式。

由于h函数是表示事件发生的概率,但是事件只有发生和不发生两种情况,因此需要将预测计算的概率和最终的结果联系起来。由于概率在0~1分布,因此,可以认为当h(x)>=0.5时,y=1。即h(x)>=0.5时,预测事件发生。同理,h(x)<0.5时,预测结果是y=0,即事件不会发生。即,只有两个结果的情况下,一个结果发生的概率超过一半,则认为其会发生。

另外,由上面g(z)函数的图,可以知道,当z>=0时g(z)>=0.5,因此,z>=0时y=1。根据样本集的分布,决策边界可以分为线性的和非线性的。

三、代价函数

1、不能使用线性回归的代价函数公式

根据下图所示线性回归的代价函数,把h(x)用上面的1/(1+e-z)带入,求出来的结果,会是一个存在非常多极小值的函数,这样的代价函数称为非凸函数(non-convex)。

非凸函数的缺点在于,其极小值很多。根据梯度下降法,可以知道梯度下降只能求得极小值,因此对于非凸函数而言,最终得到的很可能是一个非最优化的代价函数,即预测结果可能很差,因此,需要对此公式进行变换。

2、公式

变换后的公式如上述所示。

3、公式分析

1)y=1

y=1时代价函数cost(h(x),y)=-log(h(x)),此时的函数图如下:

即,当y=1且预测结果h(x)=1时,代价是0;当h(x)=0时代价是正无穷大。

这个很好理解,因为事件只有发生和不发生,y=1表示真实情况下事件是发生的,此时如果预测也是发生则没有代价,如果预测是不发生则完全错误,代价非常大。由于h(x)>=0.5时结果都会当作发生,因此当h(x)<0.5时代价会陡增。

2)y=0

y=0时代价函数cost(h(x),y)=-log(1-h(x)),函数图如下:

分析过程同y=1。

4、简化代价函数

由于y只有0、1两种情况,此时代价函数可以简化,如下:

这个就是把上面的情况整合进来,把y=0、y=1带入则还是原来的式子。

四、梯度下降算法

方式同线性回归,不断迭代下面的式子,需要注意的是,当有多个特征,要一次性计算出所有的θ,同时带入。

另外,当特征值很大时,需要考虑特征缩放。

此外,除了梯度下降算法,还可以使用共轭梯度法(conjugate gradient)、变尺度法(BFGS)、限制变尺度法(L-BFGS)等,这些算法的共同点是不需要认为的选择α、收敛速度快,但是缺点是过程非常复杂。

五、一对多分类

当分类的结果有多种,而不仅仅是事件发生和不发生,例如预测天气,有晴、阴、雨等多种情况,此时称为一对多分类 (one-vs-all、one-vs-rest)。

这种情况下,采用的方法是,把结果拆成多种,每种的事件发生是1、不发生是0。分类图如下:

例如,预测明天的天气,把y=1、2、3(三角形、红叉、正方形)分别表示晴、阴、雨三种天气,则逐个进行预测,当预测是否晴天,y=1看作一类,y=2、3看作一类进行讨论。

其他情况类推。

此时,分别计算出h(x)=p(y=i|x; θ) (i=1,2,3)的概率,并得出最大概率是分到哪类。

——written by linhxx

更多最新文章,欢迎关注微信公众号“决胜机器学习”,或扫描右边二维码。

原文地址:https://www.cnblogs.com/linhxx/p/8412695.html

时间: 2024-09-30 09:03:10

ng机器学习视频笔记(四) ——logistic回归的相关文章

ng机器学习视频笔记(十四) ——推荐系统基础理论

ng机器学习视频笔记(十三) --推荐系统基础理论 (转载请附上本文链接--linhxx) 一.概述 推荐系统(recommender system),作为机器学习的应用之一,在各大app中都有应用.这里以用户评价电影.电影推荐为例,讲述推荐系统. 最简单的理解方式,即假设有两类电影,一类是爱情片,一类是动作片,爱情片3部,动作片2部,共有四个用户参与打分,分值在0~5分. 但是用户并没有对所有的电影打分,如下图所示,问号表示用户未打分的电影.另外,为了方便讲述,本文用nu代表用户数量,nm代表

ng机器学习视频笔记(十二) ——PCA实现样本特征降维

ng机器学习视频笔记(十二) --PCA实现样本特征降维 (转载请附上本文链接--linhxx) 一.概述 所谓降维(dimensionality reduction),即降低样本的特征的数量,例如样本有10个特征值,要降维成5个特征值,即通过一些方法,把样本的10个特征值映射换算成5个特征值. 因此,降维是对输入的样本数据进行处理的,并没有对预测.分类的结果进行处理. 降维的最常用的方法叫做主成分分析(PCA,principal component analysis).最常用的业务场景是数据压

ng机器学习视频笔记(九) ——SVM理论基础

ng机器学习视频笔记(九) --SVM理论基础 (转载请附上本文链接--linhxx) 一.概述 支持向量机(support vector machine,SVM),是一种分类算法,也是属于监督学习的一种.其原理和logistics回归很像,也是通过拟合出一个边界函数,来区分各个分类的结果. 二.代价函数与假设函数 由于svm和logistic很相似,故与logistic进行比较.logistic的代价函数如下: 与logistic不同之处在于,SVM是用两个线段表示logistic中的h.在l

ng机器学习视频笔记(十五) ——大数据机器学习(随机梯度下降与map reduce)

ng机器学习视频笔记(十五) --大数据机器学习(随机梯度下降与map reduce) (转载请附上本文链接--linhxx) 一.概述 1.存在问题 当样本集非常大的时候,例如m=1亿,此时如果使用原来的梯度下降算法(也成为批量梯度下降算法(batch gradient descent),下同),则速度会非常慢,因为其每次遍历整个数据集,才完成1次的梯度下降的优化.即计算机执行1亿次的计算,仅仅完成1次的优化,因此速度非常慢. 2.数据量考虑 在使用全量数据,而不是摘取一部分数据来做机器学习,

ng机器学习视频笔记(三) ——线性回归的多变量、特征缩放、标准方程法

ng机器学习视频笔记(三) --线性回归的多变量.特征缩放.标准方程法 (转载请附上本文链接--linhxx) 一.多变量 当有n个特征值,m个变量时,h(x)= θ0+θ1x1+θ2x2-+θnxn,其中可以认为x0=1.因此,h(x)= θTx,其中θ是一维向量,θ=[θ0, θ1-θn] T,x也是一维向量,x=[x0,x1..xn] T,其中x0=1. 二.特征缩放(Feature Scaling) 特征缩放的目的,是为了让每个特征值在数量上更加接近,使得每个特征值的变化的影响相对比较"

ng机器学习视频笔记(十一) ——K-均值算法理论

ng机器学习视频笔记(十一) --K-均值算法理论 (转载请附上本文链接--linhxx) 一.概述 K均值(K-Means)算法,是一种无监督学习(Unsupervised learning)算法,其核心是聚类(Clustering),即把一组输入,通过K均值算法进行分类,输出分类结果. 由于K均值算法是无监督学习算法,故这里输入的样本和之前不同了,输入的样本只有样本本身,没有对应的样本分类结果,即这里的输入的仅仅是{x(1),x(2),-x(m)},每个x没有对应的分类结果y(i),需要我们

ng机器学习视频笔记(十三) ——异常检测与高斯密度估计

ng机器学习视频笔记(十三) --异常检测与高斯密度估计 (转载请附上本文链接--linhxx) 一.概述 异常检测(anomaly detection),主要用于检查对于某些场景下,是否存在异常内容.异常操作.异常状态等.异常检测,用到了一个密度估计算法(density estimation)--高斯分布(Gaussian distribution),又称正态分布(normal distribution). 该算法只用到了样本的特征值,不需要分类标签,故该算法是无监督学习算法 主要内容是,对于

机器学习实战笔记5(logistic回归)

1:简单概念描述 假设现在有一些数据点,我们用一条直线对这些点进行拟合(改线称为最佳拟合直线),这个拟合过程就称为回归.训练分类器就是为了寻找最佳拟合参数,使用的是最优化算法. 基于sigmoid函数分类:logistic回归想要的函数能够接受所有的输入然后预测出类别.这个函数就是sigmoid函数,它也像一个阶跃函数.其公式如下: 其中: z = w0x0+w1x1+-.+wnxn,w为参数, x为特征 为了实现logistic回归分类器,我们可以在每个特征上乘以一个回归系数,然后把所有的结果

斯坦福机器学习视频笔记 Week3 Logistic Regression and Regularization

我们将讨论逻辑回归. 逻辑回归是一种将数据分类为离散结果的方法. 例如,我们可以使用逻辑回归将电子邮件分类为垃圾邮件或非垃圾邮件. 在本模块中,我们介绍分类的概念,逻辑回归的损失函数(cost functon),以及逻辑回归对多分类的应用. 我们还涉及正规化. 机器学习模型需要很好地推广到模型在实践中没有看到的新例子. 我们将介绍正则化,这有助于防止模型过度拟合训练数据. Classification 分类问题其实和回归问题相似,不同的是分类问题需要预测的是一些离散值而不是连续值. 如垃圾邮件分