3

私はインセプションモデルを微調整しようとしており、テストデータで検証しています。しかし、テンソルフローで与えられたすべての例は、細かいチューニングとテストのどちらか一方だけではなく、同じグラフとセッションで両方を行う例はありません。Tensorflowスリムトレインと開始モデルのバリデーション

基本的に私はこれが欲しいです。

with tf.Graph().as_default(): 
image, image_raw, label,image_name, label_name = dut.distorted_inputs(params,is_training=is_training) 
test_image, test_image_raw, test_label,test_image_name, test_label_name = dut.distorted_inputs(params,is_training=False) 

# I'm creating as it is suggested at github slim page: 
logits, _ =inception.inception_v2(image, num_classes=N, is_training=True) 
tf.get_variable_scope().reuse_variables() 
logits_tes, _ =inception.inception_v2(test_image, num_classes=N, is_training=Test) 
err=tf.sub(logits, label) 
losses = tf.reduce_mean(tf.reduce_sum(tf.square(err))) 
# total_loss = model_loss+losses 
total_loss = losses+slim.losses.get_total_loss() 
test_err=tf.sub(test_logits, test_label) 
test_loss= tf.reduce_mean(tf.reduce_sum(tf.square(test_err))) 

optimizer = tf.train.AdamOptimizer(learning_rate=0.001) 
train_op = slim.learning.create_train_op(total_loss, optimizer) 

final_loss = slim.learning.train(
    train_op, 
    logdir=params["cp_file"], 
    init_fn=ut.get_init_fn(slim,params), 
    number_of_steps=2, 
    summary_writer=summary_writer 
) 

それがわかるように、このコードは失敗し、私は各10バッチで私の試験データに私のモデルをテストしたい、私のテストモデルを呼び出すために、別々のループを持っていません。

答えて

-1

number_of_steps = 10の列車を呼び出してから評価コードを使用しても問題ありませんか?

+0

10ステップ後、トレーニングが終了します。トレーニングを再開するには、最後のcpからモデルをロードする必要があります。しかし、これは非常に効率的な方法です、私は私のテストデータでラムに私のモードをテストすることを好む。 – seleucia

+0

これを行うには、トレーニンググラフを再利用するためにevalサンプルを変更する必要があります。 –

関連する問題