| RSAVS_Compute_Loss_Value | R Documentation |
This function computes objective function's value for the ADMM algorithm.
RSAVS_Compute_Loss_Value(
y_vec,
x_mat,
l_type = "L1",
l_param = NULL,
p1_type = "S",
p1_param = c(2, 3.7),
p2_type = "S",
p2_param = c(2, 3.7),
const_r123,
const_abc,
beta_vec,
mu_vec,
z_vec,
s_vec,
w_vec,
q1_vec,
q2_vec,
q3_vec
)
y_vec |
numerical vector of response. n = length(y_vec) is the number of observations. |
x_mat |
numerical matrix of covariates. Each row for one observation and
|
l_type |
character string, type of loss function.
Default value is "L1". |
l_param |
numeric vector containing necessary parameters of the corresponding loss function.
The default value is |
p1_type, p2_type |
a character indicating the penalty types for subgroup identification and variable selection.
Default values for both parameters are "S". |
p1_param, p2_param |
numerical vectors providing necessary parameters for the corresponding penalties.
Default values for both parameters are |
const_r123 |
a length-3 numerical vector, providing the scalars needed in the augmented lagrangian part of the ADMM algorithm |
const_abc |
a length-3 numeric vector, providing the scalars to adjust weight
of regression function, penalty for subgroup identification and penalty for
variable selection in the overall objective function. Defaults to |
beta_vec, mu_vec, z_vec, s_vec, w_vec, q1_vec, q2_vec, q3_vec |
variables needed in the objective function |
The augmented lagrangian objective function for the ADMM algorithm contains
regression part, 1 / const_a * sum(rho(z_vec)), where rho is
the loss function. Refer to loss_function for more details.
subgroup analysis part, const_b * sum(P_1(s_vec)).
variable selection part, const_c * sum(P_2(w_vec)).
augmented part1:
r_1 / 2 * norm(y_vec - mu_vec - x_mat * beta - z_vec) ^ 2 + inner_product(y_vec - mu_vec - x_mat * beta - z_vec, q1_vec)
augmented part1:
r_2 / 2 * norm(D_mat * mu_vec - s_vec) ^ 2 + inner_product(D_mat * mu_vec - s_vec, q2_vec)
augmented part1:
r_3 / 2 * norm(beta_vec - w_vec) ^ 2 + inner_product(beta_vec - w_vec, q3_vec)
a list containing
loss: overall loss value
loss_part1: loss value from regression part
loss_part2: loss value from subgroup analysis part
loss_part3: loss value from variable selection part
loss_aug1: loss value from augmented part1
loss_aug2: loss value from augmented part2
loss_aug3: loss value from augmented part3
diff_z: difference between z_vec and y_vec - mu_vec - x_mat %*% beta_vec
diff_s: difference between s_vec and d_mat %*% mu_vec
diff_w: difference between w_vec and beta_vec
for "L2" loss, the z_vec could be eliminated, but currently this
is not implemented.
loss_function
Add the following code to your website.
For more information on customizing the embed code, read Embedding Snippets.