PCA не работает с ND4J: BLAS не найден? - PullRequest
0 голосов
/ 18 мая 2018

Я использую ND4J в Windows, чтобы выполнить PCA на матрице, но я думаю, что ND4J не может найти библиотеку BLAS.

Я установил OpenBLAS с minGW (make, затем make PREFIX=C:/OpenBLAS install)и добавил C:\OpenBLAS\bin (где находится libopenblas.dll) в переменную среды PATH.Выполнение where libopenblas.dll возвращает

C:\Program Files\Java\jdk1.8.0_111\bin\libopenblas.dll
C:\OpenBLAS\bin\libopenblas.dll

Поэтому я был удивлен, увидев, что OpenBLAS уже установлен.

Мой код Java выглядит следующим образом:

INDArray traceMatrix = /* my data matrix */;
int keptFeatures = 10;
INDArray pcaFactors = PCA.pca(traceMatrix, keptFeatures, false);

истек ошибки:

java.lang.UnsupportedOperationException
    at org.nd4j.linalg.factory.BaseBlasWrapper.geev(BaseBlasWrapper.java:470)
    at org.nd4j.linalg.eigen.Eigen.eigenvectors(Eigen.java:100)
    at org.nd4j.linalg.dimensionalityreduction.PCA.pca(PCA.java:62)
    at [myCode:line where the pca() method is called]

У вас есть идея, как решить эту проблему?

Я использую Eclipse, если это может помочь.

РЕДАКТИРОВАТЬ:Я использовал устаревшую версию ND4J, поэтому буду обновлять свои библиотеки, пытаясь решить мою проблему.

1 Ответ

0 голосов
/ 22 мая 2018

С помощью Алекса Блэка по номеру https://gitter.im/deeplearning4j/deeplearning4j, я обнаружил, что использую старую версию ND4J.

Переход на более новую версию (и установка серверной части) решил проблему.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...