你好!
那是必须的啊!
pytorch只是基于python语言和各种库的一种深度学习框架!
不懂python语言,怎么理解各种pytorch的网络模型和算法实现呢?特别是里面的计算图,自动微分
张量的各种运算!
没有python的基础,学习pytorch基本上寸步难行
建议可以这样的学习路线:
第一 先初步了解python的基本语法,如数据类型、函数定义、导入依赖库,别看很基本,但是不了解这些,一上手直接看pytorch的源代码,会一头雾水,你连按照教程敲代码都会遇到一堆问题,举个简单例子
你写个简单赋值语句
a = torch。zeros(8,8)
你的IDE马上就会报错,提示你没有定义这个函数,这时候你就必须先导入torch
第二 不用完全精通python语言后采取学习pytorch,可以变学习python语言,便去实践写pytorch代码,建议一开始从回归开始,最简单的线性回归,便于理解神经网络的基本过程
第三 学习神经网络的基本概念,比如学习规则,实际上就是优化算法,你在pytorch定义网络的时候经常要用到的optim函数
第四 学习线性代数,概率论和矩阵数学,包括微积分,像多元微积分偏导数的链式法则,不懂这些,根本理解不聊梯度下降算法的学习规则
第五 不断的循环这个过程,发现问题,回头去重新学习,加深理解