Dictionary Learning¶
The dictlrn.dictlrn
module includes the DictLearn
class that supports dictionary learning via alternation between
user-specified sparse coding and dictionary update steps, each of
which is based on an ADMM algorithm. This is a very flexible framework
that supports constucting a wide variety of dictionary learning
algorithms based on the different sparse coding and dictionary update
methods provided in SPORCO; some examples are provided below.
The standard dictionary learning classes in dictlrn.bpdndl
and
the convolutional dictionary learning classes in
dictlrn.cbpdndl
and dictlrn.cbpdndlmd
are both derived
from DictLearn
. These two classes provide less flexibility
– the sparse coding methods are fixed – but are somewhat simpler to
use.
A usage example is available.