Python 嵌入层后的keras最大池层

Python 嵌入层后的keras最大池层,python,tensorflow,keras,nlp,Python,Tensorflow,Keras,Nlp,我有一个7个单词的嵌入,每个单词都是10维的,所以总的来说,我有一个7行10列的矩阵。 在应用这个嵌入(使用嵌入层)之后,我得到了维的输出(None,7,1,10) 我想要一个向量,使得它的第I个元素是第I行的最大值,对于{0,6}范围内的每个I。因此,它应该是一个长度为7的向量(并且像(None,7)这样的维度) 为此,我首先使用重塑层,将尺寸更改为(7,10)(否则,它不起作用) 然后,我尝试使用globalMapooling1d(也尝试了MaxPooling1D),但输出没有 拥有我想要的

我有一个7个单词的嵌入,每个单词都是10维的,所以总的来说,我有一个7行10列的矩阵。 在应用这个嵌入(使用嵌入层)之后,我得到了维的输出(None,7,1,10)

我想要一个向量,使得它的第I个元素是第I行的最大值,对于{0,6}范围内的每个I。因此,它应该是一个长度为7的向量(并且像(None,7)这样的维度)

为此,我首先使用重塑层,将尺寸更改为(7,10)(否则,它不起作用)

然后,我尝试使用globalMapooling1d(也尝试了MaxPooling1D),但输出没有 拥有我想要的维度。它是(无,10)而不是(无,7)

我在一个单独的示例中检查了GlobalMapooling1D,它运行良好。它必须是嵌入层在中间推动的附加维度的东西。

p、 在美国,也有人提出了类似的问题: 但我不认为建议的答案回答了最初的问题(它似乎返回了整个矩阵的最大值)


尝试使用Lambda(Lambda x:tf.reduce_max(x,axis=-1))代替globalMapooling1d()谢谢!我确实想到了Lambda层,但尝试了与tf.reduce_max相同的amax函数,但它有一些numpy-tensors错误,这是您的建议所没有的。