How many dimensions do I need?
15 ビュー (過去 30 日間)
古いコメントを表示
Create a script to compute the number of feature dimensions N needed to represent at least 99.9% of the variance in the feature set of the humanactivity dataset using the 'pca' function.
The steps are:
- Compute eigvals using the 'pca' function
- Define vector cumulative_percent_variance_permode, which is a vector the same size as eigvals that contains 100 times (to convert fraction to percentage) the cumulative sum of the normalized eigenvalues
- Define N as the number of eigenvectors needed to capture at least 99.9% of the variation in our dataset D
Script
load humanactivity.mat
D = feat; % [24075 x 60] matrix containing 60 feature measurements from 24075 samples
% compute eigvals
% compute the cumulative_percent_variance_permode vector.
% Define N as the number of eigenvectors needed to capture at least 99.9% of the variation in D.
0 件のコメント
回答 (2 件)
Himanshu Desai
2023 年 6 月 1 日
load humact.mat
D = feat; % [24075 x 60] matrix containing 60 feature measurements from 24075 samples
% compute eigvals
[eigvects,~,eigvals] = pca(D);
% compute the cumulative_percent_variance_permode vector.
percvar = 100*eigvals/sum(eigvals);
cumulative_percent_variance_permode = cumsum(percvar);
% Define N as the number of eigenvectors needed to capture at least 99.9% of the variation in D.
%N = length(cumulative_percent_variance_permode (cumulative_percent_variance_permode >= 99.9))
%cumulative_percent_variance_permode
N=5;
1 件のコメント
参考
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!