机器学习PAI easyrec在odps做训练,第一次训练4000steps,这个是为什么?[阿里云机器学习PAI]

机器学习PAI easyrec在odps做训练,第一次训练4000steps,之后提高steps数做继续训练的时候,发现evaluator的那个worker只评估到4000就结束了,但是训练的worker还在继续跑,这个是为什么?

「点点赞赏,手留余香」

    还没有人赞赏,快来当第一个赞赏的人吧!
=====这是一个广告位,招租中,联系qq 78315851====
1 条回复 A 作者 M 管理员
  1. 这个问题可能是由于EasyRec的训练过程设计导致的。EasyRec的训练过程分为两个阶段:初始化阶段和优化阶段。在初始化阶段,模型会进行前4000步的训练,然后进入优化阶段,继续进行更多的训练。

    然而,Evaluator的工作是在每个epoch结束时进行的,也就是在每个优化阶段的末尾。因此,如果我们在优化阶段开始时停止了Evaluator,那么它只会评估到初始化阶段结束的地方,也就是4000步。

    解决这个问题的方法是在每个epoch结束时重新启动Evaluator,或者在每个epoch开始时停止旧的Evaluator并启动新的Evaluator。具体的实现方式取决于你的具体需求和使用的环境。

  2. 如果在同一目录跑的话,会生成一个标识结束的文件:ESTIMATOR_TRAIN_DONE ,如果存在就会退出,现在需要你先手动删除一下。这个后续我们看一下是不是可以在代码改成自动删除来修复一下这个问题。,此回答整理自钉群“【EasyRec】推荐算法交流群”