2016-12-21 3 views

답변

2

간단한 곱셈입니다. 샘플에 의한 손실은 샘플 무게에 의해 확대됩니다. i = 1 to n 샘플, 샘플 무게 길이 nw의 웨이트 벡터를 가정하면, 시료 i 대한 손실 L_i로 표시된다 :

특히 Keras에서 enter image description here

, 그 중량과 각 시료의 손실의 생성물 인 일괄 처리 당 손실이 0보다 큰 가중치 수에 비례하도록 0이 아닌 가중치로 나눈 값입니다. p을 0이 아닌 가중치의 비율이라고합시다.

enter image description here

여기 Keras의 REPO의 코드 관련 코드 조각입니다 :

score_array = loss_fn(y_true, y_pred) 

if weights is not None: 
    score_array *= weights 
    score_array /= K.mean(K.cast(K.not_equal(weights, 0), K.floatx())) 

return K.mean(score_array) 

class_weightsample_weight와 같은 방식으로 사용됩니다; 전체 클래스에 특정 가중치를 지정하는 편의를 제공하기 만하면됩니다.

샘플 가중치는 현재 메트릭에 적용되지 않고 손실 만 적용됩니다.

관련 문제