机器学习笔记—logistic回归

小花花108 小花花108     2022-08-06     388

关键词:

本文申明:本系列笔记全部为原创内容,如有转载请申明原地址出处。谢谢

序言:what is logistic regression? Logistics 一词表示adj.逻辑的;[军]后勤学的n.[逻]数理逻辑;符号逻辑;[军]后勤学, “回归”是由英国著名生物学家兼统计学家高尔顿在研究人类遗传问题时提出来的。为了研究父代与子代身高的关系,高尔顿搜集了1078对父亲及其儿子的身高数据。他发现这些数据的散点图大致呈直线状态,也就是说,总的趋势是父亲的身高增加时,儿子的身高也倾向于增加。但是,高尔顿对试验数据进行了深入的分析,发现了一个很有趣的现象—回归效应。因为当父亲高于平均身高时,他们的儿子身高比他更高的概率要小于比他更矮的概率;父亲矮于平均身高时,他们的儿子身高比他更矮的概率要小于比他更高的概率。它反映了一个规律,即这两种身高父亲的儿子的身高,有向他们父辈的平均身高回归的趋势。对于这个一般结论的解释是:大自然具有一种约束力,使人类身高的分布相对稳定而不产生两极分化,这就是所谓的回归效应。这种方法就被称为回归。

那么logistic回归是不是就是用逻辑进行回归分析,然后做出分类?且听下文慢慢道来。

为了简化分析,我们首先把它定义为一个二分问题,例如:

if x>0.5

print 1

else

print 0

对于现实问题,0.5这个地方一定是一个大的跳跃,那我们该如何定义这个函数呢。

那我们就得从我们伟大的前辈那取经了,我们找到一个叫做Sigmoid的东西,这个函数图像如下:clip_image002

大家看这个函数6不6.

现在我们为了实现logistic回归分类器,我们把数据的特征都乘以一个回归系数(这个回归系数是通过数据学习到的),把这些值加起来,带进我们的sigmoid函数:

clip_image004,进而得到一个范围在0~1之间的数值,任何大于0.5的数据被分入1类,小于0.5的都被分到0类。所以,logistic回归也可是说是一种概率估计。

既然模型已经建立了,那我们接下来要干嘛呢?那是不是变成了确定那个回归系数,那么我们的分类模型是不是就建立了,但是这个最佳模型系数(回归系数)怎么确定呢?

下面我给出是两种方法,大家看看哪种方法比较好:

方法一:梯度上升算法

梯度上升算法的思想是:函数J(A)在某点AK的梯度G[J(AK)]是一个向量,它的方向与过点AK 的等量面J(AK)=C的法线方向重合,指向J(AK)增加的一方,是这个函数变化率最大的方向。相反,负方向就是减少的最快方向,所以求这个函数的最大值或者最小值时,分别沿着正梯度和负梯度方向搜索有可能最快地找到最小值。

梯度算法实现:以梯度上升算法为例,先任意选择一个初始的权向量A1(一般为0)然后计算A1上的梯度G[J(A1)],从A1出发在最陡的方向上移动一个距离d(自己设置)到达A2.那么可以采用下面公式从AK推到AK+1.

AK+1=AK-d G[J(AK)]

我们来补充一下什么叫准则函数 (criterion function):

用具体函数评价系统所采取策略优劣的准则时,称为准则函数。根据实际问题的类型和...准则函数的取值取决于决策者所采取的策略。如果采取某种策略能使准则函数达到最优值时,称这种策略为这种准则的最优策略。

logistic准则函数的定义是:

clip_image006

为什么是这个呢,就是假如我本来属于男性,你非要让我成为女性,是不是分类错误?那么就是负数,我如果是女性你给我分类成男性,是不是也不妥?我们把这些错误的相加,·值越小越好。这样不就可以判别我们的分类器正确率了吗

因为J(AK)的第j个梯度分量是clip_image008。。根据准则函数可以看出:

clip_image010

把这个式子带入到AK+1=AK-d G[J(AK)]可得:

clip_image012

梯度上升算法示意图:

clip_image014

你看那个p一步一个脚印似魔鬼的步伐。这样迭代下去就会趋于稳定。

方法二:固定增量算法

梯度算法缺点:

靠近极值时收敛速度减慢。

直线搜索时可能会产生一些问题。

可能会“之字形”地变化。

那么我们提出固定增量算法:

1全部的样本看成一个序列,每当前一步迭代的权向量把某个样本错误分类是,就对这个权向量作一次修正,而不是等当前向量对全部样本计算后在找出错分类的样本集进行修改。

2每次迭代d保持不变。

设现在有两个分类C和B,我们现在要用一个固定算法决定一个超平面ATY=0,是它能够正确的划分开C和B。开始我们可以任意假定A和B属于决策界面的哪一边。然后依次把A和B中的曾广模式Y取出,计算A与Y的内积ATY。根据内积,权向量A用以下规则调整;

(1) 如果Y∈C,而ATY≤0,则用A+Y代替A;

(2) 如果Y∈B,而ATY≥0,则用A-Y代替A;

(3) 如果Y∈C,而ATY>0,则A保持不变。

(4) 如果Y∈B,而ATY<0,则A保持不变。

迭代终止条件:

  如果在一次迭代中权向量A已经保持不变,则权向量A即解权向量A^,所以在程序收敛之后就不需要也没必要进行进一步的迭代了。

机器学习笔记—logistic回归

本文申明:本系列笔记全部为原创内容,如有转载请申明原地址出处。谢谢序言:whatislogisticregression?Logistics一词表示adj.逻辑的;[军]后勤学的n.[逻]数理逻辑;符号逻辑;[军]后勤学,“回归”是由英国著名生物学家兼统计学家... 查看详情

