Я работаю в semanti c Сегментация была вдохновлена статьей Алекса Кендалла Se gnet Я нашел реализацию здесь link , с: Input (rgb) shape = (batch_size, width) , height, 3) Выходная (горячая) форма = (batch_size, width, height, n_classes)
количество выходных классов равно 12.
Я пытался использовать взвешенную категориальную кроссентропию Функция потерь, так как у меня есть мой оптимальный вектор весов, как показано ниже:
def weighted_categorical_crossentropy(weights):
# weights = [0.9,0.05,0.04,0.01]
def wcce(y_true, y_pred):
Kweights = K.constant(weights)
if not K.is_tensor(y_pred): y_pred = K.constant(y_pred)
y_true = K.cast(y_true, y_pred.dtype)
return K.categorical_crossentropy(y_true, y_pred) * K.sum(y_true * Kweights, axis=-1)
return wcce
, это сработало для меня, я не получаю ошибок, но результат потерь и точности одинаков. правильно ли использовать weighted_categorical_crossentopy.