2011-04-05 50 views
13

有沒有辦法使用OpenNLP獲得一個句子的主題? 我試圖找出用戶句子中最重要的部分。一般來說,用戶會將句子提交給我們的「引擎」,我們想要確切知道該句子的核心主題是什麼。有沒有辦法使用OpenNLP獲得一個句子的主題?

目前我們使用的openNlp到:

  1. 塊中的句子
  2. 確定的名詞短語,動詞等句子的
  3. 找出句子
  4. 的所有的「主題」( )確定句子的「核心主題」

請讓我知道你是否有任何明智的想法..

+2

「主題」有兩種含義。你的意思是語法上的主語(比如一個句子如何具有主語,動詞和賓語),還是你的意思是這個句子在更一般的意義上是「關於」的? – Stompchicken 2011-04-06 08:10:47

回答

17

依存句法

如果你有興趣提取的語法關係,如該用什麼詞或短語是句子的主語,你應該使用dependency parser。雖然OpenNLP確實支持短語結構解析,但我認爲它還沒有進行依賴關係解析。用Java編寫的支持依存分析

開源軟件

套餐包括:

其中,斯坦福分析器是最準確的。但是,MaltParser的某些配置可能非常快速(Cer et al. 2010)。

+1

斯坦福解析器更容易使用,如果您打算使用java – damned 2012-02-22 12:55:35

2

對於語法主題,您需要依賴樹中的配置信息。如果解析看起來像(TOP(S(NP ----)(VP ----))),那麼你可以把NP作爲主題;通常,儘管並非總是如此,情況就是如此。然而只有一些句子會有這種配置;人們可以很容易想象那些不在那個位置的主體 - 例如被動構造。

雖然你可能使用MaltParser更好。

相關問題