如何使用Theano将非常大的卷积神经网络融入GPU中

时间:2015-12-22 12:59:26

标签: memory-management neural-network gpu theano large-data

我正在尝试在Theano中编程一个大的深度神经网络(用于图像识别的几个大卷积层)。整个网络不适合GPU,因此我需要以某种方式划分网络。我的问题是:

有人知道在哪里可以找到教程或示例代码来解决这个问题吗?有很多很好的教程和代码用于“小型网络”,但我找不到任何适合大型网络的东西。

这不是一个小问题,在训练期间减少批量图像或减少图层的数量或大小不是解决方案。

我很感激有关如何设计网络或管理GPU的任何想法。

非常感谢。

1 个答案:

答案 0 :(得分:1)

虽然会降低性能,但您可以使用Sitecore().Field()代替theano.tensor._sharedtheano.shared强制数据存储在CPU RAM中。但是,您应首先使用以下方法计算网络所需的内存量,然后将网络参数相应地分离为GPU和CPU RAM。

theano.tensor._shared