2017-09-13 13 views
0

私はTFLearnでAlexNetモデルを使用していますし、ある回帰層、定義するための方法がある:TFLearn - 検証と評価の指標

tflearn.layers.estimator.regression (incoming, placeholder='default', optimizer='adam', loss='categorical_crossentropy', metric='default', learning_rate=0.001, dtype=tf.float32, batch_size=64, shuffle_batches=True, to_one_hot=False, n_classes=None, trainable_vars=None, restore=True, op_name=None, validation_monitors=None, validation_batch_size=None, name=None) 

は、それが"A metric can also be provided, to evaluate the model performance."と述べています。だから私は、この評価基準がいつバリデーションに使用されるのか、あるいは評価のみが使用されるのか疑問に思っています。検証で使用されていない場合は、どのメトリックに基づいて検証が行われますか?

EDIT 1:回帰()メソッドで宣言されたメトリックが実際に検証にも使用されることがわかりました。デフォルトのメトリックはAccuracyです。しかし、私が理解していないことの1つは、validation_setを使用しない場合(またはに設定しない場合、)、トレーニング中の要約はまだaccの値を出力します。では、この精度値はどのように計算されますか?

EDIT 2:ここに答えが見つかりました:検証精度val_accが検証データに基づいている間https://github.com/tflearn/tflearn/issues/357

答えて

0

トレーニング精度accは、あなたのトレーニングデータに基づいています。したがって、検証データを省略しても出力は変更されません。