机器学习之逻辑斯蒂回归

article/2025/10/14 0:24:07

目录

一、分类与回归

二、逻辑回归不是回归 

 三、生成式逻辑回归

四、判别式逻辑回归 

五、逻辑回归为什么不用均方误差做损失函数

六、判别模型与生成模型的比较

七、写在最后


一、分类与回归

回归与分类是机器学习的基本问题。回归是预测连续值,分类是预测离散值;回归的输出可以是任意值,而分类的输出只能是预设的分类输出的一个,比如(0,1)中的0或1.;理论上讲,如果回归的输入值相近,那么它的预测值也是相近的,而分类的输入相近(在同一个分类决策边界内),那么它们的预测值是一样的,代表属于同一类别。

举个例子:

预测明天的气温是回归问题,因为预测值可以是正常温度中的任意一个值,是连续的。

预测明天的天气是分类问题,它的预测值是阴、晴、雨等等,是离散的。

二、逻辑回归不是回归 

逻辑回归,Logistic Regression,名为回归,实为分类算法。

逻辑回归的激活函数为:

                                                                             \LARGE f(x)=\frac{1}{1+e^{-\omega ^{T}x}}

通过计算,它的输出为(0,1)之间的某个数值,代表概率,输出值越接近1,表示判断为正的概率越大。和回归的区别在于,输出不能为连续的任意值,只能介于零一之间,而通过设置阈值θ,如果f(x)>θ,则最终输出为1,代表分类为正样本。如果输出f(x)<θ,输出为0,代表分类为负样本。所以逻辑回归不是回归而是分类。

 三、生成式逻辑回归

假设我们有一个数据集,共有1000个样本,其中C1类有350个,C2类有650个。那么我们就已知了P(C1)和P(C2)。 

贝叶斯公式为:

由贝叶斯公式上下同时除以分子可得:

\LARGE P(C1|x)=\frac{1}{1+\frac{P(x|C2)P(C2)}{P(x|C1)P(C1)}}

令    \LARGE Z=ln\frac{P(x|C2)P(C2)}{P(x|C1)P(C1)}     则  \LARGE P(C1|x)=\frac{1}{1+e^{-z}}(sigmoid函数)

sigmoid函数的性质如下图:

它可以完美的实现逻辑回归输出的要求,输出结果在(0,1)。所以逻辑回归以此为激活函数。 

考虑到公式Z:

\LARGE Z=ln\frac{P(x|C2)P(C2)}{P(x|C1)P(C1)}=ln\frac{P(x|C1)}{P(x|C2)}+ln\frac{P(C1)}{P(C2)} 

而对于一个样本,比如我们之前提到的,P(C1)H和P(C2)是已知的,只需要求前面一项即可。   

现在假设每个特征的维度相互独立,则:

\LARGE P(x|C1)=P(x_{1}|C1)P(x_{2}|C1)...P(x_{m}|C1)  

假设样本C1C2的分类均为高斯分布,且相互独立,则C1样本的均值为\mu ^{^{1}},样本方差为Σ1;C2的样本均值为\mu ^{2},样本方差为Σ2。则:

\LARGE P(x|C1)=\frac{1}{2\pi ^{\frac{D}{2}}}\frac{1}{\left | \sum1 \right |^{\frac{1}{2}}}exp\left \{ \left. -\frac{1}{2}(x-\mu ^{1})^{T} (\sum1 )^{-1}(x-\mu^{1})\right \} \right.

\LARGE P(x|C2)=\frac{1}{2\pi ^{\frac{D}{2}}}\frac{1}{\left | \sum2 \right |^{\frac{1}{2}}}exp\left \{ \left. -\frac{1}{2}(x-\mu ^{2})^{T} (\sum 2)^{-1}(x-\mu^{2})\right \} \right.

通过计算最终可得:

其中最后一项为先验概率比值的ln值。

当我们不采用单独的方差,而是使用协方差矩阵代替,即Σ=Σ1=Σ2,那么问题将得到简化,

