【问题标题】:How to pass word2vec embedding as a Keras Embedding layer?如何将 word2vec 嵌入作为 Keras 嵌入层传递?
【发布时间】:2019-09-15 13:59:42
【问题描述】:

我正在使用 Keras 解决多类分类问题。但是我假设由于我的数据(特定领域的数据)的词嵌入不佳,准确性很差。

Keras 有自己的 Embedding 层,这是一种监督学习方法。

所以我对此有两个问题:

  1. 我可以在 Keras 的 Embedding 层中使用 word2vec 嵌入吗,因为 word2vec 是一种无监督学习/自我监督的形式?

  2. 如果是,那么我可以在 word2vec 预训练模型上使用迁移学习来增加我领域特定特征的额外知识。

【问题讨论】:

    标签: python keras nlp data-science word2vec


    【解决方案1】:

    您可以使用 word2vec 或任何其他预训练的嵌入(可能是FastText?)初始化嵌入层,这样您就可以手动构建嵌入矩阵,即,只需从 word2vec 文件中加载所有数字并制作一个np.array。然后您创建一个constant initializer 并将其作为参数传递给您的嵌入层构造函数。

    如果您不希望在训练期间更新嵌入,只需在图层对象上将 trainable 设置为 False

    【讨论】:

      猜你喜欢
      • 2018-08-12
      • 1970-01-01
      • 2022-08-18
      • 1970-01-01
      • 1970-01-01
      • 2020-10-27
      • 2017-08-03
      • 2019-11-13
      • 2019-05-31
      相关资源
      最近更新 更多