我有hindi wordnet的数据库和API。我想从NLTK python访问这个wordnet,以便使用我们的wordnet使用NLTK Wordnet函数。有没有办法将自己的wordnet添加到NLTK中? 要么 在印地语中是否有任何Word Sense Disambiguation工具(可以使用任何语言Wordnet进行一些修改)(从wordnet中提供最合适的意义)?
答案 0 :(得分:1)
如果查看你的nltk_data文件夹,你会发现wordnet就像其他所有NLTK语料库一样只是一堆纯文本文件。因此,必须有一种方法来格式化您的印地语wordnet,就像使用NLTK一样使用这些函数。以下是正在读取这些文件的nltk.corpus.reader.wordnet对象的摘录:
#: A list of file identifiers for all the fileids used by this
#: corpus reader.
_FILES = ('cntlist.rev', 'lexnames', 'index.sense',
'index.adj', 'index.adv', 'index.noun', 'index.verb',
'data.adj', 'data.adv', 'data.noun', 'data.verb',
'adj.exc', 'adv.exc', 'noun.exc', 'verb.exc', )
def __init__(self, root):
"""
Construct a new wordnet corpus reader, with the given root
directory.
"""
super(WordNetCorpusReader, self).__init__(root, self._FILES,
encoding=self._ENCODING)
我想你并不是真的需要生成所有这些文件,但更重要的是必须使用" index.sense" Word Sense Disambiguation的文件。这不是由NLTK生成的,但必须在此之前进行预处理,或者必须以下列格式与您的印地语wordnet一起使用 - http://wordnet.princeton.edu/wordnet/man/senseidx.5WN.html。
在您完成所有步骤之后,我将转到../nltk/corpus/reader/wordnet.py并创建一个副本,您可以在其中更改根目录和文件名以及其他一些依赖项但仍然使用功能或在现有类中更改您需要的内容(不推荐)。
P.S。一些谷歌搜索给了我http://www.cs.utexas.edu/~rashish/cs365ppt.pdf的链接,该链接引用了关于该主题的一系列其他来源。