2016-07-11 19 views
2

名詞短語多個命名實體類型。一個單詞可以多次標記很重要。例如David Cronenberg應該被標記爲directorperson認識上我目前使用OpenNLP UIMA用一個句子來標記詞用NLP

我知道訓練過程中被正確執行,因爲我有一個自定義的模型文件,當用一個標籤所有句子從模型文件中刪除檢測到其他標籤。

我想最好能夠繼續使用OpenNLP翻一番標籤的話。有沒有辦法做到這一點?如果不是這樣的話,這可能與另一個庫如斯坦福CoreNLP。

一個獲取標籤的代碼如下:

List<NamedEntity> entities = JCasUtil.selectCovered(NamedEntity.class, aConstituent); 
    if (!entities.isEmpty()) { 
     // is never more than 1 
    } 

和一些示例訓練數據低於(有數百個類似這樣的行。)

<START:person> David Cronenberg <END> directed <START:film> Crash <END> . 
<START:director> David Cronenberg <END> directed <START:film> Scanners <END> . 
+0

伸出來OpenNLP的開發商。你可能會在這裏找到幫助,但你可能會在那裏找到更多。如果它是開源的,那就查看代碼 - 你不僅可以在那裏找到你的答案,還可以找到解決方案。 –

回答

2

列車爲獨立的分類不同類型的命名實體,例如一個用於person,另一個用於director。然後將多個OpenNlpNamedEntityRecognizer組件添加到您的管道中,每個組件都使用一個模型進行配置。