2016-04-13 2 views
2

При использовании PCA в spark.mllib.feature, cols моих входных данных превышает 65535, но RowMatrix, определенная в PCA, равна < 65535, означает ли это, что я не могу использовать PCA ?Ошибка входа PCA Аргумент с более чем 65535

+0

@ eliasah, ошибка Исключение в потоке "main" java.lang.IllegalArgumentException: Аргумент с более чем 65535 cols: 84619 at org.apache.spark.mllib.linalg.distributed.RowMatrix.checkNumColumns (RowMatrix.scala: 135) –

+0

, если один из предоставленных ответов решает ваши проблемы, пожалуйста, примите его, чтобы мы могли закрыть этот вопрос! – eliasah

ответ

2

В настоящее время реализация СПС, по-видимому, ограничена введением в память символов d^2 ковариации/грамматической матрицы (d - количество столбцов/размерности матрицы).

На данный момент оно установлено на 65535, поскольку текущая реализация PCA не очень масштабируема. Таким образом, вы не можете использовать PCA в своем случае.

Ссылка: source code.

Существует по планированию JIRA issue для реализации вероятностного главного компонента алгоритма анализа, который должен быть масштабируемым.

+0

Спасибо большое ..... –

+0

@LiYu Не могли бы вы либо принять ответ, либо объяснить, почему он не работает для вас, чтобы его можно было улучшить? Благодарю. – zero323

Смежные вопросы