Deeplearning4j Ошибка: нет jniopenblas в java.library.path - PullRequest
0 голосов
/ 17 марта 2019

Я впервые начал использовать Deeplearning4j в эти выходные.Я посмотрел на страницу https://deeplearning4j.org/docs/latest/deeplearning4j-quickstart и увидел опцию «Настройка Eclipse без Maven».Так как я привык использовать Eclipse и никогда раньше не слышал о Maven, я решил следовать этим инструкциям.

После того, как я его настроил, я нашел учебник на YouTube, но когда я запускаю проект, яполучить эту ошибку:

Exception in thread "main" java.lang.UnsatisfiedLinkError: no jniopenblas in java.library.path
at java.lang.ClassLoader.loadLibrary(Unknown Source)
at java.lang.Runtime.loadLibrary0(Unknown Source)
at java.lang.System.loadLibrary(Unknown Source)
at org.bytedeco.javacpp.Loader.loadLibrary(Loader.java:945)
at org.bytedeco.javacpp.Loader.load(Loader.java:750)
at org.bytedeco.javacpp.Loader.load(Loader.java:657)
at org.bytedeco.javacpp.openblas.<clinit>(openblas.java:10)
at org.nd4j.linalg.cpu.nativecpu.blas.CpuBlas.setMaxThreads(CpuBlas.java:87)
at org.nd4j.nativeblas.Nd4jBlas.<init>(Nd4jBlas.java:36)
at org.nd4j.linalg.cpu.nativecpu.blas.CpuBlas.<init>(CpuBlas.java:11)
at org.nd4j.linalg.cpu.nativecpu.CpuNDArrayFactory.createBlas(CpuNDArrayFactory.java:79)
at org.nd4j.linalg.factory.BaseNDArrayFactory.blas(BaseNDArrayFactory.java:71)
at org.nd4j.linalg.cpu.nativecpu.blas.CpuLevel3.<init>(CpuLevel3.java:26)
at org.nd4j.linalg.cpu.nativecpu.CpuNDArrayFactory.createLevel3(CpuNDArrayFactory.java:94)
at org.nd4j.linalg.factory.BaseNDArrayFactory.level3(BaseNDArrayFactory.java:92)
at org.nd4j.linalg.factory.BaseBlasWrapper.level3(BaseBlasWrapper.java:42)
at org.nd4j.linalg.api.ndarray.BaseNDArray.mmuli(BaseNDArray.java:2849)
at org.nd4j.linalg.api.ndarray.BaseNDArray.mmul(BaseNDArray.java:2643)
at org.deeplearning4j.nn.layers.BaseLayer.preOutput(BaseLayer.java:373)
at org.deeplearning4j.nn.layers.BaseLayer.activate(BaseLayer.java:384)
at org.deeplearning4j.nn.layers.BaseLayer.activate(BaseLayer.java:405)
at org.deeplearning4j.nn.multilayer.MultiLayerNetwork.activationFromPrevLayer(MultiLayerNetwork.java:590)
at org.deeplearning4j.nn.multilayer.MultiLayerNetwork.feedForwardToLayer(MultiLayerNetwork.java:713)
at org.deeplearning4j.nn.multilayer.MultiLayerNetwork.computeGradientAndScore(MultiLayerNetwork.java:1821)
at org.deeplearning4j.optimize.solvers.BaseOptimizer.gradientAndScore(BaseOptimizer.java:151)
at org.deeplearning4j.optimize.solvers.StochasticGradientDescent.optimize(StochasticGradientDescent.java:54)
at org.deeplearning4j.optimize.Solver.optimize(Solver.java:51)
at org.deeplearning4j.nn.multilayer.MultiLayerNetwork.fit(MultiLayerNetwork.java:1031)
at Tester.main(Tester.java:96)
Caused by: java.lang.UnsatisfiedLinkError: no openblas in java.library.path
at java.lang.ClassLoader.loadLibrary(Unknown Source)
at java.lang.Runtime.loadLibrary0(Unknown Source)
at java.lang.System.loadLibrary(Unknown Source)
at org.bytedeco.javacpp.Loader.loadLibrary(Loader.java:945)
at org.bytedeco.javacpp.Loader.load(Loader.java:738)
... 24 more

1 Ответ

0 голосов
/ 17 марта 2019

Похоже, вам не хватает файлов .dll (Windows) или .so (Linux), которые необходимы для работы Deeplearning4J.Вы можете исправить это, загрузив их и добавив в свой путь к классам.Это можно сделать в Eclipse, выбрав свой проект, нажав Build path, нажав Configure build bath, нажав Source и изменив Native library location на папку, в которую были загружены файлы .dll или .so.

...