CMP in MPTK: Second Results and Second Thoughts

Below are our test signals.


The image below is from my paper on CMP with time-frequency dictionaries. Here we can compare for the test signals above the performance of several decomposition algorithms with respect to residual energy decay.
The dictionary involved has modulated Gaussian windows with scales = [1 4 8 16 32 64 128 256 512] and hops = [1 2 2 4 8 16 32 64 128], respectively.

Running the same decompositions (with the same dictionary) with our implementation of CMP in MPTK, however, produces the following residual energy decays. The \(l\) parameter is the number of refinement cycles between each model augmentation. When \(l=0\) we have MP — which these plots show is ok. However, we see a disturbing increase in residual energy for Bimodal. When properly implemented, CMP should never increase the residual energy in any augmentation or refinement step. Furthermore, I expect in general the \(l=1\) line to be closest to the performance of MP; and the \(l=10\) to be furthest. We do not see that here. (At least the MP decays match those above.)

Just out of curiosity, I ran the same tests with a dictionary composed of atoms of one scale. Below we see results that are much more sane, but something still doesn’t look right to me.

I am running these same tests using my CMP MATLAB implementation. (The results from my Asilomar 2010 paper above only use \(l=10\).) But these simulations are taking forever! (I see when \(l=1\), CMP converges to a residual energy of -60 dB at iteration 54.) Even if it is wrong, CMPTK runs much faster.

Tomorrow will be spent debugging.


Leave a Reply

Fill in your details below or click an icon to log in: Logo

You are commenting using your account. Log Out / Change )

Twitter picture

You are commenting using your Twitter account. Log Out / Change )

Facebook photo

You are commenting using your Facebook account. Log Out / Change )

Google+ photo

You are commenting using your Google+ account. Log Out / Change )

Connecting to %s