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,避免了后端之间可能存在的冲突的依赖项要求。您可以使用以下特定于后端的 requirements 文件:

这些通过 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。然后可以通过 import kerasfrom tensorflow import kerastf.keras 命名空间)访问该版本的 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