当前位置: 首页 > news >正文

【第十四章:Sentosa_DSML社区版-机器学习之时间序列】

目录

【第十四章:Sentosa_DSML社区版-机器学习时间序列】

14.1 ARIMAX

14.2 ARIMA

14.3 HoltWinters

14.4 一次指数平滑预测

14.5 二次指数平滑预测


【第十四章:Sentosa_DSML社区版-机器学习时间序列】

14.1 ARIMAX

1.算子介绍

        考虑其他序列对一个时间序列的影响,如太阳黑子对某地区降雨量的影响,石油价格对股价的影响,可以用ARIMAX模型,即带有输入序列的一般ARIMA模型。

        ARIMAX模型被称为传递函数模型、动态回归模型,其本质是指带回归项的ARIMA模型,又称为扩展的ARIMA模型。回归项的引入有助于提高模型的预测效果,引入的回归项通常是和被解释变量相关程度高的变量。

2.算子类型

        机器学习/时间序列算子。

3.算子属性说明

属性

页面显示名称

选项

类型

默认值

约束规则

属性说明

time_col

时间列

必填

String

null

必须为时间格式

时间列

value_col

预测列

必填

String

null

数据列

key_col

key列

非必填

String

key键列

exogenous_cols

外生变量列

必填

List<String>

null

外生变量列

predictedN

预测数量

必填

Integer

10

大于0

预测数量

analyze_frequency

分析频率

必填

String

minute

选项有"year",“month”,“day”,“hour”,“minute”,“second”

analyze_time_span

分析时间间隔

必填

Integer

5

大于0

分析时间间隔

p

自回归项数p

必填

Integer

2

大于0

自回归项

d

差分阶数d

必填

Integer

0

大于0

时间序列成为平稳时所做的差分次数

q

移动平均项数q

必填

Integer

2

大于0

移动平均项数

exogenous_values

外生变量输入值

非必填

List<List<Double>>

null

是否输入外生变量值(多key时不支持输入外生变量值):选择是时进行填写

外生变量输入值,用户手动输入预测时间点的外生变量值,可输入多列。

xreg_max_lag

外生变量最大滞后阶数

必填

Integer

0

大于等于0

外生变量最大滞后阶数

alpha

显著性水平

必填

Double

0.05

(0,1)

显著性水平

4.算子使用介绍

(1)算子初始化

        参考公共功能算子初始化算子。

(2)算子属性设置

        ARIMAX算子根据现有的时间序列对应的数据,预测未来时间的数据。ARIMAX算子的输入数据支持多种key键,但必须是满足相同key键下时间列间隔为固定数值,且数值列非空的时序数据,建议是使用时序清洗算子处理后的数据。时间列必须为DataTime/Data类型。时间序列预测算子的分析频率应与时序数据采样频率一致,且分析时间间隔需等于时序数据采样时间间隔。

ARIMAXNode属性参数设置

(3)算子的运行

        时间序列预测算子的输入数据支持多种key键,但必须是满足相同key键下时间列间隔为固定数值,且数值列非空的时序数据,建议是使用时序清洗算子处理后的数据。算子后可接任意个数据处理算子,再接表格算子或数据写出算子,形成算子流执行。

ARIMAX算子预测算子流

        算子的运行结果如图所示

算子流预测结果

        结果说明:结果中有时间列,key列(如果源数据没有key列则不会输出),原始数据列xxx(根据选择的数据列而定), 外生变量列,predicted列表示是否为预测行,predicted_xxx表示预测值,predicted_low_xxx 和predicted_high_xxx分别为置信区间的下限和上限。

14.2 ARIMA

1.算子介绍

        常用时间序列模型中的一种,如果只是根据单一目标变量的历史数据预测未来数据,可以使用ARIMA算法。如果除了目标变量还有其他输入变量可以选择ARIMAX模型。

2.算子类型

        机器学习/时间序列算子

3.算子属性说明

属性

页面显示名称

选项

类型

默认值

约束规则

属性说明

time_col

时间列

必填

String

null

必须为时间格式

时间列

value_col

数据列

必填

String

null

数据列

key_col

key键列

非必填

String

“”

key键列

predictedN

预测数量

必填

Integer

“10”

