【问题标题】:Word embedding for OOV wordsOOV 词的词嵌入
【发布时间】:2018-06-09 02:57:01
【问题描述】:

我已经从语料库中生成了词向量,但我面临许多词的词汇不足问题。如何使用现有的词嵌入动态生成 OOV 词的词向量?

【问题讨论】:

  • 查看类似问题的答案:stackoverflow.com/a/48029141/130288 - 我不知道有任何库可以从现有的全词向量中即时执行此操作。这里的博文中提到了一些有想法的研究:ruder.io/word-embeddings-2017/index.html#oovhandling
  • 未知词汇/文本标记的百分比是多少?您是否使用从某处下载的特定矢量?
  • @Ivan 超过 20% 的令牌是未知的。我们正在尝试为给定词干的词构建词向量。示例:Green-Mango 有词汇,我们正在尝试构建 New-Green-Mango、Fresh-Green-Mango 等。我从第三方获得像 New、Fresh 这样的词,所以我的词汇表中没有.在少数情况下,我的词汇表中同时包含“New-Green-Mango”和“Green-Mango”,但没有“New-Green-Mango”。
  • 检查词汇表中的标记并在这种情况下返回空(零)向量。同理,这个token没有信息。这在更大的机器学习框架中也可能很有用。

标签: machine-learning nlp word2vec gensim


【解决方案1】:

一个很晚的答案(甚至不是您正在寻找的答案)但是,对于 skip-gram 模型,您所要求的几乎是不可能的,因为每个单词本身就是一个不同的实体。

您要求的功能可以通过开箱即用的FastText 完成。它使用 n-grams 生成 OOV 词向量。

Gensim 有一个高级API 来使用 FastText。

【讨论】:

    猜你喜欢
    • 2019-01-11
    • 2019-09-01
    • 1970-01-01
    • 1970-01-01
    • 2018-11-12
    • 2020-12-14
    • 1970-01-01
    • 2018-01-11
    • 2019-04-18
    相关资源
    最近更新 更多