Keras 入门

Keras 入门

学习资源

您是正在寻找 Keras 入门单页介绍的机器学习工程师吗?请阅读我们的指南 面向工程师的 Keras 入门介绍

想了解更多关于 Keras 3 及其功能的信息吗?请参阅 Keras 3 发布公告

您是否在寻找涵盖 Keras API 各个部分深入用法的详细指南?请阅读我们的 Keras 开发者指南

您是否在寻找展示 Keras 在各种用例中实际应用的教程?请参阅 Keras 代码示例:超过 150 个精心讲解的笔记本,演示了 Keras 在计算机视觉、自然语言处理和生成式 AI 中的最佳实践。


安装 Keras 3

您可以通过 PyPI 安装 Keras

pip install --upgrade keras

您可以通过以下方式查看本地 Keras 版本号

import keras
print(keras.__version__)

要使用 Keras 3,您还需要安装一个后端框架——JAX、TensorFlow 或 PyTorch

如果您安装了 TensorFlow 2.15,则应该之后重新安装 Keras 3。原因是 tensorflow==2.15 会用 keras==2.15 覆盖您的 Keras 安装。对于 TensorFlow 2.16 及更高版本,此步骤不是必需的,因为从 TensorFlow 2.16 开始,它将默认安装 Keras 3。

安装 KerasCV 和 KerasHub

KerasCV 和 KerasHub 可以通过 pip 安装

pip install --upgrade keras-cv
pip install --upgrade keras-hub
pip install --upgrade keras

配置您的后端

您可以导出环境变量 KERAS_BACKEND,或者编辑本地配置文件 ~/.keras/keras.json 来配置您的后端。可用的后端选项是:"jax""tensorflow""torch"。示例

export KERAS_BACKEND="jax"

在 Colab 中,您可以这样做

import os
os.environ["KERAS_BACKEND"] = "jax"
import keras

注意: 后端必须在导入 Keras 之前配置好,并且后端在包导入后无法更改。

GPU 依赖项

Colab 或 Kaggle

如果您在 Colab 或 Kaggle 上运行,GPU 应该已经配置好,并具有正确的 CUDA 版本。在 Colab 或 Kaggle 上安装更高版本的 CUDA 通常是不可能的。尽管存在 pip 安装程序,但它们依赖于预先安装的 NVIDIA 驱动程序,并且无法在 Colab 或 Kaggle 上更新驱动程序。

通用 GPU 环境

如果您想尝试创建一个“通用环境”,让任何后端都可以使用 GPU,我们建议遵循 Colab 使用的依赖版本(该环境旨在解决这个问题)。您可以 从这里 安装 CUDA 驱动程序,然后按照各自的 CUDA 安装说明通过 pip 安装后端:安装 JAX安装 TensorFlow安装 PyTorch

最稳定的 GPU 环境

如果您是 Keras 贡献者并正在运行 Keras 测试,建议采用此设置。它会安装所有后端,但一次只允许一个后端访问 GPU,避免了后端之间可能存在的冲突依赖项要求。您可以使用以下特定于后端的配置文件

这些文件通过 pip 安装所有支持 CUDA 的依赖项。它们要求预装 NVIDIA 驱动程序。我们建议为每个后端使用干净的 Python 环境,以避免 CUDA 版本不匹配。例如,以下是如何使用 Conda 创建 JAX GPU 环境

conda create -y -n keras-jax python=3.10
conda activate keras-jax
pip install -r requirements-jax-cuda.txt
pip install --upgrade keras

TensorFlow + Keras 2 向后兼容性

从 TensorFlow 2.0 到 TensorFlow 2.15(含),执行 pip install tensorflow 也会安装相应版本的 Keras 2——例如,pip install tensorflow==2.14.0 会安装 keras==2.14.0。然后该版本的 Keras 可通过 import kerasfrom tensorflow import kerastf.keras 命名空间)访问。

从 TensorFlow 2.16 开始,执行 pip install tensorflow 将安装 Keras 3。当您拥有 TensorFlow >= 2.16 和 Keras 3 时,默认情况下 from tensorflow import kerastf.keras)将是 Keras 3。

与此同时,旧版 Keras 2 包仍在定期发布,并可通过 PyPI 获得,名称为 tf_keras(或同等名称 tf-keras——请注意,-_ 在 PyPI 包名称中是等效的)。要使用它,您可以通过 pip install tf_keras 安装,然后通过 import tf_keras as keras 导入。

如果您希望在升级到 TensorFlow 2.16+ 后 tf.keras 保持 Keras 2,您可以配置您的 TensorFlow 安装,使 tf.keras 指向 tf_keras。要实现这一点

  1. 请确保安装 tf_keras。请注意,TensorFlow 默认不安装它。
  2. 导出环境变量 TF_USE_LEGACY_KERAS=1

有几种方法可以导出环境变量

  1. 您只需在启动 Python 解释器之前运行 shell 命令 export TF_USE_LEGACY_KERAS=1
  2. 您可以将 export TF_USE_LEGACY_KERAS=1 添加到您的 .bashrc 文件中。这样,当您重新启动 shell 时,该变量仍将被导出。
  3. 您可以通过以下方式启动您的 Python 脚本
import os
os.environ["TF_USE_LEGACY_KERAS"] = "1"

这些行需要在任何 import tensorflow 语句之前。


兼容性矩阵

JAX 兼容性

以下 Keras + JAX 版本彼此兼容

  • jax==0.4.20 & keras~=3.0

TensorFlow 兼容性

以下 Keras + TensorFlow 版本彼此兼容

使用 Keras 2

  • tensorflow~=2.13.0 & keras~=2.13.0
  • tensorflow~=2.14.0 & keras~=2.14.0
  • tensorflow~=2.15.0 & keras~=2.15.0

使用 Keras 3

  • tensorflow~=2.16.1 & keras~=3.0

PyTorch 兼容性

以下 Keras + PyTorch 版本彼此兼容

  • torch~=2.1.0 & keras~=3.0