You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多
文档控制台
免费开始使用

如何通过Anaconda安装MXNet后端的Keras并解决识别问题?

问题1:如何用Anaconda安装以MXNet为后端的Keras?

我推荐用conda环境做依赖隔离,避免和全局环境的包冲突,步骤很清晰:

  • 第一步:创建并激活专属conda环境
    打开Anaconda Prompt(Windows)或者终端(Linux/macOS),执行以下命令:

    conda create -n keras-mxnet python=3.8  # Python版本可按需更换,比如3.7/3.9都可行
    conda activate keras-mxnet
    

    后续所有操作都在这个专属环境里进行,能减少很多版本兼容问题。

  • 第二步:安装MXNet
    分CPU和GPU版本选择安装命令:

    • CPU版本直接安装:
      conda install -c conda-forge mxnet
      
    • GPU版本需匹配你的CUDA版本,比如CUDA 11.2对应的命令:
      conda install -c conda-forge mxnet-cu112
      
  • 第三步:安装Keras
    优先用conda安装,兼容性更有保障:

    conda install -c conda-forge keras
    

    如果conda源的版本不符合需求,也可以用pip安装:

    pip install keras
    
  • 第四步:配置Keras后端为MXNet
    有两种配置方式可选:

    1. 永久生效配置:找到Keras的配置文件——Linux/macOS路径为~/.keras/keras.json,Windows路径为C:\Users\<你的用户名>\.keras\keras.json,将文件内容修改为:
      {
          "floatx": "float32",
          "epsilon": 1e-07,
          "backend": "mxnet",
          "image_data_format": "channels_last"
      }
      
    2. 临时生效配置:每次激活conda环境后执行以下命令(仅对当前终端会话有效):
      export KERAS_BACKEND=mxnet  # Linux/macOS使用此命令
      set KERAS_BACKEND=mxnet     # Windows使用此命令
      

问题2:解决手动安装后Anaconda无法识别Keras的问题,以及兼容MXNet的其他安装方式

先解决当前的识别问题

你提到手动安装Keras后Anaconda无法识别,大概率是Keras被装到了系统全局Python环境,而非你需要的conda环境里。解决方法很直接:

  • 先激活目标conda环境,然后用该环境内的pip重新安装Keras:
    conda activate your-env-name  # 替换成你实际使用的conda环境名
    pip install keras
    
    注意一定要用conda环境内的pip,避免调用全局pip!安装完成后可以验证:激活环境后打开Python,输入import keras; print(keras.backend.backend()),如果输出mxnet就说明配置成功。

类似AWS AMIs的兼容安装方式

AWS深度学习AMI的核心思路是用conda环境预装好所有依赖,你可以复刻这个配置逻辑,或者用更稳妥的方式:

  • 复刻AWS AMI的依赖配置
    激活conda环境后,依次安装以下包,和AWS AMI的依赖栈基本一致,版本冲突概率极低:

    conda activate keras-mxnet
    conda install -c conda-forge mxnet python=3.8 numpy scipy pandas matplotlib
    pip install keras
    
  • 指定兼容版本安装
    如果conda源的Keras和MXNet版本不匹配,可以指定已知兼容的版本组合,比如Keras 2.3.1和MXNet 1.8.0的兼容性就很好:

    conda activate keras-mxnet
    pip install keras==2.3.1 mxnet==1.8.0
    
  • 让Jupyter Notebook识别conda环境
    很多时候不是Keras没装对,而是Jupyter使用的内核不对。你可以把conda环境添加到Jupyter的内核列表:

    1. 激活conda环境,安装ipykernel:
      conda activate keras-mxnet
      conda install ipykernel
      
    2. 将该环境注册为Jupyter内核:
      python -m ipykernel install --user --name keras-mxnet --display-name "Keras-MXNet"
      
    3. 打开Jupyter Notebook后,在顶部「Kernel」菜单中选择「Keras-MXNet」内核,就能正常使用Keras了。

内容的提问来源于stack exchange,提问作者Ștefan

火山引擎 最新活动