私はTensorflowモデルを訓練し、同等のケラスモデルを構築し、学習したウェイトをロードしました。 しかし、私はKeras(例えば、98%と比較してTensorflowで98.5%)で異なる検査精度を得ています。 私はtensorflowで、このように精度を定義している:この矛盾はどこから来るのか、私は混乱していますケラスとテンソルフローは同じウェイトであるがテストの精度は異なる
model.compile(optimizer=tf.train.AdamOptimizer(), loss='categorical_crossentropy', metrics=['accuracy'])
accuracy = model.evaluate(x=test_images, y=test_labels, batch_size=BATCH_SIZE)
:
Kerasでaccuracy = tf.cast(tf.equal(tf.argmax(input_labels, 1), tf.argmax(output, 1)), tf.float32)
私は、その標準的なメトリックを使用していました。
編集:私は答えと確信しなかったので、私はこの不一致の原因となったバグを発見し、それを固定した後、両方のフレームワークは、今と同じ結果を生成するまで、私はより多くのコードに数日を過ごした 予想と同じ重量。 Stackoverflowは私が質問を削除することを許可していないので、私は他の読者の混乱を防ぐためにこの編集を書いています。
あなたが現在の答えに満足できない場合は、あなた自身の答えを投稿する**ことができます。これは質問への答えを編集するよりも良いでしょう。あなたの答えはバグや不一致をどのように修正したかを説明していることを確認してください。 (あなた自身の質問に答えることはいつでもOKです - 実際は励まされます!) –