I'm currently implementing coordinate descent for the LASSO with complex-valued data. For this, one needs a complex version of the soft-thresholding operator, which seems hardly available on the net.

For real-valued data, the definition of the soft-thresholding operator is given in the famous paper of Friedmann, Hastie und Tibshirani, Regularization Paths for Generalized Linear Models via Coordinate Descent, as \begin{aligned} S(z, \lambda) \ = \ \text{sign}(z)\, (|z|-\gamma)_+ \qquad \text{for } z, \, \gamma\in \mathbb R. \end{aligned}

From this, I think it is straightforward to extend it to the complex domain as \begin{aligned} S(z, \lambda) \ = \ e^{i\,\text{arg}(z)} \,(|z|-\gamma)_+ \qquad \text{for } z\in \mathbb C, \, \gamma \in \mathbb R.\\ \end{aligned}

Is this complex-version of the soft-thresholding operator correct?

From a geometric view, this extension seems obvious: all one does is to rotate the real soft-thresholding curve into the complex domain, as visualized in the following picture, which shows the penalization of the radial part for $S(z,5)$:

enter image description here

  • $\begingroup$ Check this paper for details... Single-snapshot DoA estimation using adaptive elastic net in the complex domain $\endgroup$ – MNTabassum Nov 1 '18 at 5:39
  • $\begingroup$ Thanks for your answer. From your nickname you seem to be one of the authors of the paper, so could you please elaborate your answer a bit? Link-only answers are discouraged here (even more because your link does not work), and this is probably the reason why some other guy voted -1 ... which I compensated by my +1 :-) $\endgroup$ – davidhigh Nov 1 '18 at 6:37
  • $\begingroup$ For completeness: The approach in the paper is basically the same than in my question (with the only difference that the case $z=0$ is further explicitly set to zero). $\endgroup$ – davidhigh Nov 1 '18 at 22:59

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service, privacy policy and cookie policy

Browse other questions tagged or ask your own question.