I am involved with SSL using graphs. In that context I am trying to tackle some optimization problems using the eigenvalues and eigenvectors of the graph Laplacian as the optimization arguments. Simply
L graph Laplacian satisfies,
L_i_j <= 0 if i \neq j
L = L'
L * ones = zeros (centered)
its eigendecomposition L = U*W*U' satisfies,
W_i_i >= 0
U*U' = eye (Stiefel)
My question: Is it possible to define the following manifold to optimize on using MANOPT?
Given matrix U and diagonal matrix W as optimization arguments
(1) U*U' = eye
(2) W_i_i >= 0
(3) (U*W*U') * ones = zeros
(4) [U*W*U']_i_j <= 0
I have a feeling that (3) and (4) can cause problems.
Anyway, so sorry for such a sloppy question
Best Regards,
Thanks for your accommodating response,
(1) "At a higher level, do I understand it right that you would like to optimize over the set of Laplacians, and be allowed to express your cost function in terms of U and W for that Laplacian?" : Exactly correct, my cost function contains graph Wavelet-like terms U*g((W-a)/k)*U'.
(2) "I'm assuming you want connected graphs." : Not really but as a first step I am completely fine with having only one 0 valued eigenvalue. (In practice, I may have more than one)
(3) Dealing with adjacency matrix is not very desirable as I will be dealing with spectral terms.
(4) "An alternative would go along these lines perhaps:
U could live in the set of orthogonal matrices of size n whose last column is constant (code would be inspired from stiefelfactory; it may be more convient to force the first column to be constant if we use QR--technical detail).
W could be a diagonal matrix of size n with first diagonal entry equal to 0, and the remaining n-1 diagonal entries positive (similar to the positivefactory)." : This is definitely more like what I am looking for but I cannot follow two points
(4.i) Do given U and W imply centrality(L*1=0)?
(4.ii) Do given U and W imply non-diagonal terms of L being non-positive?
(A valid Laplacian implies given U and W, but I am not sure about the otherway around)
(5) "This would lead to some invariances, in that graphs can be represented with more than one pair (U, W), but that's not necessarily an issue.": Yup, as long as I end up with a valid graph, I do not care about unique representations
(6) SSL, is semisupervised learning. We are estimating a function defined on the nodes of the graph, using very few measurements on a handful nodes and graph topology itself. I am hoping to devise a method to estimate desired functions while learning a compatible graph topology at the same time.
(7) "Out of curiosity, could you detail what kind of problems and cost functions you have in mind, and any relevant references?": Basically something like this:
min_{U_2, W_2}{L2norm((U_1*g(W_1)*U_1')*S1 - (U_2*g(W_2)*U_2')*S2)}
g is a function defined on the vector of N eigenvalues to (Real numbers ^ N)
S1 and S2 are selection matrices
Thank you very much for reply and kindness,
Rather than small complexity gains, optimizing using U and V is easier to interpret in some extremely vague ( :) ) regards.
Let me take a step back, if I were to use adjacency matrix directly, symmetricfactory(n) would be enough as the Laplacian removes self loops, however, as a learning example how can I add 0 diagonal to this setting, as you have previously mentioned before?
Best Regards,
Your base space would be euclideanfactory(n, n); your projector would extract the symmetric part of its input, and zero out the diagonal. Check the help of that factory, it's rather explicit.
There's still an issue though: this doesn't enforce nonnegativity of the entries.. You could conceivably add penalties in your cost function for this (nonsmooth, or a smoothed version), and/or you could try an augmented Lagrangian approach. Since your base space is now linear, there are no manifold-specific things to worry about.