1.一种基于卷积神经网络结构的交通流预测方法,其特征在于,所述方法包括以下步骤:
1)建立交通流数据集并对数据集进行预处理:根据获取的交通流数据建立交通流数据集,对数据集进行预处理,构建数据集样本矩阵,将数据集分为训练集和测试集;
2)构建基于卷积神经网络的交通流预测模型:搭建单层传统卷积神经网络,去除池化层,构建道路交通流矩阵的特征提取网络,在全连接层后增加sigmoid非线性回归层,构建道路交通流非线性回归预测网络;
3)训练卷积神经网络并实现短期交通流的实时预测:定义模型目标函数,将训练集作为卷积神经网络模型输入,求解模型最优参数从而完成模型训练;利用训练完成的卷积神经网络模型对测试集进行实时交通流预测;
所述步骤1)的过程如下:
1.1:建立交通流数据集,对数据进行预处理获取多条路段多天车流量数据构建交通流数据集,数据集形式如下所示:其中,p表示路段数目,q表示在采样周期T一定情况下采样样本的数量;
考虑到卷积神经网络预测模型中采用了sigmoid回归,将交通流数据实际值域映射到
0‑1值域,为了确保模型输入输出是在同一量纲,对原始多路段的交通流数据进行了标准化处理,标准化方法为最大最小标准化;
1.2:构建数据集样本矩阵,将数据集分为训练集和测试集由于二维卷积运算提取两个维度的信息,在交通数据中则对应于时间信息和空间信息,故模型的数据集中的单个样本应包含时空信息,将数据集中的单个样本设计为以下形式:
矩阵的行向量表示相同路段不同时刻交通流数据的时间信息,列向量表示相同时刻不同路段交通流数据的空间信息,其中,N表示路段数量,n表示历史交通流数据数量;记当前时刻为t,则xi t‑n表示路段i在t‑n时刻的交通流数据;
数据集样本矩阵构建完成后,将整个数据集分为训练集和测试集;
所述步骤2)的过程如下:
2.1:构建特征提取网络
特征提取模块包含卷积层、展开层和全连层;
卷积层采用二维卷积进行计算,该卷积不仅可以提取输入矩阵行向量的交通流数据中的时间信息,还可以提取列向量上的交通流数据中的位置信息,对于单个样本的卷积层计算表达式如下:
Y=f((m,X,k)*W1+b1) (3)其中,(m,X,k)为输入矩阵,m表示样本数,k表示通道数,W1为a×b×c×s权重矩阵,a×b定义为卷积核大小,c为通道数,s定义为卷积核数量,b1为偏置项,f为激活函数relu:max(0,x),Y为卷积层输出,*为二维卷积运算操作;
由卷积运算可知,卷积层输出为三维向量,而回归层输入为一维向量,故采用展开层将卷积层输出转变为一维向量,展开层表达式如下:Yflat=Reshape(Y,size) (4)其中,Y为卷积层输出,Yflat为展开层的输出,Reshape为展开函数,size表示转换结果的维数,例如Reshape(Y,(2,3))表示将Y转变为2×3的向量;
展开层输出作为全连接层的输入,全连接层计算表达式如下:Z=f(W2Yflat+b2) (5)其中,Yflat为展开层输出,W2为权重矩阵,b2为偏置项,f为激活函数relu:max(0,x),Z为全连接层输出;
2.2:构建非线性回归预测网络
回归预测模块包含Drop层和回归层;
在损失函数中加入正则化项和随机丢弃部分数据并用0填充,采用第二种方式,并将该层称之为Drop层,Drop层表达式如下:Zdrop=Drop(Z,keep_prop) (6)其中,Z为全连接层输出,Zdrop为Drop层输出,keep_prop为保留数据占数据总量的比例,取值范围为0‑1;
由于交通流数据的非线性,采用非线性回归进行预测,回归层表达式如下:O=g(W3Zdrop+b3) (7)其中,Zdrop为卷积层输出,W3为权重矩阵,b3为偏置项,g为激活函数sigmoid:1/(1+exp(‑x)),O为全连接层输出;
所述步骤3)的过程如下:
3.1:定义模型目标函数,训练模型设O为模型预测输出,Label为样本标签数据,j为样本数量,则模型损失函数L如下所示:
针对上述的模型目标函数,通过反向传播算法调解模型每层参数,寻找模型的相对最优参数;
3.2:实现实时交通流的预测
获取实时交通流数据作为上述训练完成模型的输入,实现交通流的实时预测。
2.如权利要求1所述的一种基于卷积神经网络结构的交通流预测方法,其特征在于,所述步骤1)中,使用多条路段多天交通流数据构成数据集矩阵,对数据集进行预处理:采用最大最小标准化方法对数据集进行标准化处理;使用数据集中多条路段多个历史流量数据构成数据集样本矩阵,将其下一时刻的流量数据作为标签数据矩阵并将预处理后的数据集分为训练集和测试集两部分。