干货 | 中国石化化工高端新材料价格体系模型构建

2023-09-20 17:01:25

7a154717b33169d919fe59868eaab1ed.png

以下内容整理自2023年夏季学期大数据能力提升项目《大数据实践课》同学们所做的期末答辩汇报。

3142bc0ed18d1895ad13fd3297f37482.png

随着石化行业市场日趋饱和,市场竞争日益激烈,企业利润空间不断被压缩,大多数石化企业急需转型开拓新市场,化工原料价格的波动对于石化企业的决策和利润都会产生直接影响,所以对于化工原料价格精确、高效的预测显得尤为重要。目前业界已有部分实践和相关技术,但仍然存在价格不全、小品类商品价格信息难以获取等痛点。基于此,本项目以1,4-丁二醇为例,先对产品价格影响因素进行分析,并构建化工品价格时序预测模型,寻找化工品价格变化规律,最终实现模型的在线部署。

11762eb4126ce5661e061d7b88c878f4.png

首先对数据进行预处理。采用front fill的方式填补缺失值,将颗粒度统一为日度,删去缺失值过多的数据和明显高度相关的变量。第二步采用多种方法对数据作进一步筛选,第三步尝试采用两种计量模型、三种机器学习模型和三种深度学习模型进行构建模型和模型比选,通过比选最终决定采用深度学习模型。最后结合前端开发实现模型在网页的调用。

我们获得的原始数据包括175个变量在1293个日期的数据,经过预处理之后,最终得到95个变量在1885个日期的数据。得到95个变量之后,我们又通过计量方法、XGBoost以及Transformer三种方法对输入变量进行进一步筛选。其中相关分析通过相关系数判断变量间关系密切程度,XGBoost模型可以量化并输出原始变量在预测过程中的重要程度,Transformer可以输出各个变量的因果门因子,据此可以挑选出与因变量因果关系密切的变量。结合这三种方法能够得到变量之间的相关性以及在模型当中的重要性。最终我们将结果整理成了变量筛选分析报告,最终简化为包含11种化工品、54个特征的重要变量。

基于上述变量我们进行预测建模。首先是RNN模型的框架。我们对二维原始数据进行归一化和时间切片,得到下图所示三维模型输入,三个维度分别是batch_size,window_size和feature_size。window_size指的是我们使用从现在开始回溯多少天的数据进行价格预测。我们使用了五层RNN,每个单层RNN中包括添加噪声、隐藏层、输出层以及dropout层和归一化层,经过5层输出之后,我们对最后一层的三维输出进行window_size维度的取平均之后,就可以得到最终的预测结果。在训练过程中,我们可以调整的超参数包括在不同预测任务下的window_size,以及是否添加噪声,dropout值以及初始学习率的衰减程度。

ee6767e48b41feaef4d0fe45b375dd23.png

下图展示了RNN模型的预测结果,其中蓝线代表真实值,红线代表经过滑动平均的预测值。从图上可以看出,除了90天以外,其他的预测天数下的红线基本上都可以较好地反映出真实价格的变化趋势。而90天之所以预测效果较差,可能因为在90天局部变化的剧烈程度是最大的,因而预测难度也相对最大。

fae36cf749c86bd60a55524464230275.png

下图展示了RNN的具体预测误差。可以看出平均相对误差均满足了预先要求,与上图所示相同,90天的误差相对最大。

ea2b583abb219f6579fd3b9875a0dc67.png

我们也进一步尝试了LSTM网络,该模型包括输入层、dropout层和输出层。因为输入输出维度相同,因此我们使用了全连接层输出,将最终的价格维度转化为1,可以调整的超参数包括LSTM的堆叠数量、层数、dropout值以及学习率,其他设置与RNN相同。

LSTM的误差相对大一些,但在较长时间间隔的预测是满足小于15%的要求的。但相比RNN并没有很明显的优势,所以后续并未使用。

dd905336c4216640568db5f9e0b670f0.png

此外我们还通过使用时间序列Transform模型(简称TST)进行1,4-丁二醇价格预测。TST价格模型如上图所示。除了将日期拆分为年、月、日三个特征并对数据进行标准归一化外,其输入与输出均与RNN和LSTM模型相同。TST模块主要由输入模块、三层的Transformer encoder block和FC阶层组成。在编码部分,除了输入编码外,通过加入sin、cosin位置编码表征了时间上的先后顺序。我们选择调整的超参数包括初始学习率、T样本数、dropout概率、历史时间跨度等,最终得到了六个不同预测时间间隔下的TST预测模型,其拟合与预测效果如下图所示。

668fd32a95b495276e54535feadbacf3.png

下表展示了TST训练集和预测集上的误差。可以看到,TST模型在不同预测时间间隔下的相对误差在11%-16%左右,总体而言,TST模型具有一定时序预测能力,但就其效果而言,略逊于RNN模型,且在时间跨度越大的情况下,差别越明显。

33010597a80f32019826dda5e585d930.png

本次大数据实践我们从数据预处理、特征筛选、价格预测建模与demo设计四方面出发,我们首先补全数据、统一数据粒度并初步删除缺失值过多数据,综合运用三种方法筛选出了11种相关化学品共54个重要特征。之后我们基于RNN、LSTM以及TST模型进行了1,4-丁二醇的价格预测并进行了demo设计,我们的试用版界面能满足简洁易用、响应快、平均相对误差小于15%及安全方面的要求。