即:

\LARGE Z=\omega ^{T}x+b               \LARGE P(C1|x)=\frac{1}{1+e^{-(\omega ^{T}+b)}}         

 

这样通过先验概率和假设特征概率分布而求得参数的方法,成为生成式逻辑回归模型。

四、判别式逻辑回归 

 我们在线性回归时直接规定了损失函数为MSE,通过优化损失函数来求得最终的参数,那么我们可不可以直接也用MSE作为逻辑回归的损失函数而直接求参数呢?答案是否定的。当然,并不是因为不能优化损失函数来求参数,而是MSE不适合作为线性回归的损失函数。既然MSE的求距离方式不适用,那么我们可不可以找到另外一种求距离的方式来优化呢?答案是肯定的。那就是KL散度。

通过这一步,可以使输出值变为(0,1)内的一个概率值。 

令(其中x1与x2为一类,x3为另一类):

我们要找出一对(w,b),使L(w,b)最大,这样就可以使x1x2为一类且x3为另一类的概率最大,即在训练集上的误差最小。 

最大化L(w,b)就是最小化  {-ln(L(w,b))}

\LARGE -L(\omega ,b)=-\sum_{i=1}^{n}{y^{i}lnf(x^{i})+(1-y^{i})ln(1-f(x^{i}))

这就是两个伯努利分布的交叉熵损失函数。

接下来就可以对w和b采用梯度下降或者其他优化算法求最优值了。方法和线性回归类似,这里不再详细推导。

五、逻辑回归为什么不用均方误差做损失函数

 假如损失函数为均方误差,则:

\LARGE L(\omega ,b)=\frac{1}{2n}\sum_{i=1}^{n}(y^{i}-f(x^{i}))^{2}

\LARGE \frac{\partial L(\omega ,b)}{\partial \omega }=\frac{1}{n}\sum_{i=1}^{n}(f(x^{i})-y^{i})f(x^{i})(1-f(x^{i}))x

由sigmoid函数特性可知,当初始化一组(w,b)后,f(x)的值接近0或者1的概率非常大,那么梯度值就会接近零,而根据更新公式:

\LARGE \omega =\omega -\eta \frac{\partial L(\omega ,b)}{\partial \omega } 

当梯度值接近0时,每次更新幅度几乎为零,就会被判定更新到最优质。而实际上并没有进行任何优化,这显然是无法接受的。

既然我们选的初始(w,b)导致梯度为0,那么我们可以多次初始化,从中选择一个好的( w,b)进行优化吗?理论上可以,但现实非常难。

另外,MSE的局部最优值与特征数量的平方称正比,所以会非常容易陷入局部最优。而KL散度最为优化函数,因为是凸函数,所以是一定可以求得全局最优的。

六、判别模型与生成模型的比较

ng和Jordan的神论文《On Discriminative vs. Generative classifiers: A comparison of logistic regression and naive Bayes》的论文中提到:

判别式分类器才是首选。当训练集增加,尽管两种算法都会表现更好,但效果好的表现形式却是不同的。从反复实验中观察到,训练集增加后,判别式方法会达到更低的渐进误差,而生成式方法会更快的达到渐进误差,但这个误差比判别方法的渐进误差大。

而从我们上述推到过程中也可以发现,生成模型我们进行了诸多假设,这些假设可以使噪声的影响被抵消,所以生成式模型受样本数据的影响较小,而判别式模型受数据和噪声影响更大。

七、写在最后

我是一个刚接触机器学习不久的小白,借着写博客来记录一下学习历程并加深理解,文中难免有错误,若您读后发现有错误,望不吝赐教,谢谢。


http://chatgpt.dhexx.cn/article/DUGB85pT.shtml

相关文章

逻辑斯蒂回归算法

目录 逻辑斯蒂分布 二元逻辑斯蒂回归模型 二元逻辑斯蒂回归的损失函数及优化方法 二元逻辑斯蒂回归的正则化 多元逻辑斯蒂回归 逻辑斯蒂回归小结 LR的优点 LR的缺点 LR将连续特征离散化的原因 逻辑回归和线性回归的区别和联系 LR和SVM的关系 scikit-learn 逻辑回归…

逻辑斯蒂回归以及它的梯度下降法

文章目录 前言逻辑斯蒂分布 模型二项逻辑斯蒂回归模型多项逻辑斯蒂回归模型 策略算法如何求对数似然函数的最大值梯度下降法算法思想推导公式 注意 前言 预测任务分为&#xff1a; 回归问题&#xff1a;输入、输出变量为连续变量。分类问题&#xff1a;输出变量为有限个离散变…

逻辑斯蒂回归分类算法

逻辑斯蒂回归分类算法 首先来看一个线性回归来进行分类的问题&#xff1a; 怎样判断肿瘤是否恶性&#xff1f; 很明显线性回归用于分类问题无法处理边界点的位置。 同时&#xff0c;线性回归健壮性不够&#xff0c;一旦有噪声&#xff0c;立刻“投降” 使用逻辑斯蒂回归 ——…

逻辑斯蒂回归(二分类算法)理论+Python代码实现

逻辑斯蒂回归&#xff08;二分类算法&#xff09;理论Python代码实现 文章目录 逻辑斯蒂回归&#xff08;二分类算法&#xff09;理论Python代码实现一、理论基础&#xff08;一&#xff09; 基于 Logistic 回归和 Sigmoid 函数的分类&#xff08;二&#xff09; 模型训练与代价…

逻辑斯蒂回归 逻辑回归_逻辑回归简介

逻辑斯蒂回归 逻辑回归 Logistic regression is a classification algorithm, which is pretty popular in some communities especially in the field of biostatistics, bioinformatics and credit scoring. It’s used to assign observations a discrete set of classes(ta…

Logistic Regression 逻辑斯蒂回归

文章目录 5、Logistic Regression 逻辑斯蒂回归5.1 回归任务5.1.1 MNIST Dataset5.1.2 CIFAR-10 Dataset 5.2 Regression vs Classification 回归 vs 分类5.3 Sigmoid functions5.3.1 Logistic Function [0, 1]5.3.2 Other Functions [-1, 1] 5.4 Model 模型5.5.1 torch.sigmoi…

机器学习-逻辑斯蒂回归(Logistic Regression)

注&#xff1a;内容转自https://github.com/NLP-LOVE/ML-NLP/tree/master/Machine%20Learning&#xff0c;略有修改。 目录 逻辑 1. 什么是逻辑斯蒂回归 2. 什么是Sigmoid函数 3. 损失函数是什么 4.可以进行多分类吗&#xff1f; 5.逻辑斯蒂回归有什么优缺点 6. 逻辑斯…

逻辑斯蒂回归

一&#xff1a;二元逻辑回归模型 二项逻辑斯蒂回归模型是如下的条件概率分布&#xff1a; 其中&#xff0c;Y为输出&#xff0c;w称为权值向量&#xff0c;b称为偏置。逻辑斯蒂回归比较两个条件概率值的大小&#xff0c;将实例x分到概率值较大的那一类。 一个事件的几率是指该…

【笔记】逻辑斯蒂回归

一、逻辑斯蒂回归概述 &#xff08;1&#xff09;逻辑斯蒂回归的目的&#xff1a;分类。 逻辑斯蒂回归常常解决分类问题&#xff0c;特别是二分类问题。 &#xff08;2&#xff09;逻辑斯蒂回归的过程&#xff1a;回归。 计算结果是0~1之间的连续值&#xff0c;代表发生的可…

逻辑斯蒂回归java_逻辑斯蒂回归模型

http://blog.csdn.net/hechenghai/article/details/46817031 主要参照统计学习方法、机器学习实战来学习。下文作为参考。 第一节中说了&#xff0c;logistic 回归和线性回归的区别是&#xff1a;线性回归是根据样本X各个维度的Xi的线性叠加(线性叠加的权重系数wi就是模型的参数…

逻辑斯蒂回归算法详解

逻辑斯蒂回归算法可用于分类问题&#xff0c;其本质是在线性回归的算法上用sigmoid函数进行模型变换&#xff0c;使得目标值介于0-1之间。本文用于对逻辑斯蒂回归算法&#xff08;Logistics Regression&#xff09;进行详细讲述。 逻辑斯蒂回归基本假设 我们知道线性回归的基…

【机器学习实验五】逻辑斯蒂回归

目录 一、逻辑斯蒂回归基本概念 1.1、基本概念 1.2、特点 1.3、Logistic分布 1.4、逻辑斯蒂回归模型 二、利用逻辑斯蒂模型进行分类测试 2.1、数据准备 2.2、编写代码查看数据集的分布情况 2.3、训练分类算法 2.4、绘制决策边界 三、从疝气病症状预测病马的死亡率 …

Logistic regression(逻辑斯蒂)回归分析

Logistic regression &#xff08;逻辑回归&#xff09;是当前业界比较常用的机器学习方法&#xff0c;用于估计某种事物的可能性。比如某用户购买某商品的可能性&#xff0c;某病人患有某种疾病的可能性&#xff0c;以及某广告被用户点击的可能性等。&#xff08;注意这里是&a…

逻辑斯谛回归(Logistic回归)最详解

Logistic回归学习思路 一.逻辑回归模型的原理与定义&#xff08;主要思想&#xff09; 逻辑斯谛回归是经典的分类方法&#xff0c;它属于对数线性模型&#xff0c;原理是根据现有的数据对分类边界线建立回归公式&#xff0c;以此进行分类。&#xff08;主要思想&#xff09; …

常用服务器型号整理

转载于:https://www.cnblogs.com/quzq/p/11285548.html

查看linux cpu 内存 服务器型号 序列号 磁盘 raid信息

安装dmidecode&#xff1a;yum -y install dmidecode 查看cpu的型号: 查看cpu的颗数&#xff1a; dmidecode -t processor |grep "Version" dmidecode -t processor |grep "Socket" 查看内存最大容量&#xff1a; 查看内存插槽数量&#xff1a; 查看内存大…

浪潮官网服务器型号,浪潮服务器有哪些型号,哪位了解?

NF8520系列市场价格&#xff1a;&#xffe5;152000-175000 浪潮英信NF8520采用全新QPI架构高速互联技术的四路服务器&#xff0c;支持最新英特尔至强处理器E7系列&#xff0c;成四个具备IOAT2VMDQ技术的高性能千兆网卡&#xff0c;在全面提升网络IO能力的同时&#xff0c;对虚…

服务器内存怎么看型号,怎么查看服务器内存的型号

怎么查看服务器内存的型号 内容精选 换一换 设备实时状态查询是检测设备在运行过程中的状态信息。用户可任选以下指令之一查看设备实时状态查询命令的可用参数。ascend-dmi -i -hascend-dmi -i --help各参数解释如表1所示。以查看芯片的详细信息为例。ascend-dmi -i -dt若推理服…

阿里云服务器型号大全及机型如何选择(建议收藏)

不同的阿里云实例规格可以提供的计算能力不同&#xff0c;适用于不同的业务场景和使用场景。 1、根据使用场景来选择 下图显示了阿里云ECS的部分通用计算和异构计算实例规格族及其对应的业务场景 简单来看&#xff0c;g6e和g6型能够满足一般的通用需求&#xff0c;对于比如金…

当前主流服务器型号,当前服务器的主流品牌 型号 配置

当前服务器的主流品牌 型号 配置 内容精选 换一换 Atlas 800 推理服务器(型号 3000)安装上架、服务器基础参数配置、安装操作系统等操作请参见《Atlas 800 推理服务器 用户指南(型号 3000)》&#xff0c;安装操作系统完成后&#xff0c;配置业务网口IP地址&#xff0c;请参见配…