1. 程式人生 > >Rank mismatch: Rank of labels (received 2) should equal rank of logits minus 1 (received 2) 錯誤

Rank mismatch: Rank of labels (received 2) should equal rank of logits minus 1 (received 2) 錯誤

描述

這個錯誤是我在使用TensorLayer深度學習框架時候的一個錯誤,錯誤主要定位在cross_entropy()這個函式裡面 錯誤截圖

搜尋

github上有一個類似的錯誤,但對我沒什麼用,連結是:

解決

cross_entropy()這個函式給了它兩個值,y和y_,其中y是網路的輸出,y_是資料標籤,可能是內建的tl.cost.cross_entropy()這個函式有點問題,把這個函式換成TensorFlow中的函式

cost = tf.reduce_mean(tf.nn.softmax_cross_entropy_with_logits_v2(labels=y_, logits=y))

這個bug就消失了