醋醋百科网

Good Luck To You!

30个常见的关于深度学习的问题理解之大模型基础篇

Chapter 1: Embeddings, Latent Space, and Representations

第一部分:神经网络与深度学习

第一章:嵌入、潜在空间与表示

在深度学习中,我们经常使用嵌入向量(embedding vectors)、表示(representations)和潜在空间(latent space)这些术语。这些概念有什么共同点,它们之间又有什么区别呢?

虽然这三个术语经常被交替使用,但我们还是可以做出一些微妙的区分:

**嵌入向量(Embedding vectors)**是输入数据的表示,相似的项目在嵌入空间中彼此接近。**潜在向量(Latent vectors)**是输入数据的中间表示。
**表示(Representations)**是原始输入的编码版本。

以下部分将探讨嵌入、潜在向量和表示之间的关系,以及它们在机器学习环境中如何对信息进行编码。

嵌入向量

嵌入向量(Embeddings),将相对高维的数据编码成相对低维的向量。

我们可以应用嵌入方法将(稀疏的)独热编码(one-hot encoding)转换为连续的密集(非稀疏)向量。独热编码是一种将分类数据表示为二进制向量的方法,其中每个类别被映射到一个向量,该向量在对应于类别索引的位置上包含1,在所有其他位置上都为0。这确保了分类值以某些机器学习算法可以处理的方式表示。例如,如果我们有一个名为Color的分类变量,包含三个类别:红色(Red)、绿色(Green)和蓝色(Blue),独热编码将红色表示为[1, 0, 0],绿色为[0, 1, 0],蓝色为[0, 0, 1]。然后,这些独热编码的分类变量可以通过利用嵌入层(embedding layer)或模块的已学习权重矩阵映射到连续的嵌入向量中。

我们也可以将嵌入方法应用于图像等密集数据。例如,卷积神经网络(convolutional neural network, CNN)的最后几层可能会产生嵌入向量,如图1.1所示。

从技术上讲,神经网络的所有中间层输出(intermediate layer outputs)都可以产生嵌入向量。根据训练目标,输出层(output layer)也可能产生有用的嵌入向量。为了简单起见,图1.1中的卷积神经网络将倒数第二层(second-to-last layer)与嵌入相关联。

嵌入的维度可以比原始输入多或少。例如,使用嵌入方法进行极端表达(extreme expression),我们可以将数据编码成二维的密集和连续表示,以便进行可视化和聚类分析,如图1.2所示。

嵌入的一个基本属性是它们编码了距离(distance)或相似性(similarity)。这意味着嵌入捕捉了数据的语义(semantics),使得相似的输入在嵌入空间中彼此接近,这可以被视为嵌入的“结构保持(structure-preserving)”特性。

对于那些对更正式的数学解释感兴趣的读者,嵌入是输入空间 XX 和嵌入空间 YY 之间的一种单射(injective)和保持结构的映射。这意味着相似的输入将在嵌入空间中的邻近点定位,这可以被视为嵌入的“保持结构”特性。

潜在空间

潜在空间(Latent space)通常与嵌入空间(embedding space)同义,即嵌入向量被映射到的空间。

相似的项目在潜在空间中可能彼此接近;然而,这并不是一个严格的要求。更宽松地说,我们可以将潜在空间视为包含特征的任意特征空间(feature space),这些特征通常是原始输入特征的压缩版本。这些潜在空间特征可以由神经网络学习,例如重建输入图像的自编码器(autoencoder),如图1.3所示。

图1.3中的瓶颈(bottleneck)代表一个小的、中间的神经网络层,它编码或映射输入图像到低维表示。我们可以将这种映射的目标空间视为潜在空间。自编码器的训练目标是重建输入图像,即最小化输入和输出图像之间的距离。为了优化训练目标,自编码器可能会学习将相似输入(例如,猫的图片)的编码特征在潜在空间中彼此靠近放置,从而创建有用的嵌入向量,其中相似的输入在嵌入(潜在)空间中彼此接近。

表示

表示(Representation)是输入的一种编码的、通常是中间形式。例如,嵌入向量或潜在空间中的向量是输入的表示,如前所述。然而,表示也可以通过更简单的程序产生。例如,独热编码向量(one-hot encoded vectors)被认为是输入的表示。

关键思想是表示捕捉了原始数据的一些基本特征或特性,以便它对进一步分析或处理有用。

练习

1-1. 假设我们正在训练一个具有五个卷积层,然后是三个全连接(fully connected, FC)层的卷积网络,类似于AlexNet(
https://en.wikipedia.org/wiki/AlexNet),如图[fig

]所示。

我们可以将这些全连接层视为多层感知器(multilayer perceptron)中的两个隐藏层和一个输出层。哪些神经网络层可以用来产生有用的嵌入?感兴趣的读者可以在Alex Krizhevsky、Ilya Sutskever和Geoffrey Hinton的原始出版物中找到有关AlexNet架构和实现的更多详细信息。

1-2. 列举一些不是嵌入的输入表示类型。

控制面板
您好,欢迎到访网站!
  查看权限
网站分类
最新留言