从旧版Wordnet映射同义词ID

时间:2016-08-09 14:37:10

标签: nltk wordnet

如何将旧版Wordnet(特定于1.6)的同义词偏移量映射到当前版本(3.0),最好使用NLTK?

例如,在1.6中,愤怒具有偏移5588321,而3.0则为7516905。

我对此的主要需求是实施Wordnet-Affect http://wndomains.fbk.eu/wnaffect.html 不幸的是,它使用的是1.6版本。

我确实设法在https://github.com/clemtoy/WNAffect找到了一个存储库,这要归功于我可以成功使用数据库,该数据库确实提供了解决问题的方法,以满足使用Wordnet影响的要求,但它没有映射同义词来实现它

在Wordnet 3.0中获得偏移量,nltk

wn.synset('wrath.n.01').offset()
7516905

编辑:

从Wordnet 1.6的id获取synset的名称也可以。

EDIT2:

以下是信息的准确存储方式。这是一个小子集 -

<noun-syn id="n#05588321" categ="wrath"/>
<noun-syn id="n#05576115" categ="worship"/>
<noun-syn id="n#05600844" categ="world-weariness"/>
<noun-syn id="n#05582577" categ="wonder"/>
<noun-syn id="n#05600968" categ="woe"/>
<noun-syn id="n#05579569" categ="withdrawal"/>
<noun-syn id="n#05604301" categ="weight"/>
<noun-syn id="n#05601315" categ="weepiness"/>
<noun-syn id="n#05574157" categ="weakness"/>
<noun-syn id="n#05611809" categ="warpath"/>

这些ID都是过时的WN1.6 ids

1 个答案:

答案 0 :(得分:1)

由于没有人建议使用快捷方式,因此您需要以明显的方式进行操作:启动1.6 Wordnet并自行将偏移转换为同步。您将在this page.

上找到Wordnet的正式1.6版下载

我不知道他们试图保持向后兼容性的难度,但希望wrath.n.01在所有版本的Wordnet中或多或少都是一样的。我猜测某些感官被分成两个或更多个版本之间的同义词,甚至可能偶尔发生反转。在这种情况下,不会出现与原始synset完全对应的事情。这对你来说是否有问题需要你决定。