To learn more about dictionary learning, I am currently trying to understand the concept in detail and to do so, I've found the following paper quite informative:

KSVD: an algorithm for designing overcomplete dictionaries for sparse representation

I have a few questions:

  • does the jth column of D (the overcomplete dictionary) correspond to the jth row of X or its transpose? (where $Y=DX$, Y is our data/signals; D is the dictionary; X is the sparse represenation of signals) So we do work on the transpose of X and not the matrix X itself? Why the notation $x_T ^K$ is used and not $x_K ^T$ ?
  • somewhere in the middle, they suggest to initialize $w_k$ which defines as follows: $$w_k=\{i|1 \leq k \leq K: w_k(i) \neq 0\}$$ is defining this variable necessary in spite of the fact that we will define another variable afterwards. $\Omega _k$ is a matrix of size $N$ (number of signals (Y)) $\times |w_k|$ where it is one for $w_k(i)$ and zero otherwise. why do we need to define $w_k$?

Browse other questions tagged or ask your own question.