趋近智
在已配置好深度学习 Python 环境的情况下,是时候熟悉我们将用于构建自编码器的主要工具了:PyTorch 和 Keras。这些框架是您构建和训练神经网络的主要工具集。
PyTorch 是一个由 Facebook AI 研究院(FAIR)开发的开源机器学习框架。PyTorch 的核心是为深度学习应用而设计,并以其灵活性和易用性而闻名。它允许您定义、训练和部署机器学习模型,范围从简单的模型到非常复杂的神经网络。
设想您需要执行一项复杂的数学运算,特别是那种涉及许多变量,需要调整以达成目标的操作,就像我们的自编码器学习重建图像那样。PyTorch 提供了底层架构,可以高效地处理这些计算,尤其是在专用硬件如 GPU(图形处理单元)的帮助下(如果您有的话)。虽然 PyTorch 功能非常强大,能够处理精细的模型设计,但在这门入门课程中,我们将通过一个更易用的界面来使用它。
Keras 是一个用于构建和训练深度学习模型的高级 API(应用程序编程接口)。“高级”这个术语表示它被设计为用户友好且直观,让您无需陷入张量操作或复杂数学实现的低层细节,即可定义神经网络。
Keras 最初是一个独立库,可以与包括 PyTorch 在内的多种后端引擎配合使用。然而,随着 Keras 3 的发布,多后端支持已成为一个主要焦点。这意味着您可以使用相同的 Keras 代码在不同的框架(包括 PyTorch)上运行。
可以这样理解:PyTorch 是强大的引擎,可以为您的神经网络完成所有繁重工作。Keras 提供了一套简化的控制和蓝图(例如预制组件),使组装和运行该引擎变得更加容易。
该图说明了 Keras 如何作为强大的 PyTorch 引擎之上的用户友好界面,让您更轻松地定义自编码器模型。
对于我们的自编码器,Keras 将使我们能够:
我们选择 PyTorch 和 Keras 有几个充分的理由:
在上一节中,您应该已经将 PyTorch 和 Keras 作为环境设置的一部分进行安装。要在您的 Python 脚本或 Jupyter notebooks 中使用它们,您将首先设置 Keras 后端,然后导入必要的库。
设置 Keras 后端的标准方式是在导入 Keras 之前设置一个环境变量。
import os
os.environ["KERAS_BACKEND"] = "torch"
然后您将导入 Keras 库。
由于 Keras 是一个多后端 API,您可以通过标准的 keras 导入来访问它。例如,当我们开始构建自编码器时,我们将像这样从 Keras 导入特定组件:
from keras.layers import Input, Dense
from keras.models import Model
这里,Input 和 Dense 是我们将要使用的层类型,而 Model 是我们用来定义自编码器整体结构的工具。现在不必过多担心这些特定的导入;我们将在后续的“构建简单自编码器模型”一节中,在构建模型时详细说明它们。
总结一下,PyTorch 提供了强大的后端,而 Keras 则提供了一种方便的方式来定义和训练我们的神经网络,包括我们即将构建的自编码器。有了这些工具,您就准备充分,可以将我们学到的自编码器原理转化为可运行的代码了。
接下来,我们将了解如何加载和准备数据集,这将是我们的自编码器进行学习的原始数据。
这部分内容有帮助吗?
Sep 5, 2025
更新以使用 Pytorch 和 Keras 3 代替 Tensorflow
© 2026 ApX Machine Learning用心打造