def create(**kwargs): A, b = problem_util.create_classification(**kwargs) lam = 1 x = cp.Variable(A.shape[1]) f = ep.hinge_loss(x, A, b) + lam * cp.sum_squares(x) return cp.Problem(cp.Minimize(f))
def create(**kwargs): A, b = problem_util.create_classification(**kwargs) lam = 1 x = cp.Variable(A.shape[1]) f = ep.hinge_loss(x, A, b) + lam*cp.sum_squares(x) return cp.Problem(cp.Minimize(f))
def create(**kwargs): A, b = problem_util.create_classification(**kwargs) ratio = float(np.sum(b == 1)) / len(b) lambda_max = np.abs((1 - ratio) * A[b == 1, :].sum(axis=0) + ratio * A[b == -1, :].sum(axis=0)).max() lam = 0.5 * lambda_max x = cp.Variable(A.shape[1]) f = ep.logistic_loss(x, A, b) + lam * cp.norm1(x) return cp.Problem(cp.Minimize(f))
def create(**kwargs): A, b = problem_util.create_classification(**kwargs) m = kwargs["m"] n = kwargs["n"] sigma = 0.05 mu = kwargs.get("mu", 1) lam = 0.5 * sigma * np.sqrt(m * np.log(mu * n)) x = cp.Variable(A.shape[1]) f = ep.hinge_loss(x, A, b) + lam * cp.norm1(x) return cp.Problem(cp.Minimize(f))
def create(**kwargs): A, b = problem_util.create_classification(**kwargs) m = kwargs["m"] n = kwargs["n"] sigma = 0.05 mu = kwargs.get("mu", 1) lam = 0.5*sigma*np.sqrt(m*np.log(mu*n)) x = cp.Variable(A.shape[1]) f = ep.hinge_loss(x, A, b) + lam*cp.norm1(x) return cp.Problem(cp.Minimize(f))
def create(**kwargs): A, b = problem_util.create_classification(**kwargs) ratio = float(np.sum(b==1)) / len(b) lambda_max = np.abs((1-ratio)*A[b==1,:].sum(axis=0) + ratio*A[b==-1,:].sum(axis=0)).max() lam = 0.5*lambda_max x = cp.Variable(A.shape[1]) f = ep.logistic_loss(x, A, b) + lam*cp.norm1(x) return cp.Problem(cp.Minimize(f))