我想从文本中提取相关术语,我想选择最相关的术语。
How to config nltk data -> how, to, config ignored
config mysql to scan -> config NOT ingored
Python NLTK usage -> usage ingored
new song by the band usage -> usage NOT ingored
NLTK Thinks that -> thinks ignored
critical thinking -> thinking NOT ignored
我只能想到这种粗俗的方法:
>>> text = nltk.word_tokenize(input)
>>> nltk.pos_tag(text)
并且只保存名词和动词。但即使“思考”和“思考”都是动词,我也只想保留“思考”。也“结合”“结合”。如果可以的话,我也想提取短语。还有“free2play”,“@ pro_blogger”等术语
请建议一个更好的计划或如何让我的计划有效。
答案 0 :(得分:0)
你需要的只是一个更好的pos标记。这是NLTK的一个众所周知的问题,核心pos标记器对于生产使用效率不高。也许你想尝试别的东西。在此处比较您的pos标记结果 - http://nlp.stanford.edu:8080/parser/。这是我发现的最准确的POS标签(我知道我很快就会被证明是错误的)。在此标记器中解析数据后,您将自动意识到您想要的内容。
我建议您专注于正确标记。
检查POS标记示例: 标记 关键/ JJ 思维/ NN
资料来源:这些天我也在努力使用NLTK pos tagger。:)