京公网安备 11010802034615号
经营许可证编号:京B2-20210330
逻辑回归是最简单的机器学习模型,常常应用于各种简单的任务中。这里记录逻辑回归的背景以及学习方法,权当自己的学习记录总结。
逻辑回归:首先,它不是一个回归模型,而是一个分类模型,它是被用来做分类的。 之所以称之为回归,是因为它的学习的是模型模型的参数以最佳拟合已有的数据。(比如,根据已有的一些点,回归出它的直线参数的拟合过程,就称之为回归。)
学习方法:梯度上升法,随机梯度上升法。
模型特点:
1. 优点:训练快、易理解、易实现
2. 缺点:模型不够强大、拟合能力有限,欠拟合,对于复杂的任务效果不够好
在二分类的模型中,我们能最希望的函数是一个二值化函数,也就是
h(x) = 0 当 x > 阈值,h(x)=1 当 x < 阈值
函数下图所示:
然而,虽然这个函数是我们很想学习到的函数,但是由于它在阈值点处的跳跃性(不连续性),使得它变得不好处理(比如在该点处没有导数(梯度)的问题)。
幸好,自然是美好的,我们可以用其它的函数来近似这个函数,Sigmoid 函数就是一个很好的近似方法
其函数图形如下所示(值阈(0–>1))
函数表达式为:

相比于原始的二值化函数,sigmoid函数具有处处连续、可导的优点。
为了实现逻辑回归分类器,我们将每个特征都乘以一个回归系数wi,然后将结果相加得到一个值,并将这个值带入到sigmoid函数中,就会得到一个0–>1之间的数值,而大于0.5的值被分为1类,小于0.5的被分为0类。所以,逻辑回归也被称之为一个概率估计模型。
在已经确定了分类器模型的函数形式之后,问题就在于如何学习以获得最佳的回归系数?
主要是采用梯度上升及其变形的方法。
它的思想是:要找到某个函数的最大值,最好的方法就是沿着该函数的梯度方向进行寻找。(要有梯度就要求待计算的点有定义并且可导,所以二值化函数不能使用。)
权重更新:

