机器学习基础(四)逻辑回归

从这节算是开始进入“正规”的机器学习了吧,之所以“正规”因为它开始要建立价值函数(cost function),接着优化价值函数求出权重,然后测试验证。这整套的流程是机器学习必经环节。今天要学习的 话题是逻辑回归,逻辑回归也是一种有监督学习方法(supervised machine learning)。逻辑回归一般用来 做预测,也可以用来做分类,预测是某个类别^.^!线性回归想比大家都不陌生了,y=kx+b,给定一堆数据点, 拟合出k和b的值就行了,下次给定X时,就可以计算出y,这就是回归。而逻辑回归跟这个有点区别,它是一种 非线性函数,拟合功能颇为强大,而且它是连续函数,可以对其求导,这点很重要,如果一个函数不可求导, 那它在机器学习用起来很麻烦,早期的海维赛德(Heaviside)阶梯函数就因此被sigmoid函数取代,因为可导 意味着我们可以很快找到其极值点,这就是优化方法的重要思想之一:利用求导,得到梯度,然后用梯度下降 法更新参数。

下面来看看逻辑回归的sigmoid函数,如(图一)所示:

(图一)

(图一)中上图是sigmoid函数在定义域[-5,5] 上的形状,而下图是在定义域[-60,60]上 的形状,由这两个图可以看出,它比较适合做二类的回归,因为严重两级分化。Sigmoid函数的如(公式一) 所示:

(公式一)

现在有了 二类回归函数模型,就可以把特征映射到这个模型上了,而且sigmoid函数的自变量只有一个Z,假设我们的特 征为X=[x0,x1,x2…xn]。令

,当给定大批的训练样本特征X 时,我们只要找到合适的W=[w0,w1,w2…wn]来正确的把每个样本特征X映射到sigmoid函数的两级上,也就是说 正确的完成了类别回归就行了,那么以后来个测试样本,只要和权重相乘后,带入sigmoid函数计算出的值就 是预测值啦,很简单是吧。那怎么求权重W呢?

要计算W,就要进入优化求解阶段咯,用的方法是梯度 下降法或者随机梯度下降法。说到梯度下降,梯度下降一般对什么求梯度呢?梯度是一个函数上升最快的方向 ,沿着梯度方向我们可以很快找到极值点。我们找什么极值?仔细想想,当然是找训练模型的误差极值,当模 型预测值和训练样本给出的正确值之间的误差和最小时,模型参数就是我们要求的。当然误差最小有可能导致 过拟合,这个以后再说。我们先建立模型训练误差价值函数(cost function),如(公式二)所示:

(公式二)

(公式二)中Y表示训练样本真实值,当J(theta)最小时的所得的theta就是我们要求 的模型权重,可以看出J(theta)是个凸函数,得到的最小值也是全局最小。对其求导后得出梯度,如(公式三 )所示:

(公式三)

时间: 2024-08-02 22:36:49

机器学习基础(四)逻辑回归的相关文章

机器学习之——归一化线性回归与归一化逻辑回归

之前的博客里,跟大家分享了归一化(Regularization)的概念:保留所有的特征,但是减小参数的大小(Magnitude). 这一次捏,跟大家讨论讨论,归一化线性回归模型和归一化逻辑回归模型. 首先跟大家明确一件事,为什么有些机器学习的模型需要用到归一化这个方法呢?答案有两条: 归一化能够加快梯度下降的步伐,也就是获得最优解的速度 归一化能够提交模型的精度 具体的分析我们可以后续来讨论,这里就不赘述了. 归一化线性回归模型(Regularized Linear Regression) 我们

【机器学习调查】脏数据最棘手,逻辑回归最常用

数据科学社区Kaggle的最新调查显示,机器学习和数据科学研究者在被问到工作中面临的最大障碍时,最常见的回答是"脏数据",其次是缺乏该领域的人才.此外,他们最常用的方法是"逻辑回归",而神经网络只排在第4位. 想象一下机器学习研究者的生活,你可能会觉得很令人向往.你会给自动驾驶汽车编程,在科技界的巨头公司工作,而你编写的软件甚至可能导致人类的灭亡.太酷了!但是,正如最近一项针对数据科学家和机器学习研究者的调查所显示的,这些期待需要调整,因为这些职业面临的最大的挑战是

机器学习之——判定边界和逻辑回归模型的代价函数

