一种基于seq2seq模型和CNN模型的农产品价格预测方法技术

技术编号:20919769 阅读:35 留言:0更新日期:2019-04-20 10:22
本发明专利技术公开了一种基于seq2seq模型和CNN模型的农产品价格预测方法,所述方法包括:采集农产品的历史价格数据组成数据集M并进行预处理,将预处理后的数据转化为价格走势图像同时添加标签;将数据集M处理为多维指标数据用来训练seq2seq模型;利用带有标签的价格走势图像训练CNN模型;将待预测农产品的原始历史价格数据处理为多维指标数据输入至训练完毕的seq2seq模型中,得到准预测结果Vs;将带有标签的价格走势图像输入至训练完毕的CNN模型中,得到准预测结果Vc,利用准预测结果Vc对准预测结果Vs进行修正,得到待预测农产品的最终预测价格。本发明专利技术通过双模型混合,对农产品价格预测具有较高的准确性。

A Forecasting Method of Agricultural Product Price Based on Seq2seq Model and CNN Model

The invention discloses an agricultural product price forecasting method based on seq2seq model and CNN model. The method includes: collecting historical price data of agricultural products to form data set M and preprocessing, transforming the preprocessed data into price trend image and adding tags at the same time; processing data set M into multi-dimensional index data to train seq2seq model; and utilizing price with tags. Trend image is used to train CNN model; the original historical price data of agricultural products to be predicted are processed into multi-dimensional index data into the seq2seq model after training, and the quasi-prediction result Vs is obtained; the price trend image with label is input into the CNN model after training, and the quasi-prediction result Vc is obtained. The quasi-prediction result Vc is used to modify the prediction result Vs, and the prediction result Vs is obtained. The final forecast price of agricultural products. By mixing two models, the method has high accuracy in price prediction of agricultural products.

