您现在的位置是:首页 > 正文

【Pytorch】.item() 方法介绍

2024-01-30 20:32:47阅读 0


一、.item() 方法介绍

1. 方法介绍

我们先看官网中是怎么介绍的:

在这里插入图片描述

返回这个张量的值作为一个标准的Python数字。

详情页中说:

# TORCH.TENSOR.ITEM
Tensor.item() → number
Returns the value of this tensor as a standard Python number. This only works for tensors with one element. For other cases, see tolist().

This operation is not differentiable.
  • 返回这个张量的值作为一个标准的 Python 数字。这只适用于单元素张量。对于其他情况,请参见tolist()。
  • 这个运算是不可微的。

也就是说:Tensor.item() 的作用是取出单元素张量的元素值并返回该值,保持原元素类型不变。即:原张量元素为整形,则返回整形,原张量元素为浮点型则返回浮点型,etc.

2. 那么有什么用呢?

在 pytorch 训练时,一般用到 .item() 方法。比如 loss.item()

在浮点数结果上使用 .item() 函数可以提高显示精度,所以我们在求 loss 或者 accuracy 时,一般使用 x[1,1].item() 而不是单纯使用 x[1,1]。


二、实例

x[1,1] V.S. X.item():

import torch
x = torch.randn(2, 2)
print(x)
print(x[1,1])
print(x[1,1].item())

输出结果:

tensor([[ 1.4471, -0.4962],
        [-0.0843, -0.3465]])
tensor(-0.3465)
-0.3464970886707306

参考链接

  1. python中.item()的讲解

网站文章

  • Vite.config.ts最全配置

    vite.config.ts配置

    2024-01-30 20:32:41
  • Vue2 子组件绑定 v-model ,实现父子组件通信

    Vue2 子组件绑定 v-model ,实现父子组件通信

    v-model可以在组件上使用以实现双向绑定。

    2024-01-30 20:32:06
  • Redis入门

    Redis入门

    内存的key-value结构数据库。Redis 是互联网技术领域使用最为广泛的存储中间件。RedisRedis中文网key-value结构存储:基于内存存储,读写性能高适合存储热点数据(热点商品、资讯...

    2024-01-30 20:31:59
  • 查看网络计算机端口,怎么查网络端口被占用?如何查看某个端口被谁占用

    查看网络计算机端口,怎么查网络端口被占用?如何查看某个端口被谁占用

    大家在使用电脑时应该都遇到过其中某一个项目是端口被其他服务占用,导致启动失败的情况,那如何查看某个端口被谁占用呢?有一些小伙伴可能不是很清楚,所以今天本文为大家整理的就是查看某个端口被谁占用的具体方...

    2024-01-30 20:31:54
  • element 列表自定义序号

    element 列表自定义序号。

    2024-01-30 20:31:24
  • 【ES6基础】Map与WeakMap

    ES6里除了增加了Set(集合类型)外(笔者在这篇文章《Set与WeakSet》有过介绍),今天这篇文章将介绍引入的新类型——Map(映射类型)及WeakMap。映射类型在计算机科学中定义属于关联数组...

    2024-01-30 20:31:06
  • 广义表之树的兄弟孩子表示法

    title: 广义表之树的兄弟孩子表示法 date: 2020-11-17 15:55:55 tags: 兄弟孩子广义表 二叉树 categories: 数据结构 用兄弟孩子广义表来表示二叉树 对比 ...

    2024-01-30 20:30:59
  • MySQL~Undo日志(作用、存储结构、生命周期/运行过程)

    MySQL~Undo日志(作用、存储结构、生命周期/运行过程)

    文章目录Undo日志作用存储结构生命周期/运行过程Undo日志Undo日志保证了事务原子性每次更新一条数据之前都会先写入一条undo日志在运行过程中,如果数据库宕机或是事务回滚,都需要把数据恢复成原来...

    2024-01-30 20:30:21
  • Linux中的Shell编程

    Linux中的Shell编程

    Shell 是一个命令解释器,它为用户提供了一个向 Linux 内核发送请求以便运行程序界面系统级程序,用户可以用 Shell 来启动、挂起、停止甚至是编写一些程序。2.对于JavaEE和Python...

    2024-01-30 20:30:15
  • 批量重命名文件、图片、去除文件名括号

    批量重命名文件、图片、去除文件名括号

    批量重命名文件、图片、去除文件名括号

    2024-01-30 20:30:10