Keras Loss Function, какую использовать? - PullRequest
0 голосов
/ 04 февраля 2019

Я реализую версию Keras для задачи глубокого обучения, в которой мне нужно обнаружить полосы, т.е. белую краску, определяющую полосы на данной дороге.Для этого я сгенерировал 'logits' в качестве результата созданной мной модели декодера, которая получается из

#Decoder 
score_5 =  Conv2D(64, kernel_size = (1, 1), strides = (1,1), padding='same', use_bias = False)(max_pool5)

deconv = Conv2DTranspose(64, kernel_size = (4,4), strides=(2,2), use_bias = False)(score_5)
score_4 = Conv2D(64, kernel_size = (1, 1), strides = (1,1), padding='same', use_bias = False)(max_pool4)
fused = keras.layers.Add()([score_4, deconv])
deconv = Conv2DTranspose(64, kernel_size = (4,4), strides=(2,2), use_bias = False)(fused)
score_3 = Conv2D(64, kernel_size = (1, 1), strides = (1,1), padding='same', use_bias = False)(max_pool3)
fused = keras.layers.Add()([score_3, deconv])

deconv_final = Conv2DTranspose(64, kernel_size = (16,16), strides=(8,8), use_bias = False)(fused)

score_final = Conv2D(2, kernel_size = (1, 1), strides = (1,1), padding='same', use_bias = False)(deconv_final)

Теперь я хочу скомпилировать модель, используя функцию API model.compile в Keras compile(optimizer, loss=None, metrics=None, loss_weights=None, sample_weight_mode=None, weighted_metrics=None, target_tensors=None) для подгонки данных и использования эквивалента Keras для следующей функции потери тензорного потока:

binary_segmenatation_loss = tf.losses.sparse_softmax_cross_entropy(
            labels= binary_label, logits= score_final, weights=inverse_weights)

где метки - это двоичные данные наземной истинности с полосами в виде белого и остальных пикселей изображения в черном цвете, но я не уверенкак использовать то же самое в керасе т.е. потерю логитов?

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...