判定边界(Decision Boundary) 上一次我们讨论了一个新的模型--逻辑回归模型(Logistic Regression),在逻辑回归中,我们预测: 当hø大于等于0.5时,预测y=1 当hø小于0.5时,预测y=0 根据上面的预测,我们绘制出一条S形函数,如下: 根据函数图像,我们知道,当  z=0时,g(z)=0.5  z>0时,g(z)>0.5  z<0时,g(z)<0.5 又有: 所以 以上,为我们预知的逻辑回归的部分内容.好,现在假设我们有一个模型: 并且参数

【机器学习】逻辑回归

[机器学习]逻辑回归 优点:计算代价不高,易于理解和实现: 缺点:容易欠拟合,分类精度可能不高. 我们想要的是接收所有的输入,然后预测出类别.在两个类的情况下输出0或者1.这种性质的函数,也许原来你接触过,叫做Heaviside step function,即单位阶跃函数.但是这种瞬间的跳跃实际中很难处理.所以,这里我们采用Sigmoid函数. g(z)=11+e?z 为了实现Logistic回归分类器,我们在每个特征上乘以一个回归系数,再讲所有的结果相加,将这个总和带入Sigmoid函数中,得

机器学习-逻辑回归-分类

1. 逻辑回归 监督学习中另一个问题为分类问题,常见的分类问题例子有 邮件是否是垃圾邮件,0表示垃圾邮件,1表示正常邮件 在线交易是否会欺骗用户,0表示会欺骗,1表示不会 患肿瘤患者是良性还是恶性,0表示恶性,1表示良性 这些问题,可以归之于二分类问题,y表示因变量,取值0和1,可以定义如下 其中0表示负例,1表示正例 同理,对于多分类问题来说,因变量y的值可以取{0,1,2,3 ... n} 我们先从二分类问题入手,理解什么是逻辑回归模型 逻辑回归(Logistic Regression)是一

【机器学习算法-python实现】逻辑回归的实现(LogicalRegression)

(转载请注明出处:http://blog.csdn.net/buptgshengod) 1.背景知识       在刚刚结束的天猫大数据s1比赛中,逻辑回归是大家都普遍使用且效果不错的一种算法.   (1)回归                先来说说什么是回归,比如说我们有两类数据,各有50十个点组成,当我门把这些点画出来,会有一条线区分这两组数据,我们拟合出这个曲线(因为很有可能是非线性),就是回归.我们通过大量的数据找出这条线,并拟合出这条线的表达式,再有数据,我们就以这条线为区分来实现分类

机器学习基础:分类vs回归

经常看到这样的问题:"如何计算回归问题的准确度?"像这样的问题反映了没有真正理解分类和回归之间的区别,以及测量的准确度是什么. 这是分类和回归问题之间的一个重要区别.从根本上说,分类就是预测一个标签,而回归则是预测一个数量. 在本文中,你将发现分类和回归之间的区别. 看完文章后,你将会知道: 预测模型是关于从输入到输出学习映射函数的问题,称为函数逼近. 分类是预测离散类标签输出的问题. 回归是预测连续数量输出的问题. 让我们开始吧. 文章概述 本文分为5部分,它们是: 函数逼近 分类

机器学习算法的python实现之逻辑回归的实现(LogicalRegression)

1.背景知识 在刚刚结束的天猫大数据s1比赛中,逻辑回归是大家都普遍使用且效果不错的一种算法. (1)回归 先来说说什么是回归,比如说我们有两类数据,各有50十个点组成,当我门把这些点画出来,会有一条线区分这两组数据,我们拟合出这个曲线(因为很有可能是非线性),就是回归.我们通过大量的数据找出这条线,并拟合出这条线的表达式,再有数据,我们就以这条线为区分来实现分类.下图是我画的一个数据集的两组数据,中间有一条区分两组数据的线. 本栏目更多精彩内容:http://www.bianceng.cnht

机器学习之——逻辑回归

在讨论逻辑回归问题(Logistic Regression)之前,我们先讨论一些实际生活中的情况:判断一封电子邮件是否是垃圾邮件?判断一次交易是否是欺诈交易?判断一份文件是否是有效文件?这类问题,我们称之为分类问题(Classication Problem).在分类问题中,我们往往尝试去预测的结果是否属于某一个类(正确活错误). 我们从二元的分类问题开始讨论,即问题是正确或错误的. 我们将因变量(Dependent Variable)可能属于的两个类分别称为负向类(Negative Class)