词义消歧用于词对

假设我有单词A和单词B,其中B作为暗示,用来表明A的含义。例如,A = bass(鲈鱼/低音),B = music(音乐),给定这个词对,作为人类我们可以立即知道单词A的意思。

我知道有很多算法适用于句子。我想知道是否有专门为词对进行词义消歧的算法开发出来。


回答:

词义消歧(WSD)是根据给定的上下文句子/文档来消除单词歧义的任务。在两个词的短语的情况下,上下文基本上就是另一个词。

你可以尝试不同的WSD软件,这里有一个列表:有人知道一些好的词义消歧软件吗?

我将使用pywsd给你举个例子(https://github.com/alvations/pywsd):

$ wget https://github.com/alvations/pywsd/archive/master.zip$ unzip master.zip$ cd pywsd-master$ pythonPython 2.7.5+ (default, Feb 27 2014, 19:37:08) [GCC 4.8.1] on linux2Type "help", "copyright", "credits" or "license" for more information.>>> from lesk import simple_lesk# 给定上下文'bass music'消歧单词'bass'>>> simple_lesk('bass music', 'bass') Synset('bass.n.07')>>> disambiguated = simple_lesk('bass music', 'bass')>>> disambiguated.definition<bound method Synset.definition of Synset('bass.n.07')>>>> disambiguated.definition()u'the member with the lowest range of a family of musical instruments

或者,你可以使用NLTK中的新模块(https://github.com/nltk/nltk/blob/develop/nltk/wsd.py),前提是你有最新的版本:

from nltk.wsd import leskdisambiguated = lesk(context_sentence="bass music", ambiguous_word="bass")print disambiguated.definition()

(免责声明:我编写了pywsdNLTK中的lesk模块)

Related Posts

使用LSTM在Python中预测未来值

这段代码可以预测指定股票的当前日期之前的值,但不能预测…

如何在gensim的word2vec模型中查找双词组的相似性

我有一个word2vec模型,假设我使用的是googl…

dask_xgboost.predict 可以工作但无法显示 – 数据必须是一维的

我试图使用 XGBoost 创建模型。 看起来我成功地…

ML Tuning – Cross Validation in Spark

我在https://spark.apache.org/…

如何在React JS中使用fetch从REST API获取预测

我正在开发一个应用程序,其中Flask REST AP…

如何分析ML.NET中多类分类预测得分数组?

我在ML.NET中创建了一个多类分类项目。该项目可以对…

发表回复

您的邮箱地址不会被公开。 必填项已用 * 标注