我有这个自定义Keras图层,可以在列表的元素之间进行选择,例如Dense图层,我希望它返回直接预测的列表元素。该列表是Keras.layers.Layer
的列表。我有这段代码:
def call(self, inputs, context):
pred = tf.argmax(tf.matmul(context, self.kernel))
return self.layers[pred](inputs)
它引发错误:TypeError: list indices must be integers or slices, not Tensor
,这是可以理解的,但是我找不到使它起作用的方法。尽管我正在急切地运行程序,但“ pred” Tensor没有.numpy
属性,因为这是在构建图层时发生的。
我知道可能没有解决方案,如果可以的话,请提交有关如何以另一种方式编码该层的想法。
存在更大的问题。