5.pytorch lightning之快速调试
调试代码
此阶段主要测试各阶段代码是否有问题。
快速测试
fast_dev_run项可以配置train/val/test阶段的循环次数,跑完就停止代码,快速查看各流程代码正确性,避免train调试后训练又在val/test阶段出错,白白浪费时间和计算成本。
Trainer(fast_dev_run=7)# 每个阶段只循环7次,也可以设置为True,只循环5次。
使用部分数据测试
功能与上面类似,但是运行指定epochs的周期过程,只是train/val/test流程使用部分数据。
# 使用10%训练集 和 1% 验证集
trainer = Trainer(limit_train_batches=0.1, limit_val_batches=0.01)# use 10 batches of train and 5 batches of val
trainer = Trainer(limit_train_batches=10, limit_val_batches=5)
validation_step()提前检查
设置num_sanity_val_steps,lightning会在开始训练前默认先执行再次validation_step,避免训练后验证阶段出错。
trainer = Trainer(num_sanity_val_steps=2)
打印网络模型信息
调用train.fit()后,lightning会自动打印模型信息,如下:
| Name | Type | Params
----------------------------------
0 | net | Sequential | 132 K
1 | net.0 | Linear | 131 K
2 | net.1 | BatchNorm1d | 1.0 K
也可以利用内置的callback ModelSummary打印子模块的信息。需要配置好callback后传入Trainer。
trainer = Trainer(callbacks=[ModelSummary(max_depth=-1)])# 打印深度为所有。
打印各模块输入输出的尺寸
在LightningModule中设置example_input_array属性
class LitModel(LightningModule):def __init__(self, *args, **kwargs):self.example_input_array = torch.Tensor(32, 1, 28, 28)
| Name | Type | Params | In sizes | Out sizes
--------------------------------------------------------------
0 | net | Sequential | 132 K | [10, 256] | [10, 512]
1 | net.0 | Linear | 131 K | [10, 256] | [10, 512]
2 | net.1 | BatchNorm1d | 1.0 K | [10, 512] | [10, 512]
5.pytorch lightning之快速调试相关推荐
- 有bug!用Pytorch Lightning重构代码速度更慢,修复后速度倍增
选自Medium 作者:Florian Ernst 机器之心编译 编辑:小舟.陈萍 用了 Lightning 训练速度反而更慢,你遇到过这种情况吗? PyTorch Lightning 是一种重构 P ...
- pytorch lightning
背景 众所周知,pytorch是近年热门的深度学习框架之一,与tensorflow相比,普遍认识是pytorch更适合学界,方便学者快速实践深度模型,各类研究论文中,pytorch的算法实现更多.但是 ...
- Pytorch Lightning使用指南
文章目录 1.写在前面 2.使用步骤 3.高级特征 4.一些使用tips 5.Saving 感谢:Pytorch Lightning 完全攻略!一文 [入门]PyTorch Lightning快速上手 ...
- 用上Pytorch Lightning的这六招,深度学习pipeline提速10倍!
点击上方"视学算法",选择加"星标"或"置顶" 重磅干货,第一时间送达 金磊 发自 凹非寺 量子位 报道 | 公众号 QbitAI 面对数以 ...
- 分离硬件和代码、稳定 API,PyTorch Lightning 1.0.0 版本正式发布
机器之心报道 机器之心编辑部 还记得那个看起来像 Keras 的轻量版 PyTorch 框架 Lightning 吗?它终于出了 1.0.0 版本,并增添了很多新功能,在度量.优化.日志记录.数据流. ...
- 0.pytorch lightning 入门
15分钟了解Pytorch Lightning 翻译自官方文档 前置知识:推荐pytorch 目标:通过PL中7个关键步骤了解PL工作流程 PL是基于pytorch的高层API,自带丰富的工具为AI学 ...
- 不懂技术系列--如何快速调试html5页面/手机页面
很多前端开发,在做手机端的页面/html5页面的时候,PC端开发完成后,想在手机端测试开发的页面效果,特效等,还需要去找后台技术帮忙,很是麻烦,网上也有很多教程使用很多工具来实现,如Chrome.UC ...
- 150页书籍《PyTorch 深度学习快速入门指南》附PDF电子版
为什么说是极简教程,首先本书只涵盖了150页.内容比较精简,特别适合作为 PyTorch 深度学习的入门书籍.为什么这么说呢?因为很多时候,一份厚重的书籍往往会削弱我们学习的积极性,在学习一门新的语言 ...
- 优秀程序员必备素质——快速调试
你是否有过这些经历: 1.代码敲完了,刚想松口气,一运行程序,满满的Bug. 2.找啊找啊找,怎么找都找不到哪里出了问题. 3.调试了半天出不来,就开始便得心烦气躁. 4.一天连一个Bug也没调出来, ...
最新文章
- ThreadGroup分析
- TypeScript里get属性的实现
- C#的变迁史03 - C# 3.0篇
- 分页查询千万级数据慢
- java不进入for_为什么阿里巴巴Java开发手册中强制要求不要在foreach循环里进行元素的remove和add操作?...
- 软化边硬化边_启示录:做完线雕第三天特别丑、边哭边讲线雕有什么副作用?...
- 自定义ViewGroup (3) 与子View之间 Touch Event的拦截与处理
- 每天走6000步,血糖真的可以恢复正常吗?
- 新SQL Server 2016示例数据库
- 2018年php框架,2018年的7个热门网站开发框架
- CSS3 详细新增内容
- awvs无法启动问题
- Android多语言切换
- 如何搭建个人服务器(网站/游戏)?
- 修改select2未搜索到数据时的提示语
- MacOS 制作 Linux U盘启动盘
- 【云存储】IOPS概念及测试方法
- Eclipse如何设置默认浏览器
- 瑞星linux杀毒软件进程,高手请教:麻烦帮忙解释几个:瑞星杀毒软件的进程各表明什么?...
- ACAD DWG to PDF Converter 9.8.2.4版本更新啦