我想创建一个张量流模型,该模型将整数列表作为输入并返回相应的预训练嵌入。
例如,如果输入批次为[[1,2,3],[4,5,6]]
,我希望模型返回
[[embed[1],embed[2],embed[3]],[embed[4],embed[5],embed[6]]
,其中embed
是包含预训练嵌入的矩阵。
我认为我能够使用预训练的嵌入创建一个嵌入层,但是我的代码仅返回一个嵌入。
embedding_dim = 5
vocab_size = 100
embedding_matrix = np.random.random((vocab_size,embedding_dim))
emb_model = tf.keras.Sequential()
embedder = tf.keras.layers.Embedding(vocab_size,embedding_dim,embeddings_initializer=tf.keras.initializers.Constant(embedding_matrix),trainable=False,input_shape=(None,))
emb_model.add(embedder)
例如,如果我执行emb_model([[[8,7],[2,8,4]]])
,则仅返回第8项的嵌入