У меня есть этот пользовательский слой Keras, который выбирает между элементами списка, например, плотный слой, и я хочу, чтобы он возвращал элемент списка, который он предсказал напрямую. Список представляет собой список 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
, что понятно, но я не могу найти способ заставить его работать. Tensor "pred" не имеет свойства .numpy
, хотя я запускаю программу с нетерпением, так как это происходит при построении слоя.
Я понимаю, что, возможно, не будет никаких решений, если так, подайте идеи о том, как я мог бы кодировать этот слой другим способом.