龙空技术网

如何阅读pytorch框架的源码?

传智教育官方账号 163

前言:

而今我们对“源码编译器里如果想探测对方是否全部消失用哪个版块”大概比较讲究,朋友们都想要学习一些“源码编译器里如果想探测对方是否全部消失用哪个版块”的相关资讯。那么小编在网摘上网罗了一些关于“源码编译器里如果想探测对方是否全部消失用哪个版块””的相关文章,希望小伙伴们能喜欢,朋友们快快来了解一下吧!

在掌握Python语言的基础上,了解一定的深度学习知识、Linux系统就可以开始看pytorch源码了,下面跟我一起来看:

关于如何阅读Pytorch源码?

首先,无论是从自己写,还是阅读他人代码,按照这个步骤思想(默念4大步骤,找数据定义、找model定义、(找损失函数、优化器定义),主循环代码逻辑),直接去找对应的代码块,会简单很多。

其次,Pytorch中值得学习的部分很多,建议大家可以带着任务有针对性地学习。比如你想要写CUDA自定义算子、又或者你想理解Pytorch的自动求导是什么样的,最好是有需求去看。或者大家可以把Pytorch的源码编译一遍,对Pytorch框架建立一个整体了解。

代码结构:

"torch/" 中的代码文件一般是pytorch python类的接口信息,其内容可以直接在编辑器中通过查看定义得到,但其只包括了接口的参数信息和注释,注释与官方文档中收到的内容相同;

"torch/csrc/" 中含有python和c++衔接的代码,很多为编译时生成;

"aten/src/ATen/" 中包括了torch中许多操作的C++或C实现,是我们查看pytorch许多函数实现需要关注的区域;

"c10/" 中为torch最基本特性实现的部分,如张量的定义、数据类型的定义等。

详情可查看Edwards.Z.Yang大佬关于pytorch内核的文章:

PyTorch internals:blog.ezyang.com/2019/05/pytorch-internals/

[官方文档]英文版:

对于英文比较好的同学,非常推荐该PyTorch官方文档,一步步带你从入门到精通。该文档详细的介绍了从基础知识到如何使用PyTorch构建深层神经网络,以及PyTorch语法和一些高质量的案例。

中文版:

阅读上述英文文档比较困难的同学也不要紧,这里为大家准备了比较官方的PyTorch中文文档,文档非常详细的介绍了各个函数,可作为一份PyTorch的速查宝典。

[书籍推荐]

· 《深度学习入门之PyTorch》,电子工业出版社,作者:廖星宇。这本《深度学习入门之PyTorch》是所有PyTorch书籍中出版的相对较早的一本,作者以自己的小白入门深度学习之路,深入浅出的讲解了PyTorch的语法、原理以及实战等内容,适合新手的入门学习。

· 《PyTorch深度学习》,人民邮电出版社,作者:王海玲、刘江峰。该书是一本英译书籍,原作者是两位印度的大佬,该书除了PyTorch基本语法、函数外,还涵盖了ResNET、Inception、DenseNet等在内的高级神经网络架构以及它们的应用案例。该书适合数据分析师、数据科学家等相对有一些理论基础和实战经验的读者学习,不太建议作为新手的入门选择。

· 《深度学习框架PyTorch入门与实践》,电子工业出版社,作者:陈云。这是一本2018年上市的PyTorch书籍,包含理论入门和实战项目两大部分,相较于其它同类型书籍,该书案例非常的翔实,包括:Kaggle竞赛中经典项目、GAN生成动漫头像、AI滤镜、RNN写诗、图像描述任务等。理论+实战的内容设置也更适合深度学习入门者和从业者学习。

· 《PyTorch机器学习从入门到实战》,机械工业出版社,作者:校宝在线、孙琳等。该书同样是一本理论结合实战的Pytorch教程,相较于前一本入门+实战教程,本书的特色在于关于深度学习的理论部分讲的非常详细,后边的实战项目更加的综合。总体而言,本书也是一本适合新手学习的不错的PyTorch入门书籍。

标签: #源码编译器里如果想探测对方是否全部消失用哪个版块