Чем эта пользовательская функция потерь отличается от "categoryorical_crossentropy" в Keras? - PullRequest
0 голосов
/ 09 января 2020

Мне нужна помощь в переписывании пользовательской функции потери Keras при условии следующего кода MATLAB:

function Y = L2normLoss(X, C)
    assert(numel(X) == numel(C));
    diff=X(:)-C(:);
    idx=find(abs(diff)<0.1);
    X(idx)=C(idx);    
    Y = sum((exp(C(:)).*(X(:)-C(:))).^2) ;  
end

Здесь X - это тензор, содержащий прогнозы из CNN и C - соответствующий тензор основной истинности (то есть гауссовская функция с максимальным значением = 1 в центре).

Пожалуйста, прокомментируйте , как эта функция потерь может вести себя иначе, чем встроенная функция Keras categorical_crossentropy потери для задачи обнаружения объекта (т. Е. Полиномиальная логистика c регрессия). Цель состоит в том, чтобы CNN был хорошо обучен на множестве входных патчей с центром в интересующем объекте.

...