- 什么是Pytorch,为什么选择Pytroch?
(1) 什么是Pytorch
Torch 自称为神经网络界的 Numpy, 因为他能将 torch 产生的 tensor 放在 GPU 中加速运算 (前提是你有合适的 GPU), 就像 Numpy 会把 array 放在 CPU 中加速运算. 所以神经网络的话, 当然是用 Torch 的 tensor 形式数据最好
(2)为什么选择Pytroch
1) Python优先支持策略:Pytorch主推的特性之一,就是支持python(官方的提法:puts Python first)。因为直接构 建自 Python C API, Pytorch从细粒度上直接支持python的访问。相比于原生Python实现,引入的新概念很少,这不仅 降 低了 python 用户理解的门槛,也能保证代码基本跟原生的 python 实现一致。事实上,开发者可以直接用原生 python 代码扩展 Pytorch 的 operation。
2)动态图的良好支持:Tensorflow运行必须提前建好静态计算图,然后通过feed和run重复执行建好的图。但是 Pytorch 却不需要这么麻烦:PyTorch的程序可以在执行时动态构建/调整计算图。相对来说,pytorch具有更好的灵活 性。 这得益于Pytorch直接基于 python C API 构建的 python 接口。
3)易于Debug:Pytorch在运行时可以生成动态图,开发者就可以在堆栈跟踪中看到哪一行代码导致了错误。你甚至可 以在调试器中停掉解释器并看看某个层会产生什么。
- 通用代码实现流程(实现一个深度学习的代码流程)
(1)数据的输入:
(2) 方法的定义:
(3) 模型训练:
参考资料: