我正在使用胶囊网络。我的参考文件是here。论文指出,主要胶囊层会生成姿态参数的8D向量。 我的问题是我们可以从图层的输出中获取矢量并打印该8D矢量吗?
答案 0 :(得分:1)
由于问题是用keras标记的,因此我认为该模型是使用keras库构建的。
我们可以从图层的输出中获取矢量并打印8D矢量吗?
可以。首先,您必须访问模型的输入和胶囊层的输出。
inputs = model.input
outputs = model.layers[index_of_the_caps_layer].output
Keras提供了keras.backend.function来运行计算图。您需要为模型输入占位符传递numpy数组
import keras.backend as K
input_values # Input values to the model
function = K.function([inputs, K.learning_phase()], outputs )
caps_output = function([input_values, 1.0])
print(caps_output)