⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 kl_dirichlet.m

📁 LDA matlab code efficient and robust
💻 M
字号:
function D = KL_Dirichlet( q, p ) %% D = KL_Dirichlet( q, p ) %% compute KL divergence D( q || p ) of Dirichlet distributions q and P%% J.J. Verbeek, INRIA Rh檔e-Alpes, 2006.%% q.dp (T x N)% q.el (T x N)% p (T x M)% D (N x M)%[T1, N] = size(q.dp);[T2, M] = size(p);if T1 ~= T2; fprintf('--> Dirichlet KL cannot be computed: distributions of different dimensionalities...\n'); D=[]; return;endq0 = sum(q.dp, 1);p0 = sum(p, 1);Gq = gammaln(q.dp);Gp = gammaln(p);t1 = repmat( gammaln( q0 )', 1, M ) - repmat( gammaln( p0 ) , N, 1 ); t2 = repmat( sum( Gp, 1 )  , N ,1 ) - repmat( sum( Gq, 1 )' , 1, M ); t3 = repmat( sum( q.dp .* q.el, 1 )', 1, M )  ;t3 = t3 - q.el' * p;           D = t1 + t2 + t3;

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -