2017-03-21 50 views
-1

識別MNIST數據庫的網絡輸出是對10個類的預測,即對於1000個圖像,我們將具有尺寸矩陣(1000,10)。哪種方式代表成本函數更好(以及爲什麼?):什麼是計算MNIST的錯誤的正確方法

  • 簡單tf.squared_difference(Y_pred, Y_pred)
  • 表示隨批次tf.reduce_mean(tf.tf.squared_difference(Y_pred, Y_pred), axis=0)
  • 或以上等級,然後在批次tf.reduce_men(tf.reduce_mean(tf.tf.squared_difference(Y_pred, Y_pred), axis=1))

感謝

+0

歡迎來到StackOverflow。請閱讀並遵守幫助文檔中的發佈準則。 [在主題](http://stackoverflow.com/help/on-topic)和[如何提問](http://stackoverflow.com/help/how-to-ask)適用於此處。 StackOverflow不是一個設計,編碼或教程服務。展示您的工作,將開放問題減少到一個小點,然後您就可以在本網站上尋求幫助。 – Prune

回答

0

意味着由於你的目標是類別(數字0〜9),最好是使用cross entropy cost function ,做這樣的事情:

cross_entropy = -tf.reduce_sum(Y * tf.log(Y_pred + 1e-10)) 
optimizer = tf.train.AdamOptimizer(0.001).minimize(cross_entropy) 

這裏Y是真正的目標值,而Y_pred是預測的目標值。 這是一個discussion交叉熵超過均方誤差的分類問題的好處。

相關問題