我试图通过阅读源代码满足对张量流控制流实现的好奇心。但是如果不了解设计概念,这确实很难。谷歌搜索之后,我发现了白皮书Implementation of Control Flow in TensorFlow,并且阅读代码更容易。我发现源代码中白皮书所引用的设计概念的几乎所有实现(一个除外)。在白皮书中,有一句话说
要在backprop循环中重用前向值,我们在构建backprop while循环期间会自动检测backprop所需的前向值。对于每个这样的正向值x,我们会自动引入一个堆栈,并在正向循环中添加节点,以在每次迭代时将其值保存到堆栈中。 backprop循环以相反的顺序使用堆栈中的值。堆栈位于正向和反向传播循环之外,并由两个循环共享。
我找到了stack-pop op-def和内核实现,但是在cc目录中找不到使用它的任何代码。适用于最终用户吗?没有任何封装?