Implementation in FPGAs of Principal Component Analysis

侯咏佳,方东博,袁生光,沈海斌
DOI: https://doi.org/10.3969/j.issn.1001-4551.2008.09.012
2008-01-01
Abstract:Principal component analysis(PCA),which is a typical method of data dimensionality reduction,transforms high dimensional data to low dimensional data by eigenanalysis of the data matrix and loses little of information within the transformed data.A new architecture of FPGAs to realize PCA was demonstrated,which solved eigenanalysis of matrix by simple shift and addition operations with vector rotation of Givens and CORDIC algorithm,computing upper triangular elements only.Therefore,the computational complexity was low and the iterative convergence speed was fast.Moreover,the design reused some similar modules processing data asynchronously to save FPGA resources,and processed data in parallel during computing covariance matrix and linear space mapping,thus the clock frequency was not affected when the dimension of the original data was changed.The experiment results indicate that the system can implement PCA of different dimensional data with a stable clock frequency and a small amount of resources.
What problem does this paper attempt to address?