问题描述
由于kedro根据节点的输入/输出确定执行图,因此执行的顺序是不确定的。在运行之间可能会有所不同。
即使我设置了种子,我也可能在不同的运行中采样不同的数据。
让我们说我有3个彼此不依赖的节点。
第一次运行:A-> B-> C
第2次运行:B-> A-> C
仅由于随机生成器序列不同,我将获得不同的结果。
解决方法
您有一些选择,但是kedro没有“开箱即用”的解决方案来强制节点排序而没有基于数据集的依赖关系。
您可以:
- 使每个节点本身成为1节点管道,并在python中依次运行它们
- 在它们之间传递虚拟输入和输出(例如空数据集或仅一个
""
- 将它们全部设置为一个节点