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.