CN111915059B - 基于注意力机制的Seq2seq泊位占有率预测方法 - Google Patents
基于注意力机制的Seq2seq泊位占有率预测方法 Download PDFInfo
- Publication number
- CN111915059B CN111915059B CN202010603613.XA CN202010603613A CN111915059B CN 111915059 B CN111915059 B CN 111915059B CN 202010603613 A CN202010603613 A CN 202010603613A CN 111915059 B CN111915059 B CN 111915059B
- Authority
- CN
- China
- Prior art keywords
- representing
- parameter
- data
- berth
- parameters
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Active
Links
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06Q—INFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES; SYSTEMS OR METHODS SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES, NOT OTHERWISE PROVIDED FOR
- G06Q10/00—Administration; Management
- G06Q10/04—Forecasting or optimisation specially adapted for administrative or management purposes, e.g. linear programming or "cutting stock problem"
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06N—COMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
- G06N3/00—Computing arrangements based on biological models
- G06N3/02—Neural networks
- G06N3/04—Architecture, e.g. interconnection topology
- G06N3/045—Combinations of networks
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06N—COMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
- G06N3/00—Computing arrangements based on biological models
- G06N3/02—Neural networks
- G06N3/04—Architecture, e.g. interconnection topology
- G06N3/047—Probabilistic or stochastic networks
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06N—COMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
- G06N3/00—Computing arrangements based on biological models
- G06N3/02—Neural networks
- G06N3/04—Architecture, e.g. interconnection topology
- G06N3/049—Temporal neural networks, e.g. delay elements, oscillating neurons or pulsed inputs
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06N—COMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
- G06N3/00—Computing arrangements based on biological models
- G06N3/02—Neural networks
- G06N3/08—Learning methods
-
- Y—GENERAL TAGGING OF NEW TECHNOLOGICAL DEVELOPMENTS; GENERAL TAGGING OF CROSS-SECTIONAL TECHNOLOGIES SPANNING OVER SEVERAL SECTIONS OF THE IPC; TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
- Y02—TECHNOLOGIES OR APPLICATIONS FOR MITIGATION OR ADAPTATION AGAINST CLIMATE CHANGE
- Y02D—CLIMATE CHANGE MITIGATION TECHNOLOGIES IN INFORMATION AND COMMUNICATION TECHNOLOGIES [ICT], I.E. INFORMATION AND COMMUNICATION TECHNOLOGIES AIMING AT THE REDUCTION OF THEIR OWN ENERGY USE
- Y02D10/00—Energy efficient computing, e.g. low power processors, power management or thermal management
Landscapes
- Engineering & Computer Science (AREA)
- Physics & Mathematics (AREA)
- Theoretical Computer Science (AREA)
- General Physics & Mathematics (AREA)
- General Health & Medical Sciences (AREA)
- Evolutionary Computation (AREA)
- Software Systems (AREA)
- Mathematical Physics (AREA)
- General Engineering & Computer Science (AREA)
- Computing Systems (AREA)
- Molecular Biology (AREA)
- Data Mining & Analysis (AREA)
- Computational Linguistics (AREA)
- Biophysics (AREA)
- Biomedical Technology (AREA)
- Artificial Intelligence (AREA)
- Health & Medical Sciences (AREA)
- Life Sciences & Earth Sciences (AREA)
- Business, Economics & Management (AREA)
- Human Resources & Organizations (AREA)
- Economics (AREA)
- Strategic Management (AREA)
- Game Theory and Decision Science (AREA)
- Tourism & Hospitality (AREA)
- Development Economics (AREA)
- Quality & Reliability (AREA)
- Operations Research (AREA)
- Marketing (AREA)
- Entrepreneurship & Innovation (AREA)
- General Business, Economics & Management (AREA)
- Probability & Statistics with Applications (AREA)
- Management, Administration, Business Operations System, And Electronic Commerce (AREA)
Abstract
本发明公开的基于注意力机制的Seq2seq泊位占有率预测方法,包括接受请求、预处理数据、构建模型、优化模型等步骤,通过双向长短期记忆网络BiLSTM解决长期依赖学习能力不足的问题,通过卷积神经网络CNN捕获时间模式,获得学习序列与目标序列的相关性,以此增强模型局部特征的学习能力。本发明解决了现有技术中对泊位占有率预测结果不稳定、准确度低的问题。
Description
技术领域
本发明属于泊位预测方法技术领域,具体涉及一种基于注意力机制的Seq2seq泊位占有率预测方法。
背景技术
近年来,随着城市化进程的深入,城市居民私家车保有量急剧增加,停车位的需求量也在不断的增加。通常情况下,街道的停车位有限,人们寻找街道上免费停车位所花费的时间和燃油成本已经超过了停车场付费;同时,在寻找街道上停车位的过程中,也给交通的流畅度和空气质量带来了不利的影响。
基于上述现状,提出城市智能化概念,城市智能化的一个主要体现就是通过物联网(Internet of Things,IoT)来解决当前城市所存在的问题,例如停车位紧张问题。其主要思想是通过使用传感器监控城市的交通状况、空气温度、污染水平以及停车场使用率等数据来了解城市的状态。因此,我们可以通过使用物联网监控一个城市停车场中停车位的使用率方法,来解决停车位紧缺问题,从而达到智能化的效果。虽然监控单个停车位的方法难以执行,但是可以通过统计进出非街道停车场的车辆数数据,对未来停车场的入驻率进行分析预测。
停车场泊位预测是充分发挥停车智能化效果的关键。泊位预测是一个典型的时间序列预测问题。时间序列的预测可根据预测目标的不同分为长时预测(多步预测)和短时预测(单步预测)。时间序列预测与分类和回归问题不同,时间序列预测问题增加了观察值之间的顺序和时间依赖的复杂性,这使得时间序列预测问题比一般的预测问题更加复杂。
目前,预测方法可分为:基于统计的预测、基于机器学习的预测。
基于统计的预测包括指数平滑法、马尔科夫预测法、自回归移动平均模型(Autoregressive Interrated Moving Average Model,ARIMA)等预测方法;基于机器学习的预测方法包括BP神经网络、小波神经网络、回归树、支持向量机、循环神经网络和长短期记忆神经网络等方法。
但是,上述两大类方法的预测高精度均建立在预测步数量足够少的基础上,一般是1-3个预测步长。如果预测步数量增加,那么预测精度将出现大幅下降。同时,上述方法无法对含有各种不确定因素的影响的模型进行精确预测。深度学习算法在处理大量停车场数据时具有良好的数据特征提取能力以及拟合非线性复杂系统的预测能力,而泊位预测是为了从复杂多变的历史泊位数据中提取典型特征,从而做出准确的泊位占有率预测。
发明内容
本发明的目的是提供基于注意力机制的Seq2seq泊位占有率预测方法,解决了现有预测方法精度低、结果不稳定的问题。
本发明所采用的技术方案是,基于注意力机制的Seq2seq泊位占有率预测方法,包括以下步骤:
步骤1,接收待预测停车场的泊位预测请求,即预测目标停车场设定的固定时间段的泊位占有率,随后采集待预测停车场数据;
步骤2,预处理步骤1中采集的待预测停车场数据,随后采用最大互信息系数MIC检验待预测停车场数据的相关性,得到数据集;将数据集按照比例4:1划分为训练集和测试集;
步骤3,构建基于Seq2seq泊位预测模型;
步骤4,在步骤3的基于Seq2seq泊位预测模型的基础上,构建CNN注意力机制网络层,得到神经网络模型;
步骤5,步骤2中训练集包括:泊位入驻数Occupancy记为X={X11,X12,ΛX1g},X1t为(1≤t≤g)时刻的泊位数,g为记录时刻总数;数据记录时刻天气Weather记为Wea={W21,W22,ΛW2g},W2t∈{0,1}(1≤t≤g),该变量取值为0表示非雨雪天,1为雨雪天气;数据记录时刻的星期数记为WeekdayWee={W31,W32,ΛW3g},W3t∈[1,7](1≤t≤g),该变量取值表示周一至周日;节假日Vacation记为V={V41,V42,Λ,V4g},V4t∈{0,1}(1≤t≤g),该变量取值为0或1,0为非节假日,1为节假日;将步骤2中的训练集数据输入到步骤4神经网络模型中训练,通过每次计算预测结果与步骤2中测试集的剩余停车泊位数之间的均方误差,调整神经网络模型中参数,每一次训练均根据均方误差调整神经网络模型的参数,并通过均方误差确定迭代次数,训练完成后,得到优化后的神经网络模型。
本发明的特征还在于,
步骤1中待预测停车场数据包括:记录时间Time,泊位入驻数Occupancy,数据记录时刻天气Weather,数据记录时刻星期数Weekday,数据记录时间是否节假日Vacation。
步骤2预处理包括:采用临近平均值补全缺失数据;剔除无用数据;按照归一化后的数据=(原始数据泊位数-样本数据泊位入驻数的最小值)/(样本数据中泊位入驻数的最大值-样本数据泊位入驻数的最小值)的计算方式,将归一化后的数据映射到[0,1]区间。
步骤2中采用最大互信息系数MIC进行相关性分析具体步骤为:
首先,给定参数i、j,对待预测停车场数据中任意两个特征变量X、Y构成的散点图进行i列j行网格化,求出最大的互信息值;
其次,对所得的最大的互信息值进行归一化;
最后,选择不同尺度下互信息的最大值作为MIC值。
步骤3中基于Seq2seq泊位预测模型为编码器Encoder-解码器Decoder结构,其中编码器Encoder和解码器Decoder均包含三层BiLSTM,BiLSTM包括两条单向LSTM链式结构。
LSTM链式结构具体为:每一个步长t与其对应的输入序列xt={x1,x2…xw}(w为滑窗窗口长度),记忆单元ct通过不同门限控制数据的记忆和遗忘,运算过程如公式(3)-(10)所示:
it=σ(Wixt+Uiht-1+bi) (3)
ft=σ(Wfxt+Ufht-1+bf) (5)
ot=σ(Woxt+Uoht-1+bo) (6)
ht=ot·tanh(ct) (10)
公式(3)-(10)中,参数it表示当前时间步t的输入门,参数σ表示sigmoid函数,参数xt表示当前时间步t对应的输入序列,参数ht-1表示上一时间步的隐藏状态,参数ft表示当前时间步t的遗忘门,参数ot表示当前时间步t的输出门,参数it表示当前时间步t的输入门,tanh(·)为激活函数,参数c~t表示当前时间步t对应的候选记忆细胞;参数Wi表示输入门输入过程的权重参数,Wf表示遗忘门遗忘过程的权重参数,Wo表示输出门输出过程的权重参数,Wc表示记忆单元传输过程的权重参数;参数Ui表示输入门状态转移权重参数,Uf表示遗忘门状态转移权重参数,Uo表示输出门状态转移权重参数,Uc表示记忆单元状态转移权重参数;参数bi表示输入门偏差参数,bf表示遗忘门偏差参数,bo表示输出门偏差参数,bc表示记忆单元偏差参数;符号“·”表示点乘。
步骤4具体为:
步骤4.1,利用一维CNN进行卷积计算,如公式(11):
公式(11)中,表示滤波器在注意力范围内进行卷积运算之后的结果值;Hi,(t-w-1-l)表示滤波器对第i行[t-w,t-1](一个滑动窗口长度w)范围内进行进行卷积操作;Cj,T-w+l表示第j个滤波器在注意力长度T,滑窗窗口为w范围内的卷积作用结果值,设T=w,则Ci,l表示第j个滤波器,在滑窗窗口长度w范围内的卷积作用结果值;
步骤4.2,针对卷积结果进行评分,设时间模式的评分函数scoring function为f:
注意力权重αi如公式(13)计算:
步骤4.3,利用sigmoid函数对步骤4.2中的公式(12)的分值进行归一化处理,sigmoid函数将一个实数映射到[0,1]的区间内,通过归一化得到特征向量权重,便于选择多变量,具体计算如公式(4):
通过对参数HC每行做加权求和,得到上下文向量vt:
公式(14)中,参数αi为时间模式矩阵HC第i行通注意力权重,到的具体分值;
步骤4.4,将参数vt与Encoder的隐藏状态ht传入Decoder端。具体的,将Encoder的隐藏状态ht、上下文向量vt与Decoder隐藏状态st连接,如公式(16):
st=tanh(Wvvt+Whht) (15)
公式(15)中,参数Wv为Decoder隐藏状态st计算过程上下文向量vt的权值参数;参数Wh为Decoder隐藏状态st计算过程中Encoder隐藏状态ht的权值参数;
步骤4.5,Decoder通过接受前一个输出序列yt-1以及Decoder的上一个时间戳的隐藏状态st-1和上下文环境向量vt计算当前隐藏状态st′,
s′t=BiLSTMdec(yt-1,vt,st-1) (16)
步骤4.6,最后结合st′及上下文向量vt,通过输出层及softmax运算来计算输出yt:
yt=softmax(Wyst+Wvvt+by) (17)
softmax函数的是一个概率函数,max表示取其中概率最大值,它的作用是将所有输出的映射到(0,1)的区间作为最终的输出;假设有一个数组Y,数组长度为k,yi表示Y中的第i个元素,那么元素yi的softmax值计算过程如下:
本发明的有益效果是:本发明基于注意力机制的Seq2seq泊位占有率预测方法,通过双向长短期记忆网络BiLSTM解决长期依赖学习能力不足的问题,通过卷积神经网络CNN捕获时间模式,获得学习序列与目标序列的相关性,以此增强模型局部特征的学习能力,解决了现有技术中对泊位占有率预测结果不稳定、准确度低的问题。
附图说明
图1是本发明基于注意力机制的Seq2seq泊位占有率预测方法的流程图;
图2是本发明基于注意力机制的Seq2seq泊位占有率预测方法中基于Seq2seq泊位预测模型的结构图;
图3是本发明基于注意力机制的Seq2seq泊位占有率预测方法中BiLSTM的结构图;
图4是本发明基于注意力机制的Seq2seq泊位占有率预测方法中LSTM的结构图;
图5是本发明基于注意力机制的Seq2seq泊位占有率预测方法CNN注意力机制网络层的结构图;
图6是实施例中不同层数BiLSTM的Seq2seq预测模型RMSE对比图;
图7是实施例中预测值与真实值对比曲线图;
图8是实施例中Seq2seq预测模型与LSTM预测模型MAE箱线分布图。
具体实施方式
下面结合附图和具体实施方式对本发明进行详细说明。
本发明基于注意力机制的Seq2seq泊位占有率预测方法,如图1所示,包括以下步骤:
步骤1,接收待预测停车场的泊位预测请求,请求目的是待预测停车场内预定时间段中每间隔单位时间的泊位占有率;随后采集待预测停车场数据,待预测停车场数据包括记录时间(Time)、泊位入驻数(Occupancy),数据记录时刻天气(Weather)、数据记录时刻星期数(Weekday)、数据记录时间是否节假日(Vacation)。
步骤2,对步骤1中采集的待预测停车场数据预处理,随后检验待预测停车场数据的相关性,得到数据集;
预处理主要包括缺失数据填充、剔除无用数据、数据标准化和归一化。
缺失数据填充,通过统计学原理,采取自动补全的处理方法,即根据待预测停车场数据中记录的取值分布情况对任意一个空值进行自动填充,可采用平均值、最小值等填充缺少的数据,本发明采用临近平均值补全。
剔除无用数据,即停止工作或者故障时采集到的、且会影响到模型的预测精度的数据,这类数据不能放入后续的处理数据集,直接删除。
数据标准化和归一化处理,数据的标准化(normalization)是将数据按比例缩放,使之落入某一范围的特定区间,在对数据比较和评价的指标处理中经常会用到,去除数据的单位限制,将其转化为无量纲的纯数值,便于不同单位或量级的指标能够比较和加权。其中最典型即为数据的归一化处理,归一化后的数据=(原始数据泊位数-样本数据泊位入驻数的最小值)/(样本数据中泊位入驻数的最大值-样本数据泊位入驻数的最小值),随后将归一化后的数据映射到[0,1]区间,可以提升模型的收敛速度和精度。
检验待预测停车场数据的相关性,采用最大互信息系数(Maximal InformationCoefficient,MIC)进行相关性分析,MIC是用来衡量任意两个特征变量之间的关联程度(线性或非线性关系),工作原理是:如果两个变量之间存在一定的相关性,那么在这两个变量的散点图上进行某种网格划分之后,根据这两个变量在网格中的近似概率密度分布,可计算两个变量的互信息,正则化处理后,该值用于衡量两个变量之间的相关性。
MIC利用到互信息概念,如公式(1)所示:
公式(1)中,参数x、y表示两个随机变量;参数p(x,y)表示随机变量x、y的联合概率分布,参数p(x)、p(y)表示边缘概率分布;可知互信息I(x,y)是联合概率分布p(x,y)与边缘概率分布p(x)、p(y)的相对熵。
MIC是针对两个变量之间的关系离散在二维空间中,并且使用散点图来表示,将当前二维空间在x,y方向分别划分为一定的区间数,然后查看当前的散点在各个方格中落入情况,计算联合概率的值,解决了在互信息中的联合概率难求的问题。MIC的计算公式(2)所示:
公式(2)中,参数a、b表示在二维空间x,y方向上划分格子的个数,即二维的网格分布;参数B表示变量、且数值大小为样本数据量N的0.6次方大小。
综上可知,MIC进行特征相关性分析分为以下三个步骤:
首先,给定参数i、j,对待预测停车场数据中任意两个特征变量X、Y构成的散点图进行i列j行网格化,结合公式(1)求出最大的互信息值;
其次,对所得的最大的互信息值进行归一化;
最后,结合公式(2),选择不同尺度下互信息的最大值作为MIC值。
随后按照比例4:1将数据集划分为训练集和测试集,即80%为数据集的训练集,20%为数据集的测试集。
步骤3,构建基于Seq2seq泊位预测模型
如图2所示,基于Seq2seq泊位预测模型为编码器(Encoder)-解码器(Decoder)结构,参数vt为存储数据时间模式信息的上下文向量。编码器(Encoder)和解码器(Decoder)均包含三层BiLSTM;如图3所示,BiLSTM是双向的LSTM网络,由前向LSTM与后向LSTM组合,被用来建模上下文信息,其中,参数LSTML为前向LSTM,参数(x0,x1,x2,…,xt)为输入序列,参数LSTMR为为后向LSTM,参数hLt为前向LSTM的隐藏状态,参数hRt为后向LSTM的隐藏状态,参数ht为BiLSTM的隐藏状态,记为ht={hLt,hRt}。
由上可知,BiLSTM是由两条单向LSTM链式结构组成,如图4所示,为LSTM的内部结构,其中符号“·”表示点乘,符号∫表示tanh(·)激活函数,参数σ表示sigmoid函数,参数D表示数据向量,参数it表示当前时间步t的输入门,参数ft表示当前时间步t的遗忘门,参数ot表示当前时间步t的输出门,参数xt表示当前时间步t对应的输入序列,参数ht-1表示上一时间步的隐藏状态,参数ct表示当前时间步记忆细胞;参数ht表示当前时间步t的隐藏状态。由上可知,标准LSTM为:
每一个步长t与其对应的输入序列xt={x1,x2…xw}(w为滑窗窗口长度),记忆单元ct通过不同门限控制数据的记忆和遗忘,运算过程如公式(3)-(10)所示:
it=σ(Wixt+Uiht-1+bi) (3)
ft=σ(Wfxt+Ufht-1+bf) (5)
ot=σ(Woxt+Uoht-1+bo) (6)
ht=ot·tanh(ct) (10)
公式(3)-(10)中,参数c~t表示当前时间步t对应的候选记忆细胞;参数Wi表示输入门输入过程的权重参数,Wf表示遗忘门遗忘过程的权重参数,Wo表示输出门输出过程的权重参数,Wc表示记忆单元传输过程的权重参数;参数Ui表示输入门状态转移权重参数,Uf表示遗忘门状态转移权重参数,Uo表示输出门状态转移权重参数,Uc表示记忆单元状态转移权重参数;参数bi表示输入门偏差参数,bf表示遗忘门偏差参数,bo表示输出门偏差参数,bc表示记忆单元偏差参数。
上式中σ(·)为sigmoid函数,sigmoid函数也叫Logistic函数,其目的是将一个实数映射到[0,1]的区间。tanh(·)为激活函数,将数值缩放到(-1,1)之间。三类门限控制单元共同控制信息进入和离开记忆细胞,输入门it调节进入记忆细胞的新信息;遗忘门ft控制记忆细胞中保存的信息;输出门ot定义输出信息,LSTM的门结构使得时间序列上的信息形成一个有效的依赖关系。
步骤4,在步骤3的基于Seq2seq泊位预测模型的基础上,构建CNN注意力机制网络层,得到神经网络模型;
在编码器(Encoder)端输入x=(x1,x2…xg)(g为输入数据的长度),编码器(Encoder)接受每个输入向量x和上一个时间戳的隐藏状态向量ht-1;输出对应时间戳的隐藏状态向量ht=BiLSTMonc(xt,ht-1),通过CNN学习多特征的时间模式信息,获得特征的学习权重,传入解码器(Decoder),按概率学习最后输出预测值。
如图5所示,CNN注意力机制网络结构中,将原始时间序列输入到BiLSTM,得到每个时间步的隐状态hi(列向量),每个hi维度为m,得到隐状态矩阵H={ht-w,ht-w+1,…,ht-1}。隐状态矩阵的行列向量意义为:列向量代表单个变量在所有时间步下状态,即同一变量的所有时间步构成的向量;行向量代表单个时间步状态,即同一时间步下的所有变量构成的向量。
通过卷积计算获得该变量在卷积核范围内的时间模式矩阵评分函数(Scoring Function)计算时间模式矩阵的分值,并通过sigmoid函数将分值归一化,获得注意力权重α,结合时间模式矩阵及注意力权重计算得到上下文向量vt。将解码器(Decoder)中的上下文向量vt及隐藏状态ht,与解码器(Decoder)中的隐藏状态st进行连接,并通过输出层及softmax运算来计算输出预测值。
在处理机器翻译任务时使用Bahdanau和Luong等人提出的注意力机制方式,在解码时,对于每个输出的word都需要计算上下文向量,得到一个p*q的二维矩阵,p代表sourceword数量,q代表target word数量。在处理机器翻译任务时,需要训练相关的Word2Vec词向量,并通过概率输出结果,但是处理方式并不适用于时间序列预测问题。
因此,本发明提出利用一维CNN注意力机制。针对CNN注意力机制,设卷积配置为k个滤波器filters,卷积核kernel尺寸为1×T(T代表注意力attention时所覆盖的范围,可理解为注意力长度attn_length,通常令T=w),将卷积核kernel沿隐状态矩阵H的行向量计算卷积,提取该变量在该卷积核范围attn_length内的时间模式矩阵具体的操作过程如下所示:
步骤4.1,利用一维CNN进行卷积计算,如公式(11):
公式(11)中,参数表示滤波器在注意力范围内进行卷积运算之后的结果值;参数Hi,(t-w-1-l)表示滤波器对第i行[t-w,t-1](一个滑动窗口长度w)范围内进行进行卷积操作;Cj,T-w+l表示第j个滤波器在注意力长度T,滑窗窗口为w范围内的卷积作用结果值,设T=w,则Ci,l表示第j个滤波器,在滑窗窗口长度w范围内的卷积作用结果值。
步骤4.2,针对卷积结果进行评分,设时间模式的评分函数scoring function为f,计算如下:
注意力权重αi如公式(13)计算:
步骤4.3,利用sigmoid函数对步骤4.2中的公式(12)的分值进行归一化处理,sigmoid函数将一个实数映射到[0,1]的区间内,通过归一化得到特征向量权重,便于选择多变量,具体计算如公式(4):
通过对参数HC每行做加权求和,得到上下文向量vt:
公式(14)中,参数αi为时间模式矩阵HC第i行通注意力权重,到的具体分值;
步骤4.4,将参数vt与Encoder的隐藏状态ht传入Decoder端。具体的,将Encoder的隐藏状态ht、上下文向量vt与Decoder隐藏状态st连接,如公式(16):
st=tanh(Wvvt+Whht) (15)
公式(15)中,参数Wv为Decoder隐藏状态st计算过程上下文向量vt的权值参数;参数Wh为Decoder隐藏状态st计算过程中Encoder隐藏状态ht的权值参数;
步骤4.5,Decoder通过接受前一个输出序列yt-1以及Decoder的上一个时间戳的隐藏状态st-1和上下文环境向量vt计算当前隐藏状态st′,
s′t=BiLSTMdec(yt-1,vt,st-1) (16)
步骤4.6,最后结合st′及上下文向量vt,通过输出层及softmax运算来计算输出yt:
yt=softmax(Wyst+Wvvt+by) (17)
softmax函数的是一个概率函数,max表示取其中概率最大值,它的作用是将所有输出的映射到(0,1)的区间作为最终的输出;假设有一个数组Y,数组长度为k,yi表示Y中的第i个元素,那么元素yi的softmax值计算过程如下:
步骤5,步骤2中训练集包括:泊位入驻数Occupancy记为X={X11,X12,ΛX1g},X1t为(1≤t≤g)时刻的泊位数,g为记录时刻总数;数据记录时刻天气Weather记为Wea={W21,W22,ΛW2g},W2t∈{0,1}(1≤t≤g),该变量取值为0表示非雨雪天,1为雨雪天气;数据记录时刻的星期数记为WeekdayWee={W31,W32,ΛW3g},W3t∈[1,7](1≤t≤g),该变量取值表示周一至周日;节假日Vacation记为V={V41,V42,Λ,V4g},V4t∈{0,1}(1≤t≤g),该变量取值为0或1,0为非节假日,1为节假日;
将步骤2中的训练集数据输入到步骤4神经网络模型中训练,通过每次计算预测结果与步骤2中测试集的剩余停车泊位数之间的均方误差,调整神经网络模型中Encoder端BiLSTM隐藏神经元的个数(E_hidden)和Decoder端BiLSTM隐藏神经元个数(D_hidden)、学习率(learning_rate)、遗忘率(drop_rate)、迭代次数(Epochs)、输入特征数(input_dim)和数据长度(time_step)等参数,随后继续对测试集中的数据进行训练,通过多次迭代更新提高神经网络模型预测结果的准确性,并且每一次训练都根据均方误差调整神经网络模型的参数,并通过均方误差确定迭代次数;使神经网络模型以更高的效率进行预测和学习;训练完成后,得到优化后的神经网络模型。
步骤5中,将测试集数据输入优化后的神经网络模型中测试预测效果,对泊位预测精度进行分析,如不满足准确度要求,则重新进行参数调整和模型训练,反之保留,预测完成。
实施例
接收预测请求;根据预测需求,采集目标停车场的历史泊位数据(数据来源于UCI公共数据集),如表1所示:
表1停车场泊位数据
采集停车场泊位数据,每隔30min采集一次,Occupancy为数据记录时刻的泊位入驻数;Weekday范围选择为[1,7],即代表周一至周日;Weather为数据记录时刻的天气状况,取值为0或1,0为非雨雪天,1为雨雪天气;Vacation为数据记录时刻的节假日状况,取值为0或1,0为非节假日,1为节假日。
通过缺失数据填充、剔除无用数据、数据标准化和归一化,完成对停车场泊位数据的预处理;随后对进行特征相关性分析,即利用MIC值对三个特征(Weekday、Weather、Vacation)与泊位入驻数(Occupancy)进行特征相关性检验,结果如表2所示,得到数据集;
表2泊位占有率特征相关性MIC值
将数据集按照比例4:1划分为训练集和测试集,初步数据集总量为1386,其中1109为训练集,277为测试集。
建立基于注意力机制的Seq2seq泊位预测模型。模型为Encoder-Decoder结构,Encoder为三层BiLSTM、上下文向量vt、Decoder同样为三层BiLSTM;
构建CNN注意力机制层,结构包括Encoder、上下文向量vt和Decoder,Encoder中为三层BiLSTM,上下文向量vt通过特征权重学习的CNN得到,Decoder中包括三层BiLSTM。
训练数据集,使用数据集中包括BHMBCCMKT01在内的28个停车场的停车数据作为实验数据。对于每个单个停车场数据集进行划分,其中80%为训练集,20%为测试集。
采用Seq2seq编解码器结构来预测泊位占有率,采用BiLSTM结构进行编解码操作,然后通过BiLSTM层数来优化模型参数。最初实验的学习率设置为0.01,衰减率设置为0.5,隐藏层节点的数量设置为100,CNN设置4个滤波器,卷积核大小为1×18。将数据集输入网络进行训练,测试编码器和解码器不同层数BiLSTM网络的RMSE变化情况。
如图6所示,采用1层BiLSTM结构的训练误差较大,经过单层、双层、三层训练后的测试误差相对较小。单层、双层、五层BiLSTM结构的Seq2seq模型的测试误差具有很高的波动性。因此,选择编码器解码器内部BiLSTM层数为误差最小的三层BiLSTM。在深度学习中,模型通过训练从训练集中学习所有样本的普遍规律,容易导致过拟合或欠拟合。通过增加模型训练迭代的次数,可以克服模型拟合不足的现象。通过增加数据集和引入形式化方法,可以克服过拟合现象。本发明采用神经单元的Dropout,在训练过程中将神经单元暂时从网络中删除,概率为0.5。
将训练完成的预测模型导入,读取测试集测试模型预测效果,接下来将从单个停车场和总体28个停车场两个方面测试基于注意力机制的泊位占有率预测模型的预测效果。结果分析如下:
(1)单个停车场分析
实施例超参数为:预测目标步长为36、Encoder端BiLSTM隐藏神经元的个数(E_hidden)和Decoder端BiLSTM隐藏神经元个数(D_hidden)同为64、学习率(Learning_rate)为0.001、遗忘率(Drop_rate)为0.75、输入特征数(Lnput_dim)为4、迭代次数(Epochs)为1000和数据长度(Time_step)为18。训练完成后,得到泊位预测模型;将训练完成的模型导入,测试集输入训练完成的预测模型进行测试后,就获得预测目标值。
测试模型预测值和真实值对比如表3所示,36个预测值中有29个预测值与真实值误差在10以内,平均误差为6.75,如图7所示,并且预测精度并没有随着步长的增加而下降。
表3预测值与真实值对比
因此,本发明方法可以预测到未来36个目标步长的停车场泊位占有率情况,且可以保证预测结果较高的预测精度;模型预测结果的误差相对稳定,模型达到了很好的拟合效果。
(2)总体效果分析
使用28个停车场作为实验数据,并对每一个停车场数据集按照比例4:1的进行数据划分,之后进行模型训练和测试。如表4所示,使用基于注意力机制的Seq2seq预测模型同LSTM预测模型进行对比分析:表中显示了Seq2seq泊位占有率预测模型以及LSTM泊位预测模型在数据集上的总体效果;LSTM预测模型的预测步长为10,Seq2seq预测步长为36,可以看出,Seq2seq泊位预测模型在28个停车场的数据集测试中,有23个预测结果的MAE小于或等于LSTM泊位预测模型;Seq2seq泊位预测模型MAE的中位数(Median)为0.021,LSTM泊位预测模型MAE的中位数为0.025。Seq2seq泊位预测模型MAE的平均值(Mean)为0.024,LSTM泊位预测模型MAE的平均值(Mean)为0.028;Seq2seq泊位预测模型MAE的最大值(Max)为0.059,LSTM预测模型MAE的最大值(Max)为0.078;Seq2seq预测模型MAE最小值(Min)为0.010,LSTM泊位预测模型最小值(Min)为0.0086。从整体来看,Seq2seq泊位预测模型预测结果MAE的中位数、平均值、最大值均优于LSTM泊位预测模型。
表4 Seq2seq及LSTM泊位占有率预测的MAE对比
如图8所示,本发明预测结果的MAE更为集中且相对更小,基于注意力机制的Seq2seq预测模型预测精度整体优于LSTM泊位预测模型且更为稳定。
综上,本发明方法在泊位预测中,在增加了预测步长的前提下预测精度和稳定性等指标均有提升。
Claims (4)
1.基于注意力机制的Seq2seq泊位占有率预测方法,其特征在于,包括以下步骤:
步骤1,接收待预测停车场的泊位预测请求,即预测目标停车场设定的固定时间段的泊位占有率,随后采集待预测停车场数据;
步骤2,预处理步骤1中采集的待预测停车场数据,随后采用最大互信息系数MIC检验待预测停车场数据的相关性,得到数据集;将数据集按照比例4:1划分为训练集和测试集;
步骤3,构建基于Seq2seq泊位预测模型;
步骤3中基于Seq2seq泊位预测模型为编码器Encoder-解码器Decoder结构,其中编码器Encoder和解码器Decoder均包含三层BiLSTM,所述BiLSTM包括两条单向LSTM链式结构;
公式(3)-(10)中,参数表示当前时间步t的输入门,参数/>表示sigmoid函数,参数/>表示当前时间步t对应的输入序列,参数/>表示上一时间步的隐藏状态,参数/>表示当前时间步t的遗忘门,参数/>表示当前时间步t的输出门,参数/>表示当前时间步t的输入门,为激活函数,参数/>表示当前时间步t对应的候选记忆细胞;参数/>表示输入门输入过程的权重参数,/>表示遗忘门遗忘过程的权重参数,/>表示输出门输出过程的权重参数,/>表示记忆单元传输过程的权重参数;参数/>表示输入门状态转移权重参数,/>表示遗忘门状态转移权重参数,/>表示输出门状态转移权重参数,/>表示记忆单元状态转移权重参数;参数/>表示输入门偏差参数,/>表示遗忘门偏差参数,/>表示输出门偏差参数,表示记忆单元偏差参数;符号“/>”表示点乘;
步骤4,在步骤3的基于Seq2seq泊位预测模型的基础上,构建CNN注意力机制网络层,得到神经网络模型;
所述步骤4具体为:
步骤4.1,利用一维CNN进行卷积计算,如公式(11):
公式(11)中,表示滤波器在注意力范围内进行卷积运算之后的结果值;/>表示滤波器对第/>行[t-w,t-1](一个滑动窗口长度w)范围内进行进行卷积操作;/>表示第个滤波器在注意力长度T,滑窗窗口为w范围内的卷积作用结果值,设/> ,则/>表示第j个滤波器,在滑窗窗口长度w范围内的卷积作用结果值;
步骤4.3,利用sigmoid函数对步骤4.2中的公式(12)的分值进行归一化处理,sigmoid函数将一个实数映射到[0,1]的区间内,通过归一化得到特征向量权重,便于选择多变量,具体计算如公式(4):
softmax函数的是一个概率函数,max表示取其中概率最大值,它的作用是将所有输出的映射到(0,1)的区间作为最终的输出;假设有一个数组Y,数组长度为k,y i表示Y中的第i个元素,那么元素y i的softmax值计算过程如下:
步骤5,步骤2中训练集包括:泊位入驻数Occupancy记为,X 1t为时刻的泊位数,g为记录时刻总数;数据记录时刻天气Weather记为,/>,该变量取值为0表示非雨雪天,1为雨雪天气;数据记录时刻的星期数记为Weekday/>,/> ,该变量取值表示周一至周日;节假日Vacation记为/>,/> ,该变量取值为0或1,0为非节假日,1为节假日;将步骤2中的训练集数据输入到步骤4神经网络模型中训练,通过每次计算预测结果与步骤2中测试集的剩余停车泊位数之间的均方误差,调整神经网络模型中参数,每一次训练均根据均方误差调整神经网络模型的参数,并通过均方误差确定迭代次数,训练完成后,得到优化后的神经网络模型。
2.根据权利要求1所述的基于注意力机制的Seq2seq泊位占有率预测方法,其特征在于,所述步骤1中待预测停车场数据包括:记录时间Time,泊位入驻数Occupancy,数据记录时刻天气Weather,数据记录时刻星期数Weekday,数据记录时间是否节假日Vacation。
3.根据权利要求1所述的基于注意力机制的Seq2seq泊位占有率预测方法,其特征在于,步骤2所述预处理包括:采用临近平均值补全缺失数据;剔除无用数据;按照归一化后的数据=(原始数据泊位数-样本数据泊位入驻数的最小值)/(样本数据中泊位入驻数的最大值-样本数据泊位入驻数的最小值)的计算方式,将归一化后的数据映射到[0,1]区间。
4.根据权利要求1所述的基于注意力机制的Seq2seq泊位占有率预测方法,其特征在于,所述步骤2中采用最大互信息系数MIC进行相关性分析具体步骤为:
首先,给定参数i、j,对待预测停车场数据中任意两个特征变量X、Y构成的散点图进行i列j行网格化,求出最大的互信息值;
其次,对所得的最大的互信息值进行归一化;
最后,选择不同尺度下互信息的最大值作为MIC值。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202010603613.XA CN111915059B (zh) | 2020-06-29 | 2020-06-29 | 基于注意力机制的Seq2seq泊位占有率预测方法 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202010603613.XA CN111915059B (zh) | 2020-06-29 | 2020-06-29 | 基于注意力机制的Seq2seq泊位占有率预测方法 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN111915059A CN111915059A (zh) | 2020-11-10 |
CN111915059B true CN111915059B (zh) | 2023-06-30 |
Family
ID=73226758
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202010603613.XA Active CN111915059B (zh) | 2020-06-29 | 2020-06-29 | 基于注意力机制的Seq2seq泊位占有率预测方法 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN111915059B (zh) |
Families Citing this family (13)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN112115372B (zh) * | 2020-11-18 | 2021-04-23 | 中电科新型智慧城市研究院有限公司 | 一种停车场的推荐方法及装置 |
CN112464281B (zh) * | 2020-11-29 | 2022-11-18 | 深圳市索迪统计科技有限公司 | 基于隐私分组和情感识别的网络信息分析方法 |
CN112433927A (zh) * | 2020-11-30 | 2021-03-02 | 西安理工大学 | 基于时间序列聚类和lstm的云服务器老化预测方法 |
CN112926264A (zh) * | 2021-02-23 | 2021-06-08 | 大连理工大学 | 可用泊位数的集成预测方法 |
CN113011674A (zh) * | 2021-03-31 | 2021-06-22 | 电子科技大学中山学院 | 一种光伏发电预测方法、装置、电子设备及存储介质 |
CN112926697B (zh) * | 2021-04-21 | 2021-10-12 | 北京科技大学 | 一种基于语义分割的磨粒图像分类方法及装置 |
CN113239354A (zh) * | 2021-04-30 | 2021-08-10 | 武汉科技大学 | 一种基于循环神经网络的恶意代码检测方法及系统 |
CN113449780B (zh) * | 2021-06-15 | 2023-09-22 | 南京静态交通产业技术研究院 | 基于随机森林和lstm神经网络的路内泊位占有率预测方法 |
CN113837487A (zh) * | 2021-10-13 | 2021-12-24 | 国网湖南省电力有限公司 | 基于组合模型的电力系统负荷预测方法 |
CN114596726B (zh) * | 2021-10-27 | 2024-01-19 | 西安华企众信科技发展有限公司 | 基于可解释时空注意力机制的停车泊位预测方法 |
CN115905198A (zh) * | 2022-11-24 | 2023-04-04 | 中国长江电力股份有限公司 | 一种长江流域关键水位站点的水位数据预警方法 |
CN115935192A (zh) * | 2023-01-10 | 2023-04-07 | 中国民用航空飞行学院 | 一种基于增量式在线学习框架的飞行训练数据预测方法 |
CN117272849B (zh) * | 2023-11-22 | 2024-02-02 | 上海随申行智慧交通科技有限公司 | 区域停车场饱和度的预测方法、系统及可读存储介质 |
Citations (7)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN109492808A (zh) * | 2018-11-07 | 2019-03-19 | 浙江科技学院 | 一种室内停车场剩余车位预测方法 |
CN109582767A (zh) * | 2018-11-21 | 2019-04-05 | 北京京东尚科信息技术有限公司 | 对话系统处理方法、装置、设备及可读存储介质 |
CN110119765A (zh) * | 2019-04-18 | 2019-08-13 | 浙江工业大学 | 一种基于Seq2seq框架的关键词提取方法 |
CN110288121A (zh) * | 2019-05-16 | 2019-09-27 | 北京交通大学 | 基于多粒度时间注意力机制的航班客座率预测方法 |
CN110619430A (zh) * | 2019-09-03 | 2019-12-27 | 大连理工大学 | 一种用于交通预测的时空注意力机制方法 |
CN110909953A (zh) * | 2019-12-03 | 2020-03-24 | 浙江科技学院 | 一种基于ann-lstm的泊位预测方法 |
WO2020075942A1 (ko) * | 2018-10-10 | 2020-04-16 | 주식회사 케이티 | 교통 정보 예측 방법, 장치 및 컴퓨터 프로그램 |
Family Cites Families (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20180329884A1 (en) * | 2017-05-12 | 2018-11-15 | Rsvp Technologies Inc. | Neural contextual conversation learning |
-
2020
- 2020-06-29 CN CN202010603613.XA patent/CN111915059B/zh active Active
Patent Citations (7)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
WO2020075942A1 (ko) * | 2018-10-10 | 2020-04-16 | 주식회사 케이티 | 교통 정보 예측 방법, 장치 및 컴퓨터 프로그램 |
CN109492808A (zh) * | 2018-11-07 | 2019-03-19 | 浙江科技学院 | 一种室内停车场剩余车位预测方法 |
CN109582767A (zh) * | 2018-11-21 | 2019-04-05 | 北京京东尚科信息技术有限公司 | 对话系统处理方法、装置、设备及可读存储介质 |
CN110119765A (zh) * | 2019-04-18 | 2019-08-13 | 浙江工业大学 | 一种基于Seq2seq框架的关键词提取方法 |
CN110288121A (zh) * | 2019-05-16 | 2019-09-27 | 北京交通大学 | 基于多粒度时间注意力机制的航班客座率预测方法 |
CN110619430A (zh) * | 2019-09-03 | 2019-12-27 | 大连理工大学 | 一种用于交通预测的时空注意力机制方法 |
CN110909953A (zh) * | 2019-12-03 | 2020-03-24 | 浙江科技学院 | 一种基于ann-lstm的泊位预测方法 |
Non-Patent Citations (3)
Title |
---|
基于小波一ELM神经网络的短期停车泊位预测;陈海鹏;《吉林大学学报》;388-392 * |
基于自回归预测模型的深度注意力强化学习方法;梁星星;冯旸赫;黄金才;王琦;马扬;刘忠;;软件学报(04);44-62 * |
基于长短期记忆神经网络的可用停车位预测;孙敏;彭磊;李慧云;;集成技术(06);41-50 * |
Also Published As
Publication number | Publication date |
---|---|
CN111915059A (zh) | 2020-11-10 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN111915059B (zh) | 基于注意力机制的Seq2seq泊位占有率预测方法 | |
CN109492822B (zh) | 空气污染物浓度时空域关联预测方法 | |
CN109697852B (zh) | 基于时序交通事件的城市道路拥堵程度预测方法 | |
CN111832814A (zh) | 一种基于图注意力机制的空气污染物浓度预测方法 | |
CN110555551B (zh) | 一种智慧城市的空气质量大数据管理方法及系统 | |
CN111882869B (zh) | 一种考虑不良天气的深度学习交通流预测方法 | |
CN114664091A (zh) | 一种基于节假日流量预测算法的预警方法及系统 | |
CN116721537A (zh) | 基于gcn-ipso-lstm组合模型的城市短时交通流预测方法 | |
CN114781538A (zh) | 一种ga-bp神经网络耦合决策树的空气质量预测方法和系统 | |
CN114596726B (zh) | 基于可解释时空注意力机制的停车泊位预测方法 | |
CN115115125B (zh) | 基于深度学习融合模型的光伏功率区间概率预测方法 | |
CN113554466A (zh) | 一种短期用电量预测模型构建方法、预测方法和装置 | |
CN113988426A (zh) | 一种基于fcm聚类和lstm的电动汽车充电负荷预测方法及系统 | |
CN115376317B (zh) | 一种基于动态图卷积和时序卷积网络的交通流预测方法 | |
CN114510778A (zh) | 基于混合智能优化lstm的轨道不平顺预测方法 | |
CN113449905A (zh) | 一种基于门控循环单元神经网络的交通拥堵预警方法 | |
CN116797274A (zh) | 一种基于Attention-LSTM-LightGBM的共享单车需求量预测方法 | |
CN114565187A (zh) | 一种基于图时空自编码网络的交通路网数据预测方法 | |
CN113051811A (zh) | 一种基于gru网络的多模式短期交通拥堵预测方法 | |
CN117852701B (zh) | 一种基于特征注意力机制的交通流预测方法及系统 | |
CN115481788A (zh) | 相变储能系统负荷预测方法及系统 | |
CN114973665A (zh) | 一种结合数据分解和深度学习的短时交通流预测方法 | |
CN117034762A (zh) | 一种基于多算法加权和的复合模型锂电池寿命预测方法 | |
CN117370813A (zh) | 一种基于k线模式匹配算法的大气污染深度学习预测方法 | |
CN116778709A (zh) | 一种基于注意力时空图卷积网络交通流速度的预测方法 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PB01 | Publication | ||
PB01 | Publication | ||
SE01 | Entry into force of request for substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
GR01 | Patent grant | ||
GR01 | Patent grant |