运行 deeplearning4J 示例时的问题
issue when run deeplearning4J example
我在学习深度学习,用的是deeplearning4J tuts。
但是当我 运行 示例代码时,出现了一些问题:
Caused by: java.lang.UnsatisfiedLinkError: no jnind4j in java.library.path
at java.lang.ClassLoader.loadLibrary(ClassLoader.java:1867)
at java.lang.Runtime.loadLibrary0(Runtime.java:870)
at java.lang.System.loadLibrary(System.java:1122)
at org.bytedeco.javacpp.Loader.loadLibrary(Loader.java:727)
at org.bytedeco.javacpp.Loader.load(Loader.java:502)
at org.nd4j.nativeblas.NativeOps.<clinit>(NativeOps.java:37)
... 18 more
我在网上尝试了一些解决方案,但没有用。
所以,如果你知道如何修复它,请帮助我。
我会尽量在这里回答这个问题,但通常这是聊天派上用场的地方(很多关于你的环境的问题,来回在这里..)
我会尝试在这里回答这个问题,但本机代码(尤其是示例)应该 运行 没问题。
您也可以尝试提交问题:https://github.com/deeplearning4j/dl4j-examples/issues
同时,阅读一下什么是 nd4j 后端:
http://nd4j.org/backend.html
这应该是您需要 运行 的唯一依赖项:
http://search.maven.org/#artifactdetails%7Corg.nd4j%7Cnd4j-native-platform%7C0.6.0%7Cjar
示例 运行 与我们交谈过的每个人都开箱即用。
你似乎没有做任何不寻常的事情。
一种替代方法可能只是将 nd4j-native 工件 ID 与适当的分类器一起使用。
这是您修改 nd4j 后端的地方:
https://github.com/deeplearning4j/dl4j-examples/blob/master/dl4j-examples/pom.xml#L64
您可以尝试摆脱它并将其替换为我告诉过您的工件 ID 中的 1 个。如果那不能解决问题,我会建议进入 gitter。
请进gitter:https://gitter.im/deeplearning4j/deeplearning4j
实时帮助。
我遇到了同样的问题。但问题是我使用了错误的导入,nd4j-native。相反,我使用了 nd4j-native-platform import 并解决了问题。
希望对你有帮助。
您需要在某处解压缩 cuda-9.1-7.1-1.4.1-windows-x86_64.jar
和 nd4j-cuda-9.1-1.0.0-beta-windows-x86_64.jar
,并在启动您的应用程序时将本机 dll 的路径添加到 java.library.path 属性。
例如:
-Djava.library.path=C:\<path where you unzipped>\cuda-9.1-7.1-1.4.1-windows-x86_64\org\bytedeco\javacpp\windows-x86_64;C:\<path where you unzipped>\nd4j-cuda-9.1-1.0.0-beta-windows-x86_64\org\nd4j\nativeblas\windows-x86_64
我在学习深度学习,用的是deeplearning4J tuts。 但是当我 运行 示例代码时,出现了一些问题:
Caused by: java.lang.UnsatisfiedLinkError: no jnind4j in java.library.path
at java.lang.ClassLoader.loadLibrary(ClassLoader.java:1867)
at java.lang.Runtime.loadLibrary0(Runtime.java:870)
at java.lang.System.loadLibrary(System.java:1122)
at org.bytedeco.javacpp.Loader.loadLibrary(Loader.java:727)
at org.bytedeco.javacpp.Loader.load(Loader.java:502)
at org.nd4j.nativeblas.NativeOps.<clinit>(NativeOps.java:37)
... 18 more
我在网上尝试了一些解决方案,但没有用。 所以,如果你知道如何修复它,请帮助我。
我会尽量在这里回答这个问题,但通常这是聊天派上用场的地方(很多关于你的环境的问题,来回在这里..)
我会尝试在这里回答这个问题,但本机代码(尤其是示例)应该 运行 没问题。
您也可以尝试提交问题:https://github.com/deeplearning4j/dl4j-examples/issues
同时,阅读一下什么是 nd4j 后端: http://nd4j.org/backend.html
这应该是您需要 运行 的唯一依赖项: http://search.maven.org/#artifactdetails%7Corg.nd4j%7Cnd4j-native-platform%7C0.6.0%7Cjar
示例 运行 与我们交谈过的每个人都开箱即用。
你似乎没有做任何不寻常的事情。
一种替代方法可能只是将 nd4j-native 工件 ID 与适当的分类器一起使用。
这是您修改 nd4j 后端的地方: https://github.com/deeplearning4j/dl4j-examples/blob/master/dl4j-examples/pom.xml#L64
您可以尝试摆脱它并将其替换为我告诉过您的工件 ID 中的 1 个。如果那不能解决问题,我会建议进入 gitter。
请进gitter:https://gitter.im/deeplearning4j/deeplearning4j
实时帮助。
我遇到了同样的问题。但问题是我使用了错误的导入,nd4j-native。相反,我使用了 nd4j-native-platform import 并解决了问题。 希望对你有帮助。
您需要在某处解压缩 cuda-9.1-7.1-1.4.1-windows-x86_64.jar
和 nd4j-cuda-9.1-1.0.0-beta-windows-x86_64.jar
,并在启动您的应用程序时将本机 dll 的路径添加到 java.library.path 属性。
例如:
-Djava.library.path=C:\<path where you unzipped>\cuda-9.1-7.1-1.4.1-windows-x86_64\org\bytedeco\javacpp\windows-x86_64;C:\<path where you unzipped>\nd4j-cuda-9.1-1.0.0-beta-windows-x86_64\org\nd4j\nativeblas\windows-x86_64