调试代码

此阶段主要测试各阶段代码是否有问题。

快速测试

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之快速调试相关推荐

  1. 有bug!用Pytorch Lightning重构代码速度更慢,修复后速度倍增

    选自Medium 作者:Florian Ernst 机器之心编译 编辑:小舟.陈萍 用了 Lightning 训练速度反而更慢,你遇到过这种情况吗? PyTorch Lightning 是一种重构 P ...

  2. pytorch lightning

    背景 众所周知,pytorch是近年热门的深度学习框架之一,与tensorflow相比,普遍认识是pytorch更适合学界,方便学者快速实践深度模型,各类研究论文中,pytorch的算法实现更多.但是 ...

  3. Pytorch Lightning使用指南

    文章目录 1.写在前面 2.使用步骤 3.高级特征 4.一些使用tips 5.Saving 感谢:Pytorch Lightning 完全攻略!一文 [入门]PyTorch Lightning快速上手 ...

  4. 用上Pytorch Lightning的这六招,深度学习pipeline提速10倍!

    点击上方"视学算法",选择加"星标"或"置顶" 重磅干货,第一时间送达 金磊 发自 凹非寺 量子位 报道 | 公众号 QbitAI 面对数以 ...

  5. 分离硬件和代码、稳定 API,PyTorch Lightning 1.0.0 版本正式发布

    机器之心报道 机器之心编辑部 还记得那个看起来像 Keras 的轻量版 PyTorch 框架 Lightning 吗?它终于出了 1.0.0 版本,并增添了很多新功能,在度量.优化.日志记录.数据流. ...

  6. 0.pytorch lightning 入门

    15分钟了解Pytorch Lightning 翻译自官方文档 前置知识:推荐pytorch 目标:通过PL中7个关键步骤了解PL工作流程 PL是基于pytorch的高层API,自带丰富的工具为AI学 ...

  7. 不懂技术系列--如何快速调试html5页面/手机页面

    很多前端开发,在做手机端的页面/html5页面的时候,PC端开发完成后,想在手机端测试开发的页面效果,特效等,还需要去找后台技术帮忙,很是麻烦,网上也有很多教程使用很多工具来实现,如Chrome.UC ...

  8. 150页书籍《PyTorch 深度学习快速入门指南》附PDF电子版

    为什么说是极简教程,首先本书只涵盖了150页.内容比较精简,特别适合作为 PyTorch 深度学习的入门书籍.为什么这么说呢?因为很多时候,一份厚重的书籍往往会削弱我们学习的积极性,在学习一门新的语言 ...

  9. 优秀程序员必备素质——快速调试

    你是否有过这些经历: 1.代码敲完了,刚想松口气,一运行程序,满满的Bug. 2.找啊找啊找,怎么找都找不到哪里出了问题. 3.调试了半天出不来,就开始便得心烦气躁. 4.一天连一个Bug也没调出来, ...

最新文章

  1. ThreadGroup分析
  2. TypeScript里get属性的实现
  3. C#的变迁史03 - C# 3.0篇
  4. 分页查询千万级数据慢
  5. java不进入for_为什么阿里巴巴Java开发手册中强制要求不要在foreach循环里进行元素的remove和add操作?...
  6. 软化边硬化边_启示录:做完线雕第三天特别丑、边哭边讲线雕有什么副作用?...
  7. 自定义ViewGroup (3) 与子View之间 Touch Event的拦截与处理
  8. 每天走6000步,血糖真的可以恢复正常吗?
  9. 新SQL Server 2016示例数据库
  10. 2018年php框架,2018年的7个热门网站开发框架
  11. CSS3 详细新增内容
  12. awvs无法启动问题
  13. Android多语言切换
  14. 如何搭建个人服务器(网站/游戏)?
  15. 修改select2未搜索到数据时的提示语
  16. MacOS 制作 Linux U盘启动盘
  17. 【云存储】IOPS概念及测试方法
  18. Eclipse如何设置默认浏览器
  19. 瑞星linux杀毒软件进程,高手请教:麻烦帮忙解释几个:瑞星杀毒软件的进程各表明什么?...
  20. ACAD DWG to PDF Converter 9.8.2.4版本更新啦

热门文章

  1. 隐藏驱动,绕过XueTr 0.39检测
  2. 如何成为一个优秀的营销人
  3. neo4j图形算法综合指南_网页设计中色彩使用的综合指南
  4. c#制作简单安装包 以Revit插件为例
  5. BoneWeb环境搭建 创建应用
  6. 走进lync之lync2010
  7. flowplayer(html5和flash)播放器
  8. VR全景旅游开发让旅游足不出户身临其境的感觉
  9. 截获QQ数据包 截获QQ聊天记录
  10. android平台运行flash游戏