基于聚类线性回归的新型预测方法(Python代码实现)

欢迎来到本博客❤️❤️❤️

博主优势:博客内容尽量做到思维缜密,逻辑清晰,为了方便读者

本文目录如下:⛳️⛳️⛳️

目录

1 概述

2 数学模型

3 仿真结果

4 总结 

1 概述

在本文中,探讨了基于聚类线性回归 (CLR) 的不同回归模型。 CLR 旨在将数据划分为 k 个集群,以便适合每个集群的线性回归最小化整个数据的总体均方误差。阻止使用找到的回归模型对看不见的测试点进行预测的主要障碍是,当目标变量的值未知时,缺乏合理的方法来获取 CLR 集群标签。在本文中,我们提出了两种解决这个问题的新方法。第一种方法,预测 CLR 构建一个单独的分类模型来预测测试 CLR 标签。第二种方法,受约束的 CLR 使用一组用户指定的约束来强制某些点进入相同的集群。假设测试点的约束值是已知的,它们可以直接用于分配 CLR 标签。我们在三个 UCI ML 数据集以及大量健康保险索赔语料库上评估这两种方法。我们表明,与已知的基于 CLR 的回归方法相比,所提出的两种算法都显着改进。此外,预测 CLR 始终优于线性回归和随机森林,并显示出与支持 UCI ML 数据集上的向量回归相当的性能。受约束的 CLR 方法在健康保险数据集上实现了最佳性能,而计算时间仅比线性回归增加了约 20 倍。

2 数学模型

聚类线性回归 (CLR) [21] 是一种有效的分析数据的技术,这些数据假定是由线性回归模型的混合生成的。形式上,给定一个具有 n 个点和 d 个特征 X \in \mathbb{R}^{n \times d}, Y \in \mathbb{R}^{n} 的数据集,CLR 旨在将数据划分为 k 个不相交的集群,从而使每个集群内的线性回归模型的平方误差之和最小化:

                                  \min _{C_{i}, w_{i}, b_{i}} \sum_{i=1}^{k} \sum_{j \in C_{i}}\left(y_{j}-x_{j}^{T} w_{i}-b_{i}\right)^{2}

其余数学模型及解释见第四部分。

基于聚类线性回归的新型预测方法(Python代码实现)_第1张图片

3 仿真结果

基于聚类线性回归的新型预测方法(Python代码实现)_第2张图片

基于聚类线性回归的新型预测方法(Python代码实现)_第3张图片 基于聚类线性回归的新型预测方法(Python代码实现)_第4张图片

4 总结 

总结所有实验的结果,我们可以看到所提出的算法组成了一个非常灵活的回归模型族。当数据中有一组合理的约束可用时,CLR-c 算法是最有效的,医疗索赔数据集就是这种情况。虽然需要进一步的研究来探索如何定义约束以提高该方法的预测能力,但我们已经表明 CLR-c 几乎可以处理任何类型的约束。即使选择的约束几乎是任意的(就像 UCI ML 数据集的情况一样),它仍然可以显示出比线性回归显着的改进,同时仅因常数(数据集大小)因子变慢,该因子大致等于聚类数 × CLR 迭代次数。因此,当可用于解决问题的计算预算非常有限时,它可以用作线性回归的替代方案。当问题需要高度准确的预测时,可以使用带有随机森林的 CLR-p 模型集成。它通常优于标准预测方法,同时与底层分类模型一样具有可扩展性。由于在本文中我们只探索了逻辑回归和随机森林作为标签预测模型,因此其他一些方法可能会工作得更好(例如,提供相同的预测精度,同时显着更快)。

你可能感兴趣的:(数学建模,python,聚类,线性回归)