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

📄 vbem.m

📁 使用变分EM方法实现的LDA文本模型 输入为文本即可 分解实现
💻 M
字号:
function [alpha,q] = vbem(d,beta,alpha0,emmax)% [alpha,q] = vbem(d,beta,alpha0,[emmax])% calculates a document and words posterior for a document d.% alpha  : Dirichlet posterior for a document d% q      : (L * K) matrix of word posterior over latent classes% d      : document data% alpha0 : Dirichlet prior of alpha% emmax  : maximum # of VB-EM iteration.% $Id: vbem.m,v 1.5 2004/11/08 12:42:18 dmochiha Exp $if nargin < 4  emmax = 20;endl = length(d.id);k = length(alpha0);q = zeros(l,k);nt = ones(1,k) * l / k;pnt = nt;for j = 1:emmax  % vb-estep  q = mnormalize(beta(d.id,:) * diag(exp(psi(alpha0 + nt))),2);  % vb-mstep  nt = d.cnt * q;  % converge?  if (j > 1) && converged(nt,pnt,1.0e-2)    break;  end  pnt = nt;endalpha = alpha0 + nt;

⌨️ 快捷键说明

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