Tensorflow / Keras:如何通过通道获取输入层的输出?

时间:2020-09-14 02:47:52

标签: python tensorflow keras

我有一个看起来像这样的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)用于单独的图层。我该怎么办?

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,并填充切片以仅获取最后一个切片。

相关问题