在使用数据进行k均值聚类之前,我曾使用Mahalanobis距离去除数据中的异常值。异常值然后是一个单独的群集(“异常值”群集),以及由k-Means群集过程给出的其他群集。现在,我需要在生产中部署建模结果,而且我不确定如何根据新数据计算“异常值”群集。我的直觉告诉我,我不应该在新数据上“从头开始”计算马哈拉诺比斯距离,而应使用协方差矩阵和训练数据的均值,因为机器学习的基本基础假设是新的统计特性保持不变数据作为历史数据,因此,如果我计算从零开始的距离,我会将新数据视为训练数据中不相关的数据集,并且应用训练后的聚类模型(从移除后获得的聚类模型)将是不合适的举动使用Mahalanobis距离的离群值,在下一步中将聚类分配给新观测值。我在R中使用mahalanobis(x, center, cov)
函数,因此在这种情况下,x
应该是我的新数据帧,center
是训练数据中变量的均值, cov
是训练数据的协方差矩阵。
有人可以告诉我这种方法是否正确吗?如果没有,我应该如何进行?
非常感谢!