当前位置: 首页 > news >正文

PyTorch_张量转换为numpy数组

使用 tensor.numpy 函数可以将张量转换为 ndarray 数组,但是共享内存,可以使用 copy 函数避免共享。共享内存会导致张量或者numpy中的其中一个更改后,另外一个会受到影响。


代码

import torch # 张量转换为 numpy 数组
def test01():data_tensor = torch.tensor([2,3,4])# 将张量转换为 numpy 数组data_numpy = data_tensor.numpy()print(type(data_tensor))print(type(data_numpy))print(data_tensor)print(data_numpy)# 张量和 numpy 数组共享内存
def test02():data_tensor = torch.tensor([2,3,4])data_numpy = data_tensor.numpy()data_tensor[0] = 100 print(data_tensor)print(data_numpy)# 修改 numpy 数组元素的值,看看张量是否会发生变化? 会发生变化data_numpy[0] = 200 print(data_tensor)print(data_numpy)# 使用 copy 函数实现不共享内存
def test03():data_tensor = torch.tensor([2,3,4])# 此处,发生了类型转换,可以使用拷贝函数产生新的数据,避免共享内存data_numpy = data_tensor.numpy().copy()# 修改 numpy 数组元素的值,看看张量是否会发生变化? 不会发生变化data_numpy[0] = 100 print(data_tensor)print(data_numpy)data_tensor[0] = 200 print(data_tensor)print(data_numpy)if __name__ == "__main__":test03() 
http://www.xdnf.cn/news/267319.html

相关文章:

  • 【教学类-34-10】20250503(通义万相)4*3蝴蝶拼图(圆形、三角、正方、半圆的凹凸小块+参考图灰色)
  • 3392. 统计符合条件长度为 3 的子数组数目
  • RabbitMQ 中的六大工作模式介绍与使用
  • 【RocketMQ NameServer】- NameServer 启动源码
  • mysql安装,操作详解,适用于所有版本
  • 【25软考网工】第五章 (3)IPv6 报文格式、地址分类、过渡技术
  • 具备智能广告拦截、个性化定制的便捷网页浏览器
  • Python functools.partial 函数深度解析与实战应用
  • AI大模型基础设施:AMD的霄龙系列CPU
  • 学习海康VisionMaster之线线测量
  • 【Python生成器与迭代器】核心原理与实战应用
  • 打印Activity的调用者
  • 互联网大厂Java面试:从Spring到微服务的技术探讨
  • 用Ensaio下载GIS数据
  • 聚集索引与非聚集索引的区别有哪些?
  • 磁盘文件系统
  • 中间件和组件
  • 滑动窗口leetcode 904
  • 如何在3dMax中使用UVW展开修改器?
  • Flowable7.x学习笔记(十八)拾取我的待办
  • LeetCode //C - 696. Count Binary Substrings
  • HTML简介
  • Linux用户管理命令和用户组管理命令
  • spring2.x详解介绍
  • 【C/C++】Linux的futex锁
  • 终端与环境变量
  • 关于算法设计与分析——拆分表交换问题
  • 连续变量与离散变量的互信息法
  • Docker —— 技术架构的演进
  • 高中数学联赛模拟试题精选学数学系列第3套几何题