无监督学习构成了许多表征学习方法(包括自编码器)得以建立的根基。与依赖有标签数据(输入-输出对)训练模型进行预测或分类的监督学习不同,无监督学习算法处理的数据集只包含输入特征 $X$,而没有对应的目标变量 $y$。它的主要目标是找出数据本身固有的结构、模式或关联。无监督学习的核心目标总体目标是对数据的底层结构或分布进行建模。这可以通过以下几种方式体现:聚类: 识别不同的数据点群组或簇,使得同一簇内的点彼此间比与其他簇的点更相似。K-Means 或 DBSCAN 等算法属于此类。虽然这不是本课程的主要关注点,但聚类是一项基本的无监督任务。降维: 在保留原始数据有意义属性的同时,将数据从高维空间转换到低维空间。这与表征学习高度相关,因为这个低维空间 就是 学到的表征。其方法从主成分分析(PCA)等线性方法到包括自编码器在内的复杂非线性方法都有。密度估计: 明确建模数据 $p(x)$ 的概率分布函数。这有助于理解数据如何分布,并可用于异常检测等任务。生成模型: 训练一个能够生成与原始数据分布相似的新数据样本的模型。变分自编码器(VAEs)(将在本课程后续章节中讨论)是生成式无监督模型的一个强有力示例。digraph G { rankdir=LR; node [shape=point, width=0.1, height=0.1, color="#495057"]; edge [style=invis]; subgraph cluster_0 { label = "无标签输入数据 (X)"; style=dashed; bgcolor="#e9ecef"; graph[style=dotted]; node[color="#868e96"]; a1 [pos="0.5,1.8!"]; a2 [pos="0.8,1.5!"]; a3 [pos="0.6,1.2!"]; a4 [pos="1.5,1.9!"]; a5 [pos="1.8,1.7!"]; a6 [pos="1.6,1.4!"]; a7 [pos="1.0,0.5!"]; a8 [pos="1.3,0.8!"]; a9 [pos="0.7,0.7!"]; a10 [pos="1.7,0.4!"]; a11 [pos="0.4,0.3!"]; a12 [pos="1.9,0.9!"]; } subgraph cluster_1 { label = "学到的结构 / 表征"; style=dashed; bgcolor="#e9ecef"; graph[style=dotted]; subgraph cluster_1a { label=""; color="#1c7ed6"; style=filled; fillcolor="#a5d8ff"; node[color="#1c7ed6"]; b1 [pos="4.5,1.8!"]; b2 [pos="4.8,1.5!"]; b3 [pos="4.6,1.2!"]; } subgraph cluster_1b { label=""; color="#f76707"; style=filled; fillcolor="#ffd8a8"; node[color="#f76707"]; c1 [pos="5.5,1.9!"]; c2 [pos="5.8,1.7!"]; c3 [pos="5.6,1.4!"]; } subgraph cluster_1c { label=""; color="#37b24d"; style=filled; fillcolor="#b2f2bb"; node[color="#37b24d"]; d1 [pos="5.0,0.5!"]; d2 [pos="5.3,0.8!"]; d3 [pos="4.7,0.7!"]; d4 [pos="5.7,0.4!"]; d5 [pos="4.4,0.3!"]; d6 [pos="5.9,0.9!"];} } cluster_0 -> cluster_1 [style=solid, arrowhead=open, label=" 无监督\n 算法 ", labelfontsize=10, len=2.5]; }无监督学习算法处理无标签输入数据,以找出底层模式(例如簇或流形),从而得到一个结构化的表征。无监督学习对自编码器为何重要自编码器本质上是无监督神经网络。它们通过尝试复现其输入来学习。核心组成部分包括一个将输入 $x$ 映射到潜在表征 $z$ 的 编码器,以及一个从 $z$ 重建输入 $\hat{x}$ 的 解码器。模型的训练目标是最小化 重建损失,这通常是 $x$ 和 $\hat{x}$ 之间的差异,例如均方误差:$$ L(x, \hat{x}) = ||x - \hat{x}||^2 $$由于网络仅用输入数据 $x$ 进行训练,而没有关联的标签 $y$,它完全遵循无监督方法运行。其中重要的部分是 瓶颈 层,在这里,潜在表征 $z$ 的维度通常低于输入 $x$。这迫使编码器学习一个压缩表征,该表征能捕获数据分布中最重要的变异和结构,以便解码器进行准确重建。这种压缩和重建过程是一种自监督学习形式,它是无监督学习的一个子集,其监督信号源自数据本身。与表征学习的关联自编码器学到的潜在表征 $z$ 就是 学到的表征。这个表征的质量决定了自编码器执行其主要任务(重建)的效果,以及 $z$ 对于分类、生成或异常检测等下游任务的有用程度。因此,有效的无监督学习旨在找到具有以下特点的表征:紧凑: 维度低于原始输入。信息丰富: 保留原始数据的核心信息。有结构: 捕获数据中有意义的关联和变异(例如,分离变异因素)。"正如章引言中提到的,像PCA这样的传统线性方法进行无监督降维。然而,它们假定数据位于或接近线性子空间。许多数据集,例如图像或自然语言,呈现出复杂的非线性结构(流形)。基于深度学习的无监督方法,如自编码器,具有更大的灵活性,能够学习这些复杂的非线性表征。理解无监督学习的基本原理、从无标签数据中学习、识别结构以及找到信息丰富表征的目标,为领会我们在本课程中将审查的各种自编码器架构的设计和功能提供了必要的背景。"