我想实现决策边界的公式T=Log( f ( x | client) ) – Log( f ( x | impostor) )。我的训练和测试特征是20*12的。我已经应用了voicebox MATLAB工具箱。我编写了以下MATLAB代码:
if max(lp_client)- max(lp_impostor) >0.35 disp('accept');else disp('reject');end
我应该使用对数概率的平均值还是最大值?
回答:
由于估计的概率性质,你应该使用lp_client的总和。如果你有一系列独立事件(在这种模型中通常假设特征独立),其概率是每个事件概率的乘积:
P (Seq | X ) = P(feat1 | x) * P(feat2 | X) …
或者在对数域中
logP (Seq | X) = logP (feat1 | x) + logP(feat2 | X)
所以实际上
logP ( x | client) = sum (lp_client)
和
logP(x | impostor) = sum (lp_impostor)