Nltk: 使用感知键访问 Synset 对象的函数

创建于 2018-01-10  ·  4评论  ·  资料来源: nltk/nltk

我可能已经错过了它,但是是否有一个函数可以从 NLTK wordnet 接口从sense key访问Synset对象?

如果没有,我们可以公开一个可以在nltk.corpus.wordnet实现的函数吗? 例如https://stackoverflow.com/questions/48170666/how-to-get-the-gloss-given-sense-key-using-nltk-wordnet/

理想情况下,使用以下功能访问Synset对象会很好:

  1. offset-pos ,例如1433493-a -> Synset('long.a.02')
  2. sense_key ,例如long%3:00:02:: -> Synset('long.a.02')

目前,我们有 (1) 的synset_from_pos_and_offset()

还有另一个函数( _synset_from_pos_and_line )读取以下行以返回Synset('long.a.02')

01433493 00 a 01 long 1 016 = 05129201 n 0000 + 05133287 n 0101 ! 01436003 a 0101 & 01434007 a 0000 & 01434218 a 0000 & 01434530 a 0000 & 01434717 a 0000 & 01434841 a 0000 & 01434966 a 0000 & 01435060 a 0000 & 01435189 a 0000 & 01435290 a 0000 & 01435399 a 0000 & 01435507 a 0000 & 01435675 a 0000 & 01435891 a 0000 | primarily spatial sense; of relatively great or greater than average spatial extension or extension as specified; "a long road"; "a long distance"; "contained many long words"; "ten miles long" 

但这不是意义的关键。

corpus enhancement goodfirstbug nice idea wordnet

最有用的评论

实现了 stackoverflow 中建议的函数,但它似乎没有映射到正确的意义——例如, synset_from_sense_key('afraid%3:00:00::')返回afraid.a.04而不是afraid.a.01 。 这个问题也延伸到其他 POS。 (Sense 键是从Wordnet 的在线界面获得

相反,使用SemCor 文档中显示的方法似乎可以正确映射——目前有一个lemma_from_key(key)函数似乎接受类似于感知键的东西。 但是, lemma_from key(key)不支持形容词卫星(例如afraid%3:00:02:concerned:00 )。 我绝对可以在lemma_from_key(key)周围实现一个包装器来解决这个问题并返回一个Synset

所有4条评论

我想在这方面工作!

@craaaa抱歉回复晚了,离开了一段时间。

随意处理它并在之后创建 PR。
P/S:不要担心破坏任何东西,在我们合并代码之前会有检查和审查。

实现了 stackoverflow 中建议的函数,但它似乎没有映射到正确的意义——例如, synset_from_sense_key('afraid%3:00:00::')返回afraid.a.04而不是afraid.a.01 。 这个问题也延伸到其他 POS。 (Sense 键是从Wordnet 的在线界面获得

相反,使用SemCor 文档中显示的方法似乎可以正确映射——目前有一个lemma_from_key(key)函数似乎接受类似于感知键的东西。 但是, lemma_from key(key)不支持形容词卫星(例如afraid%3:00:02:concerned:00 )。 我绝对可以在lemma_from_key(key)周围实现一个包装器来解决这个问题并返回一个Synset

@craaaa。 我认为形容词卫星仍然存在问题。 我尝试使用 synset_from_sense_key 函数,这是错误:

文件“/home/izorar/anaconda3/lib/python3.7/site-packages/nltk/corpus/reader/wordnet.py”,第 1356 行,同义词引发 WordNetError(message % lemma) WordNetError: 形容词卫星请求但只是普通为引理“第一”找到的形容词

关于如何修复错误的任何想法?

此页面是否有帮助?
0 / 5 - 0 等级