【Python】torch.exp()和 torch.sigmoid()函数详解和示例

本文对torch.exp()和 torch.sigmoid()函数进行原理和示例讲解,以帮助大家理解和使用。

目录

  • torch.exp
    • 函数原理
    • 运行示例
  • torch.sigmoid()
    • 函数原理
    • 运行示例
    • torch.sigmoid相关知识
  • 结合运行

torch.exp

函数原理

torch.exp是PyTorch库中的一个函数,它的作用是对输入的张量进行按元素指数运算。

指数运算是将基数的指数次幂的结果,例如,计算e的x次幂,其中e是自然对数的底数。torch.exp返回一个新的张量,张量的形状和输入张量相同,但是每个元素都是输入元素的指数运算结果1。

函数原型:

torch.exp(input)参数:input:输入张量。
返回值:返回一个包含指数运算结果的张量。

运行示例

import torch# 创建张量x
x = torch.tensor([-2.0, -4.0, 0.0, 6.0, 8.0])
# 使用exp函数计算x
y = torch.exp(x)
#打印计算结果y
print(y)

输出结果:

tensor([1.3534e-01, 1.8316e-02, 1.0000e+00, 4.0343e+02, 2.9810e+03])

torch.sigmoid()

函数原理

torch.sigmoid是一个在PyTorch库中提供的函数,用于将任何实数映射到介于0和1之间的值。具体来说,torch.sigmoid接受一个张量作为输入,然后应用sigmoid函数到每个元素上。sigmoid函数的定义如下:

sigmoid(x) = 1 / (1 + exp(-x))

这意味着对于任何输入x,输出将是0和1之间的值。
函数原型:

torch.sigmoid(input)参数:
input:一个Tensor或者是张量。
返回值:
返回一个Tensor,其值在0和1之间。

运行示例

import torch# 创建张量x
x = torch.tensor([-2.0, -4.0, 0.0, 6.0, 8.0])
# 使用sigmoid函数计算x
y = torch.sigmoid(x)
#打印计算结果y
print(y)

输出:

tensor([0.1192, 0.0180, 0.5000, 0.9975, 0.9997])

torch.sigmoid相关知识

应用到张量:torch.sigmoid可以接受一个一维张量(向量)或二维张量(矩阵)作为输入。对于矩阵,每个元素都将独立地应用sigmoid函数。

元素级别的操作:Sigmoid函数在每个输入元素的上下文中进行操作,将它们映射到0到1的范围内。这使得它在神经网络中非常有用,特别是在需要将某些值保持在0到1范围内的场景中。

梯度问题:由于sigmoid函数将所有值映射到0和1之间,因此在其梯度在此范围内是非常大的(接近于1)。这使得在反向传播过程中梯度的计算变得容易。

与ReLU一起使用:尽管ReLU函数(及其变体)在许多神经网络架构中非常流行,但在某些情况下,特别是在处理具有正负无穷大输出的模型时,sigmoid函数可能更合适。
计算复杂度:与ReLU相比,sigmoid的计算复杂度稍高。这是因为在接近饱和值(即接近0或1)时,sigmoid函数的计算需要乘法和指数运算。然而,这通常可以通过优化库(如PyTorch)中的实现来隐藏,这些实现通常使用GPU加速以提高性能。

可解释性:sigmoid函数提供了一种直观的方式来解释模型输出。例如,如果模型的最后一层使用了sigmoid激活函数,那么模型的输出可以被解释为概率。这在二元分类问题中特别有用,其中模型的输出被解释为属于某一类的概率。

总之,torch.sigmoid是一个非常有用的函数,在许多神经网络架构中都有应用。它提供了一种有效且直观的方式将输入映射到0和1之间,并在需要解释模型输出的场景中特别有用。

结合运行

在这里插入图片描述

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.hqwc.cn/news/228221.html

如若内容造成侵权/违法违规/事实不符,请联系编程知识网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

C语言 移位操作符

<< 左移操作符>> 右移操作符 注&#xff1a;移位操作符的操作数只能是整数。 移位操作符移动的是二进制位。 整数的二进制表示有3种&#xff1a; 原码反码补码 正的整数的原码、反码、补码相同。 负的整数的原码、反码、补码是要计算的。 由负整数原码计算出反…

