【问题标题】:Word Sense Disambiguation on Selected words选定词的词义消歧
【发布时间】:2015-04-20 23:54:16
【问题描述】:

我有一组给定的keywords,我知道它们只与我的应用程序相关。但是这些关键字在不同的上下文中可能具有不同的含义。只有一个意思对我有用,我事先知道。我怎样才能disambiguate他们在运行时的含义?
我尝试在市场上使用不同的Word Sense Disambiguation 方法,但效果不佳?
有人可以帮我吗?

【问题讨论】:

    标签: machine-learning nlp classification keyword-search


    【解决方案1】:

    词义消歧是一个悬而未决的问题,因此任何方法的成功都很大程度上取决于您的特定数据。如果您在运行时提供的关键字周围有足够的上下文,则可以计算 tf-idf (http://en.wikipedia.org/wiki/Tf%E2%80%93idf) 并将其与您感兴趣的词义的预先建立的 tf-idf 进行比较:当然,这意味着只有你感兴趣的感觉出现的训练数据。然后,您可以比较两个 tf-idf 向量,如果根据您可以通过实验建立的某个阈值它们足够相似(http://en.wikipedia.org/wiki/Cosine_similarity),那么您可以得出结论它们是相同的含义。祝你好运。

    【讨论】:

      【解决方案2】:

      消歧是根据上下文从预先指定的术语集(单词/搭配,或keyword)中选择一种含义的任务。这里的主要思想是计算每个含义和上下文之间的相似性,然后选择最接近的含义。此外,对含义进行先验分布也非常有用——例如,每个含义用于该术语的频率;顺便说一句,最常见的算法是一个很好的基线。

      因此,您的任务是设置先验分布、定义相似性度量并选择上下文。通常只考虑本地上下文就足够了——每边 3 到 5 个最接近的词。 相似性度量很大程度上取决于您的字典(每个术语的含义集)和您的域。上面提出了一个示例 - tf-idf 向量上的余弦。

      有了这个,你可以创建一个二元分类器;理想情况下,要训练机器学习,如逻辑回归,如果你有训练集,你可以准确地知道每个关键字是否具有有用的含义。 如果您只有正面示例(似乎由 user1981700 假设),那么您有类似 one class classifiction 的东西,通常性能较差。

      希望这会有所帮助。如果您提供有关您的域和字典种类的更多详细信息,那么想出更合适的解决方案会容易得多。

      【讨论】:

        猜你喜欢
        • 2014-08-11
        • 2011-04-11
        • 2013-04-03
        • 2015-02-09
        • 2015-01-08
        • 2011-10-13
        • 1970-01-01
        • 2017-09-25
        • 2020-11-30
        相关资源
        最近更新 更多