0

我正在查看 StanfordNER 文档/常见问题解答,但我找不到与指定训练中的最大迭代次数以及正则化参数 L1 和 L2 的值相关的任何内容。

我看到了一个建议设置的答案,例如:

maxIterations=10

在属性文件中,但没有给出任何结果。

可以设置这些参数吗?

4

1 回答 1

0

我不得不挖掘代码但找到了它,所以基本上 StanfordNER 支持许多不同的数值优化算法。getMinimizer()通过查看文件中的方法,可以看到哪些已实现并可用于训练 CRF CRFClassifier.java

我通过设置将我的属性文件配置为使用 Orthant-Wise Limited-memory Quasi-Newton:

useOWLQN = true

L1-prior 可以设置为:

priorLambda = 10

一个有用的技巧是使用收敛容差参数 TOL,该参数在每次迭代时检查:|newest_val - previous_val| / |newestVal| < TOLTOL由以下控制:

tolerance = 0.01

另一个有用的参数是明确控制学习算法应该运行的最大迭代次数:

maxQNItr = 100

于 2018-01-13T00:02:11.270 回答