我想重量,基於在訓練數據集中列的訓練數據。從而比其他人更重視某些培訓項目。不應將權重列作爲輸入圖層的特徵。自定義損失函數的加權訓練數據
的Tensorflow文檔持有example如何使用項目的標籤分配一個自定義的損失,從而給予權重:在自定義DNN
# Ensures that the loss for examples whose ground truth class is `3` is 5x
# higher than the loss for all other examples.
weight = tf.multiply(4, tf.cast(tf.equal(labels, 3), tf.float32)) + 1
onehot_labels = tf.one_hot(labels, num_classes=5)
tf.contrib.losses.softmax_cross_entropy(logits, onehot_labels, weight=weight)
我用這三個隱藏層。在理論上我只需要在該示例中與含有重量柱的張量替換標籤上方。
我知道有幾個線程已經討論例如類似的問題defined loss function in tensorflow?
出於某種原因,我遇到了很多問題,試圖將我的權重列引入其中。這可能是兩行簡單的代碼,或者可能有更簡單的方法來實現相同的結果。
什麼問題?您應該描述它們幷包含相關的錯誤消息。 –
我想我找到了解決方案。問題是,權重我已經創建了不匹配的功能tensorflow: ValueError異常:權重不能播到值。在dim 0. values.shape = [3] weights.shape = [120]時失配。 ValueError異常:張量( 「添加:0」,形狀=(120,),D型細胞= INT32)必須從相同的曲線圖張量( 「fully_connected/BiasAdd:0」,形狀=(120,3),D型= FLOAT32)。 – Seb