首页 > 解决方案 > 如何训练模型按预定义的含义区分/分类单词?

问题描述

深度学习和 NLP 中的语义分析通常是关于整个句子的含义,例如情感分析。在很多情况下,一个词的意思可以通过句子结构来理解。例如,

你能从中看出这一点吗?

你能告诉我一些关于这件事的事情吗?

是否有任何既定的方法可以通过数据集训练模型

word    meaning_id       sentence
tell    1                Can you tell this from that?
tell    2                Can you tell me something about this?

请注意,目的只是按预定义的含义/示例对单词进行分类。

我使用的是斯坦福 CoreNLP,但我怀疑是否有这种可能性。任何深度学习程序都可以。

标签: machine-learningdeep-learningnlpstanford-nlp

解决方案


我能想到的是使用上下文化的 WordEmbeddings。这些是给定上下文的单词的嵌入。这意味着根据上下文,一个词有另一个嵌入。BERT 生成这样的上下文化嵌入。可以假设这些嵌入对于不同的含义有显着差异,但对于一个单词的相同含义却非常相似。你会做的是:

  1. 用包含你的单词“tell”的句子运行 BERT
  2. 从 BERT 的最后一层提取单词“tell”的嵌入
  3. 尝试将特定嵌入聚类为不同的含义。如果你已经有了预定义的含义和一些例句,你甚至可以尝试训练一个分类器。

是一个博客条目,展示了这种方法的可行性。


推荐阅读