在GATE中,ANNIE的默認值在初始化過程中設置,但有時根據需要進行更改。如何從java代碼更改GATE中ANNIE資源的默認值?
我的要求:我想提取英文句子而不考慮「下一個字符」,但「句號」給出正確的句子。爲此,我需要在ANNIE的SentenceSplitter中更改transducerURL的默認值。 這可以通過兩種方式來完成:
使用ANNIE_with_defaults.gapp - 在Sentencesplitter改變initParams在價值和從Java訪問
Gate.setGateHome(new File(Configuration.GATE_HOME)); Gate.init(); // Load ANNIE with defaults from the plug-ins folder File pluginsHome = Gate.getPluginsHome(); File anniePlugin = new File(pluginsHome, ANNIEConstants.PLUGIN_DIR); File annieGapp = new File(anniePlugin, ANNIEConstants.DEFAULT_FILE); annieController = (CorpusController) PersistenceManager.loadObjectFromFile(annieGapp);
我不能夠找到在哪裏更改gapp文件中的值。
使用CreoleRegister和改變參數transducerURL的默認值如下所示初始化GATE,訪問ResourceData後
String resourceClassName = "gate.creole.splitter.SentenceSplitter"; ResourceData resData = Gate.getCreoleRegister().get(resourceClassName); //System.out.println(resData.getParameterList()); ParameterList params = resData.getParameterList(); List<List<Parameter>> param = params.getInitimeParameters(); System.out.println(param); //System.out.println(param.get(0)); for(List<Parameter> plist : param) { for(Parameter pm : plist) { System.out.println("Name : "+pm.getName()+", "+pm.getDefaultValue()); } }
但是參數的確沒有setDefaultvalue方法。
如何解決這個問題?
歡迎任何形式的幫助。