机器学习 - 交叉熵Cross Entropy
1. 二值交叉熵 Binary Cross Entropy
假设训练数据 D={ (x1,y1),(x2,y2),...,(xn,yn)} D = { ( x 1 , y 1 ) , ( x 2 , y 2 ) , . . . , ( x n , y n ) } ,
其中
x∈Rn x ∈ R n - 训练样本, 如图片;
y∈{ 0,1} y ∈ { 0 , 1 } - 标签labels, 只有 0 和 1, 二值分类问题.
假设已经有训练模型 f(x,θ) f ( x , θ ) , 在给定 x x 时, 输出 的概率. f(x,θ) f ( x , θ ) 是深度 CNN 模型或传统机器学习模型, θ θ 是模型参数.
基于 最大似然(Maximum Likelihood) 思想, 其目的是为了寻找能够最大化 P(D|θ) P ( D | θ ) 的参数 θ θ .
假设数据服从伯努利分布(Bernoulli distribution), 且 { (x1,y1),(x2,y2),...,(xn,yn)} { ( x 1 , y 1 ) , ( x 2 , y 2 ) , . . . , ( x n , y n ) } 相互独立, 则有:
P(D|θ)=∏ni=1f(xi,θ)yi⋅(1−f(xi,θ))(1−yi) P ( D | θ ) = ∏ i = 1 n f ( x i , θ ) y i ⋅ ( 1 − f ( x i , θ ) ) ( 1 − y i ) (1)
取 log,
logP(D|θ)=log(∏ni=1f(xi,θ)yi⋅(1−f(x