我试图让Theano在Raspberry Pi 3(B)上与Keras一起运行但没有成功.我尝试使用Ubuntu MATE和Raspbian作为操作系统,但没有成功.要安装Theano和Keras,我采取了以下步骤:
pip和apt-get上述步骤没有任何问题.在下一步中,我构建了一个小测试脚本(test.py),它通过加载已经构建的模型
from keras.models import load_model
model = load_model('model.hdf5')
Run Code Online (Sandbox Code Playgroud)
加载模型时,我收到以下错误
Segmentation fault (core dumped)
Run Code Online (Sandbox Code Playgroud)
然后我尝试进一步研究这个问题,关于SO的回答(导致Python分段错误的原因是什么?):
gdb python
> run test.py
Run Code Online (Sandbox Code Playgroud)
当我运行这个时,我得到:
Program received SIGSEV, Segmentation fault.
0x76fd9822 in ?? () from /lib/ld-linux-armhf.so.3
Run Code Online (Sandbox Code Playgroud)
在下一步中,我在gdb shell中运行:
> backtrace
Run Code Online (Sandbox Code Playgroud)
得到了
#0 0x76fd9822 in ?? () from /lib/ld-linux-armhf.so.3
#1 0x76fd983a in ?? () from /lib/ld-linux-armhf.so.3
Run Code Online (Sandbox Code Playgroud)
这是我不知道的地方,我想问一下,如果有人能指出我如何解决这个问题并让keras + theano在Raspberry Pi上运行.
(我也尝试过TensorFlow作为替代方案,但是遇到同样的问题)
非常感谢.
编辑
我做了一些调查.如果我用TensorFlow运行Keras,问题似乎会有所改变.我再次运行gdb,但错误现在发生在numpy中,尤其是在libopenblas.so.0中
Program received signal SIGSEV, Segmentation …Run Code Online (Sandbox Code Playgroud)