学习PyTorch,应当多看看它的API文档。PyTorch API文档,如同一座金矿,等着我们去开采。下面给大家分享一下我的个人经验。
常言道,书读百遍其义自见,只有看得多了,才能发现门道。PyTorch API总共分为几大模块:
(1)torch模块。这是针对tensor进行全局设置的模块,毕竟tensor是pytorch的核心,主要常用的函数有:全局设置tensor的类型,全局设置tensor的device,全局设置打印tensor的精度等。另外,在torch模块还有生成tensor的各种函数,包括:随机生成符合正态分布的tensor,随机生成指定大小的tensor等。最后,在torch模块还包括序列化tensor的save和load函数。torch模块如同是开胃小菜,品味tensor特性,勾起众人食欲,为下面的正餐做准备。
(2)torch.nn模块。这个模式是pytorch搭建神经网络的百宝箱,包括卷积层,池化层,dropout层,归一化层,全连接层,rnn层等。另外,还包括各种loss函数。如果说,torch模块是开胃小菜,torch.nn模块则是晚宴的正餐,值得每个人去品味。
(3)torch.autograd模块。这个模块本该是pytorch正餐中的核心,但是官网介绍的漫不经心,让人读起来干瘪无味,我记得旧版本的pytorch文档中有个地方讲解的很好,推荐给大家看看:https://pytorch.org/tutorials/beginner/pytorch_with_examples.html
(4)torch.nn.init模块。此模块可以当做pytorch正餐之后的甜点,值得花费点时间去慢慢品味,这个模块主要是讲网络参数初始化的。
最后,给大家奉上PyTorch官方的API接口文档,欢迎大家去学习:https://pytorch.org/docs/stable/index.html