<img alt="微笑" src="http://static.blog.csdn.net/xheditor/xheditor_emot/default/smile.gif" /><img alt="微笑" src="http://static.blog.csdn.net/xheditor/xheditor_emot/default/smile.gif" /><img alt="微笑" src="http://static.blog.csdn.net/xheditor/xheditor_emot/default/smile.gif" /><img alt="微笑" src="http://static.blog.csdn.net/xheditor/xheditor_emot/default/smile.gif" /><img alt="微笑" src="http://static.blog.csdn.net/xheditor/xheditor_emot/default/smile.gif" /><img alt="微笑" src="http://static.blog.csdn.net/xheditor/xheditor_emot/default/smile.gif" />
Here I want to deviate how to solve the soft threshold function.
for background introduction, please refer to this l1 introduction. Let's directly go into the objective function
g(t) = 0.5(t-t_0)^2+r|t|
with given t_0 and r, to determine t to make g(t) reach the minimal point.
the result is classic soft thresholding function:
when |t_0|>r, t=t_0-r*sign(t_0); when |t_0|<=r, t=0.
I know the result for long time, but still confused with the deviation process. But this time, I will make myself clear.......
(1) when t_0>=0, there is no reason to choose a negative t.
Because: if we choose a negative t', it must hold g(-t')<=g(t'). So g(t') is not the minimal point.
Thus, a positive t should be here. It then turns to be
g(t) = 0.5(t-t_0)^2+r(t) s.t. t_0>0 and t>0
it is very clear this is a simple parabola. its result is:
when t_0>r, t=t_0-r; when 0<=t_0<=r, t=0.
(2) when t_0< 0. the same deviation holds.
(3) get the above two scenario together, the soft thresholding function can be deduced.
Further work:
g(t) = 0.5(t-t_0)^2+r|t-a|+w|t-b|