如何在Embedded Gate NLP

时间:2016-06-09 09:41:58

标签: java nlp gate

我是Gate Nlp的新手。我有100多个文件需要处理。但在处理20-25个文档后,抛出out of memory exception。所以,我想现在使用datastore来存储语料库。因此它会在处理后释放内存。我有一个应用程序的gapp文件,通过它加载文档。我的代码就像

  if (!Gate.isInitialised()) {
            Gate.runInSandbox(true);
            Gate.init();
        }



        application = (CorpusController) PersistenceManager.loadObjectFromFile(gapFile);
        // Create a Corpus to use.  We recycle the same Corpus object for each
        // iteration.  The string parameter to newCorpus() is simply the
        // GATE-internal name to use for the corpus.  It has no particular
        // significance.
        corpus = Factory.newCorpus(AppConstants.MAIN_CORPUS);
        application.setCorpus(corpus);
        doc = Factory.newDocument(new File(docFilePath).toURI().toURL());
        // put the document in the corpus
        corpus.add(doc);
        // run the application
        application.execute();
        }

在此之后我删除了语料库。删除后也没有清除内存。我怎么能解决这个问题?

1 个答案:

答案 0 :(得分:0)

在您的示例中,您创建了一个没有Seri​​alDatastore的语料库。 您可以找到真正的SerialDatastore用法here

的示例