我有一个看起来像这样的Input层:
>>>inp = tf.keras.Input(shape=(107, 3))
>>>print(inp)
Tensor("input_25:0", shape=(None, 107, 3), dtype=float32)
由于形状为(None, 107, 3)
,因此我想将每个(None, 107, 1)
用于单独的图层。我该怎么办?
答案 0 :(得分:3)
根据a related GitHub issue,您可以使用tf.keras.layers.Lambda
按通道划分输入张量。
import tensorflow as tf
tfkl = tf.keras.layers
inp = tf.keras.Input(shape=(107, 3))
x0 = tfkl.Lambda(lambda x : x[..., 0])(x)
x1 = tfkl.Lambda(lambda x : x[..., 1])(x)
x2 = tfkl.Lambda(lambda x : x[..., 2])(x)
...
是Ellipsis
,并填充切片以仅获取最后一个切片。