Suppose we got several centers {C1(d1, d2...dn), C2...} with training samples according to spectral clustering algorithm. If a new test sample vector (x1, ... xn) is given, what should I do to get it into a class?
Note that, the similarity matrix we used in spectral clustering process is not only based on Euclidean distance between training vecto开发者_运维问答rs but geodesic distance. So the distance can not be calculated with just two vectors, and the class center is not so easy to get as what we can in K-means.
One solution I have got is k-nearest neighbour algorithm. Are there any other solutions?
In the case of spectral clustering, the result is not updatable in that if you add another instance/vector, you will have to repeat the whole process by recomputing the affinity/laplacian matrix, performing eigen-decomposition, then clustering the rows of the reduced matrix.
精彩评论