当批处理大小为1 Keras(内存和速度)时有效的培训方法

时间:2019-04-05 17:16:06

标签: python tensorflow keras deep-learning batchsize

由于数据特性,我必须将批次大小固定并训练为1。 将模型放在gpu上时,出现内存错误。 参数数量少。

当我将模型放在cpu上并使用gpu计算批次时,速度变慢。

如何在Keras中解决此问题?

我的代码如下。

  

在CPU上建模并使用GPU进行训练->太慢(因为批处理的大小为1)

App\Serie {
    id: 2,
    Genres: Illuminate\Database\Eloquent\Collection {
        all: [
            App\Genre {
                id: 4,
                name: 'name'
                ...,
                pivot: Illuminate\Database\Eloquent\Relations\Pivot {
                    Genre_id: 4,
                    Serie_id: 2,
                    ...,
                },
            },
            App\Genre {...},
            App\Genre {...},
            App\Genre {...},
            App\Genre {...},
    ],
},
  

在GPU上建模并使用GPU进行训练->内存块问题

with tf.device('/cpu:0'):
        capsule_model = CapsNet_Fully(height=x_train[0].shape[0], n_class=n_class, args=args)

我已经尝试过该gpu选项。

with K.tf.device('/gpu:0'):
            capsule_model = CapsNet_Fully(height=x_train[0].shape[0], n_class=n_class, args=args)

我的gpu内存是11GB。

如何处理此问题?

0 个答案:

没有答案