You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

技术问询:Keras用Theano后端时Google Colab是否未启用GPU?

解决Colab中Theano后端Keras未使用GPU的问题

我之前在Colab里折腾Theano后端的时候也碰到过一模一样的情况——TensorFlow后端跑每个epoch只要4分钟,切到Theano直接7小时起步,当时差点以为自己代码写错了,后来才发现是Theano压根没用到GPU。

先确认问题根源:Theano是否真的在跑CPU

先跑一段简单的代码验证一下:

import theano
print("Theano device:", theano.config.device)
print("FloatX setting:", theano.config.floatX)

如果输出是cpu,那实锤了——Theano完全没启用GPU加速,这就是速度慢的核心原因。

为什么TensorFlow不用配置就能跑GPU?

Colab默认给TensorFlow集成了全套的CUDA、cuDNN环境,而且启动时会自动检测GPU并启用,几乎是零配置就能用。但Theano不一样,它需要手动指定GPU设备和相关参数,不然就默认用CPU跑。

一步步配置Theano启用GPU加速

  1. 先确认Colab已经分配到GPU
    点击顶部菜单栏的Runtime -> Change runtime type,确保Hardware accelerator选的是GPU,保存后重启运行时。

  2. 配置Theano的GPU参数
    有两种方式,选一种就行:

    • 临时配置(只对当前会话有效):在代码最开头加上这两行:
      import theano
      theano.config.device = 'gpu'
      theano.config.floatX = 'float32'
      
    • 永久配置(重启会话也生效):创建Theano的配置文件.theanorc,在Colab里执行以下命令:
      !echo -e "[global]\ndevice = gpu\nfloatX = float32\n[cuda]\nroot = /usr/local/cuda" > ~/.theanorc
      
      这个配置文件告诉Theano使用GPU,并且指定CUDA的安装路径(Colab里CUDA默认在/usr/local/cuda)。
  3. 更新Theano到最新稳定版
    Colab自带的Theano版本可能比较旧,对新GPU的支持不好,建议更新一下:

    !pip install --upgrade theano
    

验证配置是否生效

重新运行之前的检测代码,如果输出变成gpu和float32,说明配置成功了,再跑你的训练代码试试,速度应该会和TensorFlow后端差不多了。

补充:你之前的配置遗漏了什么?

你只修改了Keras的keras.json切换后端为Theano,但Keras只是调用Theano来执行计算,Theano本身的GPU参数没配置的话,Keras也只能跟着用CPU跑,这就是为什么速度差这么多。

内容的提问来源于stack exchange,提问作者Sekar S

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.05.25 03:52:17