0
我目前正在使用FCN進行2級分割,並遇到一個奇怪的問題,即使用內置的mean_iou函數運行但不會產生任何損失。Tensorflow tf.metrics.mean_iou沒有產生損失,交叉熵工作正常
如果我將mean_iou保存爲摘要度量,模型運行良好,我可以看到IOU輸出保持爲0;但是,如果我嘗試將它用作損失優化器,它會產生一個錯誤,無法生成漸變(根據我的結果,這是有道理的,但我不確定它爲什麼不起作用)。
我已經初始化我的本地和全局變量(用其他的東西本地變量和他們工作的罰款),我的輸入都是整數,形狀像這樣:
(我也已經試過壓扁[批次x H x W,2])
y_truth = [batch, H, W, 2] (one-hot encoded)
logits = [batch, H, W, 2]
IOU, up_op = tf.metrics.mean_iou(
labels = argmax(y_truth, axis=3),
predictions = argmax(logits, axis=3),
num_classes = 2)
注意:我的y_truth上的argmax不會影響其整體輸出。
任何想法?我使用交叉熵(通過分段輸出確認)獲得了很好的結果,所以我知道模型正常工作。謝謝!