Tensorflow警告:无法按拓扑顺序对图进行排序?

发布于 2021-01-29 16:08:32

当我运行tensorflow训练(使用自定义定义的图,封闭源代码)时,它输出警告:

2018-10-03 14:29:24.352895:E tensorflow / core / grappler / optimizers /
dependency_optimizer.cc:666]迭代= 0,拓扑排序失败,并显示以下消息:该图无法按拓扑顺序排序。

这是什么意思?是什么可能导致此问题,以及如何避免呢?

更新:
就我而言,tensorflow尽管有此警告,但仍然可以正常工作。因此,我认为这只是意味着计算图中的循环要多于tensorflow预期的循环,而不一定是无限循环。我通过避免在代码中使用手动循环来解决此问题,而是使用张量操纵(stack, concat, slice, reshape...

关注者
0
被浏览
174
1 个回答
  • 面试哥
    面试哥 2021-01-29
    为面试而生,有面试问题,就找面试哥。

    拓扑顺序的有向图的是其以这样的方式顶点的排序,每当存在来自顶点的边缘u到顶点v,顶点u来顶点之前v的顺序。

    对于每个有向 无环
    图,这种排序都是可能的,但对于任意图,则不可能。图中很可能存在某种循环,导致排序算法无法成功执行。因此,解决方法是搜索周期并以某种方式将其删除。

    例如,考虑一个非常小的图,它具有两个顶点uv,以及两个边缘u -> vv -> u。无法按照上述要求对u和v进行排序。

    没有有关代码的更多信息,很难确切说明正在发生什么。



知识点
面圈网VIP题库

面圈网VIP题库全新上线,海量真题题库资源。 90大类考试,超10万份考试真题开放下载啦

去下载看看