大于0

预测数量

analyze_frequency

分析频率

必填

String

“minute”

选项有"year",“month”,“day”,“hour”,“minute”,“second”

analyze_time_span

分析时间间隔

必填

Integer

5

大于0

分析时间间隔

p

自回归项数P

必填

Integer

2

大于0

自回归项

d

差分阶数D

必填

Integer

0

大于0

时间序列成为平稳时所做的差分次数

q

滑动平均项数Q

必填

Integer

2

大于0

移动平均项数

alpha

显著性水平

必填

Double

0.05

(0,1)

显著性水平

4.算子使用介绍

(1)算子初始化

        参考公共功能算子初始化算子

(2)算子属性设置

        ARIMA算子根据现有的时间序列对应的数据,预测未来时间的数据。ARIMA算子的输入数据支持多种key键,但必须是满足相同key键下时间列间隔为固定数值,且数值列非空的时序数据,建议是使用时序清洗算子处理后的数据。时间列必须为DataTime/Data类型。时间序列预测算子的分析频率应与时序数据采样频率一致,且分析时间间隔需等于时序数据采样时间间隔。

ARIMANode属性参数设置

(3)算子的运行

        时间序列预测算子的输入数据支持多种key键,但必须是满足相同key键下时间列间隔为固定数值,且数值列非空的时序数据,建议是使用时序清洗算子处理后的数据。算子后可接任意个数据处理算子,再接表格算子或数据写出算子,形成算子流执行。

ARIMA算子预测算子流

        算子的运行结果如图所示

算子流预测结果

        结果说明:结果中有时间列,key列(如果源数据没有key列则不会输出),要预测的列xxx(选择的数据列),predicted列表示是否为预测行predicted_xxx表示预测值,predicted_low_xxx 和predicted_high_xxx分别为置信区间的上限和下限。

14.3 HoltWinters

1.算子介绍

        常用时间序列模型中的一种,如果只是根据单一目标变量且有明显的周期性的历史数据预测未来数据,可以使用HoltWinters 算法。

2.算子类型

        机器学习/时间序列算子。

3.算子属性说明

属性

页面显示名称

选项

类型

默认值

约束规则

属性说明

time_col

时间列

必填

String

null

时间格式列

时间列

value_col

数据列

必填

String

null

数据列

key_col

key键列

非必填

String

null

key键列

predictedN

预测数量

必填

Integer

10

大于0

预测数量

holt_winters_model_type

模型类型

必填

String

additive

选项有"additive",“multiplicative”

模型类型,当算法类型为”HoltWinters”时设置

period

周期性参数

必填

Integer

12

大于0

周期性参数,当算法类型为”HoltWinters”时设置

analyze_frequency

分析频率

必填

String

minute

大于0

选项有"year",“month”,“day”,“hour”,“minute”,“second”

analyze_time_span

分析时间间隔

必填

Integer

5

大于0

分析时间间隔

alpha

显著性水平

必填

Double

0.05

(0,1)

显著性水平

4.算子使用介绍

(1)算子初始化

        参考公共功能算子初始化算子。

(2)算子属性设置

        HoltWinters算子根据现有的时间序列对应的数据,预测未来时间的数据。HoltWinters算子的输入数据支持多种key键,但必须是满足相同key键下时间列间隔为固定数值,且数值列非空的时序数据,建议是时序数据清洗算子处理后的数据。时间列必须为DataTime/Data类型。HoltWinters算子的分析频率应与时序数据采样频率一致,且分析时间间隔需等于时序数据的采样时间间隔。算子属性设置规则参考算子属性说明表格

HoltWintersNode属性参数设置

(3)算子的运行

        HoltWinters算子的输入数据支持多种key键,但必须是满足相同key键下时间列间隔为固定数值,且数值列非空的时序数据,建议是使用时序清洗算子处理后的数据。。算子后可接任意个数据处理算子,再接表格算子或数据写出算子,形成算子流执行。

HoltWinters算子预测算子流

        算子的运行结果如图所示

算子流预测结果

        结果说明:结果中有时间列,key列(如果源数据没有key列则不会输出),原始数据的列xxx(根据选择的数据列而定), predicted列表示是否为预测行,predicted_xxx表示预测值,predicted_low_xxx 和predicted_high_xxx分别为置信区间的上限和下限。

