Python 有可能得到嵌入keras层的输出吗?
我想将时间作为我的深度学习模型的输入功能。所以我需要使用嵌入层将其转换为嵌入向量。所以我用了:Python 有可能得到嵌入keras层的输出吗?,python,deep-learning,keras-layer,word-embedding,Python,Deep Learning,Keras Layer,Word Embedding,我想将时间作为我的深度学习模型的输入功能。所以我需要使用嵌入层将其转换为嵌入向量。所以我用了: from keras.layers import Embedding hours_input=Input(shape=(1,),name='hours_input') hours_embedding=Embedding(24,64)hours_input 我需要嵌入层的输出(我的意思是权重)。我使用了小时。获取权重()。 但我有一个错误: get_weights()缺少1个必需的位置参数:“self
from keras.layers import Embedding
hours_input=Input(shape=(1,),name='hours_input')
hours_embedding=Embedding(24,64)hours_input
我需要嵌入层的输出(我的意思是权重)。我使用了小时。获取权重()。
但我有一个错误:
get_weights()缺少1个必需的位置参数:“self”
那么,如何获得嵌入权重矩阵呢?首先创建您的模型
hours_input=Input(shape=(1,),name='hours_input')
hours_embedding=Embedding(24,64)(hours_input)
model = keras.models.Model(inputs = hours_input, outputs = hours_embedding)
然后您可以访问:
model.layers[1].get_weights()
输出:
[array([[ 0.00782292, -0.03037642, -0.03229956, ..., -0.02188529,
-0.02597365, -0.04166167],
[-0.04877049, -0.03961046, 0.01000347, ..., 0.00204592,
0.01949279, -0.00540505],
[ 0.0323245 , -0.02847096, -0.0023482 , ..., 0.02859743,
-0.04320076, 0.01578701],
...,
[ 0.01989252, 0.00970422, 0.00193944, ..., 0.02689132,
-0.00167314, 0.00353283],
[ 0.01885528, 0.00589638, -0.03409225, ..., -0.00504225,
0.01269731, 0.04380948],
[-0.01756806, -0.00950485, -0.0189078 , ..., 0.023773 ,
-0.00471363, -0.03708603]], dtype=float32)]