pca as an optimization problem
이전 댓글 표시
For some reasons, I would like to compute PCA (or, rather the eigenvectors and eigenvalues of a (de-meaned) sample covariance matrix ) using an oprimization function. I think I understood how to set up the objective functions and constraints, but struggling to actually implement it with Matlab. I am referring the first answer: What is the objective function of PCA? .
Could anyone help me to understand how to set up the problem with Matlab?
댓글 수: 3
John D'Errico
2018년 10월 14일
Can I suggest this is a really bad idea? Why do you think you want/need to do this? If your goal is just to learn about PCA then a far better idea is to learn the necessary linear algebra, and thus to understand why any brute force optimization is not even needed at all. The linear algebra is not really that sophisticated, and compared to what you will need to get into trying to do this as an optimization, you will be far ahead.
Just pick up any basic book on PCA and read the first few chapters. Jackson's book is my preference, but then Ted and I worked together when I was just starting my career.
Image Analyst
2018년 10월 14일
Why not just use the built-in pca() function, if you have the Statistics and Machine Learning Toolbox? See attached demos.
답변 (1개)
Prabakaran G
2022년 8월 16일
0 개 추천
As per my understanding, PCA can used to reduce the number of input predictors, which make the problem is simpler and generalize. Also, it reduce the complexity of the function to optimize.
카테고리
도움말 센터 및 File Exchange에서 Dimensionality Reduction and Feature Extraction에 대해 자세히 알아보기
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!