系列文章目录
Pytorch基础篇
01-PyTorch新手必看:张量是什么?5 分钟教你快速创建张量!
02-张量运算真简单!PyTorch 数值计算操作完全指南
03-Numpy 还是 PyTorch?张量与 Numpy 的神奇转换技巧
04-揭秘数据处理神器:PyTorch 张量拼接与拆分实用技巧
05-深度学习从索引开始:PyTorch 张量索引与切片最全解析
06-张量形状任意改!PyTorch reshape、transpose 操作超详细教程
07-深入解读 PyTorch 张量运算:6 大核心函数全面解析,代码示例一步到位!
08-自动微分到底有多强?PyTorch 自动求导机制深度解析
Pytorch实战篇
09-从零手写线性回归模型:PyTorch 实现深度学习入门教程
10-PyTorch 框架实现线性回归:从数据预处理到模型训练全流程
11-PyTorch 框架实现逻辑回归:从数据预处理到模型训练全流程
12-PyTorch 框架实现多层感知机(MLP):手写数字分类全流程详解
文章目录
前言
在深度学习中,经常需要在 PyTorch 张量和 NumPy 数组之间进行转换。PyTorch 提供了方便的 API,可以在两者之间高效地相互转换。需要注意的是,这些转换可能会共享内存,必要时可以通过深拷贝的方式避免共享内存导致的潜在问题。
一、张量转换为 NumPy 数组
使用 Tensor.numpy
函数可以将张量转换为 ndarray
数组。默认情况下,两者共享内存,修改其中一个会影响另一个。如果不希望共享内存,可以使用深拷贝。
1.1 示例代码
import torch
# 1. 将张量转换为 NumPy 数组
def example01():
data_tensor = torch.tensor([5, 6, 7])
# 使用张量对象中的 numpy 函数进行转换
data_numpy = data_tensor.numpy()
print("张量类型:", type(data_tensor))
print("NumPy 类型:", type