机器学习PAI使用这个配置,chief和worker训练结束进程都正常退出了,但是chief和?[阿里云机器学习PAI]

问题1:机器学习PAI使用这个配置,chief和worker训练结束进程都正常退出了,但是chief和worker都报了这个错误日志 ,2023-07-26 16:50:52.772911: E tensorflow/contrib/star/star_workerservice.cc:442] env->rendezvous_mgr->RecvLocalAsync failed, error msg is: [Derived]End of sequence ,我看issue里有人提了这个问题 https://github.com/DeepRec-AI/DeepRec/issues/326,回答是可能用了MonitoredTrainingSession API,我代码里没有用到这个API
问题2:dataset = tf.data.TFRecordDataset(filename)
dataset = dataset.skip(1).map(lambda line: read_tf_record_row(line), num_parallel_calls=tf.data.experimental.AUTOTUNE).batch(batch_size).repeat(num_epochs)
dataset = dataset.prefetch(buffer_size=tf.data.experimental.AUTOTUNE)
iterator = dataset.make_one_shot_iterator()
ds = iterator.get_next()

「点点赞赏,手留余香」

    还没有人赞赏,快来当第一个赞赏的人吧!
=====这是一个广告位,招租中,联系qq 78315851====
1 条回复 A 作者 M 管理员
  1. 问题1:错误日志 “End of sequence” 和 MonitoredTrainingSession API
    根据您提供的信息,您遇到了错误日志 “End of sequence”,并且有人在 GitHub 上提到了类似的问题。其中一个回答指出这可能与使用了 MonitoredTrainingSession API 相关。

    然而,您明确表示您的代码中没有使用 MonitoredTrainingSession API。这种情况下,可能存在其他原因导致该错误。以下是一些可能的原因和解决方法:

    • 版本兼容性问题:请确保您使用的 TensorFlow 版本与相关依赖库和代码兼容。尝试升级或降级 TensorFlow 版本,并确保所有依赖项正确安装。

    • 数据集处理问题:检查数据集的处理过程,包括读取 TFRecord 文件以及后续的数据转换和预处理。确保数据集处理过程中没有发生错误,例如数据不完整或格式不正确。

    • 环境设置和配置:验证您的环境设置和配置是否正确,包括 TensorFlow 的分布式训练配置、网络连接和参数服务器的设置等。确保网络连接稳定,并且各个节点能够正常通信。

    如果以上方法仍然无法解决问题,请将更多详细信息提供给我们,例如完整的错误日志、代码片段以及您使用的 TensorFlow 版本和相关依赖库的版本信息,以便我们能够更好地帮助您解决问题。

    问题2:关于 TensorFlow 数据集(Dataset)的代码片段
    根据您提供的代码片段,这是一个使用 TensorFlow 的 Dataset API 构建输入数据流水线的示例。它将 TFRecord 文件作为输入,并进行跳过一行、映射处理、批量化和重复等操作。

    根据您的代码,您使用了 make_one_shot_iterator() 获取迭代器,并使用 iterator.get_next() 获取数据。请注意,tf.data.experimental.AUTOTUNE 用于自动调整缓冲区大小和并行调度的参数。

    如果您在使用这段代码时遇到了问题,请提供更具体的错误信息和相关代码,以便我们能够更详细地分析并帮助您解决问题。

  2. 回答1:应该是数据读完了退出,estimator应该不会有这个问题,你dataset怎么构造的
    回答2:看起来没啥问题,estimator应该会处理这个错误的,有点奇怪。你换成grpc++试一下,此回答整理自钉群“DeepRec用户群”