1. 引言
随着数据维度的不断增加,降维(Dimensionality Reduction, DR)技术在数据预处理、探索性数据分析及可视化等方面的重要性日益凸显。由于人类通常通过二维或三维的方式感知世界,DR方法始终是数据科学领域的重要研究内容[1] [2]。传统的线性降维方法,如主成分分析(PCA) [3]和线性判别分析(LDA) [4],已被广泛应用。然而,这类方法基于线性假设,在处理非线性数据时性能往往受到限制,从而催生了更为先进的非线性降维技术。
在非线性降维方法中,t-分布随机邻域嵌入(t-SNE) [5]是一种典型方法,旨在降维的同时保持数据的局部和全局结构。t-SNE通过最小化原始空间与降维空间之间的KL (Kullback-Leibler)散度,对数据点之间的相似性进行有效建模。然而,由于其依赖迭代优化且缺乏参数化形式,t-SNE在扩展性与泛化能力方面仍存在一定局限[6]。
为了解决这些问题,研究者们相继提出了若干改进算法,包括t-SNE的优化版本[7]、统一流形近似投影(UMAP) [8] [9]和TriMap [10]。这些方法在不同应用场景中均表现出色,其中类t-SNE和UMAP在保持数据的局部结构方面尤为有效,但在全局结构的保留上仍存在不足[11] [12]。作为新兴方法,TriMap在全局结构保持方面具有一定优势,但其性能较大程度依赖于初始化,而非算法本身的特性[6] [13]。然而,目前尚无单一方法能够同时平衡局部与全局结构的保持。由于各类算法的损失函数设计和参数敏感性存在差异,比较这些方法依然充满挑战[14]。即使是密切相关的算法,如t-SNE和UMAP,它们实现点间排斥力的方式也各不相同,因此直接比较并不容易[11] [15]-[17]。
近年来,参数化降维方法取得了显著进展,如参数化t-SNE [18]和参数化UMAP [19]。这类方法利用神经网络实现高效且灵活的数据嵌入,能够在无需重新训练的情况下处理新数据。类似地,ivis [20]通过引入孪生神经网络(Siamese Neural Networks, SNNs) [21] [22]进一步提升了降维效果。此外,Adam优化器[23]和Leaky ReLU激活函数[24] [25]等优化技术在解决局部极小值等问题上也发挥了重要作用,推动了这些方法在多种数据类型与结构上的广泛应用[18]。
2. 相关工作
DR技术是数据可视化与分析中的重要工具,能够将高维数据映射到低维空间,便于直观解读与分析。经典的DR方法,如PCA和LDA,主要通过最大化数据的方差或增强类别分离性来实现降维。然而,这类方法在处理复杂的非线性数据时表现不足。因此,非线性降维方法[26] [27]应运而生,旨在更好地保持数据点之间的局部与全局关系。例如,LargeVis [28] [29]在t-SNE基础上优化,去除了嵌入空间的规范化约束,提升了计算效率和扩展性。统一流形近似投影(UMAP) [8]结合代数拓扑理论,能够在降低计算成本的同时保持局部结构,其性能与t-SNE和LargeVis相当。
随机邻域嵌入(SNE) [30]及其改进版t-SNE通过最小化高维空间与低维空间之间的Kullback-Leibler散度,有效地保持了数据的局部结构。然而,t-SNE等非参数方法存在一个显著局限:缺乏显式的映射函数,导致无法有效泛化到新数据。为了解决这一问题,研究者提出了参数化改进版本。
例如,参数化t-SNE [31]通过引入受限玻尔兹曼机(RBM) [18]预训练的神经网络,进一步扩展了t-SNE的功能,使其能够有效泛化到新数据集。同样,UMAP也发展出参数化版本[19],利用深度学习框架提高了算法的可扩展性,并有效缓解了局部极小值问题。这些参数化方法将非参数方法的结构保持能力与参数模型的灵活性相结合,标志着DR技术取得了重要的突破性进展。
值得注意的是,ivis [20]采用了带三元组损失函数的有监督神经网络架构,在模拟数据与单细胞数据分析中展现出较强的全局结构保持能力。然而,ivis在局部结构的保持方面仍存在不足。尽管ivis引入了显式的映射函数,使得新数据点能够被无缝添加,但局部结构的保持性能仍有提升空间。
针对这一问题,本文提出了一种新的参数化降维框架——Trivis。该框架旨在增强数据局部结构的保持能力,同时继承现有方法在全局结构保持方面的优势,从而在局部与全局结构保持之间实现更好的平衡。
2.1. 降维方法
假设数据集为
,其中行向量
表示D维数据点,T表示向量和矩阵的转置。在实践中,特征维度D通常较高。降维的目标是将矩阵
转换为低维矩阵
(
),通过映射f在Y中保持X中样本点之间的关键相对关系,可形式地表示为:
(1)
公式(1)表示数据集中每个高维数据点
被映射为低维空间中的一个d维向量
。通常,映射f是未知的,需要根据高维样本点的位置关系通过学习进行确定。为了定义或学习该映射f,需要准确地描述并捕捉样本点之间的关系,以便在降维过程中尽可能保留这些关系。一般而言,矩阵X中的所有条目为数值型数据,而非类别型变量。
2.2. 非参数降维方法
一种有效学习映射f的方法是t-SNE模型。t-SNE是一种非参数技术,在降维的同时保留数据的局部结构。t-SNE的映射f是通过最小化高维空间样本点概率矩阵与低维空间基于t-分布的联合概率矩阵之间的KL散度来确定的。KL散度越小,高维与低维空间之间的样本点概率矩阵越相似。在高维空间中,样本点
和
的概率定义如下:
(2)
其中,
是点
的高斯核带宽,符号
表示欧几里得距离。设置
,此时概率矩阵的行和为1。从公式(2)可知,当两点
和
之间的距离越小,概率
越大,说明两点之间的相似性越强。此外,
的值可以用来调整点
周围的邻域尺度,并影响其局部相似性结构的构建。较大的
值扩大了
的邻域范围,使更远的点也会对相似性产生贡献;较小的
值则收紧邻域范围,更加强调近邻点的影响。合理选择或调整
有助于捕捉数据的局部结构特征。
类似地,在低维空间中,基于t-分布的样本点
和
的联合概率定义如下:
(3)
同样设置
,此时概率矩阵的行和为1。与
类似,
反映了低维空间中样本点之间的相似性结构。
更具体地,t-SNE中的映射f通过最小化KL散度得到;两个概率矩阵之间的KL散度,定义如下:
(4)
在优化过程中,公式(4)的值不断减小,高维和低维空间概率矩阵元素
和
之间的不一致性逐渐降低。最终,低维空间中的数据点
的位置关系尽可能准确地反映高维空间中数据点
的位置关系。
综上,从公式(2)到(4)可以看出,t-SNE中的映射f是一种从高维数据点到低维数据点的非参数映射,能有效捕捉高维空间中的局部结构。
2.3. 参数化降维方法
t-SNE和UMAP是典型的非参数方法。而其参数化版本(即参数化t-SNE和参数化UMAP)通过引入基于神经网络的方法学习未知的映射函数f,从而提供了更大的灵活性和可扩展性。一旦神经网络完成了对f的学习,参数化方法便能够高效处理新数据点,而无需重新训练模型。
参数化降维方法旨在通过学习一个显式的映射函数来扩展非参数方法的灵活性,使其能够直接且轻松地应用于新数据点。例如,参数化t-SNE使用受限玻尔兹曼机(RBMs)来近似映射f [32]。RBMs通常采用分层堆叠的方式进行预训练,然后通过优化t-SNE的目标函数进行微调。类似地,参数化UMAP使用典型的随机梯度下降深度学习框架来学习映射f。这种神经网络通过保留数据的拓扑结构来训练,类似于非参数UMAP的方法。神经网络的架构通常由多层神经元组成,并配有激活函数,使网络能够学习从高维到低维的复杂映射关系。
参数化t-SNE和参数化UMAP都利用深度学习优化器和激活函数来克服局部极小值问题,并增强降维过程的可扩展性。引入这些参数化映射函数标志着降维领域的显著进步,使降维技术的应用更加多样化且具有更强的可扩展性。
使用神经网络的参数化DR方法有以下几点优势:
可扩展性:神经网络能够高效处理大规模数据集,非常适合处理涉及海量数据的实际应用场景[18]。
泛化能力:训练完成后,神经网络能够很好地泛化到新数据点,在不同数据集上表现出较强的鲁棒性[19]。
灵活性:神经网络通过其分层架构可以学习数据中的复杂转换关系,从而支持多种数据变换和交互方式[31]。
高效性:参数化模型可以使用基于梯度的优化方法,确保即使在复杂任务中也能够实现高效的训练[8]。
3. 基于三元组的DR方法
3.1. 基于三元组的非参数化方法
最初,嵌入技术(如t-SNE、UMAP和LargeVis)主要关注点对点的关系。这些方法利用点对点距离度量(如欧几里得距离)来保留数据点之间的空间关系。然而,点对点方法仅关注相邻点,往往忽略远距离点,从而在处理复杂数据结构时可能无法捕捉更复杂的关系。
为了解决这一局限,DR技术逐渐发展为反映三元组的相对(非)相似性,而不局限于点对点关系。形式上,三元组是由三个数据点a、p、n构成的约束,简记成
,其含义是“点a与点p的相似性大于点a与点n的相似性”。与仅关注点对点距离或相似性的度量不同,t-分布随机三元组嵌入(t-STE) [33]利用三元组约束来更好地捕捉数据点之间的复杂关系。三元组约束框架的设计灵感来自人类对于物品相似性判断的方式[34],通常被认为更加可靠。在本文中,定义三元组集合为:
(5)
在t-STE中,三元组的概率
定义如下:
(6)
其中,
是t-分布的自由度。当点a和p之间的距离减小时,概率
增大,意味着a和p更相似;反之,当a和n的距离增大时,概率
也会增大,意味着a和n的相似性更低。因此,概率
可以用
来描述三元组
的相对(非)相似性。
求解DR转换映射f的方法是最大化所有三元组约束的对数似然函数:
(7)
在现有文献中,点a被称为锚点,点p被称为正样本,点n被称为负样本。最大化目标函数L的过程旨在学习嵌入f函数,使得在低维空间中,锚点与正样本之间的距离更近,而与负样本的距离更远。这种方法确保嵌入后的点在低维空间中能够更准确地反映数据点之间的相对关系。
在文献[13]中,受t-STE启发,提出了一种新的降维可视化方法TriMap,其重点在于更准确地保留全局结构。TriMap中,三元组
的满足概率(satisfaction probability)定义为:
(8)
当
时,满足概率
。目标函数定义为:
(9)
其中
,
是分配给三元组
的权重。当
减小时,
增大;而当
增大时,
同样增大。
在公式(9)中,TriMap首次引入了权重
,以反映高维空间中的相对相似性。三元组
的初始权重定义为:
(10)
其中
是高维空间中
和
之间的距离度量。文献[35]中引入了一种缩放距离度量:
(11)
其中
,
是点
与其第4至第6邻居之间的平均欧几里得距离。这种
的选择根据数据密度自适应调整缩放。
在TriMap中,最终权重
通过减去最小初始权重值后再进行对数变换得到,定义为:
(12)
其中:
并且:
3.2. 基于三元组的参数化方法:ivis
通常,结构保持型DR需要复杂的神经网络架构设计。显然,三元组关系与点对点关系有着本质的区别。因此,相较于点对点关系,三元组降维方法的参数化需要一种不同于点对点的网络架构。为此,一种高效的三元组网络架构[36]被提出,该架构的开发基于孪生神经网络(Siamese Neural Networks, SNNs) [37]。
该架构通过独特的设计在评估输入相似性上表现出色,包含三个完全相同的基础网络。每个网络由三层密集层(每层包含128个神经元)组成,最终连接到一个嵌入层,该层的维度由目标输出维度决定。例如,在降维到二维空间时,嵌入层输出就选取为两个神经元。
SNNs的密集层采用缩放指数线性单元(SELU)激活函数,其数学定义为:
(13)
其中,λ和α分别取值为1.05和1.67。这种配置赋予了网络自正则化的特性,有助于将激活值保持在最佳范围内。隐藏层的权重参数采用LeCun正态分布初始化,而嵌入层采用线性激活函数,并使用Glorot均匀分布初始化权重参数。LeCun正态分布和Glorot均匀分布的数学定义为:
(14)
其中,n表示输入到隐藏层的神经元数量,
和
分别为嵌入层的输入和输出神经元数量。
为避免过拟合并增强模型鲁棒性,SNNs的密集层之间引入了Alpha Dropout层,选择0.1的丢弃率。这种策略不仅降低了过拟合风险,还通过保持输入的均值和方差支持SELU的自正则化特性。
Hoffer和Nir [36]指出,SNNs非常适合用于三元组类型的降维任务。在此启发下,文献[20]提出了基于SNNs的降维框架ivis,其损失函数定义为
(15)
其中
,m为边界(一个小的正数),其作用是控制降维过程中参与求和的三元组数量。损失函数
是标准三元组损失函数的一种变体[38] [39],能有效替代传统三元组损失函数和softmax-ratio损失函数[36]。最小化
的目标是确保锚点和正样本之间的距离比锚点和负样本之间的距离至少小值m。
SNNs的训练依赖于三元组目标函数
,目标是通过遵循每个三元组的相对距离约束来优化嵌入空间。虽然公式中未显式包含高维空间中数据点的信息,但SNNs网络架构中的输入为高维数据点,这意味着高维空间中的信息在ivis的训练过程中被逐步学习。
3.3. 新三元组参数降维方法:Trivis
针对在第1节提到的ivis模型局部结构保持方面存在不足的这一问题,本文设计了一种针对三元组局部结构优化的新的损失函数和采样方法。
ivis方法在全局结构保持方面表现出色,但在局部结构保持方面仍存在不足。这种不足的原因可能是公式(15)中的目标函数
仅涉及三元组中的减法运算,而减法运算难以准确描述数据点在三元组约束情况下低维空间中数据点的局部相对结构。受[10] [33]的启发,本文提出了一种新的目标损失函数,定义如下:
(16)
其中,
。一般来说,可以任意采用其他距离度量方式。基于SNNs,我们提出了一个新的降维框架(Trivis),其标准三元组目标函数为
。图1展示了Trivis的技术流程图。最终的损失函数
在整个降维框架中使用带动量的全批量梯度下降法进行最小化。
Figure 1. Sampling method optimization
图1. 采样方法优化
相比于公式(15),Trivis的目标函数(16)引入了除法来计算损失函数,使其值域落在了区间(0, 1)之中。这一修改有助于在低维空间中更好地保持数据点的局部结构。这种损失函数的改变使得三元组之间相似性比例的评估更加平衡,从而能够准确反映高维空间中点的相对位置关系,进一步增强了局部结构的保持能力。
本文也对三元组的采样进行了改进,细节如下:在原始SNNs中,一个锚点仅对应一个三元组;在新的SNNs中,一个锚点可以对应多个三元组(参见图1)。这一改进,让一个锚点在降维过程中有更多的特征进行位置选取,在保持全局结构的同时,显著增强了局部结构的保持能力。有关Trivis训练的更多细节和改进,请参见算法1。
通过以上设计,Trivis在降维任务中表现出色,能够有效捕捉和平衡数据的局部和全局结构。
算法1 Trivis算法 |
输入:数据集X,嵌入维度d |
输出:低维映射Y |
初始化:构建或加载Annoy KNN矩阵 基于Annoy KNN矩阵得到三元组邻接矩阵 定义三元组损失函数
,指定距离度量 使用优化器和
编译SNNs模型 |
for 1: TotalEpochs 根据邻接矩阵从数据集中生成多个三元组 对这些三元组进行前向传播和反向传播训练模型 if 验证损失满足提前停止条件 then 终止训练 end if |
end for |
返回:训练好的模型,可将高维数据X映射到低维嵌入Y |
算法1呈现了Trivis的伪代码。显然,三元组的采样在Trivis框架中起着关键的作用。在训练过程中动态生成三元组对于捕捉数据的局部和全局特性非常重要。一般地,在训练过程中每一个点都会被作为锚点输入;初始构建的Annoy KNN矩阵涵盖了K近邻的全部信息,三元组可以基于此矩阵进行样本点选择;Trivis从Annoy KNN矩阵中选择输入锚点的K近邻作为正样本,选择非K近邻作为负样本。
与原始ivis算法相比,Trivis在输入模块上做了增强改进。在原始ivis算法中,每个锚点仅对应一个三元组;而在Trivis中,每个锚点可以对应多个三元组。具体而言,Trivis为每个锚点允许选择nm个三元组,其中n是正样本数,m是负样本数。显然,n和m可以作为可调节的超参数。通过增加n和m,就能提供更多的相似性和非相似性约束,从而改进Trivis的局部收敛能力。这种灵活性使得Trivis能够更好地捕捉数据的全局和局部结构。
然而,需要注意的是,选取过大的n和m可能会给SNNs带来显著的计算负担,从而降低降维过程的效率。对于参数的选择,在我们的实验中,选定
,
,以平衡局部收敛优化与计算效率。这种选择使得模型能够在提升局部收敛性的同时,保持降维过程的整体效率。事实上,如果使用大量三元组会带来很大的计算开销,并且需要大量迭代才能收敛。
此外,本文中的实验训练还设置了提前中止训练机制:SNNs在1000个训练轮中以128个样本的小批量进行训练,使用Adam优化器进行高效的反向传播;当验证集上的损失在50个连续轮次中不再下降时,将提前停止训练。这一机制确保了训练效率,同时不会降低训练质量,从而有效降低了三元组参数化降维方法的计算负担。
4. 实验
4.1. 基准方法
为了评估全局结构的保持能力,我们使用了原始ivis和PCA作为基准方法,通过直接降低维度并对比从三个3D数据集的可视化结果来比较它们的全局结构保持效果。为了评估局部结构的保持能力,我们将经典的t-SNE方法及其参数化版本p-tSNE作为基准方法,利用K近邻(KNN)指标和支持向量机(SVM)指标对改进模型的局部结构保持能力进行评估。
4.2. 质量指标
与其他文献类似,我们使用带标签的数据集来评估不同降维方法的质量。在算法完成降维后,利用标签进行评估;本文考虑了一个全局结构指标和二个局部结构指标。
一般地,全局结构指标通过质心三元组准确率(Centroid Triplet Accuracy, CTA)来衡量。另外,我们还采用了对三维数据降维后的嵌入结果进行直观地可视化,即将其降至二维来观察,以此评估全局结构是否得以保持。这种方法能让我们直观地辨别出高维空间中数据点的总体排列和关系在低维表示里是否得到了保持。
局部结构保持的质量主要通过两种指标来评估。首先,应用留一法交叉验证,并使用K近邻(KNN)分类器进行评估。这已成为降维方法评估的标准方法。其背后的原理是,标签在小的邻域内通常具有相似性,因此基于邻域的分类准确性应与高维空间中的分类准确性保持接近。此外,如果降维方法未能保持邻域关系,我们预期KNN的预测准确度会下降。定义KNN准确率为:
(17)
其中
是指示函数,
是第i个样本的真实标签,而
是KNN预测的标签。
此外,我们还借助非线性SVM模型来评估局部结构的准确性。采用径向基函数RBF核,并通过交叉验证的方式进行评估。与KNN相似,SVM准确率衡量的是邻域的紧凑程度,不过它在处理密度不均的数据时更具灵活性。具体而言,对于每种DR方法,我们将嵌入数据划分为5个部分,每次利用其中4个部分训练SVM模型,再用剩余的部分进行准确性评估。定义SVM准确率为:
(18)
其中是由训练好的支持向量机(SVM)模型预测的标签。
4.3. 实验过程与结果
在本节中,将Trivis应用于一组真实的数据集,并与t-SNE、参数化t-SNE、ivis、PCA、UMAP和PaCMAP方法进行比较。在实验中,使用的数据集包括3D数据集S-curve、Swiss roll、Mammoths和高维数据集20NG、COIL-20、USPS、MNIST和FMNIST,其中所有参数分析将用模拟数据集来进行实验。所有实验均在一台配备3.00 GHz Intel Core i5 CPU和16 GB内存的计算机上运行。在程序实现上,使用了t-SNE和PCA的默认sklearn实现,而参数化t-SNE和ivis则基于GitHub上的项目实现。表1~3中的指标值均为重复50次实验取均值得到的结果。
图2~4展示了几个3D数据集的二维可视化结果。从展示结果可以看出:Trivis和ivis在保持全局结构方面表现良好;PCA模型也能够有效的保持全局结构;而t-SNE和p-tSNE模型则在保持全局结构方面表现较差。这表明,Trivis成功地继承了ivis在全局结构保持方面的优点。
Table 1. CTA values of ivis and Trivis
表1. ivis和Trivis的CTA指标值
Dataset |
ivis |
Trivis |
COIL-20 (1.4 K) |
0.7655 |
0.8021 |
USPS (9 K) |
0.8515 |
0.8521 |
20NEWSGROUPS (18 K) |
0.7876 |
0.7905 |
MNIST (70 K) |
0.7757 |
0.7858 |
F-MNIST (70 K) |
0.8505 |
0.8424 |
Figure 2. Results of DR for each model of the 3D dataset S-curve
图2. 三维数据集S-curve各模型降维结果
Figure 3. Results of DR for each model of the 3D dataset Swiss roll
图3. 三维数据集Swiss roll各模型降维结果
Figure 4. Results of DR for each model of the 3D dataset Mammoths
图4. 三维数据集Mammoths各模型降维结果
具体地说,从图2~4都可以看出ivis,Trivis和PCA都保留了嵌入空间中每个簇的形状和相对位置,而t-SNE和p-tSNE的嵌入都产生了额外的虚假簇,并且完全丢失了所有簇间关系。表1列出了几个高维数据集的降维全局结构指标CTA的值;从该指标值可以看出,Trivis比ivis更能保持全局结构。
表2,表3分别列出了几个高维数据集的降维局部结构KNN指标值和SVM指标值。从这两个指标值可以看出,尽管Trivis模型比不上t-SNE模型,但Trivis模型的局部结构能力相较于ivis模型得到了明显的改善。
Table 2. KNN metrics for each dataset in each model
表2. 各模型中各数据集的KNN指标
(a) |
Dateset (size) |
t-SNE |
p-tSNE |
Trivis |
ivis |
PCA |
COIL-20 (1.4 K) |
0.993 ± 0.005 |
0.602 ± 0.020 |
0.799 ± 0.004 |
0.744 ± 0.001 |
0.667 ± 0.001 |
USPS (9 K) |
0.963 ± 0.002 |
0.926 ± 0.006 |
0.899 ± 0.008 |
0.710 ± 0.010 |
0.475 ± 0.001 |
20NEWSGROUPS (18 K) |
0.575 ± 0.014 |
0.135 ± 0.031 |
0.362 ± 0.006 |
0.188 ± 0.013 |
0.091 ± 0.001 |
MNIST (70 K) |
0.960 ± 0.012 |
0.943 ± 0.160 |
0.967 ± 0.010 |
0.613 ± 0.007 |
0.379 ± 0.001 |
F-MNIST (70 K) |
0.805 ± 0.008 |
0.703 ± 0.010 |
0.795 ± 0.010 |
0.625 ± 0.006 |
0.452 ± 0.001 |
(b) |
Dateset (size) |
UMAP |
PaCMAP |
COIL-20 (1.4 K) |
0.915 ± 0.015 |
0.964 ± 0.021 |
USPS (9 K) |
0.963 ± 0.010 |
0.962 ± 0.013 |
20NEWSGROUPS (18 K) |
0.555 ± 0.014 |
0.547 ± 0.016 |
MNIST (70 K) |
0.963 ± 0.006 |
0.966 ± 0.009 |
F-MNIST (70 K) |
0.771 ± 0.011 |
0.752 ± 0.010 |
Table 3. SVM metrics for each dataset in each model
表3. 各模型中各数据集的SVM指标
(a) |
Dateset (size) |
t-SNE |
p-tSNE |
Trivis |
ivis |
PCA |
COIL-20 (1.4 K) |
0.831 ± 0.015 |
0.441 ± 0.021 |
0.799 ± 0.004 |
0.744 ± 0.001 |
0.649 ± 0.001 |
USPS (9 K) |
0.959 ± 0.002 |
0.940 ± 0.016 |
0.928 ± 0.011 |
0.710 ± 0.010 |
0.564 ± 0.001 |
20NEWSGROUPS (18 K) |
0.435 ± 0.014 |
0.127 ± 0.046 |
0.374 ± 0.006 |
0.188 ± 0.013 |
0.146 ± 0.001 |
MNIST (70 K) |
0.967 ± 0.002 |
0.964 ± 0.121 |
0.957 ± 0.010 |
0.714 ± 0.007 |
0.468 ± 0.001 |
F-MNIST (70 K) |
0.748 ± 0.003 |
0.739 ± 0.010 |
0.762 ± 0.010 |
0.685 ± 0.006 |
0.556 ± 0.001 |
(b) |
Dateset (size) |
UMAP |
PaCMAP |
COIL-20 (1.4 K) |
0.814 ± 0.004 |
0.939 ± 0.009 |
USPS (9 K) |
0.928 ± 0.002 |
0.956 ± 0.001 |
20NEWSGROUPS (18 K) |
0.416 ± 0.014 |
0.446 ± 0.006 |
MNIST (70 K) |
0.959 ± 0.001 |
0.967 ± 0.031 |
F-MNIST (70 K) |
0.729 ± 0.003 |
0.734 ± 0.004 |
Figure 5. Visualisation results of DR of high-dimensional datasets in each model
图5. 各模型中高维数据集的降维可视化结果
图5展示了几个高维数据集的二维可视化结果。从图5可看出,ivis在保持全局结构方面的效果与PCA模型相当;Trivis在保持局部结构方面显著优于原始ivis;t-SNE和p-tSNE模型在保持局部结构方面与表现相当;Trivis的类簇比t-SNE和p-tSNE的类簇分得更开,区分更明显。特别地,在Trivis模型下,MNIST和FMNIST数据集中的全局结构保持效果得到了显著提升。具体地说,针对MNIST数据集,可看出手写数字4,7和9之间具有较强的相似性;手写数字3,5和8之间的相似性也比较显著;而手写数字1和2与其他数字的相似性较弱;手写数字0和6之间存在一定的相似性。这与我们对手写体数字0~9的目力识别感觉一致,突显了Trivis方法在保持全局结构方面的优势;而通过t-SNE模型降维得到的类簇之间区分不明显,没有得到类似信息。针对FMNIST数据集,Trivis模型降维得到的鞋类簇、包类簇和服装类簇之间区分明显;而其他的降维方法没能得到如此强度的类簇区分信息。
总的来说,以上实验结果展示了Trivis模型保持降维局部结构和全局结构方面的能力;全局和局部结构的双重保持能力,突显了Trivis在数据可视化中的综合有效性。
4.4. 参数敏感性分析
4.4.1. 采样参数分析
为了深入探究多三元组采样策略中参数n和m的选择对模型性能的影响,我们进行了一系列实验。利用Python的numpy和scikit-learn库模拟生成了多个不同规模和特征的数据集。例如,生成一个具有500个样本、10维特征的数据集simulated_data_1,数据分布近似高斯分布;再生成一个包含800个样本、20维特征的数据集simulated_data_2,数据分布具有一定的聚类结构。
针对每个模拟数据集,设定不同的n和m值组合,包括(n = 1, m = 1)、(n = 2, m = 2)、(n = 3, m = 3)、(n = 5, m = 5)以及(n = 7, m = 7)。对每个组合,使用Trivis模型进行10次降维实验,降维后的维度设定为2维。
从表4可以看出,随着n和m值的增加,模型在保持数据局部和全局结构方面的性能总体呈上升趋势,但当n和m过大(如n = 7, m = 7)时,性能提升幅度变缓,且可能会增加计算负担。在不同数据集上,合适的n和m值有所差异。对于具有近似高斯分布的simulated_data_1数据集,(n = 5, m = 5)时模型性能相对较好;而对于具有聚类结构的simulated_data_2数据集,(n = 5, m = 5)同样表现出较好的性能,但在实际应用中,还需结合具体数据特点和计算资源来选择合适的参数。
Table 4. Simulation dataset sampling parameter analysis indicators
表4. 模拟数据集采样参数分析指标
Dataset |
(n, m) |
CTA |
KNN准确率 |
SVM准确率 |
simulated_data_1 |
(1, 1) |
0.653 ± 0.021 |
0.725 ± 0.018 |
0.684 ± 0.023 |
simulated_data_1 |
(2, 2) |
0.702 ± 0.019 |
0.786 ± 0.015 |
0.745 ± 0.020 |
simulated_data_1 |
(3, 3) |
0.751 ± 0.016 |
0.823 ± 0.012 |
0.782 ± 0.018 |
simulated_data_1 |
(5, 5) |
0.780 ± 0.014 |
0.851 ± 0.010 |
0.810 ± 0.015 |
simulated_data_1 |
(7, 7) |
0.775 ± 0.015 |
0.845 ± 0.011 |
0.802 ± 0.016 |
simulated_data_2 |
(1, 1) |
0.582 ± 0.025 |
0.654 ± 0.020 |
0.613 ± 0.025 |
simulated_data_2 |
(2, 2) |
0.640 ± 0.022 |
0.720 ± 0.018 |
0.675 ± 0.022 |
simulated_data_2 |
(3, 3) |
0.705 ± 0.019 |
0.785 ± 0.015 |
0.730 ± 0.020 |
simulated_data_2 |
(5, 5) |
0.750 ± 0.016 |
0.830 ± 0.012 |
0.775 ± 0.018 |
simulated_data_2 |
(7, 7) |
0.740 ± 0.017 |
0.820 ± 0.013 |
0.760 ± 0.019 |
4.4.2. 模型参数分析
为了探究不同参数设置对Trivis模型性能的影响,指导实际应用中的参数选择,我们对网络结构和优化器参数进行了敏感性分析。利用模拟生成的包含800个样本、25维特征的数据集simulated_data_3,数据分布具有一定的层次结构。
网络结构参数:调整Siamese神经网络(SNNs)的网络结构。分别设置隐藏层的层数为2层、3层和4层,每层神经元的数量分别为64、128和256。对不同网络结构设置下的Trivis模型在数据集simulated_data_3上进行降维实验,降维后的维度为2维,实验重复多次,评估指标采用CTA、KNN准确率和SVM准确率。实验结果如下表所示:
Table 5. Simulation dataset network structure parameter analysis indicators
表5. 模拟数据集网络结构参数分析指标
隐藏层层数 |
每层神经元数量 |
CTA |
KNN准确率 |
SVM准确率 |
2 |
64 |
0.700 ± 0.018 |
0.760 ± 0.012 |
0.720 ± 0.015 |
2 |
128 |
0.730 ± 0.016 |
0.790 ± 0.010 |
0.750 ± 0.013 |
2 |
256 |
0.740 ± 0.015 |
0.800 ± 0.009 |
0.760 ± 0.012 |
3 |
64 |
0.720 ± 0.017 |
0.770 ± 0.011 |
0.730 ± 0.014 |
3 |
128 |
0.760 ± 0.014 |
0.820 ± 0.008 |
0.780 ± 0.011 |
3 |
256 |
0.770 ± 0.013 |
0.830 ± 0.007 |
0.790 ± 0.010 |
4 |
64 |
0.710 ± 0.017 |
0.760 ± 0.011 |
0.720 ± 0.014 |
4 |
128 |
0.750 ± 0.015 |
0.810 ± 0.008 |
0.770 ± 0.012 |
4 |
256 |
0.760 ± 0.014 |
0.820 ± 0.007 |
0.780 ± 0.011 |
从表5可以看出,随着隐藏层层数和每层神经元数量的增加,模型性能总体有所提升,但当增加到一定程度后,性能提升幅度变小,且计算时间明显增加。在本实验中,3层隐藏层、每层128个神经元的网络结构在性能和计算效率之间取得了较好的平衡。
优化器参数:针对使用的Adam优化器,改变其学习率(分别设置为0.001、0.0001和0.00001)和动量(分别设置为0.8、0.9和0.95)。在相同的数据集simulated_data_3上进行降维实验,降维后的维度为2维,实验重复10次,使用CTA、KNN准确率和SVM准确率评估模型性能。实验结果如下表所示:
Table 6. Simulated dataset optimizer parameter analysis metrics
表6. 模拟数据集优化器参数分析指标
学习率 |
动量 |
CTA |
KNN准确率 |
SVM准确率 |
0.001 |
0.8 |
0.700 ± 0.019 |
0.740 ± 0.014 |
0.700 ± 0.019 |
0.001 |
0.9 |
0.720 ± 0.018 |
0.760 ± 0.013 |
0.720 ± 0.018 |
0.001 |
0.95 |
0.730 ± 0.017 |
0.770 ± 0.012 |
0.730 ± 0.017 |
0.0001 |
0.8 |
0.710 ± 0.018 |
0.750 ± 0.013 |
0.710 ± 0.018 |
0.0001 |
0.9 |
0.740 ± 0.016 |
0.780 ± 0.012 |
0.740 ± 0.016 |
0.0001 |
0.95 |
0.750 ± 0.015 |
0.790 ± 0.011 |
0.750 ± 0.015 |
0.00001 |
0.8 |
0.680 ± 0.020 |
0.720 ± 0.015 |
0.670 ± 0.020 |
0.00001 |
0.9 |
0.700 ± 0.019 |
0.740 ± 0.014 |
0.700 ± 0.019 |
0.00001 |
0.95 |
0.710 ± 0.018 |
0.750 ± 0.013 |
0.710 ± 0.018 |
从表6可以看出,学习率和动量对模型性能有一定影响。学习率过大时,模型收敛速度快但容易错过最优解,导致性能下降;学习率过小时,模型收敛速度慢,训练时间长。动量在一定范围内增大,有助于加快模型收敛速度和提升性能。在本实验中,学习率为0.0001、动量为0.95时,模型在保持数据结构方面表现较好。
综上所述,在实际应用中,应根据数据的规模、特征和计算资源等因素,合理选择Trivis模型的网络结构和优化器参数,以获得最佳的降维效果。
5. 结论
在数据挖掘中,经常需要将复杂的高维数据可视化到二维或三维空间中,因此降维和可视化仍然是数据处理和机器学习中的核心问题之一。基于三元组约束的参数化降维方法为实现高质量、可扩展和高效的数据嵌入开辟了新的路径。本文提出了一种新的基于三元组约束的参数化降维框架(Trivis),旨在增强现有三元组约束降维方法在局部结构保持方面的能力。实验结果表明,Trivis能够有效地在数据中捕捉全局和局部结构,提供了一种稳健的高维数据可视化解决方案。未来的工作将进一步改进该框架,并扩大其在不同数据环境中的应用和普适性。