Description Usage Arguments Value References See Also Examples
Solves a K-means SDP Relaxation using the FORCE algorithm when K is unknown.
1 | gforce.FORCE_adapt(D, force_opts = NULL, D_Kmeans = NULL, X0 = NULL)
|
D |
a matrix D as defined above. |
force_opts |
tuning parameters. |
D_Kmeans |
matrix to be used for initial integer solution. |
X0 |
initial iterate. |
An object with following components
Z_T
Final iterate of the projected gradient descent algorithm run on the smoothed eigenvalue problem.
B_Z_T
Projection of Z_T
to the border of the positive semi-definite cone.
B_Z_T_opt_val
Objective value of the K-means SDP relaxation at B_Z_T
.
Z_best
Iterate with best objective value found during projected gradient descent on the smoothed eigenvalue problem.
B_Z_best
Projection of Z_best
to the border of the positive semi-definite cone.
B_Z_best_opt_val
Objective value of the K-means SDP relaxation at B_Z_T
.
km_best
Best clustering in terms of objective value of the SDP relaxation. This is found by running a complete linkage clustering algorithm on the rows of the iterate Z_t
.
B_km
Partnership matrix corresponding to km_best
.
km_opt_val
Objective value of the K-means SDP relaxation at B_km
.
km_best_time
Time elapsed (in seconds) until km_best
was found.
dual_certified
1 if a dual certificate was found, and 0 otherwise.
dual_certified_grad_iter
Number of gradient updates performed before a dual certificate was found.
dual_certified_time
Time elapsed (in seconds) until dual certificate was found for B_km
.
grad_iter_best
Gradient iteration where Z_best
was computed.
grad_iter_best_time
Time elapsed (in seconds) when the update grad_iter_best
was performed.
total_time
Total time elapsed (in seconds) during call to gforce.FORCE
.
C. Eisenach and H. Liu. Efficient, Certifiably Optimal High-Dimensional Clustering. arXiv:1806.00530, 2018.
J. Peng and Y. Wei. Approximating K-means-type Clustering via Semidefinite Programming. SIAM Journal on Optimization, 2007.
J. Renegar. Efficient first-order methods for linear programming and semidefinite programming. arXiv:1409.5832, 2014.
1 2 3 4 5 6 7 8 | K <- 5
n <- 50
d <- 50
dat <- gforce.generator(K,d,n,3,graph='scalefree')
sig_hat <- (1/n)*t(dat$X)%*%dat$X
gam_hat <- gforce.Gamma(dat$X)
D <- diag(gam_hat) - sig_hat
res <- gforce.FORCE_adapt(D)
|
Add the following code to your website.
For more information on customizing the embed code, read Embedding Snippets.