【问题标题】:Mapping synset ids from older version of Wordnet从旧版 Wordnet 映射同义词集 id
【发布时间】:2016-08-09 14:37:10
【问题描述】:

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

例如,在 1.6 中,wrath 的偏移量为 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 获取同义词集的名称也可以。

编辑2:

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

<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 id

【问题讨论】:

  • 有趣的问题。您能否提供更多关于这种情况的信息,包括相应同义词的示例,以及您对它们的使用以使映射成为必要?很少有人可能拥有两个版本的 wordnet,因此如果您提供所有必要的信息,您就更有可能获得帮助。
  • 我添加了一些细节:)
  • 这是一个开始,但我在 nltk 中随便使用了 wordnet,我从未听说过“偏移量”。给出可用的代码!请记住,重点是让没有安装 wordnet-affect(不管是什么)的人能够帮助您。
  • 嗯,但我的问题不一定与 wordnet-affect 相关。我将添加代码以提供当前 wordnet 的偏移量,但除此之外,鉴于我的问题,我看不到任何可以在此处添加的代码。
  • 你需要偏移量做什么?为什么你甚至关心它以前是什么,为什么仅按名称匹配同义词集是不够的,无论如何你想通过版本之间的“匹配”来完成什么?如果你不能通俗易懂地陈述你的目标,没有人可以帮助你解决问题。

标签: nltk wordnet


【解决方案1】:

由于没有人建议快捷方式,听起来您需要以明显的方式进行操作:启动 1.6 Wordnet 并自己将偏移量转换为同义词集。你可以在this page.找到Wordnet 1.6的正式版下载

我不知道他们如何努力保持向后兼容性,但希望wrath.n.01 在所有版本的 Wordnet 中或多或少都是一样的。我猜有些感官在版本之间被分成两个或多个同义词,甚至可能偶尔会发生相反的情况。在这种情况下,不会有与原始同义词完全对应的东西。这是否对您来说是个问题,由您自己决定。

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 2018-07-27
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2017-04-18
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多