2012-01-27 76 views
5

任何人都可以告訴我如何在nltk.parse.malt中使用預培訓的MaltParser模型(http://maltparser.org/mco/english_parser/engmalt.html)嗎?唯一的選擇似乎是從文件中進行培訓(如果任何人都可以將我指向一個好的公開可用的培訓文件,那也會很棒)。在NLTK中使用預培訓的MaltParser模型

回答

1


使用預訓練模型關於 - 看來,這已經(和它似乎仍然是)在NLTK開發論壇開放的主題: https://github.com/nltk/nltk/issues/145

據我瞭解,你可以做它通過設置一些內部變量:

「雖然你可以手動設置對象的MCO場,這不是 API暴露, 和一個沒有深入代碼的用戶不會知道這一點。「

然而,我無法找到具體的地方做到這一點。

關於獲得預訓練模型 - 我指的是你這個話題上SO:

Does NLTK have a tool for dependency parsing?

3

在舊版本NLTK的MaltParser界面中使用硬編碼路徑模型。這已在承諾e9e443中得到修復。現在,您可以執行以下操作:

maltparser = MaltParser(mco="/path/to/your/model.mco") 

在撰寫本文時,easy_install的和PIP仍然安裝版本NLTK的不包括此修復程序(2.0.1rc4)。如果你不能切換到最前沿的版本,你可以使用下面的技巧:

maltparser = MaltParser() 
maltparser.mco = "/path/to/your/model.mco" 

預先訓練模型可以在MaltParser's official website找到。