diff DL/Majorization Minimization DL/wrapper_mm_DL.m @ 220:0d30f9074dd9

Merge
author luisf <luis.figueira@eecs.qmul.ac.uk>
date Wed, 11 Apr 2012 15:56:39 +0100
parents 4337e28183f1
children
line wrap: on
line diff
--- a/DL/Majorization Minimization DL/wrapper_mm_DL.m	Wed Sep 07 14:17:55 2011 +0100
+++ b/DL/Majorization Minimization DL/wrapper_mm_DL.m	Wed Apr 11 15:56:39 2012 +0100
@@ -1,4 +1,55 @@
 function DL = wrapper_mm_DL(Problem, DL)
+%% SMALL wrapper for Majorization Minimization Dictionary Learning Algorithm
+%
+%   Function gets as input Problem and Dictionary Learning (DL) structures 
+%   and outputs the learned Dictionary.
+%
+%   In Problem structure field b with the training set needs to be defined.
+%   
+%   In DL structure field with name of the Dictionary update method needs 
+%   to be present. For the orignal version of MM algorithm the update 
+%   method should be:
+%       -   'mm_cn'   Regularized DL with column norm contraint
+%       -   'mm_fn'   Regularized DL with Frobenius norm contraint
+%   Alternatively, for comparison purposes the following Dictioanry update
+%   methods (which do not represent the optimised version of the algorithm)
+%   be used:
+%       -   'mod_cn'   Method of Optimized Direction
+%       -   'map-cn'   Maximum a Posteriory Dictionary update
+%       -   'ksvd-cn'  KSVD update
+%
+%   The structure DL.param with parameters is also required. These are:
+%       -   solver           structure with fields toolbox, solver and parameters. 
+%                            For the original version of the algorithm toolbox
+%                            should be 'MMbox' and solver field should be left
+%                            empty ''. Type HELP WRAPPER_MM_SOLVER for more
+%                            details on how to set the parameters.
+%       -   initdict         Initial Dictionary
+%       -   dictsize         Dictionary size (optional)
+%       -   iternum          Number of iterations (default is 40)
+%       -   iterDictUpdate   Number of iterations for Dictionary Update (default is 1000)
+%       -   epsDictUpdate    Stopping criterion for MM dictionary update (default = 1e-7)                         
+%       -   cvset            Dictionary constraint - 0 = Non convex ||d|| = 1, 1 = Convex ||d||<=1
+%                            (default is 0)
+%       -   coherence        Set at 1 if to perform decorrelation in every iteration
+%                            (default is 0)
+%       -   show_dict        Show dictonary every specified number of iterations
+% 
+%
+%   -   MM-DL - Yaghoobi, M.; Blumensath, T,; Davies M.; , "Dictionary
+%   Learning for Sparse Approximation with Majorization Method," IEEE
+%   Transactions on Signal Processing, vol.57, no.6, pp.2178-2191, 2009.
+
+%
+%   Centre for Digital Music, Queen Mary, University of London.
+%   This file copyright 2011 Ivan Damnjanovic.
+%
+%   This program is free software; you can redistribute it and/or
+%   modify it under the terms of the GNU General Public License as
+%   published by the Free Software Foundation; either version 2 of the
+%   License, or (at your option) any later version.  See the file
+%   COPYING included with this distribution for more information.
+%%
 
 % determine which solver is used for sparse representation %