如何抑制斯坦福 NLP ColumnDataClassifier.makeClassifier() 函数的标准输出
Posted
技术标签:
【中文标题】如何抑制斯坦福 NLP ColumnDataClassifier.makeClassifier() 函数的标准输出【英文标题】:How to suppress stdout for Stanford NLP ColumnDataClassifier.makeClassifier() function 【发布时间】:2014-03-05 21:15:42 【问题描述】:我正在打电话给edu.stanford.nlp.classify.ColumnDataClassifier.makeClassifier()
,我需要阻止它生成的标准。我尝试在 .prop 文件中设置displayedColumn=-1
,但它对我没有帮助。以下是我要消除的控制台输出makeClassifier()
生成。有人可以帮忙吗?
控制台输出:
QNMinimizer called on double function of 1596 variables, using M = 15.
An explanation of the output:
Iter The number of iterations
evals The number of function evaluations
SCALING <D> Diagonal scaling was used; <I> Scaled Identity
LINESEARCH [## M steplength] Minpack linesearch
1-Function value was too high
2-Value ok, gradient positive, positive curvature
3-Value ok, gradient negative, positive curvature
4-Value ok, gradient negative, negative curvature
[.. B] Backtracking
VALUE The current function value
TIME Total elapsed time
|GNORM| The current norm of the gradient
RELNORM The ratio of the current to initial gradient norms
AVEIMPROVE The average improvement / current value
EVALSCORE The last available eval score
Iter ## evals ## <SCALING> [LINESEARCH] VALUE TIME |GNORM| RELNORM AVEIMPROVE EVALSCORE
Iter 1 evals 1 <D> [M 1.000E-1] 6.808E-1 0.00s |3.890E-1| 1.111E-2 0.000E0 -
【问题讨论】:
【参考方案1】:在不详细了解斯坦福 NLP 的情况下(可能是,他们通过 API 提供了一些重定向...提前检查!),但您始终可以做的是重定向 整个 stderr和标准输出,通过使用System.setOut(PrintStream)
和/或System.setErr(PrintStream)
并提供您自己的PrintStream
。
【讨论】:
感谢您的建议。抱歉,我之前必须提到过,我尝试按照这里的建议覆盖 write() 但令人惊讶的是 makeClassifier 仍然将输出转储到 stdout。link以上是关于如何抑制斯坦福 NLP ColumnDataClassifier.makeClassifier() 函数的标准输出的主要内容,如果未能解决你的问题,请参考以下文章