2016-07-30 30 views
0

我繼承了圍繞CoreNLP編寫的Java系統,這意味着除了使用CoreNLP解析器之外,系統類在某些地方還使用CoreNLP類作爲字段。斯坦福的CoreNLP和OpenNLP解析器之間是否有橋樑?

我想用不同的解析器測試系統的準確性,爲此我重構了使用通用解析器適配器的代碼,其中的子類應該在CoreNLP API和特定解析器實現之間執行必要的橋接。

現在,子類StanfordParserAdapter是微不足道的。我的問題始於OpnNlpParserAdapter子類。我可以使用這些解析器之間是否存在一個橋樑?如果是這樣,它會幫我(和其他人)做很多工作。

示例:給定要解析的List<HasWord>,CoreNLP生成Tree。我希望OpenNLP解析器(通過橋接代碼)在給定相同輸入時生成一個等效的Stanford Tree對象。

回答

0

我不認爲橋接是最佳的解決方案,因爲它涉及大量的工作和比在項目中直接使用Opennlp更多的時間。

另一方面,配置和使用Opennlp是很容易的。並且有很多支持可以用來解析你的輸入。

評論如果您在配置和使用工具時需要任何幫助。很多例子都有幫助。

+0

我不認爲橋接是最佳的解決方案,但我不打算重寫一半系統只是直接使用OpenNLP ...: -/ 我沒有問題配置或使用OpenNLP(或其他解析器),我的問題是關於橋接代碼的具體問題。有一天,它可能對別人有幫助。 – Yuval

+0

重寫系統的一半?它只是添加opennlp jar並創建解析器方法,不是嗎? :/ – Nuwanda

+0

如果你讀了這個問題的第一句話,你會發現很多課程都是用斯坦福課程編寫的。我希望我可以插上斯坦福解析器,並在它的位置插入一個新的解析器... – Yuval