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里重写。
相关推荐
牛奶1 天前
2026年大模型怎么选?前端人实用对比
前端·人工智能·ai编程
牛奶1 天前
前端人为什么要学AI?
前端·人工智能·ai编程
罗西的思考1 天前
AI Agent框架探秘:拆解 OpenHands(10)--- Runtime
人工智能·算法·机器学习
冬奇Lab1 天前
OpenClaw 源码精读(2):Channel & Routing——一条消息如何找到它的 Agent?
人工智能·开源·源码阅读
冬奇Lab1 天前
一天一个开源项目(第38篇):Claude Code Telegram - 用 Telegram 远程用 Claude Code,随时随地聊项目
人工智能·开源·资讯
孟健1 天前
Karpathy 用 200 行纯 Python 从零实现 GPT:代码逐行解析
python
格砸1 天前
从入门到辞职|从ChatGPT到OpenClaw,跟上智能时代的进化
前端·人工智能·后端
可观测性用观测云1 天前
可观测性 4.0:教系统如何思考
人工智能
sunny8651 天前
Claude Code 跨会话上下文恢复:从 8 次纠正到 0 次的工程实践
人工智能·开源·github
小笼包包仔1 天前
OpenClaw 多Agent软件开发最佳实践指南
人工智能