python - Tensorflow/Keras:如何通过通道获取输入层的输出?
问题描述
我有一个如下所示的输入层:
>>>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)
用于单独的图层。我怎么做?
解决方案
根据相关的 GitHub 问题,您可以使用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
并填充切片以仅获取最后一个切片。
推荐阅读
- python - 使用库 matplotlib 读取图像的问题
- php - 将新的运输方式作为 Woocommerce 插件的一部分
- r - 如何在 R 中使用 SVM 进行递归特征消除
- java - “DOOM FIRE WAS DONE” - 重新实现了导致噪声动画的火灾动画
- r - 读取在列中也有逗号的逗号分隔文件
- sql - 如何在 SSRS 的单个图表上绘制 3 个独立的结果值?
- laravel - 如何使用 foreach 创建带有 laravel 的按钮?
- c++ - 对于 GNU ld 'legacy __sync_synchronize' 警告,我能做些什么?
- c# - 如何在 Google TTS 中输入 SSML?(C#)
- java - 我想在单击 RecyclerView 项目时获取 id