14.4 一次指数平滑预测

1.算子介绍

        一次指数平滑预测(single exponential smoothing),也称为单一指数平滑法,当时间数列无明显的趋势变化,可用一次指数平滑预测。

2.算子类型

        机器学习/时间序列算子。

3.算子属性说明

属性

页面显示名称

选项

类型

默认值

约束规则

属性说明

time_col

时间列

必填

String

null

时间列

value_col

数据列

必填

String

null

数据列

key_col

key键列

选填

String

null

key键列

predictedN

预测数量

必填

Integer

10

大于0

预测数量

analyze_frequency

分析频率

必填

String

minute

单选"year",“month”,“day”,“hour”,“minute”,“second”

分析频率

analyze_time_span

分析时间间隔

必填

Integer

null

大于等于1

分析时间间隔

alpha

显著性水平

必填

Double

0.05

大于0小于1

显著性水平

4.算子使用介绍

(1)算子初始化

        参考公共功能算子初始化操作。

(2)算子属性设置

        一次指数平滑预测算子根据现有的时间序列对应的数据,预测未来时间的数据。一次指数平滑预测算子的输入数据支持多种key键,但必须是满足相同key键下时间列间隔为固定数值,且数值列非空的时序数据,建议是使用时序清洗算子处理后的数据。时间列必须为DataTime/Data类型。一次指数平滑预测算子的分析频率应与时序数据采样频率一致,且分析时间间隔需等于时序数据采样时间间隔。

时间序列预测算子属性设置

(3)算子的运行

        一次指数平滑预测算子的输入数据支持多种key键,但必须是满足相同key键下时间列间隔为固定数值,且数值列非空的时序数据,建议是使用时序清洗算子处理后的数据。算子后可接任意个数据处理算子,再接表格算子或数据写出算子,形成算子流执行。

一次指数平滑预测算子流

        算子的运行结果如图所示

一次指数平滑预测算子运行结果

        结果中predicted列取值为false的数据为原有数据,predicted_xxx列取值为预测数据,predicted_low_xxx为置信区间下限,predicted_high_xxx为置信区间上限。

14.5 二次指数平滑预测

1.算子介绍

        二次指数平滑预测,二次指数平滑是对一次指数平滑的再平滑。它适用于具线性趋势的时间数列。

2.算子类型

        机器学习/时间序列算子。

3.算子属性说明

属性

页面显示名称

选项

类型

默认值

约束规则

属性说明

time_col

时间列

必填

String

null

时间列

value_col

数据列

必填

String

null

数据列

key_col

key键列

选填

String

null

key键列

predictedN

预测数量

必填

Integer

10

大于0

预测数量

analyze_frequency

分析频率

必填

String

minute

单选:"year",

“month”,“day”,“hour”,“minute”,“second”

分析频率

analyze_time_span

分析时间间隔

必填

Integer

null

大于等于1

分析时间间隔

holt_linear_model_type

模型类型

必填

String

Additive

单选:Additive,

Multiplicative

模型类型

alpha

显著性水平

必填

Double

0.05

大于0小于1

显著性水平

4.算子使用介绍

(1)算子初始化

        参考公共功能算子初始化操作。

(2)算子属性设置

        二次指数平滑预测算子根据现有的时间序列对应的数据,预测未来时间的数据。二次指数平滑预测算子的输入数据支持多种key键,但必须是满足相同key键下时间列间隔为固定数值,且数值列非空的时序数据,建议是使用时序清洗算子处理后的数据。时间列必须为DataTime/Data类型。模型类型分为加性和乘性两种(Additive,Multiplicative),二次指数平滑预测算子的分析频率应与时序数据采样频率一致,且分析时间间隔需等于时序数据采样时间间隔。

二次指数平滑预测算子属性设置

(3)算子的运行

        二次指数平滑预测算子的输入数据支持多种key键,但必须是满足相同key键下时间列间隔为固定数值,且数值列非空的时序数据,建议是使用时序清洗算子处理后的数据。算子后可接任意个数据处理算子,再接表格算子或数据写出算子,形成算子流执行。

二次指数平滑预测算子流

        算子的运行结果如图所示

