gpt4 book ai didi

python - Theano 在树莓派上使用 Keras

转载 作者:IT老高 更新时间:2023-10-28 22:16:08 32 4
gpt4 key购买 nike

我试图让 Theano 在 Raspberry Pi 3 (B) 上与 Keras 一起运行,但没有成功。我尝试将 Ubuntu MATE 和 Raspbian 作为操作系统,但没有成功。为了安装 Theano 和 Keras,我采取了以下步骤:

  1. 安装 miniconda(armv7 发行版)
  2. 通过 Conda(如果可能)、pipapt-get
  3. 安装所有 Theano 依赖项(如图所示 here)
  4. 安装 Theano
  5. 安装 Keras

上述步骤没有任何问题。在下一步中,我构建了一个小测试脚本 (test.py),它通过

加载已构建的模型
from keras.models import load_model
model = load_model('model.hdf5')

加载模型时出现以下错误

Segmentation fault (core dumped)

然后我尝试按照 SO (What causes a Python segmentation fault?) 上的答案进一步调查该问题:

gdb python
> run test.py

当我运行它时,我得到:

Program received SIGSEV, Segmentation fault.
0x76fd9822 in ?? () from /lib/ld-linux-armhf.so.3

下一步我在 gdb shell 中运行:

> backtrace

得到了

#0  0x76fd9822 in ?? () from /lib/ld-linux-armhf.so.3
#1 0x76fd983a in ?? () from /lib/ld-linux-armhf.so.3

这是我不知道的地方,我想问一下,是否有人可以指出如何解决此问题并让 keras + theano 在 Raspberry Pi 上运行的方向。

(我也尝试过 TensorFlow 作为替代方案,但遇到了同样的问题)

非常感谢。


编辑

我做了更多的调查。如果我 run Keras with TensorFlow问题似乎有所改变。我再次运行 gdb,但错误现在发生在 numpy 中,尤其是在 libopenblas.so.0

Program received signal SIGSEV, Segmentation fault.
0x75ead7cc in inner_thread()
from /home/<path>/numpy/core/../../../../libopenblas.so.0

这有帮助吗?


编辑 2

我在没有使用 Miniconda 的情况下安装了所有东西,而 Keras 现在可以与 TensorFlow 一起使用(但还不能与 Theano 一起使用)。

最佳答案

如果你提供了 python 的版本,它会很有用。如果您使用的是 python3.7,请尝试恢复到 python3.6,因为 keras 还没有 catch 开发,并且在 python3.7 上使用 keras 安装 tensorflow 存在很多问题。我在这里强调版本,因为我最近在使用 conda 安装时遇到了同样的问题,我意识到问题是 python 版本。

但我也遇到了让 tensorflow 在 PI 上工作的问题。但是我使用来自 ubuntu 的 pip 而不是 miniconda 直接安装,并且它有效。 Google Tensorflow 团队自己提到的最佳方式是按照此链接中的说明从源代码实际构建 tensorflow。 https://www.tensorflow.org/install/source_rpi

因此,如果可以的话,尝试将 python 的版本降级到 3.6 或更低,并尝试使用 pip 安装或使用 python3.6 或 3.7 从源代码构建。

关于python - Theano 在树莓派上使用 Keras,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/40317243/

32 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com