yilog(yi)
log(0)log(yi+ϵ)
Hy′(y):=−∑iy′ilog(yi)
Hy′(y):=−∑i(y′ilog(yi)+(1−y′i)log(1−yi))
(a) верно для предсказания с несколькими классами (на самом деле это двойное суммирование), (b) такое же, как (a) для предсказания с двумя классами. Оба кросс-энтропии.
Пример:
xic′i∈{0,1}ci∈[0,1]
c′ici
(c′i,ci)={(0,0.1),(0,0.4),(0,0.8),(1,0.8),(1,0.2)}
y′iyi
(y′i,yi)
(y′i,yi)={([1,0],[0.9,0.1]), ([1,0],[0.6,0.4]), ([1,0],[0.2,0.8]), ([0,1],[0.2,0.8]), ([0,1],[0.8,0.2])}
Оба (а) и (б) рассчитываются как:
Hy′(y)=−1/5([log(0.9)+log(0.6)+log(0.2)]ci=0+[log(0.8)+log(0.2)]ci=1)=0.352
Вывод:
1K
(xi,c′i)c′i=ky′i=[0,..,1,0,..]kthy′ik=1yik=p(k|xi)(xi,k)−log(yik)yik→1⇒−log(yik)→0
L(y′i,yi)=−∑Kk=1y′iklog(yik)
y′ik=1k′≠k0log(yik′)=0y′im=1
L(y′i,yi)=−log(yim)
Окончательная формула по всем тренировочным точкам:
Hy′(y)=−∑(xi,y′i)∑Kk=1y′iklog(yik)
y′i0=1−y′i1yi0=1−yi1
Hy′(y)=−∑(xi,y′i)y′i1log(yi1)+y′i0log(yi0)=−∑(xi,y′i)y′i1log(yi1)+(1−y′i1)log(1−yi1)
который такой же, как (б).
Кросс-энтропия (а) над классами (одно суммирование)
Кросс-энтропия (а) над классами:
Hy′(y)=−∑Kk=1y′klog(yk)
Эта версия не может быть использована для задачи классификации. Позволяет повторно использовать данные из предыдущего примера:
(c′i,ci)={(0,0.1),(0,0.4),(0,0.8),(1,0.8),(1,0.2)}
y′0=3/5=0.6y′1=0.4
y0=3/5=0.6y1=0.4
−y′0logy0−y′1logy1=−0.6log(0.6)−0.4log(0.4)=0.292
(0,0.8)(1,0.2)y′0y′1
(c′i,ci)={(0,0.1),(0,0.4),(0,0.2),(1,0.8),(1,0.8)}
y′0y0=3/5