我如何在 Keras 中翻转张量?

How do I flip a Tensor in Keras?

例如:我有一个形状为 (5,10) 的张量,我想要一个形状为 (5,10) 的张量,但第一个元素现在应该是最后一个元素。所以 [1,2,3,4,5] 变成 [5,4,3,2,1][[1,2,3,4,5],[2,3,4,5,6]] 变成 [[2,3,4,5,6],[1,2,3,4,5]].

如果重要的话,我正在使用 tensorflow 后端。

使用Keras backend,就有了reverse的功能。

import keras.backend as K

flipped = K.reverse(x,axes=0)

要在层中使用它,您可以创建一个 Lambda 层:

from keras.layers import *
layer = Lambda(lambda x: K.reverse(x,axes=0),output_shape=(shape of x))

(如果是顺序层,model.add(layer),如果是函数式 API 模型,output = layer(input)