76cb9b7a88180f691b616f7d47317820.png

在demo中,上传相关变量的历史数据并选择相应的预测时间间隔后,页面会弹出模型选择框,并弹出建议选择的预测模型。在点击提交按钮后,页面会出现预测时间点的1.4-丁二醇价格,并通过可交互的ECharts图表展示1.4-丁二醇的每日数据及变化趋势,以上就是本次汇报的全部内容。

编辑:文婧

校对:林亦霖

f5b883647d94d0d2225275faae19876d.png

更多推荐

QT : 仿照QQ 完成弹出登录窗口,并实例化组件

1.运行效果图2.Headers#ifndefMAINWINDOW_H#defineMAINWINDOW_H#include<QMainWindow>classMainWindow:publicQMainWindow{Q_OBJECTpublic:MainWindow(QWidget*parent=nullptr);~

MS COCO数据集介绍以及pycocotools使用

MSCOCO数据集介绍以及pycocotools使用1、MSCOCO数据集简介2、MSCOCO数据集目录结构3、MSCOCO标注文件格式3.1使用Python的json库查看3.2使用官方cocoAPI查看4、目标检测验证任务mAP1、MSCOCO数据集简介2、MSCOCO数据集目录结构├──coco2017:数据集根

log4j2 日志保存至数据库

文章目录概述一、springmvc工程1.创建数据库日志表2.log4j2.xml引入JDBCAppender3.定义日志管理类4.编写日志输出代码5.运行结果6.完整代码二、springboot工程1.创建数据库日志表2.log4j2.xml引入JDBCAppender3.定义日志管理类4.遗留问题5.解决办法6.完

百度SEO优化基本原理(掌握SEO基础,提高网站排名)

随着互联网的迅速发展,越来越多的企业开始意识到网站优化的重要性,其中百度SEO优化是企业不可忽视的一项工作。本文将介绍百度SEO优化的基本概念、步骤、原理、解决方法和提升网站标题优化的方法。蘑菇号-www.mooogu.cn百度SEO优化是指针对百度搜索引擎的搜索算法进行网站优化,提高网站在百度搜索结果页面上的排名。主

方案:浅析AI视频分析与视频监控技术的工厂车间智能化监管方案

一、方案背景工厂生产车间一般是从原材料到成品的流水作业,有大量器械和物料。为保障车间财产安全并提高生产效率,需要进行全面的监管。在生产制造流水线的关键工序中,不仅有作业过程监管需求,同时,也存在生产发生异常及产品质量问题的过程还原需求,需要结合直观现场与客观数据的融合分析。当前工厂车间的监管存在以下痛点:1)生产状态(

一致性思维链(SELF-CONSISTENCY IMPROVES CHAIN OF THOUGHT REASONING IN LANGUAGE MODELS)

概要思维链已经在很多任务上取得了非常显著的效果,这篇论文中提出了一种self-consistency的算法,来代替贪婪解码算法。本方法通过采样多个思维链集合,然后LLM模型生成后,选择一个最一致的答案作为最后的结果。一致性思维链认为复杂的推理问题,有不同的思维方式去解决,从而得到最终唯一答案。经过实验验证,一致性思维链

nginx 配置 ssl

1.1Nginx如果未开启SSL模块,配置Https时提示错误原因也很简单,nginx缺少http_ssl_module模块,编译安装的时候带上--with-http_ssl_module配置就行了,但是现在的情况是我的nginx已经安装过了,怎么添加模块,其实也很简单,往下看:做个说明:我的nginx的安装目录是/u

Python3.11教程6:标准库简介1——os、shutil、sys、random、time、datetime、 threading

文章目录一、文件和目录处理模块1.1os模块1.2shutil模块1.3文件通配符glob1.4stat二、sys模块2.1命令行参数列表2.2-c和-m选项2.3argparse2.3.1argparse使用逻辑2.3.2`add_argument()`语法三、数学3.1math3.2random3.3numpy生成

民安智库(第三方满意度调研公司)建立企业员工满意度测评指标体系

员工满意度是企业管理者关注的重点,企业管理层如何了解职工满意度状况?民安智库借鉴国内外研究成果,总结了企业职工满意度评价指标构建原则、研究方法及研究流程。为什么要建立员工满意度测评指标体系?在现代人力资源管理强调“以人为本”的管理理念下,企业需要尊重并重视员工的需求,并将员工视为最宝贵的、可增值的资源。企业的医务人员作

小剧场短剧影视小程序源码分享,搭建自己的短剧小程序

拥有一个属于自己的短剧小程序,是现代人追求创作梦想和与观众互动的新方式。近年来,小剧场短剧影视小程序的兴起为广大创作者提供了展示才华和与观众互动的平台。如果你也渴望搭建一个自己的短剧小程序,那么你来对地方了!在本文中,我将分享小剧场短剧影视小程序的源码,帮助你开始属于自己的短剧创作之旅。小剧场短剧影视小程序源码:为什么

leetcode 1562. 查找大小为 M 的最新分组

给你一个数组arr,该数组表示一个从1到n的数字排列。有一个长度为n的二进制字符串,该字符串上的所有位最初都设置为0。在从1到n的每个步骤i中(假设二进制字符串和arr都是从1开始索引的情况下),二进制字符串上位于位置arr[i]的位将会设为1。给你一个整数m,请你找出二进制字符串上存在长度为m的一组1的最后步骤。一组

热文推荐