Я использую сингулярное векторное разложение на матрице и получаю матрицы U, S и Vt. На данный момент я пытаюсь выбрать порог для количества измерений, чтобы сохранить. Мне предложили взглянуть на сюжетный осколок, но мне интересно, как сделать так, чтобы он наносился на ноль. В настоящее время я делаю следующее, используя библиотеки numpy и scipy в python:
U, S, Vt = svd(A)
Какие-либо предложения?
data-visualization
python
svd
легенда
источник
источник
S
, если она еще не диагональ, возведите ее в квадрат, отсортируйте в порядке убывания, возьмите накопленную сумму, разделите на последнее значение, затем построите ее.[U,S,V] = svd(X);S = cumsum(sort(diag(S).^2,1,'descend'));S = S ./ S(end);plot(S);
Ответы:
Вот пример, который можно вставить в приглашение IPython и создать изображение, как показано ниже (оно использует случайные данные):
источник
num_vars
? кажется, это не определено в вашем сценарии.