Pytorch Lightning 框架运行顺序

之前学习Lightning在打断点debug的时候一直不懂为什么trainer.fit()之后就开始运行了 其中的hooks 什么的概念也不理解 在看了若干文章后大致理解其中顺序。如有错误请斧正。
Hooks: 实际就是lighting框架的运行顺序, train阶段的运行顺序大致如下(其中的函数都可以重写):

python 复制代码
def fit(self):
    configure_callbacks()

    if local_rank == 0:
        prepare_data()

    setup("fit")
    configure_model()
    configure_optimizers()

    on_fit_start()

    # the sanity check runs here

    on_train_start()
    for epoch in epochs:
        fit_loop()
    on_train_end()

    on_fit_end()
    teardown("fit")

需要注意的是:

  1. the sanity check runs here 这行注释 lighting会先执行validation_step() 跑两个batch 进行检查。(之前一直不懂为什么train的时候先执行validation)
  2. prepare_data() 和 setup() 这两个function 在Data的class里重写 其余的在model的class里重写。
相关推荐
聆风吟º24 分钟前
CANN runtime 实战指南:异构计算场景中运行时组件的部署、调优与扩展技巧
人工智能·神经网络·cann·异构计算
寻星探路1 小时前
【深度长文】万字攻克网络原理:从 HTTP 报文解构到 HTTPS 终极加密逻辑
java·开发语言·网络·python·http·ai·https
Codebee2 小时前
能力中心 (Agent SkillCenter):开启AI技能管理新时代
人工智能
聆风吟º3 小时前
CANN runtime 全链路拆解:AI 异构计算运行时的任务管理与功能适配技术路径
人工智能·深度学习·神经网络·cann
uesowys3 小时前
Apache Spark算法开发指导-One-vs-Rest classifier
人工智能·算法·spark
AI_56783 小时前
AWS EC2新手入门:6步带你从零启动实例
大数据·数据库·人工智能·机器学习·aws
User_芊芊君子3 小时前
CANN大模型推理加速引擎ascend-transformer-boost深度解析:毫秒级响应的Transformer优化方案
人工智能·深度学习·transformer
ValhallaCoder3 小时前
hot100-二叉树I
数据结构·python·算法·二叉树
智驱力人工智能4 小时前
小区高空抛物AI实时预警方案 筑牢社区头顶安全的实践 高空抛物检测 高空抛物监控安装教程 高空抛物误报率优化方案 高空抛物监控案例分享
人工智能·深度学习·opencv·算法·安全·yolo·边缘计算
qq_160144874 小时前
亲测!2026年零基础学AI的入门干货,新手照做就能上手
人工智能