2015-10-20 192 views
0

我有一個文本文檔,我想從中提取名詞短語。在第一步中,我提取句子,然後爲每個句子做詞性(pos)標記,然後使用pos做一個分塊。我使用StanfordNP來完成這些任務,這是提取句子的代碼。從文本文檔中提取句子

Reader reader = new StringReader(text); 
DocumentPreprocessor dp = new DocumentPreprocessor(reader); 

我認爲DocumentPreprocessor爲了提取句子而在底層做了pos。不過,我還在爲第二階段提取名詞短語做了另一個pos。也就是說,pos做了兩次,因爲pos是一個計算量很大的任務,我正在尋找一種方法來做到這一點。有沒有辦法只做一次pos來提取句子和名詞短語?

回答

0

不,DocumentPreprocessor在加載文本時不運行標記器。 (注意,它有能力解析預先標記的文本,即在文件中解析令牌dog_NN。)

+0

因此,如果它不做pos標記,它是如何檢測一個句子? –

0

我不確定。嘗試使用nltk(蟒蛇包)

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