def l1_pernalized_loss_function(A, b, x): """ Frobenius + l1 penalty """ return .5 * linalg.norm(np.dot(A, x) - b)**2 + lambd * l1(x)
def l1_pernalized_loss_function(A, b, x): """ Frobenius + l1 penalty """ return .5 * linalg.norm(np.dot(A, x) - b) ** 2 + lambd * l1(x)
def tv_plus_l1_pernalized_loss_function(A, b, x): """ Frobenius + TV penalty + l1 penalty """ return .5 * linalg.norm(np.dot(A, x) - b)**2 + alpha * (rho * tv(x) + (1 - alpha) * l1(x))
def tv_plus_l1_pernalized_loss_function(A, b, x): """ Frobenius + TV penalty + l1 penalty """ return .5 * linalg.norm(np.dot(A, x) - b) ** 2 + alpha * ( rho * tv(x) + (1 - alpha) * l1(x))
def fg_with_l1_penalty(x): z = np.dot(A, x) - b return (.5 * linalg.norm(z)**2 + lambd * l1(x), np.dot(A.T, z) + lambd * grad_l1(x))
def fg_with_l1_penalty(x): z = np.dot(A, x) - b return (.5 * linalg.norm(z) ** 2 + lambd * l1(x), np.dot(A.T, z) + lambd * grad_l1(x))