2017-09-01 52 views
0

我需要定义一个图形操作,该操作根据特定值(在此表示为X)将2D张量张量分割为3D,并在第二个和第三个尺寸。Tensorflow - 在预定义的值上重塑或分割张量

例如,假设我们有以下的张量:

[[1, 2, 3, X, 4, 5, 6], 
[1, 2, X, 5, 6, X, 8], 
[1, 2, 5, X, 8, 9, P]] 
  • X是该拆就(可能是等于0或其他任何东西)。
  • P是填充符号。

的目标是具备以下条件:

[[[1, 2, 3], [4, 5, 6], [P, P, P]], 
[[[1, 2, P], [5, 6, P], [8, P, P]], 
[[[1, 2, 5], [8, 9, P], [P, P, P]] 

Tensorflow提供了split功能,但它并没有解决这个问题。 reshape功能不是解决方案,因为拆分需要基于特定的值。

谢谢。

+0

目标确实是在图中运行这个。 –

+0

图形创建过程中3D张量的形状是否已经固定并已知? – BlueSun

+0

2D尺寸是已知的。 3D形状是动态的。 –

回答

1

也许你可以用tf.py_func做分割操作。

+0

我会尽力,谢谢。 –