📄 loglikegmm.m
字号:
function [loglike, pmat] = loglikeGMM(X, mus, sigmas, weights);
% 措阿 啊快矫救狼 雇胶媚俊 措茄 X狼 阿 单捞磐 氦磐狼 肺弊 快档甫 府畔茄促.
% 肚茄 阿 雇胶媚 己盒苞 单捞磐 痢俊 措茄 俺喊 胶内绢牢 ( p(x_n|m)c_m )甫
% 器窃窍绊 乐绰 M*numpoints 青纺阑 府畔茄促.
%
% 涝仿 牢磊 :
% X : 青捞 d-瞒盔牢 漂隆 氦磐甸牢 单捞磐 青纺捞促.
% mus : d*M 青纺肺 弊 青篮 雇胶媚 己盒俊 措茄 乞闭 氦磐.
% sigmas : d*M 青纺肺 弊 青篮 雇胶媚 去钦 己盒俊 措茄 盒魂 氦磐.
% weights : M-瞒盔 氦磐肺 雇胶媚 啊吝摹.
%
% 免仿 牢磊 :
% loglike : 肺弊-快档蔼狼 凯 氦磐.
% pmat : 困俊辑 汲疙茄巴苞 鞍篮 胶内绢等 雇胶媚 己盒狼 青纺.
[d,numpoints] = size(X);
M = length(weights);
if (abs(sum(weights) - 1) < 0.01) == 0
error('trainGMM: Weights should sum to 1!');
end
if ((size(mus) == [d,M]) & (size(sigmas) == [d,M])) == 0
error('Incompatible dimensions!');
end
for n = 1:numpoints
for m = 1:M
pmat(m,n) = weights(m)*gauss_pdf(X(:,n),mus(:,m),diag(sigmas(:,m)));
end
end
if M > 1
loglike = log(sum(pmat));
else
loglike = log(pmat);
end
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -