2016-04-09 40 views
1

我正在嘗試OpenNLP句子檢測工具。文本位於文件 - para3.txt中。內容:OpenNLP句子檢測

Bob went to London Mary came from Paris Now everything is fine. 

我用下面的命令運行以下命令:

opennlp SentenceDetector ../models/en-sent.bin < para3.txt 

我得到這樣的輸出:

Bob went to London Mary came from Paris Now everything is fine. 

理想情況下,我會看到三個句子作爲輸出:

Bob went to London. 
Mary came from Paris. 
Now everything is fine. 

現在,如果我tr對於其他句子,如果存在「句號」或「句號」,則句子檢測正在發生。一個人會猜到文中有3個句子,但是如何通過OpenNLP完成? NLP的哪些工具可以幫助這裏?句子檢測的下一級是什麼?

+0

最受訓練的句子組塊模型試圖區分出現爲完整站點的點或用於首字母縮寫詞,標題等的點。您有一個非常特殊的情況,您很可能需要使用專門技術或訓練新的模型。 –

回答

0

這實際上似乎是一個格式錯誤的文本。您可以使用一些啓發式技術將卡盤信息分成句子。

+1

是的,我同意。但我的觀點恰恰就是 - 處理格式錯誤的文字... –

2

您應該訓練您的模型以檢測這些類型的句子,即文檔中給出的句子檢測器訓練。 創建您的培訓文件 en-sent.train:示例培訓數據文件。唯一的要求是每個句子應該在下面的培訓文件中分開一行。

語句1

句子2

句子3

......

......

然後使用命令行界面:

opennlp SentenceDetectorTrainer -model en-sent_trained.bin -lang en -data en-sent.train -encoding UTF-8 

這裏會給出一個模型文件:EN-sent_trained.bin

現在使用的.bin文件,而不是EN-sent.bin

希望這有助於!

+0

謝謝!將嘗試一下。 –