前几天复现了insightface人脸识别的一个baseline(使用pytorch),就一发不可收拾,对于pytorch中所蕴含的机理十分感兴趣。所以准备在这里总结一下自己的pytorch的修炼过程
昨天实验室恰好购买了一套pytorch的新书
书的主要内容
一.Pytorch简介 (基于Lua的Torch——>基于Python的Pytorch)
- 各种深度学习框架的对比
Theano,TensorFlow,Keras,Caffe,MXNet,CNTK
由于自己前几天做人脸识别的时候,了解了一些MXNet内容,这里简单介绍一下
特点:分布式性能优越,语言支持最多,但是文档比较混乱
- 动态图与静态图
静态图:TensorFlow 先定义后运行
动态图:Pytorch 在运行时构建
二.入门
-
安装
-
基础内容
autograd,tensor,神经网络
三.Tensor和autograd
四.神经网络工具箱nn
-
nn.Module
-
常用神经网络层
-
优化器
-
nn.functional(定义神经网络的层)
-
初始化策略
-
nn.Module深入分析
-
nn和autograd的关系
五.Pytorch中常用的工具
- 数据处理
- torchvision
- 可视化工具
- GPU加速
Pytorch中以下数据结构都分为CPU和GPU两个版本
Tensor,Variable,nn.Module
x.cuda将数据放到gpu上,model.cuda会吧所有数据都迁移到GPU
- 持久化,保存模型