如何在ML引擎培训工作中找出SIGSEGV错误的原因?

Nic*_*reg 5 python segmentation-fault tensorflow tensorflow-estimator

我正在ML引擎上训练自定义tensorflow估计器,并遇到以下错误:

The replica master 0 exited with a non-zero status of 11(SIGSEGV)
Run Code Online (Sandbox Code Playgroud)

唯一的其他错误日志是:

Command '['python3', '-m', 'train_model.train', ... ']' returned non-zero exit status -11
Run Code Online (Sandbox Code Playgroud)

不再有追溯,因此我只需要继续执行此“无效的内存引用或分段错误代码 ”。

此SIGSEGV错误并不总是发生。一些培训作业运行没有问题,另一些则在4小时后抛出此错误,而另一些在15分钟后抛出。

我已经对估算器培训代码的各个部分进行了尝试,尝试通过尝试和尝试错误的方法找到原因,但是没有成功。

我以为11代码可以对应于该错误代码在谷歌的API,发现许多人都经历过 OutOfSequence,并OutOfRange在估计使用自定义指标时错误EvalSpec,但我不认为这是在这里造成的错误,因为我使用tf.metric

我正在使用BASIC扩展层,并查看CPU利用率,它从未超过80%,而内存利用率图显示了大约25%。

我正在缓存tensorflow数据集,但是当不缓存数据集时也会收到此错误。在运行train_and_evaluate方法以及方法时都会发生错误train

关于如何在培训工作中查找此崩溃的路线原因,有什么建议吗?或导致崩溃的一些常见原因是什么?解决方案是否只是使用更大的内存计算机?