R语言独立成分分析fastICA、谱聚类、支持向量回归SVR模型预测商店销量时间序列可视化

简介: R语言独立成分分析fastICA、谱聚类、支持向量回归SVR模型预测商店销量时间序列可视化

全文链接:http://tecdat.cn/?p=31948


本文利用R语言的独立成分分析(ICA)、谱聚类(CS)和支持向量回归 SVR 模型帮助客户对商店销量进行预测点击文末“阅读原文”获取完整代码数据


首先,分别对商店销量的历史数据进行了独立成分分析,得到了多个独立成分;其次,利用谱聚类方法将商店销量划分成了若干类,并将每个类的特征进行了提取;最后,利用 SVR模型对所有的商店销量进行预测。实验结果表明,利用 FastICA、 CS和 SVR模型能够准确预测商店销量。


读取数据


read.csv("train_final.csv")
head(data)


独立成分分析方法(fastICA)


首先对于d维的随机变量 x∈Rd×1 ,我们假设他的产生过程是由相互独立的源 s∈Rd×1 ,通过 A∈Rd×d 线性组合产生的x=As

如果s的服从高斯分布的,那么故事结束,我们不能恢复出唯一的s,因为不管哪个方向都是等价的。而如果s是非高斯的,那么我们希望找到w从而 s=wTx ,使得 s 之间的相互独立就可以恢复出s了,我将在后面指出,这等价于最大化每个 s 的非高斯性。

采用独立成分分析方法(fastICA),得到矩阵W,A和ICs等独立成分结果(是否需要pca降维?)。

