FTP__recifslve

所属分类:数学计算
开发工具:matlab
文件大小:11KB
下载次数:0
上传日期:2018-11-14 12:01:58
上 传 者Quettrq
说明:  Fei Sha 等人编写的流形学习算法CCA的matlab代码,它基于MVU算法,但是计算速度比较慢
(The matlab code of CCA, a manifold learning algorithm written by Fei Sha et al., is based on the MVU algorithm, but the computation speed is relatively slow.)

文件列表:
ZT2cca\mexCCACollectData.c (7563, 2006-08-18)
ZT2cca\mexCCACollectData_windows.c (7558, 2006-09-05)
4yX__MACOSX\cca\._.DS_Store (82, 2006-09-05)
ZT2cca\.DS_Store (6148, 2006-09-05)
ZT2cca\cca.m (13165, 2006-08-18)
ZT2cca\demoCCA.m (3883, 2006-08-18)
4yX__MACOSX\cca (0, 2018-11-08)
4yX__MACOSX (0, 2018-11-08)
ZT2cca (0, 2018-11-08)

README ( Aug 18, 2006) -------------------------------------------------------------------- I. Introduction II. Installation III. Usage & Examples IV. Contacts & Copyrights V. References -------------------------------------------------------------------- I. Introduction Function [Z, CCAEIGEN, CCADETAILS] = CCA(X, Y, EDGES, OPTS) computes a low dimensional embedding Z in R^d that maximally preserves angles among input data X that lives in R^D, with the algorithm Conformal Component Analysis (CCA). The key idea is to constrain Z = L*Y where Y is a partial basis that spans the space of R^d. Such Y can be computed from graph Laplacian (such as the outputs of Laplacian eigenmap [3] and Locally Linear Embedding, ie, LLE [4]). The parameterization matrix L is optimized to maximally preserve angles between edges coded in the sparse matrix EDGES. Ref.[1-2] shows that the optimization problem can be formulated as a semidefinite programming problem (SDP) in P = L'*L. SDPs are convex optimization problems; they can be solved efficiently. Recently, the linear parameterization idea (Z=L*Y) has also been used in finding maximum variance unfolding (MVU, a.k.a, Semidefinite Embedding) [5] and has been applied to sensor localization problems [6]. MVU aims to compute (local) distance mapping between high dimensional data points and low dimensional representation, while CCA computes angle preserving mappings. This distribution also implements a variant of MVU, which is described in [6]. -------------------------------------------------------------------- II. Installation The distribution of this package includes following files 1. README: this file 2. cca.m: main Matlab function 3. mexCCACollectData.c: a C source file 4. demoCCA.m: demo function To install, make sure cca.m (optionally, demoCCA.m) is in your Matlab path. Also, in Matlab's command window, issue command "mex mexCCACollectData.c" to the C source file compile and make sure the compiled object is in your Matlab path. A SDP solver is needed. This implementation uses CSDP solver [7]. Make sure the main Matlab function csdp.m is in your Matlab path. This distribution has been tested on MAC OS X 10.3.x or above, with Matlab 7.0 or above, as well as Intel-based Linux (kernel 2.4 or above) with Matlab 7.0 or above. The CSDP solver that has been tested is version 4.9 and 5.0. -------------------------------------------------------------------- III. Usage & Examples. 1. To run examples, type demoCCA Note: You need an implementaiton of LLE to run demoCCA(). This distribution provides one based on Sam Roweis's implementation at http://www.cs.toronto.edu/~roweis/lle/ . 2. To call the function cca(), use following syntax: <=== Inputs: X: input data stored in matrix (D x N) where D is the dimensionality Y: partial basis stored in matrix (d x N) Note that if graph Laplacians/LLE are used to compute Y, then make sure Y(1,:) is not a constant vector. EDGES: a sparse matrix of (N x N). In each column i, the row indices j to nonzero entrices define data points that are in the nearest neighbors of data point i. OPTS: OPTS.method == 'CCA': implements CCA algorithm [1,2] == 'MVU': implements MVU [6] default is 'CCA' OPTS.regularizer: the tradeoff factor when maximizing trace (as in MVU [5]) while preserving distances (it is okay to use a nonzero regularizer in CCA algorithm, where we will get an "unfolded" CCA to enforce low rank in solutions) default is 0. OPTS.relative: In MVU, either absolute distance can be preserved (OPTS.relative ==0) or relative distance can be preserved (OPTS.relative == 1) default is 0 ====> Outputs: Z: low dimensional embedding (d X N) CCAEIGN: eigenspectra of the matrix P = L'*L. If P is low-rank (say d' < d), then Z can be cutoff at d' dimension as dimensionality reduced further. CCADetails: CCADetails.cost: final objective function value CCADetails.c: if OPTS.method == 'CCA', this is the local scaling coefficient for each data point CCADetails.P: matrix P = L'*L CCADetails.opts: options used to run the algorithm, same as OPTS with checked parameters CCADetails.sdpflag: SDP solver exit flag. (check CSDP solver manual. In general, an exit flag of 0 means normal exit.) -------------------------------------------------------------------- IV. Misc. 1. Please send bug report to feisha@cs.berkeley.edu 2. Feel free to use it for educational and research purpose. -------------------------------------------------------------------- V. References [1] Fei Sha and Lawrence K. Saul (2005). Analysis and Extension of Spectral Methods for Nonlinear Dimensionality Reduction. Proceedings of 22nd International Conference on Machine Learning (ICML 2005), Bonn, Germany [2] Fei Sha, Kilian Weinberge and Lawrence K. Saul (200x). Manifold learning by semidefinite programming. Manuscript in preparation. [3]. M. Belkin and P. Niyogi, Laplacian Eigenmaps for Dimensionality Reduction and Data Representation, Neural Comp., 15(6):1373-1396, 2003. [4]. L. K. Saul and S. T. Roweis (2003). Think globally, fit locally: unsupervised learning of low dimensional manifolds. Journal of Machine Learning Research 4:119-155 [5]. K. Q. Weinberger and L. K. Saul (2006). Unsupervised learning of image manifolds by semidefinite programming. International Journal of Computer Vision 70(1): 77-90 [6]. K. Q. Weinberger, Fei Sha, Qihui Zhu and L. K. Saul (2006). Localization in Large Scale Sensor Networks via Semidefinite Programming and Graph Regularization. Submitted manuscript. [7]. Borchers, B., CSDP, A C Library for Semidefinite Programming. Optimization Methods and Software 11(1):613-623, 1999. http://infohost.nmt.edu/~borchers/csdp.html --------------------------------------------------------------------

近期下载者

相关文件


收藏者