没有合适的资源?快使用搜索试试~ 我知道了~
首页PyTorch官方教程:快速入门与实战应用
PyTorch官方教程:快速入门与实战应用
需积分: 45 36 下载量 185 浏览量
更新于2024-07-15
收藏 16.3MB PDF 举报
PyTorch官方教程是一份全面且易于上手的指南,旨在帮助用户理解和掌握这个流行的深度学习库。该教程特别强调了PyTorch的特点,如其动态图机制,强大的GPU加速能力以及对动态神经网络的支持,这是TensorFlow等其他框架所不具备的优势。它提供了丰富的学习路径,适合不同层次的学习者。 对于初学者,教程首先介绍了PyTorch的基础概念,包括其与Torch的关系,以及Facebook、Twitter、GMU和Salesforce等知名机构对其的应用背景。接着,60分钟快速入门教程是快速掌握基本操作的关键,从安装到构建一个简单的分类器模型,使新手能够快速上手。 深入学习部分,教程涵盖了计算机视觉应用,如图像分类、数据并行处理、目标检测模型的微调和空间变换网络等,这些都能帮助用户解决实际的视觉问题。在文本处理方面,有聊天机器人、文本生成、序列到序列模型等,适合NLP任务的开发者,如使用字符级RNN进行命名任务和深度学习应用。 此外,教程还涉及数据加载和预处理,迁移学习,以及如何将模型部署到不同的平台,如Caffe2和移动端。生成对抗网络(GANs)和ONNX模型转换也是重要的内容,展示了PyTorch在生成式模型和跨平台兼容性上的实用价值。 PyTorch官方教程是一个体系化的学习资源,无论你是想要了解PyTorch的底层原理,还是希望立即应用到实际项目中,都能找到适合的章节。作者磐创NewsandPytorchChina确保了内容的实用性和易懂性,让学习者能够在轻松愉快的环境中逐步提升技能。
资源详情
资源推荐
什么是PyTorch?
PyTorch 是一个基于 Python 的科学计算包,主要定位两类人群:
NumPy 的替代品,可以利用 GPU 的性能进行计算。
深度学习研究平台拥有足够的灵活性和速度
开始学习
Tensors (张量)
Tensors 类似于 NumPy 的 ndarrays ,同时 Tensors 可以使用 GPU 进行计算。
构造一个5x3矩阵,不初始化。
输出:
构造一个随机初始化的矩阵:
输出:
•
•
from
__future__
import
print_function
import
torch
x
=
torch
.
empty
(
5
,
3
)
print
(
x
)
tensor
(
1.00000e-04
*
[[
-
0.0000
,
0.0000
,
1.5135
],
[
0.0000
,
0.0000
,
0.0000
],
[
0.0000
,
0.0000
,
0.0000
],
[
0.0000
,
0.0000
,
0.0000
],
[
0.0000
,
0.0000
,
0.0000
]])
x
=
torch
.
rand
(
5
,
3
)
print
(
x
)
© 2018 Tangramor 什么是 PyTorch? 页:1
构造一个矩阵全为 0,而且数据类型是 long.
输出:
构造一个张量,直接使用数据:
输出:
创建一个 tensor 基于已经存在的 tensor。
输出:
tensor
([[
0.6291
,
0.2581
,
0.6414
],
[
0.9739
,
0.8243
,
0.2276
],
[
0.4184
,
0.1815
,
0.5131
],
[
0.5533
,
0.5440
,
0.0718
],
[
0.2908
,
0.1850
,
0.5297
]])
x
=
torch
.
zeros
(
5
,
3
,
dtype
=
torch
.
long
)
print
(
x
)
tensor
([[
0
,
0
,
0
],
[
0
,
0
,
0
],
[
0
,
0
,
0
],
[
0
,
0
,
0
],
[
0
,
0
,
0
]])
x
=
torch
.
tensor
([
5.5
,
3
])
print
(
x
)
tensor
([
5.5000
,
3.0000
])
x
=
x
.
new_ones
(
5
,
3
,
dtype
=
torch
.
double
)
# new_* methods take in sizes
print
(
x
)
x
=
torch
.
randn_like
(
x
,
dtype
=
torch
.
float
)
# override dtype!
print
(
x
)
# result has the same size
© 2018 Tangramor Tensors (张量) 页:2
获取它的维度信息:
输出:
注意
torch.Size 是一个元组,所以它支持左右的元组操作。
操作
在接下来的例子中,我们将会看到加法操作。
加法: 方式 1
输出:
加法: 方式2
tensor
([[
1.
,
1.
,
1.
],
[
1.
,
1.
,
1.
],
[
1.
,
1.
,
1.
],
[
1.
,
1.
,
1.
],
[
1.
,
1.
,
1.
]],
dtype
=
torch
.
float64
)
tensor
([[
-
0.2183
,
0.4477
,
-
0.4053
],
[
1.7353
,
-
0.0048
,
1.2177
],
[
-
1.1111
,
1.0878
,
0.9722
],
[
-
0.7771
,
-
0.2174
,
0.0412
],
[
-
2.1750
,
1.3609
,
-
0.3322
]])
print
(
x
.
size
())
torch
.
Size
([
5
,
3
])
y
=
torch
.
rand
(
5
,
3
)
print
(
x
+
y
)
tensor
([[
-
0.1859
,
1.3970
,
0.5236
],
[
2.3854
,
0.0707
,
2.1970
],
[
-
0.3587
,
1.2359
,
1.8951
],
[
-
0.1189
,
-
0.1376
,
0.4647
],
[
-
1.8968
,
2.0164
,
0.1092
]])
© 2018 Tangramor Tensors (张量) 页:3
输出:
加法: 提供一个输出 tensor 作为参数
输出:
加法: in-place
输出:
注意
任何使张量会发生变化的操作都有一个前缀 ‘’
。例如:
x.copy(y), x.t_(), 将会改变 x.
print
(
torch
.
add
(
x
,
y
))
tensor
([[
-
0.1859
,
1.3970
,
0.5236
],
[
2.3854
,
0.0707
,
2.1970
],
[
-
0.3587
,
1.2359
,
1.8951
],
[
-
0.1189
,
-
0.1376
,
0.4647
],
[
-
1.8968
,
2.0164
,
0.1092
]])
result
=
torch
.
empty
(
5
,
3
)
torch
.
add
(
x
,
y
,
out
=
result
)
print
(
result
)
tensor
([[
-
0.1859
,
1.3970
,
0.5236
],
[
2.3854
,
0.0707
,
2.1970
],
[
-
0.3587
,
1.2359
,
1.8951
],
[
-
0.1189
,
-
0.1376
,
0.4647
],
[
-
1.8968
,
2.0164
,
0.1092
]])
# adds x to y
y
.
add_
(
x
)
print
(
y
)
tensor
([[
-
0.1859
,
1.3970
,
0.5236
],
[
2.3854
,
0.0707
,
2.1970
],
[
-
0.3587
,
1.2359
,
1.8951
],
[
-
0.1189
,
-
0.1376
,
0.4647
],
[
-
1.8968
,
2.0164
,
0.1092
]])
© 2018 Tangramor Tensors (张量) 页:4
你可以使用标准的 NumPy 类似的索引操作
输出
改变大小:如果你想改变一个 tensor 的大小或者形状,你可以使用 torch.view:
输出
如果你有一个元素 tensor ,使用 .item() 来获得这个 value 。
PyTorch windows 安装教程:两行代码搞定 PyTorch 安装
http://pytorchchina.com/2018/12/11/pytorch-windows-install-1/
PyTorch Mac 安装教程
http://pytorchchina.com/2018/12/11/pytorch-mac-install/
PyTorch Linux 安装教程
http://pytorchchina.com/2018/12/11/pytorch-linux-install/
PyTorch QQ群
print
(
x
[:,
1
])
tensor
([
0.4477
,
-
0.0048
,
1.0878
,
-
0.2174
,
1.3609
])
x
=
torch
.
randn
(
4
,
4
)
y
=
x
.
view
(
16
)
z
=
x
.
view
(
-
1
,
8
)
# the size -1 is inferred from other dimensions
print
(
x
.
size
(),
y
.
size
(),
z
.
size
())
torch
.
Size
([
4
,
4
])
torch
.
Size
([
16
])
torch
.
Size
([
2
,
8
])
x
=
torch
.
randn
(
1
)
print
(
x
)
print
(
x
.
item
())
tensor
([
0.9422
])
0.9422121644020081
© 2018 Tangramor Tensors (张量) 页:5
不同点1:np是reshape,而torch是view
剩余375页未读,继续阅读
希楠
- 粉丝: 2
- 资源: 23
上传资源 快速赚钱
- 我的内容管理 展开
- 我的资源 快来上传第一个资源
- 我的收益 登录查看自己的收益
- 我的积分 登录查看自己的积分
- 我的C币 登录后查看C币余额
- 我的收藏
- 我的下载
- 下载帮助
最新资源
- 多模态联合稀疏表示在视频目标跟踪中的应用
- Kubernetes资源管控与Gardener开源软件实践解析
- MPI集群监控与负载平衡策略
- 自动化PHP安全漏洞检测:静态代码分析与数据流方法
- 青苔数据CEO程永:技术生态与阿里云开放创新
- 制造业转型: HyperX引领企业上云策略
- 赵维五分享:航空工业电子采购上云实战与运维策略
- 单片机控制的LED点阵显示屏设计及其实现
- 驻云科技李俊涛:AI驱动的云上服务新趋势与挑战
- 6LoWPAN物联网边界路由器:设计与实现
- 猩便利工程师仲小玉:Terraform云资源管理最佳实践与团队协作
- 类差分度改进的互信息特征选择提升文本分类性能
- VERITAS与阿里云合作的混合云转型与数据保护方案
- 云制造中的生产线仿真模型设计与虚拟化研究
- 汪洋在PostgresChina2018分享:高可用 PostgreSQL 工具与架构设计
- 2018 PostgresChina大会:阿里云时空引擎Ganos在PostgreSQL中的创新应用与多模型存储
资源上传下载、课程学习等过程中有任何疑问或建议,欢迎提出宝贵意见哦~我们会及时处理!
点击此处反馈
安全验证
文档复制为VIP权益,开通VIP直接复制
信息提交成功