2016-12-09 18 views
0

我与tensorflow波士顿住房数据教程的学习,但我将我自己的数据集:Tensorflow - 如何操作节电器

from __future__ import absolute_import 
from __future__ import division 
from __future__ import print_function 
import pandas as pd 
import tensorflow as tf 

tf.logging.set_verbosity(tf.logging.INFO) 

COLUMNS = ["crim", "zn", "indus", "nox", "rm", "age", 
     "dis", "tax", "ptratio", "medv"] 
FEATURES = ["crim", "zn", "indus", "nox", "rm", 
     "age", "dis", "tax", "ptratio"] 
LABEL = "medv" 


def input_fn(data_set): 
    feature_cols = {k: tf.constant(data_set[k].values) for k in FEATURES} 
    labels = tf.constant(data_set[LABEL].values) 
    return feature_cols, labels 

def main(unused_argv): 
    # Load datasets 
    training_set = pd.read_csv("boston_train.csv", skipinitialspace=True, 
         skiprows=1, names=COLUMNS) 
    test_set = pd.read_csv("boston_test.csv", skipinitialspace=True, 
        skiprows=1, names=COLUMNS) 

    # Set of 6 examples for which to predict median house values 
    prediction_set = pd.read_csv("boston_predict.csv",    skipinitialspace=True, 
          skiprows=1, names=COLUMNS) 

    # Feature cols 
    feature_cols = [tf.contrib.layers.real_valued_column(k) 
       for k in FEATURES] 

    # Build 2 layer fully connected DNN with 10, 10 units respectively. 
    regressor = tf.contrib.learn.DNNRegressor(
    feature_columns=feature_cols, hidden_units=[10, 10]) 

    # Fit 
    regressor.fit(input_fn=lambda: input_fn(training_set), steps=5000) 

    # Score accuracy 
    ev = regressor.evaluate(input_fn=lambda: input_fn(test_set), steps=1) 
    loss_score = ev["loss"] 
    print("Loss: {0:f}".format(loss_score)) 

    # Print out predictions 
    y = regressor.predict(input_fn=lambda: input_fn(prediction_set)) 
    print("Predictions: {}".format(str(y))) 

if __name__ == "__main__": 
    tf.app.run() 

我遇到的问题是,数据集是如此巨大,通过tf.train.Saver()保存检查点文件将填满我的所有磁盘空间。

有没有办法来禁用保存检查点文件,或减少保存在上面脚本中的检查点的数量?

由于

回答

0

tf.contrib.learn.DNNRegressor初始化需要tf.contrib.learn.RunConfig对象,其可以被用来控制内部创建的保护程序的行为。例如,您可以执行以下操作以仅保留一个检查点:

config = tf.contrib.learn.RunConfig(keep_checkpoint_max=1) 
regressor = tf.contrib.learn.DNNRegressor(
    feature_columns=feature_cols, hidden_units=[10, 10], config=config) 
+0

非常感谢! –