在掌握Python语言的基础上,了解一定的深度学习知识、Linux系统就可以开始看pytorch源码了,下面跟我一起来看:
关于如何阅读Pytorch源码?
首先,无论是从自己写,还是阅读他人代码,按照这个步骤思想(默念4大步骤,找数据定义、找model定义、(找损失函数、优化器定义),主循环代码逻辑),直接去找对应的代码块,会简单很多。
其次,Pytorch中值得学习的部分很多,建议大家可以带着任务有针对性地学习。比如你想要写CUDA自定义算子、又或者你想理解Pytorch的自动求导是什么样的,最好是有需求去看。或者大家可以把Pytorch的源码编译一遍,对Pytorch框架建立一个整体了解。
代码结构:
"torch/"中的代码文件一般是pytorchpython类的接口信息,其内容可以直接在编辑器中通过查看定义得到,但其只包括了接口的参数信息和注释,注释与官方文档中收到的内容相同;
"torch/csrc/"中含有python和c++衔接的代码,很多为编译时生成;
"aten/src/ATen/"中包括了torch中许多操作的C++或C实现,是我们查看pytorch许多函数实现需要