如何微调嵌入层中的预训练嵌入?

How to fine-tune pre-trained embeddings in embedding layer?

如何在 tf.keras 的嵌入层中微调预训练嵌入?

# embedding layer with pre trained weights
embedding_layer = layers.Embedding(
    input_dim=self.vocab_size + 2,
    output_dim=self.emb_size,
    embeddings_initializer=initializers.Constant(embedding_matrix),
    mask_zero=mask_zero,
    trainable=False
)

如果我只是更改 trainable = True,它会微调我拥有的预训练嵌入吗?或者我还应该删除 initializers.Constant 作为初始值设定项吗?

可以参考以下内容answer

trainable 设置为 true 时,您将嵌入层设置为 fine-tune。

设置 embeddings_initializer 将与 trained 标志相矛盾。您不应该将其设置为常量,或者您可以使用 embedding_matrix 设置权重。您可以参考以下link:

  1. meaning of constat

关于您的评论weights 参考以下link:Keras Embedding ,where is the "weights" argument?