reeplot(prcomp(

点击标题查阅往期内容


python用支持向量机回归(SVR)模型分析用电量预测电力消费


01

02

03

04


谱聚类


谱聚类(spectral cluster),这里的谱指的是某个矩阵的特征值,该矩阵是什么,什么得来的,以及在聚类中的作用将会在下文解一一道来。谱聚类的思想来源于图论,它把待聚类的数据集中的每一个样本看做是图中一个顶点,这些顶点连接在一起,连接的这些边上有权重,权重的大小表示这些样本之间的相似程度。同一类的顶点它们的相似程度很高,在图论中体现为同一类的顶点中连接它们的边的权重很大,不在同一类的顶点连接它们的边的权重很小。于是谱聚类的最终目标就是找到一种切割图的方法,使得切割之后的各个子图内的权重很大,子图之间的权重很小。

采用谱聚类方式对所有矩阵的列进行聚类,得到两到三种不同的聚类结果(如何)。

谱聚类聚成2个类别

sc <- spec

聚成3个类别


SVR模型


SVR是支持向量机(SVM)的重要应用分支。通过SVR算法,可以找到一个回归平面并使得一个集合中的所有数据距离该平面的距离最短。


使用场景

SVR是一个回归模型,主要是用于拟合数值,一般应用于特征较为稀疏且特征数较少的场景。

例如,可以使用SVR回归模型来预测某个城市的温度。输入特征有很多,例如这个城市某个时期的平均温度、绿化程度、湖泊数量以及日期等。训练数据可以是一段时间内的城市温度。

对所有数据采用log标准化处理,然后对不同的类的训练集分别采用SVR模型训练,再用测试集得到测试结果


所需结果:


k个不同模式时间序列图(分属不同类的某个部门时间序列),表征不同类之间的差异与同类之内的相似.

pre=SVRModel

不同类测试集所采用SVR模型的不同参数(C,ε,σ)。

不同类测试集所采用SVR模型之后的预测结果(RMSE,MAD,MAPE,MPE),

RMSE(test,yHat)
## [1] 0.1354805
MAE(test,yHat)
## [1] 0.1109939
MAPE(test,yHat)
## [1] 1.099158
#MPE  
   
ftsa::error(forecast =yHat, true = test, method = "mpe")
## [1] 1.099158


预测模型


预测模型加入时间序列向前1周,2周,3周,4周时的数据作为输入变量,采用不同聚类方式所得预测结果。

向前2周

不同类测试集所采用SVR模型之后的预测结果(RMSE,MAD,MAPE,MPE)

RMSE(test,yHat)
## [1] 0.09735726
MAE(test,yHat)
## [1] 0.0655883
MAPE(test,yHat)
## [1] 0.6538239
#MPE  
  
ftsa::error(forecast =yHat, true = test, method = "mpe")
## [1] 0.467259

写下你的留言

复制搜一搜分享收藏划线

人划线


相关文章
|
2月前
|
数据采集 机器学习/深度学习 数据可视化
R语言从数据到决策:R语言在商业分析中的实践
【9月更文挑战第1天】R语言在商业分析中的应用广泛而深入,从数据收集、预处理、分析到预测模型构建和决策支持,R语言都提供了强大的工具和功能。通过学习和掌握R语言在商业分析中的实践应用,我们可以更好地利用数据驱动企业决策,提升企业的竞争力和盈利能力。未来,随着大数据和人工智能技术的不断发展,R语言在商业分析领域的应用将更加广泛和深入,为企业带来更多的机遇和挑战。
|
9天前
|
数据挖掘 C语言 C++
R语言是一种强大的统计分析工具,提供了丰富的函数和包用于时间序列分析。
【10月更文挑战第21天】时间序列分析是一种重要的数据分析方法,广泛应用于经济学、金融学、气象学、生态学等领域。R语言是一种强大的统计分析工具,提供了丰富的函数和包用于时间序列分析。本文将介绍使用R语言进行时间序列分析的基本概念、方法和实例,帮助读者掌握R语言在时间序列分析中的应用。
32 3
|
2月前
|
数据采集 数据可视化 数据挖掘
R语言在金融数据分析中的深度应用:探索数据背后的市场智慧
【9月更文挑战第1天】R语言在金融数据分析中展现出了强大的功能和广泛的应用前景。通过丰富的数据处理函数、强大的统计分析功能和优秀的可视化效果,R语言能够帮助金融机构深入挖掘数据价值,洞察市场动态。未来,随着金融数据的不断积累和技术的不断进步,R语言在金融数据分析中的应用将更加广泛和深入。
|
2月前
|
机器学习/深度学习 算法 前端开发
R语言基础机器学习模型:深入探索决策树与随机森林
【9月更文挑战第2天】决策树和随机森林作为R语言中基础且强大的机器学习模型,各有其独特的优势和适用范围。了解并熟练掌握这两种模型,对于数据科学家和机器学习爱好者来说,无疑是一个重要的里程碑。希望本文能够帮助您更好地理解这两种模型,并在实际项目中灵活应用。
|
3月前
|
机器学习/深度学习 数据采集 数据可视化
R语言在数据科学中的应用实例:探索与预测分析
【8月更文挑战第31天】通过上述实例,我们展示了R语言在数据科学中的强大应用。从数据准备、探索、预处理到建模与预测,R语言提供了完整的解决方案和丰富的工具集。当然,数据科学远不止于此,随着技术的不断发展和业务需求的不断变化,我们需要不断学习和探索新的方法和工具,以更好地应对挑战,挖掘数据的潜在价值。 未来,随着大数据和人工智能技术的普及,R语言在数据科学领域的应用将更加广泛和深入。我们期待看到更多创新的应用实例,为各行各业的发展注入新的动力。
|
3月前
|
数据采集 存储 数据可视化
R语言时间序列分析:处理与建模时间序列数据的深度探索
【8月更文挑战第31天】R语言作为一款功能强大的数据分析工具,为处理时间序列数据提供了丰富的函数和包。从数据读取、预处理、建模到可视化,R语言都提供了灵活且强大的解决方案。然而,时间序列数据的处理和分析是一个复杂的过程,需要结合具体的应用场景和需求来选择合适的方法和模型。希望本文能为读者在R语言中进行时间序列分析提供一些有益的参考和启示。
|
3月前
|
资源调度 数据挖掘
R语言回归分析:线性回归模型的构建与评估
【8月更文挑战第31天】线性回归模型是统计分析中一种重要且实用的工具,能够帮助我们理解和预测自变量与因变量之间的线性关系。在R语言中,我们可以轻松地构建和评估线性回归模型,从而对数据背后的关系进行深入的探索和分析。
|
3月前
|
机器学习/深度学习 数据采集
R语言逻辑回归、GAM、LDA、KNN、PCA主成分分类分析预测房价及交叉验证
上述介绍仅为简要概述,每个模型在实施时都需要仔细调整与优化。为了实现高度精确的预测,模型选择与调参是至关重要的步骤,并且交叉验证是提升模型稳健性的有效途径。在真实世界的房价预测问题中,可能还需要结合地域经济、市场趋势等宏观因素进行综合分析。
67 3
|
6月前
|
BI 索引
R语言数据结构-----向量
R语言数据结构-----向量
25 4
|
6月前
【R语言实战】——Logistic回归模型
【R语言实战】——Logistic回归模型

热门文章

最新文章