其中alpha为步长,学习(训练)的停止条件一般为:迭代到达一定的次数,或者算法已经到达了一定的误差范围之内。
注意区别于梯度下降法:跟梯度上升法是相同的道理,加法变为减法。
随机梯度上升法:因为梯度上升法在每次更新回归系数的时候都需要遍历整个数据集合,当数据很多的时候,就不适用了,改进的方法为:一次只使用一个样本来更新回归系数,这种方法称之为随机梯度上升法。
只是它用来寻找最小值(一般是loss最小),而梯度上升法用来寻找最大值。
所以总的来说,逻辑回归的计算方法很简单,就分为两步:1,计算梯度,2,更新权值。
具体的权重更新方法为:
具体的代码如下(python):
def sigmoid(x):
'''
逻辑回归的判别函数
'''
return 1.0/(1.0+exp(-x))
def gradientAscent(datas,labels):
'''
输入参数datas:训练数据矩阵,每一行为一个数据
输入参数labels:标签数据,为一个值。
要求参数数据匹配
'''
dataX = mat(datas)
#每列代表一个特征,每行代表不同的训练样本。
dataY = mat(labels).transpose()
#标签,将行向量转置为列向量
m,n = shape(dataX)
alpha = 0.001
#步长,也就是学习率
itera_num = 1000
#迭代次数
W = ones((n,1))
for i in range(itera_num):
H = sigmoid(dataX * W)
# H 是一个列向量,元素个数==m
error = dataY - H
W = W + alpha * X.transpose()*error
return W
def stochasticGradientAscent(datas,labels):
dataX = mat(datas)
#每列代表一个特征,每行代表不同的训练样本。
dataY = mat(labels).transpose()
#标签,将行向量转置为列向量
m,n = shape(datas)
alpha = 0.01
W = ones(n)
for i in range(m):
h = sigmoid(sum(dataX[i]*W))
error = dataY[i] - h
W = W + alpha * error *dataX[i]
return W
总结: 逻辑回归的目的是为了寻找非线性函数Sigmoid的最佳拟合参数中的权值w,其w的值通过梯度上升法来学习到。随机梯度上升一次只处理少量的样本,节约了计算资源同时也使得算法可以在线学习。
数据分析咨询请扫描二维码
若不方便扫码,搜微信号:CDAshujufenxi
【核心关键词】金融、岗位、企业、算法、知识、专业、理论、课程、软件、数据分析、业务类型、应用场景、经营管理、大型企业、 ...
2026-08-03在日常数据分析、业务报表复盘、业绩预测工作中,平均增长率是衡量数据长期变化趋势的核心指标,广泛用于营收增长、用户增长、销 ...
2026-08-03很多人把统计学理解为“一堆公式和计算”,却忽略了它的本质——一门让数据“开口说话”的科学。真正的数据分析高手,不是会算平 ...
2026-08-03在数据指标体系搭建工作中,从业者常困惑于指标搭建的核心逻辑:究竟是依托一线零散数据自下而上汇总指标,还是基于战略目标自上 ...
2026-07-31在数据分析、问卷研究、实验复盘、业务建模的工作中,大多数人最关注的是“用什么统计方法”:是做T检验、方差分析、卡方检验, ...
2026-07-31 许多数据分析师精通Excel函数和SQL查询,但当面对一张上万行的销售明细表,要快速回答“哪个地区销量最高”“哪款产品增长最 ...
2026-07-31在问卷调研的数据分析流程中,“先检验信效度,再开展进阶统计分析”是通用的规范逻辑。很多从业者会听到“问卷效度高,后续可以 ...
2026-07-30【核心关键词】大数据、统计学、专业、毕业生、论文、课程、计算机、建模、知识、数据分析、机器学习、数据科学、大数据技术、 ...
2026-07-30 很多数据分析师掌握了Excel函数、会写SQL查询,但当被问到“数据从哪里来”“数据加工有哪些步骤”“如何使用分析工具连接数 ...
2026-07-30在业务数据分析中,按天拆分统计夜间时段的数据是高频需求——比如电商夜间订单监测、平台夜间用户活跃度分析、运维系统夜间异常 ...
2026-07-29在机器学习建模与特征工程实践中,判断不同特征对模型预测效果的贡献度,是特征筛选、模型解释、业务归因的核心环节。特征置换重 ...
2026-07-29 很多数据分析师精通Excel单元格操作,但当被问到“表结构数据的基本处理单位是什么”“字段和记录的本质区别”“为什么表结 ...
2026-07-29【核心关键词】岗位、数字化、经验、课程、方法论、决策、企业、大方向、数据分析、销售管理、理论知识、思维方式、分析销售、 ...
2026-07-28在问卷调研、用户分群、效果对比等业务数据分析中,分类变量的关联性与差异性验证是高频需求。卡方检验作为针对离散分类数据的经 ...
2026-07-28 数据分析师八成以上的时间在和数据表格打交道,但许多人拿到Excel后习惯性地先算、先分析,结果回头发现漏了一列关键数据, ...
2026-07-28在Excel数据分析与报表制作中,数据透视表是快速完成多维度汇总、分组统计的核心工具。很多从业者在得到透视表汇总结果后,为了 ...
2026-07-27 很多数据分析师每天与Excel打交道,但当被问到“表格结构数据的基本处理单位是什么”“数据类型误判会引发哪些分析错误”“ ...
2026-07-27当下,我们已然步入数据要素价值全面释放的智能时代。数据不再只是零散的数字记录,更是驱动新质生产力运转的核心动能、滋养人工 ...
2026-07-27【核心关键词】客户、数据分析、指标体系、数据采集、数据指标、业务数据、分析思路、业务需求、分析方法 【专访摘要】本次 CDA ...
2026-07-24在数据分析、业务建模与数字化运营体系中,原始业务数据普遍存在缺失、重复、异常、口径不一致等质量问题,直接用于分析与建模会 ...
2026-07-24