This function generates all the intermediate quantities based on the tree-guided reparameterization.
get_tree_object(
X_2,
treemat,
penalty = c("CL2", "DL2", "RFS-Sum"),
group.weight = NULL,
feature.weight = NULL
)A list consists of quantities needed for SPG optimization.
C_1 matrix for generalized lasso penalty.
Nuclear norm of matrix C_1.
C_2 matrix for group lasso penalty.
Nuclear norm of matrix C_2.
A (number-of-leaf * number-of-node) binary matrix containing linear constraints.
Recall that \(\beta=A\gamma\).
It is used with beta.coef and x.expand.
A (number-of-group * 3) matrix.
Each column stands for starting row in C_2 of a group,
end row in C_2 of a group, and the group size.
A (number-of-leaf * number-of-level) node index matrix, with index going from 1 to the number of nodes. Root node has index equal to the number of nodes. Each row corresponds to a variable at the finest level, each column corresponds to an ordered classification level; the entry values in each column are the unique indices of the variables at that level. As we move to the right, the number of unique values becomes fewer.
A (number-of-group * number-of-node) group index matrix. Each row is a group and the column order is the same as the order of node index in M2. If the jth node belongs to the ith group, then the (i, j) element of the matrix is 1; otherwise the element is 0.
A (number-of-leaf * number-of-node) binary matrix
containing linear constraints.
It is used with beta.coef.adj and x.expand.adj.
Expanded design matrix for penalty = "CL2";
Original design matrix
for penalty = "RFS-Sum". Need to be in the matrix form.
Expanded tree structure for
penalty = "CL2"; Original structure for penalty = "RFS-Sum".
Need to be in the matrix form.
Two options for group penalty on \(\gamma\), "CL2" or "RFS-Sum".
User-defined weights for group penalty. Need to be a vector and the length equals to the number of groups.
User-defined weights for each predictor after expansion.