我无法得知DNNClassifier在训练时是否打印进度,例如损失和验证分数。据我所知,可以使用从BaseEstimator继承的config参数来打印损失,但是当我传递了一个RunConfig对象时,分类器没有打印任何内容。
from tensorflow.contrib.learn.python.learn.estimators import run_config
config = run_config.RunConfig(verbose=1)
classifier = learn.DNNClassifier(hidden_units=[10, 20, 10],
n_classes=3,
config=config)
classifier.fit(X_train, y_train, steps=1000)
我是否漏掉了什么?我检查了RunConfig如何处理verbose参数,似乎它只关心verbose是否大于1, 这与文档不符:
verbose: 控制详细程度的参数,可能的值为: 0: 算法和调试信息被静音。 1: 训练器打印进度。 2: 打印日志设备放置。
至于验证分数,我认为使用 monitors.ValidationMonitor应该就可以了,但是当我尝试使用时,分类器没有打印任何东西,而且在尝试使用early_stopping_rounds时也没有发生任何事情。我搜索了文档或源代码中的注释,但是我找不到任何有关monitors的内容。