【技术实现步骤摘要】
一种基于seq2seq模型和CNN模型的农产品价格预测方法
本专利技术涉及农产品价格预测领域,更具体地,涉及一种基于seq2seq模型和CNN模型的农产品价格预测方法。
技术介绍
农产品市场是中国市场经济体制中的一个极其重要的组成部分,而农产品价格则是农产品市场的核心。农产品价格波动较大,不仅导致了物价的波动,也给农产品市场从业者带来了额外风险,对整个农产品市场的稳定发展造成了巨大的危害。然而,影响农产品价格波动的因素有很多,例如季节性因素、气候性因素、农产品的供需变化和流通成本因素等等,这导致了对农产品的价格进行预测是一项具有挑战性的任务。然而,没有一个模型能对实际价格变化拟合得非常紧密。由于影响因素众多,导致其预测准确度较低。
技术实现思路
本专利技术为克服上述现有技术中对农产品价格预测准确度低的缺陷,提供一种基于seq2seq模型和CNN模型的农产品价格预测方法。本专利技术旨在至少在一定程度上解决上述技术问题。本专利技术的首要目的是为解决上述技术问题,本专利技术的技术方案如下:一种基于seq2seq模型和CNN模型的农产品价格预测方法,所述方法包括:S1:采集若干种农产品在固定时间段T内的原始历史价格数据组成农产品历史价格数据集M,所述农产品历史价格数据集M包括有T时间内每种农产品的每日价格数据、每日平均气温数据、每日平均降雨量数据,其中,T的单位为天,并对农产品历史价格数据集M中的每日价格数据进行预处理,将预处理后的数据集M中每种农产品每日价格数据处理为价格走势图像,同时给价格走势图像添加标签;S2:选取现有seq2seq模型,将所述农产品历史价格数据集M处理为多维指标数据,利用所述多维指标数据对seq2seq模型进行训练,得到训练完毕的seq2seq模型;S3:选取现有的CNN模型,利用已添加标签的农产品的价格走势图像对CNN模型进行训练,得到训练完毕的CNN模型;S4:选取待预测的农产品并将待预测农产品的原始历史价格数据处理为多维指标数据,然后将多维指标数据输入至训练完毕的seq2seq模型中,得到预测结果Vs;S5:将带有标签的价格走势图像输入至训练完毕的CNN模型中,得到准预测结果Vc,利用预测结果Vc对预测结果Vs进行修正,得到待预测农产品的最终预测价格V,修正公式如下:V=α×Vc+β×Vs其中,α表示预测结果Vc的权重,β表示预测结果Vs的权重,且α+β=1。进一步地,步骤S1所述价格走势图像横轴为时间,单位长度为1天,纵轴为农产品的每日价格单位长度为0.1元。进一步地,步骤S1所述原始历史价格数据集M中每种农产品每日价格数据进行预处理具体过程如下:S1.1:根据预设的价格走势图像中农产品价格标注范围,将采集的每种农产品的价格数据分别调整至所述农产品价格标注范围内;S1.2:将步骤S1.1已调整的农产品价格数据划分为n个价格区间,n的取值为正整数,每个价格区间以当前价格区间中值作为该价格区间的标签;S1.3:将时间段T分成m个连续时间区间,每个时间区间包括d天,其中,m和d的取值为正整数,将每个连续时间区间农产品价格数据作价格走势图像,每一价格走势图像所在连续时间区间后一天的农产品价格所属的价格区间的标签添加给当前价格走势图像,并将添加了价格标签的价格走势图像作为CNN模型的训练数据;进一步地,步骤S2所述多维指标数据包括有时间段T内每一种农产品每日价格P、每日平均气温Temp、每日平均降雨量Vol。进一步地,步骤S2所述的seq2seq模型包含两个部分,分别为编码器encoder和解码器decoder;seq2seq模型的输入数据为当前时间农产品价格数据和当前时间在上一年同一时间的农产品价格数据。进一步地,seq2se模型的输出包括有三个值分别记为:Vs1、Vs2、Vs3,将Vs1、Vs2、Vs3加权求和后得到seq2seq模型的预测结果Vs。进一步地,所述Vs1、Vs2、Vs3的权重在seq2seq模型训练完毕后确定。与现有技术相比,本专利技术技术方案的有益效果是:本专利技术通过将农产品的价格数据转化为可视化的价格走势图,将作为模型的输入用于预测下一时间的农产品价格,同时利用CNN模型的预测结果来修正seq2seq模型的预测结果作为最终的预测价格,双模型混合具有较高的预测准确性。附图说明图1为方法的全流程示意图。图2为seq2seq模型结构图。图3为注意力机制示意图。具体实施方式下面结合附图和实施例对本专利技术的技术方案做进一步的说明。实施例1如图1所示,一种基于seq2seq模型和CNN模型的农产品价格预测方法,所述方法包括:S1:采集若干种农产品在固定时间段T内的原始历史价格数据组成农产品历史价格数据集M,所述农产品历史价格数据集M包括有T时间内每种农产品的每日价格数据、每日平均气温数据、每日平均降雨量数据,其中,T的单位为天,并对农产品历史价格数据集M中的每日价格数据进行预处理,将预处理后的农产品历史价格数据集M中每种农产品每日价格数据处理为价格走势图像,同时给价格走势图像添加标签;步骤S1所述价格走势图像横轴为时间,单位长度为1天,价格走势图像纵轴为农产品的每日价格单位长度为0.1元。步骤S1所述农产品历史价格数据集M中每种农产品每日价格数据进行预处理具体过程如下:S1.1:根据预设的价格走势图像中农产品价格标注范围,将采集的每种农产品的价格数据分别调整至所述农产品价格标注范围内;S1.2:将步骤S1.1已调整的农产品价格数据划分为n个价格区间,n的取值为正整数,每个价格区间以当前价格区间中值作为该价格区间的标签;S1.3:将时间段T分成m个连续时间区间,每个时间区间包括d天,其中,m和d的取值为正整数,将每个连续时间区间农产品价格数据作价格走势图像,每一价格走势图像所在连续时间区间后一天的农产品价格所属的价格区间的标签添加给当前价格走势图像,并将添加了价格标签的价格走势图像作为CNN模型的训练数据;S2:选取现有seq2seq模型,将所述农产品历史价格数据集M处理为多维时间序列数据,利用所述多维时间序列数据对seq2seq模型进行训练,得到训练完毕的seq2seq模型;步骤S2所述多维指标数据包括有时间段T内每一种农产品每日价格P、每日平均气温Temp、每日平均降雨量Vol。步骤S2所述的seq2seq模型包含两个部分,分别为编码器encoder和解码器decoder,seq2seq模型的输入数据为当前时间农产品价格数据和当前时间在上一年同一时间的农产品价格数据。所述seq2seq模型结构如图2所示,x1,x2,...,xn-1,xn作为encoder的输入,encoder最后得到的隐藏层的状态ht输入到decoder的第一个神经元里,得到的输出作为下一步长的输入,以此类推。其中encoder和decoder的每个神经元都是GRU。GRU有两个门,分别为更新门和重置门,更新门用于控制前一时刻的状态信息被带入到当前状态中的程度,更新门的值越大说明前一时刻的状态信息带入越多。重置门用于控制忽略前一时刻的状态信息的程度,重置门的值越小说明忽略得越多。具体运算过程如下。rt=σ(Wr·[ht-1,xt])Zt=σ(Wz·[ht-1,xt])yt=σ(Wo·ht)其中zt被称为更新门,rt被称为重本文档来自技高网...

