Разложение по сингулярным значениям (SVD) - это факторизация вещественной или комплексной матрицы со многими полезными приложениями в обработке сигналов и статистике.
0 ответов

SVD на большой и разреженной матрице (24 x 4G) на R

Мне нужно SVD на очень большой матрице (24 x 2^32) на R. Эта матрица разрежена менее чем на 0,01%. Я мог бы сохранить эту матрицу с помощью simple_sparse_array класс в slam пакет. Сначала я пытался использовать sparseMatrix(в Matrix пакет) и irlba, …
08 май '15 в 15:38
3 ответа

Разложение по сингулярным значениям (SVD) с R

SVD хорошо работает с R: A = matrix(1:12,3,4) A u = svd(A)$u v = svd(A)$v sigma = diag(svd(A)$d) u %*% sigma %*% t(v) # = A as desired Но в отличие от обычной формулировки теоремы СВД, v это не матрица 4х4 (так и должно быть!): dim(v) # (4,3) Почему…
24 ноя '15 в 16:08
2 ответа

Зачем использовать LSA перед K-Means при кластеризации текста

Я изучаю этот урок из Scikit, изучая кластеризацию текста с использованием K-Means: http://scikit-learn.org/stable/auto_examples/text/document_clustering.html В этом примере необязательно LSA (с использованием SVD) используется для уменьшения размер…
22 фев '17 в 14:52
0 ответов

Ошибка установки пакета SVD после использования Revolution R

Я недавно установил Revolution R (3.2.1). Теперь, когда я пытаюсь установить пакет svd из исходного кода, но я вижу следующее сообщение об ошибке. > install.packages('svd',type='source') Installing package into ‘/home/guest/sng8/R/x86_64-unknown-…
29 июл '15 в 17:09
1 ответ

Какой самый быстрый способ вычислить наиболее доминирующее собственное значение / единственное значение?

Я знаю только о следующей силовой итерации. Но нужно создать огромную матрицу A'*A, когда строки и столбцы довольно большие. А также является плотной матрицей. Есть ли какая-либо альтернатива мощному итерационному методу ниже? Я слышал о методе подп…
24 май '17 в 04:57
1 ответ

Свам Армадилло дать некоторые значения NaN

Я открываю Armadillo пакет для выполнения SVD на изображении. Я сначала попробую с OpenCV что очень очень медленно. Итак, сейчас я пишу пример, который выполняет SVD используя эту новую библиотеку, и я не получаю такой же результат, как OpenCV, Посл…
24 июл '18 в 16:03
0 ответов

Планарная подборка данных - оценка Z с учетом X и Y

Я пытаюсь создать плоскость подгонки, чтобы предсказать значение Z с учетом X и Y. Я использовал следующий код ( плоскость подгонки для трехмерных данных), но предсказанные значения Z совершенно неверны, и, честно говоря, не имеет смысла. Плоскость …
10 окт '13 в 00:54
1 ответ

Восстановите Матрицу из компонентов SVD с помощью Pyspark

Я работаю над SVD, используя pyspark. Но в документации, как и в любом другом месте, я не нашел, как восстановить матрицу обратно, используя сегментированные векторы. Например, используя svd pyspark, я получил U, s а также V матрица, как показано ни…
02 мар '19 в 08:36
1 ответ

Матричные вычисления C# и SVD с использованием собственного универсального типа (с помощью Math.NET Numerics)

Я написал свою собственную структуру для интервальной арифметики, для простоты скажем, что это значение, определяемое нижней и верхней границами. Некоторые из вас могут быть знакомы с типом Range, который очень похож. Я перегрузил целые арифметическ…
13 фев '17 в 09:12
3 ответа

Реконструировать временные ряды из SSA

Давайте рассмотрим следующий код clear all; B=xlsread('data_generations1','A1','g8:g301'); n=length(B); L =input('Give the size of the interval: ' );% Number of columns in the Data matrix m=n-L+1;%number of rows in the Data matrix X = zeros(m,L); fo…
16 апр '14 в 10:22
0 ответов

