NLTK - 类型错误:tagged_words() 'simplify_tags' 遇到意外的关键字参数



我刚刚阅读了NLTK书的第5章,tagged_words()中的"simplify_tags"参数似乎出乎意料。我使用Python 3.4、PyCharm和标准的NLTK包。

In[4]: nltk.corpus.brown.tagged_words()
Out[4]: [('The', 'AT'), ('Fulton', 'NP-TL'), ...]
In[5]: nltk.corpus.brown.tagged_words(simplify_tags = True)
Traceback (most recent call last):
  File "C:Python34libsite-packagesIPythoncoreinteractiveshell.py", line 2883, in run_code
    exec(code_obj, self.user_global_ns, self.user_ns)
  File "<ipython-input-5-c4f914e3e846>", line 1, in <module>
    nltk.corpus.brown.tagged_words(simplify_tags = True)
TypeError: tagged_words() got an unexpected keyword argument 'simplify_tags'

在没有simplefy_tag的情况下运行此函数没有问题。我感谢任何建议或意见。非常感谢。

是的,如前所述,简化标记的最新版本是将它们映射到通用标记集(https://code.google.com/p/universal-pos-tags/)。

>>> from nltk.corpus import brown
>>> brown.tagged_words(tagset='universal')
[(u'The', u'DET'), (u'Fulton', u'NOUN'), ...]
>>> brown.tagged_words(tagset='universal')[:10]
[(u'The', u'DET'), (u'Fulton', u'NOUN'), (u'County', u'NOUN'), (u'Grand', u'ADJ'), (u'Jury', u'NOUN'), (u'said', u'VERB'), (u'Friday', u'NOUN'), (u'an', u'DET'), (u'investigation', u'NOUN'), (u'of', u'ADP')]

但是请注意,仍然有一个语料库阅读器具有simplify_tags参数,请参阅https://github.com/nltk/nltk/blob/develop/nltk/corpus/reader/ipipan.py#L23

ipipan语料库阅读器可能正在向通用标签集过渡。

此外,请注意,并不是所有的语料库阅读器都能够映射到非iersal标签集,有些在TODO列表中,例如。https://github.com/nltk/nltk/blob/develop/nltk/corpus/reader/tagged.py#L260

问题已解决。我现在关注的是这本书的最新版本,它仍在更新中,它使用了tagset='universsal'参数。

最新更新