Python 在tensorflow r0.9(skflow)中培训DNNClassifier时,如何打印进度?
我无法让DNNClassifier在培训时打印进度,即损失和验证分数。据我所知,可以使用从BaseEstimator继承的config参数打印损失,但是当我传递一个RunConfig对象时,分类器没有打印任何内容Python 在tensorflow r0.9(skflow)中培训DNNClassifier时,如何打印进度?,python,tensorflow,skflow,Python,Tensorflow,Skflow,我无法让DNNClassifier在培训时打印进度,即损失和验证分数。据我所知,可以使用从BaseEstimator继承的config参数打印损失,但是当我传递一个RunConfig对象时,分类器没有打印任何内容 from tensorflow.contrib.learn.python.learn.estimators import run_config config = run_config.RunConfig(verbose=1) classifier = learn.DNNClassif
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参数,它似乎与文档不匹配:
详细:控制详细程度,可能的值:
0:算法和调试信息被禁用。
1:培训师打印进度。
2:打印日志设备放置
至于验证分数,我认为使用会很好,但是当尝试它时,分类器不会打印任何内容,当尝试使用早期停止循环时也不会发生任何事情。我在源代码中搜索文档或一些注释,但找不到监视器的任何注释。在fit函数显示进度之前添加这些注释:
import logging
logging.getLogger().setLevel(logging.INFO)
样本:
INFO:tensorflow:global_step/sec: 0
INFO:tensorflow:Training steps [0,1000000)
INFO:tensorflow:Step 1: loss = 10.5043
INFO:tensorflow:training step 100, loss = 10.45380 (0.223 sec/batch).
INFO:tensorflow:Step 101: loss = 10.5623
INFO:tensorflow:training step 200, loss = 10.46701 (0.220 sec/batch).
INFO:tensorflow:Step 201: loss = 10.3885
INFO:tensorflow:training step 300, loss = 10.36501 (0.232 sec/batch).
INFO:tensorflow:Step 301: loss = 10.3441
INFO:tensorflow:training step 400, loss = 10.44571 (0.220 sec/batch).
INFO:tensorflow:Step 401: loss = 10.396
INFO:tensorflow:global_step/sec: 3.95
培训前添加此行:
import logging
tf.logging.set_verbosity(tf.logging.INFO)