解释NLTK pos_tag丑陋的错误

时间:2017-03-27 08:14:41

标签: python-3.x nltk stanford-nlp pos-tagger

我正在使用Python3-NLTK进行文本挖掘。在预处理步骤中,我想实现名词短语分块,这需要POS-tagging and selection according to a regexp (grammar)。我的结果并不令人满意,例如我使用了短语of,因为pos_tag已将其标识为import nltk nltk.help.upenn_tagset() (地球from nltk import pos_tag t1 = 'it happened in the mid-1890s' pos_tag(t1.split())[-1] # gives:('mid-1890s', 'NNS') t2 = 'it happened in the mid-1890' pos_tag(t2.split())[-1] # gives:('mid-1890', 'NN') t3 = 'mid-1890' pos_tag(t3.split())[-1] # gives:('mid-1890', 'NN') t4 = 'mid-1890s' pos_tag(t4.split())[-1] # gives:('mid-1890s', 'NNS') 如何成为专有名词!)

所以我深入研究了NLTK pos_tag,并找到了这个奇特的结果:

使用

{{1}}

您将获得NLTK pos_tag中可用标签的完整列表。这是其中之一:

  

CD:数字,基数:       1890年中期九点三十二分......

如上所述, 1980年中期这个词是一张CD。现在这就是我所拥有的:

{{1}}
  1. 这种情况不是很奇怪吗?!

  2. 是否有任何(可能是监督的)POS标记改进方法?我正在研究超过11,000个文档(每个文档最多500个单词)

0 个答案:

没有答案