Пользовательские потери для Deeplab

Я хотел добавить пользовательские потери для Deeplab v3, которые будут работать не для одной метки горячего кодирования, а для прогнозирования значимости. Таким образом, вместо реализации потери Deeplab, которую вы видите ниже:

label = tf.to_int32(label > 0.2)
one_hot_labels = slim.one_hot_encoding(label, num_classes, on_value=1.0, off_value=0.0)
tf.losses.softmax_cross_entropy(one_hot_labels, logits)

Я использовал эту реализацию:

softmax = tf.log(tf.nn.softmax(logits))
cross_entropy = -tf.reduce_sum(label*softmax, reduction_indices=[1])
tf.losses.add_loss(tf.reduce_mean(cross_entropy))

Обучил ~1000 эпох с 5 изображениями и получил такой результат:

  • Введите упрощенное изображение с отступом -
  • Наземные ярлыки правды -
  • Пользовательский результат потери] (
  • Кросс-энтропия с использованием одного горячего результата кодирования -

Кроме того, пробовал несколько курсов обучения, но это не меняет результат для пользовательской потери.

0 ответов

Другие вопросы по тегам