【技术保护点】
1.一种基于seq2seq模型和CNN模型的农产品价格预测方法,其特征在于,所述方法包括:S1:采集若干种农产品在固定时间段T内的原始历史价格数据组成农产品历史价格数据集M,所述农产品历史价格数据集M包括有T时间内每种农产品的每日价格数据、每日平均气温数据、每日平均降雨量数据,其中,T的单位为天,并对农产品历史价格数据集M中的每日价格数据进行预处理,将预处理后的农产品历史价格数据集M中每种农产品每日价格数据处理为价格走势图像,同时给价格走势图像添加标签;S2:选取现有seq2seq模型,将所述农产品历史价格数据集M处理为多维指标数据,利用所述多维指标数据对seq2seq模型进行训练,得到训练完毕的seq2seq模型;S3:选取现有的CNN模型,利用已添加标签的农产品的价格走势图像对CNN模型进行训练,得到训练完毕的CNN模型;S4:选取待预测的农产品并将待预测农产品的原始历史价格数据处理为多维指标数据,然后将多维指标数据输入至训练完毕的seq2seq模型中,得到预测结果Vs;S5:将带有标签的价格走势图像输入至训练完毕的CNN模型中,得到准预测结果Vc,利用预测结果Vc对预测结果Vs进行修正,得到待预测农产品的最终预测价格V,修正公式如下:V=α×Vc+β×Vs其中,α表示预测结果Vc的权重,β表示预测结果Vs的权重,且α+β=1。...

【技术特征摘要】
1.一种基于seq2seq模型和CNN模型的农产品价格预测方法,其特征在于,所述方法包括:S1:采集若干种农产品在固定时间段T内的原始历史价格数据组成农产品历史价格数据集M,所述农产品历史价格数据集M包括有T时间内每种农产品的每日价格数据、每日平均气温数据、每日平均降雨量数据,其中,T的单位为天,并对农产品历史价格数据集M中的每日价格数据进行预处理,将预处理后的农产品历史价格数据集M中每种农产品每日价格数据处理为价格走势图像,同时给价格走势图像添加标签;S2:选取现有seq2seq模型,将所述农产品历史价格数据集M处理为多维指标数据,利用所述多维指标数据对seq2seq模型进行训练,得到训练完毕的seq2seq模型;S3:选取现有的CNN模型,利用已添加标签的农产品的价格走势图像对CNN模型进行训练,得到训练完毕的CNN模型;S4:选取待预测的农产品并将待预测农产品的原始历史价格数据处理为多维指标数据,然后将多维指标数据输入至训练完毕的seq2seq模型中,得到预测结果Vs;S5:将带有标签的价格走势图像输入至训练完毕的CNN模型中,得到准预测结果Vc,利用预测结果Vc对预测结果Vs进行修正,得到待预测农产品的最终预测价格V,修正公式如下:V=α×Vc+β×Vs其中,α表示预测结果Vc的权重,β表示预测结果Vs的权重,且α+β=1。2.根据权利要求1所述的一种基于seq2seq模型和CNN模型的农产品价格预测方法,其特征在于,步骤S1所述价格走势图像横轴为时间,单位长度为1天,价格走势图像纵轴为农产品的每日价格单位长度为0.1元。3.根据权利要求1所述的一种基于seq2seq模型和CNN模型的农产品价格预测方法,其特征在于,步骤S1所述原始历史价格数据集M中每种农...

【专利技术属性】
技术研发人员:王铭锋左亚尧马铎
申请(专利权)人:广东工业大学
类型:发明
国别省市:广东,44

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1