如何优化NLTK pos_tag 操作?

问题描述

正如标题所说,我正在执行 pos_tag 操作以从我的 Python 列表中删除所有专有名词,但由于我的笔记本电脑规格较低,因此需要花费很长时间。这是代码

final 是一个包含 7000 个单词字符串的列表。

final2 = []
for x in final :
    tag = pos_tag(final)
    final2 = [word for word,pos in tag if pos != 'NNP']

如您所见,目前的方法效率不高,它是 O(n^2) 而且我不是专家,这可以在更短的时间内完成吗?

解决方法

final2 = []
#for x in final : (turns out this was not doing anything)
tag = pos_tag(final)
final2 = [word for word,pos in tag if pos != 'NNP']