一种基于深度学习的停车场车位数量预测方法
- 国知局
- 2024-07-31 21:10:29
本发明属于深度学习,涉及一种基于深度学习的停车场车位数量预测方法。
背景技术:
1、传统停车场车位预测模型依赖于已经记录的历史数据,通过对这些数据的分析来研究当前情况。这种研究方法的核心假设是前后时段之间存在某种共性,也就是说当前时段的交通状态可以被视为上一个时段的交通状态与数据误差之间的线性组合的结果。这种方法旨在通过分析历史数据的模式和趋势,以实现对客流的预测。传统停车场车位预测统计模型包括历史平均(ham)模型、时间序列模型以及卡尔曼滤波(kfm)模型等几种主要方法。
2、传统的统计模型在一定程度范围内虽然可以处理时刻不同以及时段不同的停车场车位变化问题,但是却存在先天的不足,即相对静态的预测以及短期的预测间隔,模型的可预测性将会变差。随着信息时代的来临,海量数据出现井喷式的增长,以及数据挖掘技术的不断更新迭代,机器学习模型开始代替其他方法来预测短期客流,比如svr回归模型、线性回归模型、xgb模型、gbdt模型、knn模型等也应用在诸多预测客流量领域上,同时也取得了不错的效果。
3、在选取建模特征方面,许多现有技术并没有考虑其他的影响因素,只是对历史车位数据进行单纯的线性以及非线性拟合,这类方法存在最大的问题就是指标选取上的局限性,同时对于车位数据的时空特性并没有进行太多的研究,无法抓住车位数据特征的关键信息。
4、另外,在选择建模模型方面,相当多的现有技术只用较为单一的预测模型,而且多数技术只用统计分析方法进行模型搭建,进而对模型参数进行评估,从而输出车位数据预测结果,搭建组合模型的研究以及利用组合模型进行分析的实例较少,从而就导致预测精度不足。
技术实现思路
1、本发明的目的在于针对现有技术存在的问题,提供一种基于深度学习的停车场车位数量预测方法,解决了现有车位预测方法对于车位数据的时空特性没有进行深入地研究,无法抓住车位数据特征的关键信息,以及较少利用组合模型进行分析,导致预测精度不足的问题。
2、为此,本发明采取以下技术方案:
3、一种基于深度学习的停车场车位数量预测方法,包括如下步骤:
4、步骤s1、选定一个待预测车位数量的停车场,根据所述停车场内的车位空余量数据和不同日期,构造时空矩阵数据,并将其划分为训练集和测试集;
5、步骤s2、根据步骤s1中的时空矩阵数据建立一个cnn-lstm神经网络预测模型;
6、具体地,所述cnn-lstm神经网络预测模型指时空网络神经预测模型;所述cnn模型指卷积神经网络模型;
7、步骤s3、确定cnn模型卷积核大小和池化方式,并初始化cnn-lstm神经网络预测模型的所有权重参数;
8、步骤s4、经cnn-lstm神经网络预测模型前向传播预测及评估流程;
9、步骤s5、利用梯度下降优化算法完成所述cnn-lstm神经网络预测模型中的权重参数更新,持续迭代训练到总误差收敛为止,停止训练,输出cnn-lstm神经网络预测模型的预测结果,并与其他模型进行比较来验证cnn-lstm神经网络预测模型的性能优越性。
10、进一步地,所述步骤s1包括:
11、步骤s1a:使用cnn网络模型来获取一天内0时至24时车位数据流量在不同时间的变化,从时间和空间维度构建二维时空特征矩阵,所述二维时空特征矩阵的横向坐标轴表示按时间序列车位空余量数据、纵向坐标轴表示不同日期;
12、步骤s1b:设定一个观测点p,将观测点p在(t-n,t-1)时间段内历史空闲车位数据构造为包含车位数据时空特征的输入矩阵s,矩阵s以下列公式表示:
13、
14、其中,t表示车位空闲数据被记录的特定时间点,n表示时间窗口的长度,即持续观察的时间值,t-n表示时间窗口的开始时间,t-1表示时间窗口的结束时间,sp表示观测点p在特定时间t的车位空闲数据;
15、步骤s1c:获取一周7天内每天00时到24时以30分钟为单位的车位数据流量构建数据集,所述数据集包括工作日车位流量数据集和休息日车位流量数据集,并使用交叉验证法按照8:2的比例对车位流量数据集进行划分;其中,训练集占80%,测试集占20%;最后,对工作日车位流量数据集和休息日车位流量数据集内的所有数据进行归一化处理,归一化公式如下:
16、
17、其中,x*表示工作日车位流量数据集和休息日车位流量数据集内的所有数据,x表示工作日车位流量数据集和休息日车位流量数据集内的每一个数据,xmax和xmin分别表示作日车位流量数据集和休息日车位流量数据集内所有数据中的最大值和最小值。
18、进一步地,所述步骤s2包括:
19、步骤s2a:将步骤s1c中归一化处理后的工作日车位流量数据集和休息日车位流量数据集进行标准化处理,公式如下:
20、
21、其中,xt代表车位流量数据集中的任意一个数据,x′t为标准化处理后的数据;
22、步骤s2b:将标准化处理后的数据按照时间顺序排列,生成时间序列数据,并将其作为模型训练的时间特征,并使用gcn模型对数据的时空特征进行提取;
23、步骤s2c:设定加权图g=(v,e)是n个停车场的图结构关系;
24、其中,vi表示停车场i,表示g的边界集合,ei,j表示停车场i和停车场j之间的联系;
25、设定距离矩阵dis,di,j表示停车场i和停车场j的距离,利用距离矩阵dis来构造邻接矩阵a∈rn×n权重,并使用贝叶斯概率计算;
26、
27、其中,vi表示在i时刻的停车场,v表示任意一个停车场,p(vi|ν)表示人们选择i时刻的停车场作为停车位的概率;
28、应用上述公式,对步骤s2b中gcn模型处理后拓扑结构提取得到的邻接矩阵表示为:
29、
30、其中,d0表示人们搜索停车场的最大搜索半径,d0表示停车场车位占用率满时人们可接受去寻找另一个停车场的最远距离,β表示距离衰减因子;
31、步骤s2d:构造停车场的街景相似度矩阵s∈rn×n;
32、其中,si,j表示停车场i和停车场j之间的街景相似度,并使用cnn模型的余弦相似度计算停车场街景图像之间的相似度,公式如下:
33、
34、其中,xi、yi表示在n维空间第i时刻x、y的坐标值,x,y表示通过使用resnet50模型从街景图像中提取出来的特征向量在n维空间中的坐标值;
35、步骤s2e:将每个停车场的车位流量历史时间序列数据作为特征矩阵x∈rn×p;
36、其中,p表示历史时间序列数据的长度,xt∈rn×i表示在i时刻的停车场车位平均占用率;
37、接着,使用两层gcn模型进行空间相关性提取,其中,第一层将特征矩阵xt和街景相似度特征输入到gcn模型中,第二层让gcn模型学习通过第一层gcn模型和街景相似度特征提取之后的特征将gcn模型提取到的数据特征用于后续训练cnn-lstm模型;
38、具体地,所述gcn模型指图卷积网络模型;
39、所述gcn模型表示为:
40、
41、式中,in表示单位矩阵,σ表示sigmoid函数,表示归一化的拉普拉斯矩阵,用于体现街景图像中节点间的连接关系和权重,节点则是构成图的基本单位,relu表示激活函数,w0和w1表示第一层和第二层的加权矩阵,c表示邻接矩阵描述了图形中节点之间的关系,表示邻接矩阵c和单位矩阵in的和,为度矩阵,其为对角矩阵,主对角线上的元素是每个节点的度,即与该节点相连的其他节点数目,∑jci,j表示邻接矩阵第i个节点的权重之和。
42、进一步地,所述步骤s3包括:
43、步骤s3a:采用3×3卷积核尺寸,将卷积核步长设置为1,并对卷积后的输出选择平均池化方式进行池化操作,对特征进行降维,并创建一个时间序列容器sequential,通过添加层来构建cnn网络模型;
44、步骤s3b:添加一个一维卷积层conv1d,指定输出空间的维度filters=64,使用relu函数作为模型的激活函数,采用dropout方法防止过拟合问题的发生,设置dropout为0.2,即使20%的神经元随机失活;
45、步骤s3c:设置一个一维最大池化层maxpooling1d,用于减少特征数量,在卷积层后面添加一个flatten层,用于将多维的输入一维化,将其输出展平为一维向量;
46、步骤s3d:添加一个长短期记忆神经网络lstm层,用于处理序列数据中的长期依赖关系,设置lstm层中有4个隐藏单元,指定adam作为优化算法,使用均方根误差mse作为损失函数。
47、进一步地,所述步骤s4包括:
48、步骤s4a:使用pandas库的read_csv函数加载停车场车位空闲数量的时间序列数据,将数据传给cnn-lstm模型进行处理,接着,使用数据集的第二列数据作为主要的数量数据,将数据转变为浮点型,并储存在dataset变量中;其中,所述第二列数据指索引为1的列;
49、步骤s4b:使用minmaxscaler函数对s4a储存在dataset变量中的数据进行归一化,将数据缩放至0到1之间,将数据集按照2:1划分训练集和测试集,使用create_dataset函数将时间序列数据转换为监督式学习的数据格式,根据给定的步长将数据拆分为输入x和输出y;
50、步骤s4c:使用keras库建立深度学习模型,所述深度学习模型模型包括一维卷积层、最大池化层、展平层、一个lstm层和一个全连接层;其中,所述一维卷积层带有64个滤波器,其使用relu激活函数,接收输入数据;所述最大池化层用于对卷积层的输出进行池化操作;所述展平层用于将卷积层输出的结果展平成一维;所述lstm层具有4个隐藏神经元,使用relu激活函数;所述全连接层用于输出预测结果;
51、步骤s4d:使用均方误差作为损失函数,adam优化器对模型进行训练,使用训练好的模型对训练集和测试集进行预测,得到预测结果并对其进行逆缩放,将归一化的数据还原至原始范围,计算训练集和测试集的均方根误差。
52、进一步地,所述步骤s5包括:
53、步骤s5a:选择一个变量集θ作为目标参数,所述变量集包括cnn-lstm神经网络模型中所有需要调整的参数,接着,使用梯度下降法对模型中的参数,即变量集θ进行迭代优化,应用于当前变量集θ的目标函数l(θ)的梯度下降的数学更新规则表示为:
54、
55、其中,α为学习率,是梯度;
56、步骤s5b:开发一种结合深度学习和anfis模型输出的融合模型,并使用梯度下降来优化分配给每个模型预测的权重;
57、最小均方根误差l(θ)定义为:
58、
59、其中,n为样本数,yi为实际值,为dl和anfis模型加权平均预测值;
60、加权平均预测的计算公式为:
61、
62、其中,ω1和ω2分别是应用于dl和anfis模型输出的权重;
63、步骤s5c:损失函数相对于权重的梯度计公式算如下:
64、
65、
66、接着上述公式中的梯度和学习率α迭代更新权重ω1和ω2,如下所示:
67、
68、
69、迭代过程继续,直到损失函数收敛到最小值,表明已获得了融合模型的最优权重,最终输出车位数量预测结果。
70、本发明的有益效果在于:
71、1、现有停车场车位预测方法往往只考虑单个停车场的历史车位数据,忽略了不同停车场之间的车位数据关联,而本发明通过建立cnn-lstm模型,能够同时考虑时间和空间因素对停车场车位数据的影响,充分考虑了停车场与停车场之间车位数据的相关性;
72、2、由于本发明同时考虑了时间和空间因素,能够更准确地描述停车场车位的动态变化情况,从而提高了预测精度。结果表明,相比于传统的单一模型,如arima模型、svr模型等,cnn-lstm模型在预测短时停车场可用车位方面具有更高的准确性和稳定性;
73、3、本发明同时引入了cnn模型和lstm模型,其中,将cnn模型用于提取停车场与停车场之间车位数据的空间特征,将lstm模型用于提取车位时间特征,从而更好地预测未来的车位变化情况,对于提高停车场车位预测的准确性和优化停车场管理具有一定的提高作用。
本文地址:https://www.jishuxx.com/zhuanli/20240731/188695.html
版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌抄袭侵权/违法违规的内容, 请发送邮件至 YYfuon@163.com 举报,一经查实,本站将立刻删除。
下一篇
返回列表