pytorch学习笔记(九)————logistic regression逻辑回归

目录

回顾–线性回归与逻辑回归

在这里插入图片描述
在之前的课程中我们学过了linear regression(线性回归),y=xw+b是一个线性函数且输出是一个连续的值,所以叫做线性回归。
如果输出再经过一个sigmoid函数,输出值的范围限制在0-1之间,输出的值变成概率值。这个操作叫做逻辑回归。当概率趋近于0,输出0,当概率趋近1,输出1,因此可以理解逻辑回归为一个分类问题。

二分类

在这里插入图片描述
二分类问题过程如上,输入一个x经过函数f 分别得到输出y=0和1的概率,根据概率判断输入的类别。

分类与回归问题的目标和实现方法对比

在这里插入图片描述
对于回归问题(输出的值是连续值的问题)而言,目标是使得预测值pred尽可能接近真实值y。解决这一问题的方法是通过最小化,pred和y之间的欧式距离。

对于分类问题(输出的值是离散值,如二分类输出0或1)而言,目标是使得accuracy尽可能高,但是解决这一问题的方法并不是通过最大化accuracy,而是最小化输入x经过预测模型得到输出y的概率与输入x得到y的真实概率之间的距离。

Q1:分类问题为什么不最大化accuracy?

在这里插入图片描述
这样做会有两个问题:
1.假如优化了权重w之后输出从0.4变成0.5,但是由于是分类问题是小于0.5 都按照0类处理,大于0.5都按照1类处理,所以此时accuracy并没有改变,对于accuracy的梯度为0不变,没法优化。
2.假如优化了w之后输出从0.499变成0.5,此时分类由0类变成1类,权重参数只改变了一点,但是accuracy则不连续变化,相当于一个阶梯函数,导致梯度不连续。

Q2:为什么叫做逻辑回归

在这里插入图片描述
1.为什么叫逻辑?
“逻辑回归”的“逻辑”不是讲话很有逻辑那个逻辑,而是跟0和1有关系的那个“逻辑”。
例如:逻辑运算,逻辑门(见下图)。学过数字电路的同学一定对下图不陌生。

在这里插入图片描述

逻辑回归使用了sigmoid函数,sigmoid函数的引入则是为了解决阶跃函数存在的一些问题,是用来做二元分类的,不是0就是1,所以谓之“逻辑”。
2.为什么叫回归?
由于是二分类问题,不涉及连续值输出,回归这个说法一直存在争议。
如果loss采用MSE的话,由于优化目标是pred与y的均方差,输出pred是一个连续值,可以看成是回归问题。
如果loss采用交叉熵的话,由于优化目标是输出类别(0和1中取)与真实类别的交叉熵,可以看成是分类问题。
当时还没有出现交叉熵作为优化目标,所以被称为逻辑回归。

二分类的具体做法

在这里插入图片描述

多分类的具体做法

(1)多分类的输出要具备的条件:
1.经过x模型f后输出每个分类对应的概率
在这里插入图片描述
2.每个概率取值范围0-1
3.所有概率之和为1
在这里插入图片描述
(2)使用softmax函数实现符合要求的输出在这里插入图片描述
使用softmax函数可以把输出经过处理,所有输出的值满足多分类所需要的三个条件。同时softmax把输出进一步扩大,如输入1输出0.2,输入2输出0.7,差距从两倍扩大成为3.5倍,这也是softmax函数名称的由来。

  • 0
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
Pytorch是机器学习中的一个重要框架,它与TensorFlow一起被认为是机器学习的两大框架。Pytorch学习可以从以下几个方面入手: 1. Pytorch基本语法:了解Pytorch的基本语法和操作,包括张量(Tensors)的创建、导入torch库、基本运算等\[2\]。 2. Pytorch中的autograd:了解autograd的概念和使用方法,它是Pytorch中用于自动计算梯度的工具,可以方便地进行反向传播\[2\]。 3. 使用Pytorch构建一个神经网络:学习使用torch.nn库构建神经网络的典型流程,包括定义网络结构、损失函数、反向传播和更新网络参数等\[2\]。 4. 使用Pytorch构建一个分类器:了解如何使用Pytorch构建一个分类器,包括任务和数据介绍、训练分类器的步骤以及在GPU上进行训练等\[2\]。 5. Pytorch的安装:可以通过pip命令安装Pytorch,具体命令为"pip install torch torchvision torchaudio",这样就可以在Python环境中使用Pytorch了\[3\]。 以上是一些关于Pytorch学习笔记,希望对你有帮助。如果你需要更详细的学习资料,可以参考引用\[1\]中提到的网上帖子,或者查阅Pytorch官方文档。 #### 引用[.reference_title] - *1* [pytorch自学笔记](https://blog.csdn.net/qq_41597915/article/details/123415393)[target="_blank" data-report-click={"spm":"1018.2226.3001.9630","extra":{"utm_source":"vip_chatgpt_common_search_pc_result","utm_medium":"distribute.pc_search_result.none-task-cask-2~all~insert_cask~default-1-null.142^v91^control_2,239^v3^insert_chatgpt"}} ] [.reference_item] - *2* *3* [Pytorch学习笔记](https://blog.csdn.net/pizm123/article/details/126748381)[target="_blank" data-report-click={"spm":"1018.2226.3001.9630","extra":{"utm_source":"vip_chatgpt_common_search_pc_result","utm_medium":"distribute.pc_search_result.none-task-cask-2~all~insert_cask~default-1-null.142^v91^control_2,239^v3^insert_chatgpt"}} ] [.reference_item] [ .reference_list ]
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值