1 小时入门 PyTorch:从张量到多 GPU 神经网络训练
Sebastian Raschka(极客时间编译)
ML/AI Research Engineer
32 人已学习
免费领取
1 小时入门 PyTorch:从张量到多 GPU 神经网络训练
15
15
1.0x
00:00/00:00
登录|注册

02|理解张量

张量是一个数学概念,它是向量和矩阵向更高维度的推广。换句话说,张量是一类数学对象,其特征可以通过 “阶(order)” 或 “秩(rank)” 来描述,阶或秩表示的是张量的维度数量。例如,标量(即单个数字)是 0 阶张量,向量是 1 阶张量,矩阵是 2 阶张量,如图 1 所示。
图 1:不同秩的张量示意图。其中,0D 对应 0 阶张量,1D 对应 1 阶张量,2D 对应 2 阶张量。需要注意的是,由 3 个元素组成的 3D 向量,仍然是 1 阶张量。
从计算角度来看,张量充当数据容器。例如,它们可以存储多维数据,其中每个维度代表不同的特征。像 PyTorch 这样的张量库能够高效地创建、操作和计算这些多维数组。在此上下文中,张量库的作用类似于数组库。
PyTorch 张量与 NumPy 数组类似,但具备对深度学习至关重要的额外特性。例如,PyTorch 内置了自动微分引擎,简化了梯度计算。此外,PyTorch 张量支持 GPU 计算,可加速深度神经网络训练。
PyTorch 具有类似 NumPy 的 API。  在接下来的部分中,你将看到 PyTorch 采用了大多数 NumPy 数组 API 和语法来进行其张量操作。
以下小节将探讨 PyTorch 张量库的基本操作,展示如何创建简单的张量,并介绍一些基本操作。
确认放弃笔记?
放弃后所记笔记将不保留。
新功能上线,你的历史笔记已初始化为私密笔记,是否一键批量公开?
批量公开的笔记不会为你同步至部落
公开
同步至部落
取消
完成
0/2000
荧光笔
直线
曲线
笔记
复制
AI
  • 深入了解
  • 翻译
    • 英语
    • 中文简体
    • 法语
    • 德语
    • 日语
    • 韩语
    • 俄语
    • 西班牙语
  • 解释
  • 总结

1. 张量是数学概念,是向量和矩阵向更高维度的推广,其特征可以通过“阶(order)”或“秩(rank)”来描述,阶或秩表示的是张量的维度数量。 2. PyTorch张量类似数组结构的数据容器,可以存储多维数据,其中每个维度代表不同的特征,类似于数组库,但具备对深度学习至关重要的额外特性。 3. PyTorch张量支持GPU计算,可加速深度神经网络训练,具有类似NumPy的API,采用了大多数NumPy数组API和语法来进行其张量操作。 4. PyTorch中的张量数据类型包括整数和浮点数类型,可以通过`.dtype`属性查看张量的数据类型,使用`.to`方法可以轻松更改精度。 5. 常见的PyTorch张量操作包括创建新的张量、获取张量的形状、重塑张量、转置张量以及矩阵相乘等基本操作。 6. PyTorch提供了多种语法选项来执行相同的计算,如`.reshape`、`.view`、`.T`、`.matmul`方法以及@运算符,以提升用户的使用便利性。 7. PyTorch张量操作的官方文档提供了更多不同张量操作的详细信息,可供进一步了解和学习。 8. 张量库如PyTorch能够高效地创建、操作和计算多维数组,具有对深度学习至关重要的额外特性,如自动微分引擎和GPU计算支持。 9. PyTorch张量支持不同的数据类型,可以通过`.dtype`属性查看张量的数据类型,使用`.to`方法可以轻松更改精度。 10. PyTorch提供了多种语法选项来执行相同的计算,如`.reshape`、`.view`、`.T`、`.matmul`方法以及@运算符,以提升用户的使用便利性。

该试读文章来自《1 小时入门 PyTorch:从张量到多 GPU 神经网络训练》,如需阅读全部文章,
请先领取课程
免费领取
登录 后留言

精选留言

由作者筛选后的优质留言将会公开显示,欢迎踊跃留言。
收起评论
显示
设置
留言
收藏
沉浸
阅读
分享
手机端
快捷键
回顶部