如何使用两个不同的数据集作为 svm 的训练模型

数据挖掘 机器学习 r 数据挖掘 支持向量机
2021-10-03 21:50:24

我知道您应该使用训练数据中的参数(均值和标准差)来扩展测试数据。这个比较简单;但是如果一个训练数据集中的样本数量有限(例如 Set A = 5 个样本)所以我想结合两个数据集(即 Set A + Set B = 10 个样本)以获得足够的样本进行训练,什么可以我这样做是为了可以将两组缩放/标准化为一组,然后在我的测试集上使用这些参数?如果我单独缩放它们,我将有 2 个均值和 2 个标准差。

背景是我试图结合来自两个不同微阵列平台的两个微阵列表达,因此它们的表达范围不同。

提前谢谢你的帮助

2个回答

从正确的方法论的角度来看,您应该在两组合并后进行您提议的缩放。

无论哪种方式,模型都无法区分来自一个生成过程的异常读数,该异常读数属于另一个生成过程生成的范围,除非您还创建一个变量来指示观察来自的源系统(假设其他一切都是平等的)。

您需要确保两组观测值实际上代表相同的可能观测值群体,以便做出此建模决策。

我认为您需要的是一些预处理技术,例如分位数归一化。您可以查看Jeff Leek关于分位数归一化的文档。在教程中,他使用 R 代码对来自不同人群但针对相同基因的两项研究进行标准化。