《机器学习实战》学习笔记:logistic回归(代码片段)

欢迎关注WX公众号:【程序员管小亮】【机器学习】《机器学习实战》读书笔记及代码总目录https://blog.csdn.net/TeFuirnever/article/details/99701256GitHub代码地址:https://github.com/TeFuirnever/Machine-Learning-in-Action——————————... 查看详情

《机器学习实战》logistic回归算法

=====================================================================《机器学习实战》系列博客是博主阅读《机器学习实战》这本书的笔记也包含一些其他python实现的机器学习算法              查看详情

机器学习logistic回归---学习笔记

Logistic回归学习笔记Logistic回归学习线路预备知识:建议先去B站学习一下信息量,熵,BL散度,交叉熵的概念。Logistic回归的函数模型损失最小化架构分类函数最大概率分类函数阈值分类函数Logistic回归的优化算法... 查看详情

机器学习基础笔记一

监督学习非监督学习:学习结构化知识强化学习 监督学习:线性回归模型:输出y是连续的Logistic回归模型(实际上不是回归问题,是分类问题):输出y是0,1离散的 Logistic回归模型:Sigmoid函数:将任何输入变成0与1之间的... 查看详情

机器学习:logistic回归原理及其实现

Logistic回归是机器学习中非常经典的一个方法,主要用于解决二分类问题,它是多分类问题softmax的基础,而softmax在深度学习中的网络后端做为常用的分类器,接下来我们将从原理和实现来阐述该算法的思想。1.原理a.问题描述考... 查看详情

机器学习实战第5章logistic回归

第5章Logistic回归Logistic回归概述Logistic回归虽然名字叫回归,但是它是用来做分类的。其主要思想是:根据现有数据对分类边界线建立回归公式,以此进行分类。须知概念Sigmoid函数回归概念假设现在有一些数据点,我们用一条直线... 查看详情

[机器学习实战-logistic回归]使用logistic回归预测各种实例(代码片段)

[机器学习实战-Logistic回归]使用Logistic回归预测各种实例目录[机器学习实战-Logistic回归]使用Logistic回归预测各种实例本实验代码已经传到gitee上,请点击查收!一、实验目的二、实验内容与设计思想实验内容设计思想三、实验使... 查看详情

[机器学习实战]logistic回归

1.Logistic回归:  1)优点:计算代价不高,易于理解和实现;  2)缺点:容易欠拟合,分类精度可能不高;  3)适用数据类型:数值型和标称型数据; 2.分类思想:  根据现有数据对分类边界线建立回归公式,以此... 查看详情

机器学习实战精读--------logistic回归

Logistic回归的主要目的:寻找一个非线性函数sigmod最佳的拟合参数拟合、插值和逼近是数值分析的三大工具回归:对一直公式的位置参数进行估计拟合:把平面上的一些系列点,用一条光滑曲线连接起来logistic主要思想:根据现... 查看详情

机器学习——基础整理:线性回归;二项logistic回归;softmax回归;广义线性模型

...线性模型    二项Logistic回归是我去年入门机器学习时学的第一个模型,我觉得这个模型很适合用来入门(但是必须注意这个模型有很多很多很多很多可以展开的地方)。比较有意思的是那时候还不会矩阵微积分,... 查看详情

机器学习_logistic回归和梯度下降

 原文:http://blog.csdn.net/dongtingzhizi/article/details/15962797  Logistic回归总结 PDF下载地址:http://download.csdn.net/detail/lewsn2008/65474631.引言   看了Stanford的AndrewNg老师的机 查看详情

机器学习实践之logistic回归

...et/qq_37608890/article/details/78827013)。 本文根据最近学习机器学习书籍网络文章的情况,特将一些学习思路做了归纳整理 查看详情

机器学习--logistic回归(代码片段)

logistic回归很多时候我们需要基于一些样本数据去预测某个事件是否发生,如预测某事件成功与失败,某人当选总统是否成功等。这个时候我们希望得到的结果是bool型的,即trueorfalse我们最先想到的是通过最小二乘法求出线性回归... 查看详情

机器学习-logistic回归

logistic回归的主要思想:已知样本数目为m,特征(feature)数目为n。给出假设h(X)=g(X*theta)g(z)是sigmiod函数:g(z)=1/(1+exp(-z)) 考虑分类器问题:Y取值为0或1,同样地,h(X)取值为0或1。则P(y|x;theta)=h(x)^y*(1-h(x))^(1-y)对其取log得到:对J求... 查看详情

机器学习实战第五章logistic回归(代码片段)

defgradAscent(dataMatIn,classLabels):dataMatrix=mat(dataMatIn)#converttoNumPymatrixlabelMat=mat(classLabels).transpose()#converttoNumPymatrixm,n=shape(dataMatrix)alpha=0.001maxCycles=500weights=ones(( 查看详情

机器学习二(线性回归和logistic回归)

前言由于本部分内容讲解资源较多,本文不做过多叙述,重点放在实际问题的应用上。一、线性回归线性回归中的线性指的是对于参数的线性的,对于样本的特征不一定是线性的。线性模型(矩阵形式):y=XA+e   其中... 查看详情

机器学习算法---逻辑回归及梯度下降

一、逻辑回归简介  logistic回归又称logistic回归分析,是一种广义的线性回归分析模型,常用于数据挖掘,疾病自动诊断,经济预测等领域。  logistic回归是一种广义线性回归(generalizedlinearmodel),因此与多重线性回归分析... 查看详情