Саймон Функ против Matlabs SVDS

Я хочу построить систему рекомендаций, используя алгоритм Саймона Функса. Идея состоит в том, чтобы сначала построить модель в автономном режиме в Matlab, чтобы выполнить некоторую оценку результатов с тем, какое количество элементов (или измерений)…
04 июн '14 в 10:04
0 ответов

Производительность CUDA Cusolver

Я использую следующий код, который использует процедуру cusolverDnSgesvd, для расчета SVD. К сожалению, производительность намного ниже, чем у CPU, и когда я профилирую код, в отчете nvprof я вижу так много передач данных DtoH и HtoD (каждый передае…
18 окт '17 в 19:38
1 ответ

Различные собственные значения от np.eig и np.svd

Я сравниваю собственные значения, вычисленные с помощью np.eig(np.dot(AT, A))**2 и np.eig(A). Я обнаружил, что некоторые значения одинаковы, но некоторые нет. Кто-нибудь может сказать мне, почему это случилось?
16 сен '17 в 06:19
1 ответ

Всегда ли scipy и numpy svd или eig возвращают один и тот же единственный / собственный вектор?

Поскольку разложение SVD не является уникальным (пары левых и правых сингулярных векторов могут иметь свой знак переворачивания одновременно), мне было интересно, в какой степени матрицы U и V возвращаются scipy.linalg.svd() являются "детерминирован…
02 июл '17 в 12:08
0 ответов

Сравнивая SVD и простую совместную фильтрацию в python

Я попытался создать механизм рекомендаций по совместной фильтрации, но у меня слишком много данных для его работы. мои данные выглядят так: user_id Счет игры 754321 1 0,6 4564123 1 0,5 Счет от 0 до 1, и у меня около 150 000 пользователей. Итак, я ре…
1 ответ

Значение SVD отличается между Matlab 2011b и 2012b

Я пытаюсь реализовать одну и ту же матрицу F для функции SVD в обеих версиях Matlab. Однако я обнаружил, что знак матрицы U и V из обоих решений противоположен. Могу ли я узнать, какие версии MATLAB дают лучший или более точный ответ? или на самом д…
05 июн '13 в 08:37
1 ответ

Применение scipy.sparse.linalg.svds приводит к ошибке памяти?

Я пытаюсь разложить разреженную матрицу (40 000×1400 000) с помощью scipy.sparse.linalg.svds на моей 64-разрядной машине с 140 ГБ ОЗУ. следующим образом: k = 5000 tfidf_mtx = tfidf_m.tocsr() u_45,s_45,vT_45 = scipy.sparse.linalg.svds(tfidf_mtx, k=k)…
20 дек '16 в 04:28
2 ответа

Как проверить, сжато ли изображение или нет после применения SVD к этому изображению (относительно размера сжатого изображения на диске)

I=imread('cameraman.tif'); figure(1),imshow(I) I1=im2double(I); [U,S,V]=svd(I1); figure(2),imshow(I1) for j=1:90 I2=U(:,1:j)*S(1:j,1:j)*V(:,1:j)'; end figure(3),imshow(I2) I3=U*S*V'; figure(4),imshow(I3) это код, который я написал для разложения SVD…
14 июл '11 в 09:47
0 ответов

Сокращение SVD на разреженной матрице действительно неэффективно в Python

Я думаю, что я в значительной степени понял теорию SVD, тем не менее у меня возникают некоторые проблемы и некоторые сомнения, когда я пытаюсь реализовать ее в python, чтобы уменьшить разреженную матрицу. Я использую функцию sparsesvd (я также пробо…
2 ответа

Реализация алгоритма SVD

Кто-нибудь знает хорошую масштабируемую реализацию SVD на C# для очень большой матрицы?
31 мар '10 в 11:42