the update for dV should be (in the paper) dV = g(-f[j])*U[i]-lbda*V[j] but in the code, it is dV = g(-f[j])-lbda*V[j] So why?