首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >问答首页 >在火炬闪电中,`on_validation_epoch_end`和`validation_epoch_end`有什么区别?

在火炬闪电中,`on_validation_epoch_end`和`validation_epoch_end`有什么区别?
EN

Stack Overflow用户
提问于 2021-04-20 16:05:49
回答 1查看 1.7K关注 0票数 2

LightningModule中,Pycharm允许两个自动完成的方法:

代码语言:javascript
运行
复制
class MyModel(LightningModule):

    def on_validation_epoch_end(self):

    def validation_epoch_end(self, outs):

on_validation_epoch_end中引用hooks.py

代码语言:javascript
运行
复制
def on_validation_epoch_end(self) -> None:
    """
    Called in the validation loop at the very end of the epoch.
    """
    # do something when the epoch ends

validation_epoch_endevaluation_loop.py为通向__run_eval_epoch_endeval_results = model.validation_epoch_end(eval_results)

每一种方法的目的是什么?

我只能假设其中一个是反对的。找不到任何相关的文档。

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2021-04-21 09:34:54

这里是一个伪代码,它显示何时调用钩子,我认为它非常明确地表明您是正确的:这两个函数是多余的(实际上是在同一个地方调用的,具有相同的参数),我想说的是,validation_epoch_end在这里被认为是不推荐的,因为它在文档中没有提到,而钩子(形式的on_event_start/end)得到了广泛的解释。

票数 4
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/67182475

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档