2017-09-01 55 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

我會盡力,謝謝。 –