万界星空科技生产管理mes系统种的工艺确认流程

MES工艺流程是制造执行系统的核心部分&#xff0c;它涵盖了整个生产过程&#xff0c;包括物料管理、生产计划、生产执行、质量管理、维修保养等方面&#xff0c;可以有效地提高生产效率和产品质量。 一、确认追溯模型&#xff1a; 以工艺文件为确认对象&#xff0c;以产品生产…

景联文科技加入中国人工智能产业联盟(AIIA)数据委员会

近日&#xff0c;景联文科技加入中国人工智能产业联盟&#xff08;AIIA&#xff09;数据委员会&#xff0c;成为委员会成员单位。 中国人工智能产业发展联盟&#xff08;简称AIIA&#xff09;是在国家发改委、科技部、工信部、网信办指导下&#xff0c;由中国信息通信研究院等单…

Mybatis网址

Mybatis中文网&#xff1a;MyBatis中文网https://mybatis.net.cn/Mybatis Git 地址&#xff1a;MyBatis GitHubMyBatis has 37 repositories available. Follow their code on GitHub.https://github.com/mybatis

食谱菜谱大全API接口

食谱菜谱大全API接口 一、食谱菜谱大全API接口二、使用步骤1、接口2、请求参数3、请求参数示例4、接口 返回示例 三、 如何获取appKey和uid1、申请appKey:2、获取appKey和uid 四、重要说明 一、食谱菜谱大全API接口 包含所有家用或者商用的食谱菜谱的API接口 二、使用步骤 1…

20 章 多线程

20.1线程简介. 20.2创建线程 2.1继承Thread类 Thread 类是java.lang包中的一个类&#xff0c;从这个类中实例化的对象代表线程&#xff0c;程序员启动一个新线程需要建立Thread 实例。Thread类中常用的两个构造方法如下: public Thread():创建一个新的线程对象。 public Thre…

【C++初阶(九)】 priority_queue的使用与模拟实现

本专栏内容为&#xff1a;C学习专栏&#xff0c;分为初阶和进阶两部分。 通过本专栏的深入学习&#xff0c;你可以了解并掌握C。 &#x1f493;博主csdn个人主页&#xff1a;小小unicorn ⏩专栏分类&#xff1a;C &#x1f69a;代码仓库&#xff1a;小小unicorn的代码仓库&…

Unity 关于SpriteRenderer 和正交相机缩放

float oldWidth 750f;float oldHeight 1334f;float newWidth Screen.width;float newHeight Screen.height;float oldAspect oldWidth / oldHeight;float newAspect newWidth / newHeight;//水平方向缩放float horizontalCompressionRatio newAspect / oldAspect;//垂直…

Android中的多进程

在Android中也可以像pc一样开启多进程&#xff0c;这在android的编程中通常是比较少见的&#xff0c;以为在一个app基本上都是单进程工作就已经足够了&#xff0c;有一些特殊的场景&#xff0c;我们需要用多进程来做一些额外的工作&#xff0c;比如下载工作等。 在Android的An…

文件批量重命名:多个路径文件批量改名编号并移动到同一路径的操作方法

在日常生活和工作中&#xff0c;可能会遇到需要批量重命名文件的情况。比如说&#xff0c;从不同的路径下载了一堆图片&#xff0c;或者从不同的文件夹中收集了一些文件&#xff0c;现在要将这些文件按照一定的规则进行编号命名。这种情况下&#xff0c;手动修改文件名并且移动…

NX二次开发UF_MTX3_vec_multiply 函数介绍

文章作者&#xff1a;里海 来源网站&#xff1a;https://blog.csdn.net/WangPaiFeiXingYuan UF_MTX3_vec_multiply Defined in: uf_mtx.h void UF_MTX3_vec_multiply(const double vec [ 3 ] , const double mtx [ 9 ] , double vec_product [ 3 ] ) overview 概述 Returns…

只需十分钟快速入门Python,快速了解基础内容学习。零基础小白入门适用。

文章目录 简介特点搭建开发环境版本hello world注释文件类型变量常量数据类型运算符和表达式控制语句数组相关函数相关字符串相关文件处理对象和类连接mysql关于Python技术储备一、Python所有方向的学习路线二、Python基础学习视频三、精品Python学习书籍四、Python工具包项目源…