在 Udacity 计算机视觉工程师这门课里用的框架是 PyTorch,很巧合的是在开课的第一天,PyTorch就官方支持 Windows 了,赶紧装上试试,在语法上基本感觉不出来在使用一个深度学习的框架。这两天又看到新闻说下一版的升级 1.0 将会和 Caff2 融合,岂不是要逆天?对于从业者来说,框架越少越好,这样就不至于在职位描述里看到一大堆框架心慌了。
这里我会记录一些使用过程中发现的特别的地方,也在参考文献部分收集一些特别好的其他人写的教程,已备查看,这样就不至于遗落好东西,也不至于放在收藏夹里落灰了。
一些零碎的技巧及需要注意的地方:
- 在执行训练之前,要预防性的加上
optimizer.zero_grad()
来清除掉程序调试过程中产生的梯度 - 对于 Dropout,在使用
model.train()
命令进行训练时会启用,而当使用model.eval()
命令进行评价时则会自动关闭 - 训练完成的参数被存储在
model.state_dict()
中,可以对这些参数进行保存torch.save(model.state_dict(), 'checkpoint.pth')
,在后续使用时通过state_dict = torch.load('checkpoint.pth')
和model.load_state_dict(state_dict)
来导入到模型中
网友评论