确定文本中的所有实质内容

时间:2013-10-08 08:51:50

标签: python nltk lang

我目前正在接受ISTQB Testmanager的培训。为此,我想使用ANKI及其完形填空删除。

我想自动生成Flashcards,即通过Python脚本生成。此脚本应使用完形填空删除替换所有实体。

我的问题是:

如何使用python脚本识别文本中的实质内容?

不幸的是,教学大纲没有德语版本。德国人的优势在于实质性资本化。

1 个答案:

答案 0 :(得分:1)

查看解析或POS标记(POS =词性,例如动词,名词)

patternNLTK为此提供了套餐。

模式中的一个例子:

>>> from pattern.en import parse
>>> print parse('I eat pizza with a fork.')

I/PRP/B-NP/O eat/VBD/B-VP pizza/NN/B-NP/O with/IN/B-PP/B-PNP a/DT/B-NP/I-PNP
fork/NN/I-NP/I-PNP ././O/O

NLTK的一个例子:

>>> text = nltk.word_tokenize("And now for something completely different")
>>> nltk.pos_tag(text)
[('And', 'CC'), ('now', 'RB'), ('for', 'IN'), ('something', 'NN'),
('completely', 'RB'), ('different', 'JJ')]

一旦掌握了哪些是实质性信息或名词(其中POS标签通常以 N 开头),您就可以对其进行完形填空删除。请注意,POS标记并不完美,因此性能取决于您正在处理的文本的完整程度。 (我也假设你在用英语工作,但是有许多语言的POS标签。)