更新时间:2021-09-18 GMT+08:00
分享

时序预测

  1. 请参考数据集章节,将本地的时序数据导入至模型训练服务。

    本节以数据集“KPI”,数据实例“data”为例,进行后续操作说明。数据集data一共有6列特征,分别为time、col_1、col_2、col_3、col_4、col_5。其中“time”为时间列,后面五列为KPI特征列。

  2. 在项目概览界面,单击菜单栏中的“特征工程”,进入“特征工程”界面。
  3. 单击界面右上角的“特征处理”,弹出“特征处理”对话框。

    请根据实际情况,配置如下参数:

    • 工程名称:特征工程名称。
    • 开发模式:请选择“Jupyterlab交互式开发”。
    • 规格:选择Jupyterlab环境部署的容器规格大小。时序预测也会推荐使用深度学习算法,建议选择大规格“8核|32G”,否则模型训练时长会达到1小时。
    • 实例:从下拉框中选择“新建一个环境”。

  4. 单击“创建”,等待Jupyterlab环境创建完成,约需要2分钟。
  5. 等待Jupyterlab环境创建完成后,单击特征工程所行,对应操作列的图标。

    进入Jupyterlab环境的“Launcher”页签。如果当前没有打开“Launcher”页签,可通过单击界面左上角菜单中的“File > New Launcher”,打开“Launcher”页签。

  6. 在“Launcher”页签,单击“LearnWare”下方的“时序预测”,弹出“新建”对话框。
  7. 输入学件名称,示例为“KPI”,单击“确定”。

    进入“KPI.ipynb”文件界面,如图1所示。

    图1 “KPI.ipynb”文件界面

  8. 单击代码框左侧的图标,导入算法依赖的模型训练服务SDK。
  9. 单击界面左下方的“加载数据”,界面新增“加载数据”内容。

    配置如下参数:

    • 训练数据集:从下拉框中选择“KPI”。
    • 训练数据集实例:从下拉框中选择“data”。
    • 载入测试数据方式:本次数据集界面中仅上传了一份数据集data,需要选择“从训练数据分割”,并设置“测试数据分割量”,即从训练集的数据尾部,分割出去的数据比例,示例为“0.2”。如果用户在数据集界面同时上传了训练集和测试集,可以选择“从数据集读入”,并相应选择“测试数据集”和“测试数据集实例”即可。

  10. 单击“加载数据”左侧的图标,加载训练集和测试集。

    运行完成后,可以在下方看到展示的“训练数据”和“测试数据”内容。

  11. 单击界面左下方的“预测场景需求”,界面新增“预测场景需求”内容。

    参数说明如下所示:

    • 目标列:单击配置框右侧的图标,在弹出的“目标列”对话框中,同时选中“未选择列”区域的5列特征col_1、col_2、col_3、col_4、col_5,单击,将5列特征移至“已选择列”区域。单击“确认”,完成参数设置。
    • 时间列:参考“目标列”的操作,将“时间列”设置为数据集中的时间列,本次数据集的时间列为“time”。
    • 预测长度:预测的样本数量,默认值“1”。例如当前数据是按小时采集的3000条样本数据,如果想通过模型预测未来1天的样本数据,因为按小时采集,所以为24条数据,那么“预测长度”需要配置为“24”。
    • 预测粒度:保持默认值。
    • 预测类型:取值说明如下所示。本次请选择“时空预测”。
      • 时序预测:如果选择“时序预测”,“目标列”仅支持设置为单列。
      • “节假日/重大事件预测”:如果选择“节假日/重大事件预测”,“目标列”仅支持设置为单列。如果选择此项,界面会新增配置参数“节假日/重大事件信息配置”,单击参数配置框右侧的图标。在弹出的“节假日/重大事件信息配置”对话框中,配置一条或者多条节假日或者重大事件的开始时间、结束时间及其相应的标记,可单击“标记”右侧的问号,查看其含义。
      • 时空预测:如果选择“时空预测”,“目标列”支持设置为多列。
    • 平台性能:与创建特征工程时,即2中设置的JupyterLab平台规格大小有关,如果规格大,可以选择“优”或“良”;如果选择的小规格“2核|8G”,则选择“差”。本次规格选择的是“8核|32G”,配置为“良”即可。

  12. 单击“预测场景需求”左侧的图标,录入预测所需参数。
  13. 单击界面左下方的“数据预处理”,界面新增“数据预处理”内容。

    对数据进行自动填充空值、平滑处理、去除异常点等数据预处理操作。运行完成后,可以看到每个KPI的图形展示情况。

  14. 单击界面左下方的“特征画像”,界面新增“特征画像”内容。

    特征画像的作用,就是对数据进行分析,把其中一些基本特征提取出来,如:周期性、离散度、时序规律、最值、采样频率等,计算KPI曲线特点(包括周期性、趋势性、噪声、离散性、随机性等)。根据计算的曲线特点,判断KPI的大类别(毛刺型、阶梯型、周期型、离散型、稀疏型、多模态型等)。这些类别,对应到后面的特征选择、算法推荐,会有不同的策略,有效提升模型的构建效率。

  15. 单击“特征画像”左侧的图标,运行代码。

    运行完成后,5个KPI指标以页签方式,展示各自的原始数据及其密度分布图。运行结果右侧的参数说明,如表1所示。
    表1 特征画像参数说明

    参数

    说明

    指标ID

    当前KPI的指标ID。

    样本数

    训练数据总的样本数。

    采样频率(秒)

    采样频率,单位为秒。

    取值示例:300,代表每5分钟采样一次数据。

    开始时间

    采样的时间跨度。

    结束时间

    周期

    是否有周期的特性,给出评估的值。

    最大值

    KPI的最大值。

    最小值

    KPI的最小值。

    数据类型

    判断数据类型为周期型、离散型或线型。

    空值率

    缺失值所占数据比例。取值为“0”说明,没有缺失值。

    数据质量

    对当前KPI样本数据的质量评估结果。

  16. 单击界面左下方的“可预测性评估”,界面新增“可预测性评估”内容。

    当前算子会参考前面生成的特征画像,评估当前数据是否可执行预测。

  17. 单击“可预测性评估”左侧的图标,运行代码。

    代码运行完成后,会以列表的形式展示KPI的评估结果。如果评估结果良好,可以继续执行后面的操作。

  18. 单击界面左下方的“算法选择”,界面新增“算法选择”内容。

    这里会结合前面的算子“预测场景需求”、“特征画像”和“可预测性评估”的运行结果,综合评估推荐出最适合的预测算法,并利用超参优化,对推荐出的模型进行超参寻优。

  19. 单击“算法选择”左侧的图标,完成算法选择。

    代码运行过程中,下方会不断的打印运行日志。代码运行完成后,可以看到“算法推荐”信息。

  20. 单击界面左下方的“模型训练”,界面新增“模型训练”内容。
  21. 单击“模型训练”左侧的图标,进行模型训练。

    这里会使用data数据集和推荐的算法进行模型训练,代码运行完成后,会生成KPI时序预测模型并保存。

  22. 单击“模型训练”左下方的“模型评估”,新增“模型评估”内容。
  23. 单击“模型评估”左侧的图标,进行模型评估。

    参数说明如下所示:

    评估方法:预置了四种模型评估方法,可根据实际情况选择。如果这些评估方法不满足用户诉求,可单击代码框右侧的图标,切换成代码视图,将method改为自定义评估函数即可。

  24. 单击“模型评估”左侧的图标,对模型性能进行评估。
  25. 代码运行完成后,会以图的形式展示每个KPI的样本值和预测值。
分享:

    相关文档

    相关产品