paint-brush
研究人员引入巧妙的数学技巧来增强微型数据集,而无需消耗 GPU经过@procrustes
692 讀數
692 讀數

研究人员引入巧妙的数学技巧来增强微型数据集,而无需消耗 GPU

经过 Procrustes Technologies5m2025/01/27
Read on Terminal Reader

太長; 讀書

研究人员开发了一种新方法,利用交叉验证重采样和潜在变量建模来训练人工智能,从而生成额外的数据点。
featured image - 研究人员引入巧妙的数学技巧来增强微型数据集,而无需消耗 GPU
Procrustes Technologies HackerNoon profile picture
0-item

作者:

(1)Sergey Kucheryavskiy,奥尔堡大学化学与生物科学系,通讯作者([email protected]);

(2)Sergei Zhilin,CSort,LLC,Germana Titova 街 7 号,巴尔瑙尔,656023,俄罗斯和撰稿人 0([email protected])。

编者注:这是一项研究的第 1 部分(共 4 部分),该研究详细介绍了一种用于增强数字和混合数据集的新方法。请阅读下文。

链接表

  • 摘要和 1 引言
  • 2 方法
    • 2.1 基于奇异值分解的 PV 集生成
    • 2.2 基于PLS分解的PV集生成
  • 3 结果
    • 3.1 数据集
    • 3.2 Tecator 数据的 ANN 回归
    • 3.3 心脏数据的ANN分类
  • 4 讨论
    • 5 结论与参考文献

抽象的

在本文中,我们提出了一种增强数字和混合数据集的新方法。该方法利用交叉验证重采样和潜在变量建模来生成额外的数据点。它对于具有中等到高度共线性的数据集特别有效,因为它直接利用此属性进行生成。该方法简单、快速且参数很少,如论文所示,不需要进行特定调整。它已经在几个真实数据集上进行了测试;在这里,我们报告了两种情况的详细结果,基于近红外光谱预测碎肉中的蛋白质(具有高度共线性的完全数字数据)和鉴别转诊进行冠状动脉造影的患者(混合数据,具有数字和分类变量,以及中等共线性)。在这两种情况下,都采用人工神经网络来开发回归和判别模型。结果表明模型性能明显改善;因此,对于肉类蛋白质的预测,将模型拟合到增强数据会导致独立测试集计算的均方根误差减少 1.5 到 3 倍。


关键词:数据增强、人工神经网络、Procrustes 交叉验证、潜在变量、共线性

1 简介

依赖于高复杂度模型的现代机器学习方法,例如人工神经网络 (ANN),需要大量数据来训练和优化模型。训练数据不足通常会导致过度拟合问题,因为需要调整的模型超参数数量远远大于数据集中的自由度数量。


在这种情况下,另一个常见问题是缺乏可重复性,因为 ANN 训练过程不是确定性的,因为初始模型参数的选择是随机的,并且优化具有随机性。因此,它永远不会产生具有相同参数和性能的模型,因为不同的训练试验会产生不同的模型。如果训练集太小,这种变化就会变得很大。


在拟合实验数据的情况下,这个问题尤其紧迫,因为进行多次实验试验通常既昂贵又耗时,因此根本不可能收集到进行适当训练和优化所需的数千个测量值。还可能存在其他障碍,例如与医学研究许可相关的文书工作。


解决训练数据不足问题的一种方法是通过模拟新数据点或对现有数据点进行小幅修改来人为地增强数据。这种技术通常被称为“数据增强”。事实证明,数据增强在图像分析和分类中特别有效,大量研究报告了通用的增强方法 [1] [2], [3] 和对特定情况特别有效的方法 [4] [5]。时间序列数据的增强方法也相对完善 [6]。


然而,对于具有中度到高度共线性的数值数据集,缺乏能够提供良好数据增强的有效方法。此类数据集在实验研究中广泛存在,包括各种类型的光谱数据、基因组测序结果(例如 16S RNA)等等。许多列表数据集还表现出变量相互关联的内部结构。当前可用的增强此类数据的方法大多依赖于在现有测量值中添加各种形式的噪声 [7],但这并不总是足够的。也有一些有前景的方法利用变分自编码器从其潜在变量空间中随机抽样 [8],或基于生成对抗网络的方法 [4]。缺点是这两种方法都需要构建和调整特定的神经网络模型来进行数据增强,因此需要彻底且耗费资源的优化过程和相对较大的初始训练集。


在本文中,我们提出了一种简单、快速、通用且有效的方法来增强数值和混合共线数据集。该方法基于一种最初为其他目的而开发的方法,特别是用于生成验证集,因此被称为 Procrustes 交叉验证 [9] [10]。然而,正如本文所展示的,它有效地解决了数据增强问题,从而显著提高了模型的预测或分类性能。


我们的方法直接利用了生成过程中的共线性。它用一组潜在变量拟合训练数据,然后采用交叉验证重采样来测量变量方向的变化。然后,这种变化作为采样误差引入训练集,从而产生一组新的数据点。


可以采用两种拟合模型——奇异值分解 (SVD) 和偏最小二乘 (PLS) 分解。拟合模型的选择允许用户优先考虑协方差结构的一部分,这将用于生成新数据。


两种拟合模型都有两个参数——潜在变量的数量和用于交叉验证重采样的段数。但实验表明,这些参数不需要进行特定的调整。任何数量的潜在变量,只要足以捕捉训练集值的系统性变化,都可以起到同样的作用。以及从三个开始的任何数量的段。


所提方法用途广泛,既可以应用于完全数字数据,也可以应用于包含一个或多个定性变量的表格数据。这开辟了另一个视角,即数据模拟,它非常有用,例如,可用于测试高负载软件系统,尽管我们在此不考虑这方面。


本文介绍了该方法的理论基础,并基于两个不同性质的数据集说明了该方法的实际应用和性能。它详细介绍了如何在现实场景中将该方法有效地应用于各种数据集。


我们已经用多种编程语言实现了该方法,包括 Python、R、MATLAB 和 JavaScript,所有实现都可以在 GitHub 存储库 (https://github.com/svkucheryavski/pcv) 中免费获取。此外,我们还提供了一个在线版本,用户可以直接在浏览器中生成新数据点 (https://mda.tools/pcv)。