1

我想爲決策邊界實現T = Log(f(x | client)) - Log(f(x | impostor))。我的訓練和測試功能是20 * 12。 我已經應用了語音盒matlab工具箱。我寫下面的MATLAB代碼:使用高斯混合模型進行二進制分類

if max(lp_client)- max(lp_impostor) >0.35 
    disp('accept'); 
else 
    disp('reject'); 
end 

我應該使用Log對數的概率還是Log對數的最大值?

+0

問題標題與內容相比太寬泛。 – minerals 2016-02-15 15:23:38

回答

2

由於估計的概率性質,您應該使用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)

and

logP(x |冒充者)=總和(lp_impostor)

+0

感謝您的迴應,如果我想用1024混合物構建通用背景模型(UBM),我應該像下面的代碼那樣通過1 GMM中的所有特徵來訓練GMM嗎? 'UBM = [training_features1; ...; training_features1024]''[m_ubm,v_ubm,w_ubm] = gaussmix(UBM,[],No_of_Iterations,No_of_Clusters); ' – 2013-03-18 02:34:28

+0

是的,你可以這樣做 – 2013-03-18 17:12:17