二次指数平滑预测算子运行结果

        结果中predicted列取值为false的数据为原有数据,predicted列取值为true的数据为预测数据,predicted_low_value为置信区间下限,predicted_high_value为置信区间上限。


  为了非商业用途的科研学者、研究人员及开发者提供学习、交流及实践机器学习技术,推出了一款轻量化且完全免费的Sentosa_DSML社区版。以轻量化一键安装、平台免费使用、视频教学和社区论坛服务为主要特点,能够与其他数据科学家和机器学习爱好者交流心得,分享经验和解决问题。文章最后附上官网链接,感兴趣工具的可以直接下载使用

Sentosa_DSML社区版官网

Sentosa_DSML算子流开发视频

相关文章:

  • 北京网站建设多少钱?
  • 辽宁网页制作哪家好_网站建设
  • 高端品牌网站建设_汉中网站制作
  • 【Docker安装RabbitMQ】
  • Python中的数据可视化:从基础图表到高级可视化
  • 什么是绩效改进计划?
  • python request库的使用
  • 《C++编程魔法:构建绿色主题的奇幻游戏世界》
  • T检验:一种通俗易懂的统计分析方法
  • 渗透测试类 面试题
  • 在spring boot项目中使用jaxb实现Java Bean与XML互转
  • Note_XML学习笔记
  • 【C++篇】探寻C++ STL之美:从string类的基础到高级操作的全面解析
  • C++学习笔记(41)
  • 计算机毕业设计hadoop+hive航班预测系统 飞机票航班数据分析可视化大屏 机票预测 机票爬虫 飞机票推荐系统 大数据毕业设计
  • 多媒体领域格式汇总
  • JavaScript --- 字符串常用方法(2)
  • 【图虫创意-注册安全分析报告-无验证方式导致安全隐患】
  • 【comparator, comparable】小总结
  • 07.Android之多媒体问题
  • AHK 中 = 和 == 等比较运算符的用法
  • Angular 响应式表单 基础例子
  • CSS3 变换
  • ECMAScript 6 学习之路 ( 四 ) String 字符串扩展
  • extjs4学习之配置
  • Flex布局到底解决了什么问题
  • Java 23种设计模式 之单例模式 7种实现方式
  • Javascript编码规范
  • JDK9: 集成 Jshell 和 Maven 项目.
  • Leetcode 27 Remove Element
  • Python 基础起步 (十) 什么叫函数?
  • Python3爬取英雄联盟英雄皮肤大图
  • Vue ES6 Jade Scss Webpack Gulp
  • 简单数学运算程序(不定期更新)
  • 解决iview多表头动态更改列元素发生的错误
  • 理清楚Vue的结构
  • 融云开发漫谈:你是否了解Go语言并发编程的第一要义?
  • 实现简单的正则表达式引擎
  • 延迟脚本的方式
  • 最简单的无缝轮播
  • ionic入门之数据绑定显示-1
  • Linux权限管理(week1_day5)--技术流ken
  • 长三角G60科创走廊智能驾驶产业联盟揭牌成立,近80家企业助力智能驾驶行业发展 ...
  • ​520就是要宠粉,你的心头书我买单
  • # 数据结构
  • #Ubuntu(修改root信息)
  • #数学建模# 线性规划问题的Matlab求解
  • (C++二叉树05) 合并二叉树 二叉搜索树中的搜索 验证二叉搜索树
  • (delphi11最新学习资料) Object Pascal 学习笔记---第8章第5节(封闭类和Final方法)
  • (保姆级教程)Mysql中索引、触发器、存储过程、存储函数的概念、作用,以及如何使用索引、存储过程,代码操作演示
  • (十六)串口UART
  • (五)大数据实战——使用模板虚拟机实现hadoop集群虚拟机克隆及网络相关配置
  • (原創) 如何將struct塞進vector? (C/C++) (STL)
  • (转)编辑寄语:因为爱心,所以美丽
  • (转)总结使用Unity 3D优化游戏运行性能的经验
  • (自用)交互协议设计——protobuf序列化
  • .bat批处理(五):遍历指定目录下资源文件并更新
  • .config、Kconfig、***_defconfig之间的关系和工作原理