树莓Pi-3模型训练中的Keras分离断层

2024-09-28 18:53:13 发布

您现在位置:Python中文网/ 问答频道 /正文

我在raspberrypi3上运行一个keras程序,得到以下分段失败。这个程序在我的笔记本电脑上运行得很好。keras是使用pip安装和升级的。Tensorflow在安装之前使用了一个.whl来表示覆盆子Pi3。在

Using TensorFlow backend.
Compiling Labels file...
Labels file compiled!
Loading pretrained model...
Adding additional layers...
Compiling new model file...
Model compiled!
Found 408 images belonging to 5 classes.
Found 87 images belonging to 5 classes.
Training model...
Epoch 1/2

Message from syslogd@raspberrypi at Sep 30 20:57:40 ...
 kernel:[ 3638.281032] Internal error: Oops: 5 [#2] SMP ARM

Message from syslogd@raspberrypi at Sep 30 20:57:40 ...
 kernel:[ 3638.385182] Process python (pid: 2199, stack limit = 0xb5382210)

Message from syslogd@raspberrypi at Sep 30 20:57:40 ...
 kernel:[ 3638.391273] Stack: (0xb5383df0 to 0xb5384000)

Message from syslogd@raspberrypi at Sep 30 20:57:40 ...
 kernel:[ 3638.395690] 3de0:                                     b5383e1c b5383e00 80152ac8 8014cc54

Message from syslogd@raspberrypi at Sep 30 20:57:40 ...
 kernel:[ 3638.403985] 3e00: ace00004 b65d4cd8 b65d4cd8 b6552960 b5383ea4 b5383e20 8012e588 80152a84

Message from syslogd@raspberrypi at Sep 30 20:57:40 ...
 kernel:[ 3638.412279] 3e20: b5383e6c b5383e30 800894b4 8048d910 4b71ddf2 20000113 b601d500 20000113

Message from syslogd@raspberrypi at Sep 30 20:57:40 ...
 kernel:[ 3638.420574] 3e40: b601d500 80869e00 80869e00 a7f77000 00000000 00000040 80869e00 b5802800

Message from syslogd@raspberrypi at Sep 30 20:57:40 ...
 kernel:[ 3638.428869] 3e60: 80869e00 60000113 60000113 801306dc 6a6ff000 ace00000 b5383ea4 b5383fb0

Message from syslogd@raspberrypi at Sep 30 20:57:40 ...
 kernel:[ 3638.437164] 3e80: ace00000 00000817 6a6ff000 a7df1c00 a7df1c38 00000055 b5383efc b5383ea8

Message from syslogd@raspberrypi at Sep 30 20:57:40 ...
 kernel:[ 3638.445459] 3ea0: 805b9808 8012d680 805bde5c 8085d3c0 8086060c 8086a080 b5383ee4 b5383ec8

Message from syslogd@raspberrypi at Sep 30 20:57:40 ...
 kernel:[ 3638.453754] 3ec0: 80028c74 00000000 00000800 00000000 00000009 80865584 00000817 805b94c8

Message from syslogd@raspberrypi at Sep 30 20:57:40 ...
 kernel:[ 3638.462049] 3ee0: 6a6ff000 b5383fb0 00000000 00000000 b5383fac b5383f00 800091e8 805b94d4

Message from syslogd@raspberrypi at Sep 30 20:57:40 ...
 kernel:[ 3638.470345] 3f00: 0000000a 60000193 00000000 00000000 01400000 00000000 6b9f71d0 3fcc5a7f

Message from syslogd@raspberrypi at Sep 30 20:57:40 ...
 kernel:[ 3638.478639] 3f20: b5383f4c b5383f30 8007d258 800d96c8 b601cdc0 8085a4ec 00000000 00000000

Message from syslogd@raspberrypi at Sep 30 20:57:40 ...
 kernel:[ 3638.486933] 3f40: b5383f64 b5383f50 800295e8 8007d1e4 00000000 8085a4ec b5383f8c b5383f68

Message from syslogd@raspberrypi at Sep 30 20:57:40 ...
 kernel:[ 3638.495227] 3f60: 8007107c 80029550 b5383fb0 73cfc58c 20000010 ffffffff 10c5383d 10c5387d

Message from syslogd@raspberrypi at Sep 30 20:57:40 ...
 kernel:[ 3638.503522] 3f80: b5383f9c 7498e034 80000010 7498e034 80000010 ffffffff 10c5383d 10c5387d

Message from syslogd@raspberrypi at Sep 30 20:57:40 ...
 kernel:[ 3638.511817] 3fa0: 00000000 b5383fb0 805b90e4 800091ac 000000e0 6a6ff000 00a96780 6a6fefd0

Message from syslogd@raspberrypi at Sep 30 20:57:40 ...
 kernel:[ 3638.520111] 3fc0: 000000f8 00000000 66bfed40 00000000 fffff800 00000000 00000000 66bfecfc

Message from syslogd@raspberrypi at Sep 30 20:57:40 ...
 kernel:[ 3638.528405] 3fe0: 6a6feff0 66bfea80 7498df00 7498e034 80000010 ffffffff 00000000 00000000

Message from syslogd@raspberrypi at Sep 30 20:57:40 ...
 kernel:[ 3638.608041] Code: e8bd4000 e5913004 ee1dcf90 e3130001 (e5903148)

代码段:

^{pr2}$

解决这个问题的方法是用不同的方式安装tensorflow吗?或者有更简单的解决方法吗?在


Tags: tofrom程序messagemodelkernelsepat
1条回答
网友
1楼 · 发布于 2024-09-28 18:53:13

分段错误通常与某些内存错误有关。这可能是因为RPI没有足够的内存。你可以试试

sudo raspi-config

分配更多的内存到CPU(更少的ram到GPU)。不过,我不认为额外的64MB或32MB内存会有帮助。在

我会避免在树莓皮上训练任何深入的学习模式。Pi根本不够强大。你也许可以训练一些非常简单的神经网络,但不是任何像样的。把你的模型和模型复制出来,并把它放在你的电脑上。在

ResNet50是树莓派的一个相当大的模型。它包含超过20米的参数。在我的PI3上运行一个向前的预测花了8秒。把它训练成圆周率没有太大意义。在

相关问题 更多 >