Mercurial > hg > silvet
changeset 29:6a80e0cb2c94
Notes
author | Chris Cannam |
---|---|
date | Tue, 01 Apr 2014 17:01:56 +0100 |
parents | cd9fd74931bb |
children | d697e78f81f1 |
files | notes/cplcaMT-annotated.m |
diffstat | 1 files changed, 8 insertions(+), 4 deletions(-) [+] |
line wrap: on
line diff
--- a/notes/cplcaMT-annotated.m Mon Mar 31 17:21:51 2014 +0100 +++ b/notes/cplcaMT-annotated.m Tue Apr 01 17:01:56 2014 +0100 @@ -254,7 +254,14 @@ xbar = x ./ xa; xbar = eval( flz); - %% xbar now contains the result of Eqn 8 in the CMJ paper, Pt(p,f,s|w) + %% xbar now contains the summation of Eqn 8 in the CMJ paper, i.e. + %% it is a time-frequency distribution consisting of the + %% five-dimensional distribution Pt(p,f,s|w) summed across p, f, + %% and s. In the M step, for each parameter we want to update, we + %% take the same five-dimensional distribution and marginalise it + %% across the other parameters that that one does not depend on. + %% The M-step is a bit tricky for me to follow here, with the + %% convolution and use of MATLAB eval macros. fx = fftn( xbar, wc); @@ -288,11 +295,8 @@ nhu = eval( fnh); %% more magic - %% h{k} is 5x100, I'd expect this to be 100x5, I must - %% have got something transposed somewhere nhu = nhu .* h{k}; - %% so I guess this is xbar-for-all-w-for-all-h? nu = sum(nhu)'; nu = u{r,k} .* nu + eps; if lu