如何在MATLAB中压制Stanford CoreNLP Redwood日志记录?

时间:2018-01-30 02:42:12

标签: matlab logging stanford-nlp

线程How to shutdown Stanford CoreNLP Redwood logging?据说用Java解决了我的问题。我想在MATLAB中做同样的事情,但该线程中给出的代码不起作用。请建议一个完整的解决方案,从导入内容,设置属性等开始。

我的代码如下:

import java.io.*;
import edu.stanford.nlp.tagger.maxent.MaxentTagger;

tagger = MaxentTagger('./english-left3words-distsim.tagger');

登录命令行:

Reading POS tagger model from ./english-left3words-distsim.tagger ... done [3.6 sec].

取自我的包中的CreateTagger.m: https://github.com/jzsfvss/POSTaggerSML

1 个答案:

答案 0 :(得分:0)

我不是很想从MatLab调用Java,但我认为它会起作用并删除加载消息而不是使用以下内容(最终false参数表示不打印加载):

import edu.stanford.nlp.util.StringUtils;

...
tagger = MaxentTagger('./english-left3words-distsim.tagger', StringUtils.argsToProperties({'-model', './english-left3words-distsim.tagger'}), false);

如果这不起作用,也许最简单的方法是使用以下行创建一个slf4j配置文件simplelogger.properties

org.slf4j.simpleLogger.log.edu.stanford.nlp.tagger.maxent.MaxentTagger=warn

并确保该文件位于Java类路径上(可能是调用javaaddpath),以便标记器组件不再打印文件加载等INFO消息。