2 逻辑斯蒂回归(分类)

devtools/2024/10/18 18:33:02/

目录

 

1 理论

        逻辑回归假设数据服从伯努利分布(二分类),通过极大化似然函数的方法,运用梯度下降来求解参数,来达到将数据二分类的目的。        

        逻辑斯蒂回归(Logistic Regression)是一种用于解决分类问题的线性模型。尽管名字中包含“回归”一词,但逻辑斯蒂回归实际上用于处理分类问题,特别是二分类问题。

        逻辑斯蒂回归通过将线性回归模型的输出通过一个逻辑斯蒂函数(Logistic Function)进行转换,将连续的预测值映射到 0 到 1 之间的概率值。

2 求解

2.1 二分类形式

二项逻辑斯蒂回归模型是如下条件概率分布:

                           

应用极大似然估计法估计模型参数:

                  

2.2 梯度下降

如何训练呢?梯度下降法。

\sigma (x) = \frac{1}{1+exp(-x)}\\ \\ {\sigma (x)}' = {\sigma (x)}(1-{\sigma (x)}) \\ \\

那么,l(w). 把\sigma (x)代入进去:

l(w) = \sum [y_ilog\sigma(wx_i) +(1-y_i)log(1-\sigma (wx_i)]

3 面试

逻辑回归的优缺点总结。

优点:

  • 形式简单,模型的可解释性非常好。从特征的权重可以看到不同的特征对最后结果的影响,某个特征的权重值比较高,那么这个特征最后对结果的影响会比较大。
  • 模型效果不错。在工程上是可以接受的(作为baseline),如果特征工程做的好,效果不会太差,并且特征工程可以大家并行开发,大大加快开发的速度。
  • 训练速度较快。分类的时候,计算量仅仅只和特征的数目相关。并且逻辑回归的分布式优化sgd发展比较成熟,训练的速度可以通过堆机器进一步提高,这样我们可以在短时间内迭代好几个版本的模型。
  • 资源占用小,尤其是内存。因为只需要存储各个维度的特征值,。
  • 方便输出结果调整。逻辑回归可以很方便的得到最后的分类结果,因为输出的是每个样本的概率分数,我们可以很容易的对这些概率分数进行cutoff,也就是划分阈值(大于某个阈值的是一类,小于某个阈值的是一类)。

缺点:

  • 准确率并不是很高。因为形式非常的简单(非常类似线性模型),很难去拟合数据的真实分布。
  • 很难处理数据不平衡的问题。举个例子:如果我们对于一个正负样本非常不平衡的问题比如正负样本比 10000:1.我们把所有样本都预测为正也能使损失函数的值比较小。但是作为一个分类器,它对正负样本的区分能力不会很好。
  • 处理非线性数据较麻烦。逻辑回归在不引入其他方法的情况下,只能处理线性可分的数据,或者进一步说,处理二分类的问题 。
  • 逻辑回归本身无法筛选特征。有时候,我们会用gbdt来筛选特征,然后再上逻辑回归

ref统计学习方法笔记与习题解答(Chapter6)(一)_统计学习方法 第六章习题-CSDN博客


http://www.ppmy.cn/devtools/11520.html

相关文章

java多线程-练习

需求 代码 使用Callable 方便返回执行的结果&#xff1a;每个线程的发送礼物的数量礼物清单&#xff1a;共享资源&#xff0c;方便上锁礼物数量&#xff1a;线程变量&#xff0c;每个线程发送礼物的数量 public class SendGiftThread implements Callable<Integer> {// 共…

UUPSUpgradeable部署合约和升级合约

文章目录 写一个合约1. 使用代理部署 并添加拥有者2. 没有name number为103. 使用代理升级部署 填写上面代理的合约地址4. 合约地址没有变&#xff0c;但是添加了name&#xff0c;并且保存了number的属性值 写一个合约 // SPDX-License-Identifier: MIT // Compatible with Op…

全新创维EV6 Ⅱ超充车型有哪些亮点?答案将在北京车展揭晓

4月25日-5月4日&#xff0c;阔别4年的北京车展盛大回归&#xff0c;创维汽车将携全新车型创维EV6 Ⅱ超充车型及系列创新技术&#xff0c;亮相北京中国国际展览中心顺义馆W3号馆 311展位&#xff0c;全面展示其在新能源汽车补能及智能化领域的前瞻思考和技术布局。 以顶级超充革…

nvm使用指定镜像安装node和npm包

场景 使用nvm时&#xff0c;默认的安装源经常碰到找不到可用版本的问题&#xff0c;这时就需要指定镜像源。比如如果你在学习鸿蒙ArkTs项目的开发&#xff0c;就需要指定从华为官方镜像上安装指定版本的node和npm包 命令 以windows为例&#xff0c;以管理员身份运行cmd工具&…

【webrtc】m114自己实现的PrioritizedPacketQueue及优先级处理

G:\CDN\WEBRTC-DEV\libwebrtc_build\src\modules\pacing\prioritized_packet_queue.h跟m98不同 :webrtc】m98 RoundRobinPacketQueue的优先级处理,m114直接使用taskqueue顺序处理了。甚至自己实现了优先级队列感觉简化了实现,更为清晰 易读,但是去掉了码率低就优先的逻辑。1…

《魔兽世界》本人收集的二十六个单机版游戏,内有视频架设教程,非常详细,云盘下载

《魔兽世界》&#xff08;World of Warcraft&#xff09;属于大型多人在线角色扮演游戏。 《魔兽世界》本人收集的二十六个单机版游戏&#xff0c;内有视频架设教程&#xff0c;非常详细 下载地址&#xff1a; 链接&#xff1a;https://pan.baidu.com/s/1zu7lUNupkPnLPVYHM4jL5…

OpenHarmony UI动画-lottie

简介 lottie是一个适用于OpenHarmony的动画库&#xff0c;它可以解析Adobe After Effects软件通过Bodymovin插件导出的json格式的动画&#xff0c;并在移动设备上进行本地渲染。 下载安裝 ohpm install ohos/lottieOpenHarmony ohpm 环境配置等更多内容&#xff0c;请参考如何…

Jenkins打包app并通过openssh上传到服务器

目录 1、下载安装openssh 2、配置openssh根目录 3、安装Jenkins Build Steps配置 Post-build Actions配置 4、运行 1、下载安装openssh 网上很多教程&#xff0c;包括开端口的&#xff0c;可以搜下 2、配置openssh根目录 进入C:\ProgramData\ssh打开文件sshd_config&am…