CN117057848B - 一种基于gat-gpr的外卖订单需求预测方法 - Google Patents

一种基于gat-gpr的外卖订单需求预测方法 Download PDF

Info

Publication number
CN117057848B
CN117057848B CN202311096423.3A CN202311096423A CN117057848B CN 117057848 B CN117057848 B CN 117057848B CN 202311096423 A CN202311096423 A CN 202311096423A CN 117057848 B CN117057848 B CN 117057848B
Authority
CN
China
Prior art keywords
data
order
historical
model
order data
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
Application number
CN202311096423.3A
Other languages
English (en)
Other versions
CN117057848A (zh
Inventor
陈佳雷
王熠炜
葛宜达
李茜
张楚
纪捷
王政
彭甜
黄凤芝
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Huaiyin Institute of Technology
Original Assignee
Huaiyin Institute of Technology
Priority date (The priority date 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 date listed.)
Filing date
Publication date
Application filed by Huaiyin Institute of Technology filed Critical Huaiyin Institute of Technology
Priority to CN202311096423.3A priority Critical patent/CN117057848B/zh
Publication of CN117057848A publication Critical patent/CN117057848A/zh
Application granted granted Critical
Publication of CN117057848B publication Critical patent/CN117057848B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06QINFORMATION 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
    • G06Q30/00Commerce
    • G06Q30/02Marketing; Price estimation or determination; Fundraising
    • G06Q30/0201Market modelling; Market analysis; Collecting market data
    • G06Q30/0202Market predictions or forecasting for commercial activities
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F18/00Pattern recognition
    • G06F18/20Analysing
    • G06F18/21Design or setup of recognition systems or techniques; Extraction of features in feature space; Blind source separation
    • G06F18/214Generating training patterns; Bootstrap methods, e.g. bagging or boosting
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F18/00Pattern recognition
    • G06F18/20Analysing
    • G06F18/23Clustering techniques
    • G06F18/232Non-hierarchical techniques
    • G06F18/2321Non-hierarchical techniques using statistics or function optimisation, e.g. modelling of probability density functions
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F18/00Pattern recognition
    • G06F18/20Analysing
    • G06F18/27Regression, e.g. linear or logistic regression
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06NCOMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
    • G06N3/00Computing arrangements based on biological models
    • G06N3/02Neural networks
    • G06N3/04Architecture, e.g. interconnection topology
    • G06N3/042Knowledge-based neural networks; Logical representations of neural networks
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06NCOMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
    • G06N3/00Computing arrangements based on biological models
    • G06N3/02Neural networks
    • G06N3/04Architecture, e.g. interconnection topology
    • G06N3/045Combinations of networks
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06NCOMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
    • G06N3/00Computing arrangements based on biological models
    • G06N3/02Neural networks
    • G06N3/04Architecture, e.g. interconnection topology
    • G06N3/048Activation functions
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06QINFORMATION 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
    • G06Q30/00Commerce
    • G06Q30/02Marketing; Price estimation or determination; Fundraising
    • G06Q30/0201Market modelling; Market analysis; Collecting market data
    • G06Q30/0204Market segmentation
    • G06Q30/0205Location or geographical consideration
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06QINFORMATION 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
    • G06Q30/00Commerce
    • G06Q30/06Buying, selling or leasing transactions
    • G06Q30/0601Electronic shopping [e-shopping]
    • G06Q30/0633Lists, e.g. purchase orders, compilation or processing
    • G06Q30/0635Processing of requisition or of purchase orders
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06QINFORMATION 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
    • G06Q50/00Information and communication technology [ICT] specially adapted for implementation of business processes of specific business sectors, e.g. utilities or tourism
    • G06Q50/10Services
    • G06Q50/12Hotels or restaurants

Landscapes

  • Engineering & Computer Science (AREA)
  • Business, Economics & Management (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • Data Mining & Analysis (AREA)
  • General Physics & Mathematics (AREA)
  • Finance (AREA)
  • Strategic Management (AREA)
  • Accounting & Taxation (AREA)
  • Development Economics (AREA)
  • General Engineering & Computer Science (AREA)
  • Evolutionary Computation (AREA)
  • Life Sciences & Earth Sciences (AREA)
  • Artificial Intelligence (AREA)
  • Entrepreneurship & Innovation (AREA)
  • Economics (AREA)
  • General Business, Economics & Management (AREA)
  • General Health & Medical Sciences (AREA)
  • Marketing (AREA)
  • Health & Medical Sciences (AREA)
  • Evolutionary Biology (AREA)
  • Biomedical Technology (AREA)
  • Software Systems (AREA)
  • Bioinformatics & Cheminformatics (AREA)
  • Bioinformatics & Computational Biology (AREA)
  • Computer Vision & Pattern Recognition (AREA)
  • Mathematical Physics (AREA)
  • Computing Systems (AREA)
  • Molecular Biology (AREA)
  • Tourism & Hospitality (AREA)
  • Biophysics (AREA)
  • Computational Linguistics (AREA)
  • Game Theory and Decision Science (AREA)
  • Human Resources & Organizations (AREA)
  • Primary Health Care (AREA)
  • Probability & Statistics with Applications (AREA)
  • Management, Administration, Business Operations System, And Electronic Commerce (AREA)

Abstract

本发明公开了一种基于GAT‑GPR的外卖订单需求预测方法,包括如下步骤:获取各种数据集,对获得的历史订单数据集进行预处理;将经过预处理后的历史订单数据进行DPC聚类,将处理后的数据集划分为训练集、验证集和测试集;构建基于图注意力网络和高斯过程回归混合模型的订单需求混合预测模型;使用训练集训练模型,对得到的训练后的模型利用测试集进行测试,根据测试的结果选择出表现最优的预测模型;使用得到的最优预测模型对测试集进行预测,得到模型的输出结果,对输出结果进行反标准化获得预测的点餐量或取餐量,取其中的点餐量为最终预测出的订单需求量。本发明能够克服外卖订单需求量定性预测中预测精度低,定量预测中不能做到预测精确的时间的问题。

Description

一种基于GAT-GPR的外卖订单需求预测方法
技术领域
本发明涉及外卖订单预测技术领域,尤其是一种基于GAT-GPR的外卖订单需求预测方法。
背景技术
随着“互联网+”的不断发展,外卖行业越来越成熟,同时,随着人们生活节奏的加快,越来越多的人选择网上订餐,这也意味着订单量的大幅度提升,尤其是午餐或者晚餐这样的就餐高峰期外卖订单的产生的频率是非常高的,这样就对外卖订单的分配以及配送路线的安排造成了极大的挑战。如果订单不能够很有效的分配就会大大的影响送餐速度;当某个区域或商家订单量过多时不仅会给商家带来了出餐速度跟不上的问题还会降低用餐人员的用餐体验,准确地预测未来可能出现的订单信息,对于外卖订单配送问题的求解和减少用户的等待时间,提升用户满意度有着重要的意义。
目前,主流的订单需求量预测方法主要分为定性预测和定量预测。定性预测主要是通过人的经验来推测,这样很难预测出准确的结果且精度较低;定量预测是采用现有的技术理论方法对历史订单数据进行合理的分析,其预测结果在准确性上以及精度上都有了很大的提高。其中包括利用神经网络以及径向基神经网络实现订单数量的预测深度学习预测模型;将季节因子的移动平均与最小二乘法相组合以及将支持向量机与季节性以及促销等具有不确定性的影响因子结合的机器学习预测模型。但目前的订单需求量的预测方法一般都是宏观的预测,而不能做到预测精确的时间这一问题。
发明内容
本发明所要解决的技术问题在于,提供一种基于GAT-GPR的外卖订单需求预测方法,能够克服外卖订单需求量定性预测中预测精度低,定量预测中不能做到预测精确的时间的问题。
为解决上述技术问题,本发明提供一种基于GAT-GPR的外卖订单需求预测方法,包括如下步骤:
步骤1、获取各种数据集,对获得的历史订单数据集进行预处理;
步骤2、将经过步骤1预处理后的历史订单数据进行DPC聚类,将一城市中某个区域内的餐饮店商家划分为n个虚拟站点,并定义虚拟站点网络为一个无指向的图;将历史订单数据集按照指定的时间间隔进行时间切片,将一个区域的点餐量或取餐量定义为在固定的时间间隔内在虚拟站点点餐或取餐的次数,并对历史订单数据集中的订单数据进行标准化处理,将处理后的数据集划分为训练集、验证集和测试集;
步骤3、构建基于图注意力网络和高斯过程回归混合模型的订单需求混合预测模型;使用步骤2的训练集训练模型,对得到的训练后的模型利用步骤2得到的测试集进行测试,根据测试的结果选择出表现最优的预测模型;
步骤4、使用步骤3得到的最优预测模型对步骤2的测试集进行预测,得到模型的输出结果,对输出结果进行反标准化获得预测的点餐量或取餐量,取其中的点餐量为最终预测出的订单需求量。
优选的,步骤1中,获取各种数据集,对获得的历史订单数据集进行预处理具体包括如下步骤:
步骤11、获得美团、饿了么两大外卖平台的原始历史订单数据,包括用户ID、点餐下单地点经纬度、取餐点经纬度、点餐下单时间、取餐时间、配送里程、配送费用;
步骤12、基于百度公司提供的地图API,对步骤11原始历史订单数据中的上车点位置和下车点位置进行搜索,从而获得点餐与取餐地点的POI数据特征;
步骤13、利用程序在历史天气网中获取订单所在地区的历史天气数据,包含天气特征和温度数据;
步骤14、对属于周末和节假日的历史订单信息数据进行搜索查询与标记;
步骤15、对步骤11中得到的历史订单数据进行数据清洗预处理工作。
优选的,步骤15中,对步骤11中得到的历史订单数据进行数据清洗预处理工作具体包括如下步骤:
步骤151、当历史订单数据存在空值或者缺失数据时,清除该订单数据;
步骤152、当历史订单数据中的点餐位置或取餐位置超出该城市所在的经纬度范围时,认为该订单数据异常,删除该订单数据;
步骤153、当历史订单数据中的点餐时间和取餐时间之间的时间间隔过长,超过一定的阈值后,认为该订单数据异常,删除该订单数据;
步骤154、清除历史订单数据中不需要的信息,每一条订单数据只保留其点餐与取餐点的位置和时间。
优选的,步骤2中,将经过步骤(1)预处理后的历史订单数据进行DPC聚类,将一城市中某个区域内的餐饮店商家划分为n个虚拟站点,并定义虚拟站点网络为一个无指向的图;将历史订单数据集按照指定的时间间隔进行时间切片,将一个区域的点餐量或取餐量定义为在固定的时间间隔内在虚拟站点点餐或取餐的次数,并对历史订单数据集中的订单数据进行标准化处理,将处理后的数据集划分为训练集、验证集和测试集具体包括如下步骤:
步骤21、将步骤1中预处理后的历史订单数据利用密度峰值聚类方法,首先确定外卖历史订单数据集的聚类中心,对每一个历史数据样本点计算两个变量:历史数据样本点xi的局部密度ρi和相对距离δi,令数据集S={x1,x2,...,xn},Is={1,2…n}是数据集S对应的指标集,历史数据样本点xi的局部密度ρi计算公式如下:
dij表示历史数据样本xi与样本xj之间的欧氏距离;dc为截断距离;
历史数据样本点xi的相对距离δi公式如下:
计算出任意两个样本点间的欧氏距离后确定截断距离dc;根据式(1)和式(2)计算每个样本点的ρi和δi,根据以ρi为横轴,δi为纵轴的决策图选择ρi和δi,都相对较大的点作为聚类中心;最后,对所有的非聚类中心点进行分配,设定合理阈值,聚类出城市的n个虚拟站点P={p1,p2,...,pn},根据虚拟站点可将城市现实场景中的路网结构进行划分;
步骤22、定义虚拟站点网络为一个无指向的图,表示为G=(V,E,A),其中V代表图的一系列节点|V|=N,是步骤21中聚类出来的虚拟站点,E是一系列边,表示节点间的连接;A∈RN×N是图的邻接矩阵,由节点间的距离表示,计算虚拟站点之间的成对距离,其计算公式如下:
dist=dist(pi,pj) (3)
其中dist表示从pi到pj的“路网”距离,Wij为虚拟站点pi与虚拟站点pj之间的边的权值,σ为距离的标准差;
步骤23、使用二元组(τ,p)定义时空坐标,其中τ代表时间,p代表站点,将任意的一个订单行程的点餐与取餐分别定义为:d=(τd,pd),q=(τq,pq);(d,q)表示点取餐对,是所有的点取餐对;由给定的所有点取餐对/>得到如下公式:
和/>分别代表虚拟站点i在时间间隔t内的点餐量和取餐量;
步骤24、对历史订单数据集中的订单数据进行标准化处理,具体为:采用Z-score标准化方法,通过去除均值和按单位方差缩放来标准化点餐量和取餐量,具体实现公式如下:
σ=std(x) (7)
x代表点餐量或取餐量,σ表示x的标准差,x*代表经过标准化后的点餐量和取餐量,表示x的均值;
步骤25、将标准化后的历史订单数据进行划分,得到训练集、验证集、测试集。
优选的,步骤3中,构建基于图注意力网络和高斯过程回归混合模型的订单需求混合预测模型;使用步骤2的训练集训练模型,对得到的训练后的模型利用步骤2得到的测试集进行测试,根据测试的结果选择出表现最优的预测模型具体包括如下步骤:
步骤31、输入层是由经步骤25标准化后包含邻近、日周期和周周期时间的订单需求数据与步骤1中得到的外部数据进行融合构成的,所述邻近表示预测时刻的前几个小时,日周期表示每日相对时间间隔,周周期表示每周相对时间间隔;
步骤32、在注意力层,对于每个节点,使用注意力机制,为每个邻居站点分配一个注意力权重,反映其对当前站点的重要性;根据注意力权重加权聚合邻居站点的特征,这一步骤将邻居站点的信息考虑进当前站点的更新中,注意力权重决定了不同邻居站点对当前站点的贡献;
步骤33、节点更新层会根据注意力聚合的结果和当前站点的特征,进行节点的更新,引入softmax对注意力系数进行归一化来更新站点的特征表示;
步骤34、对步骤33经图注意力层输出得到的特征向量进行高斯过程建模,使用核函数描述样本之间的相似性,利用核函数计算训练数据集中样本之间的协方差矩阵,进而构建高斯过程模型;通过最大似然估计方法,估计核函数中的参数;通过计算输入样本与已观测数据之间的协方差矩阵,结合先验分布和训练数据的目标值,可以得到预测的输出值及其不确定性;
步骤35、使用步骤(2)中划分好的历史订单数据训练集训练步骤31~步骤34构建的基于图注意力网络和高斯过程回归的外卖订单需求混合预测模型,最终得到经过训练后的预测模型;
步骤36、对于训练后的预测模型,将步骤(2)的验证集输入其中进行验证,当损失函数达到一个新的最小值时,认为此时模型的表现最好;
步骤37、在验证集进行验证的过程中,模型会根据验证计算的最小RMSE,提前停止模型的训练算法:当验证的epochs最大达到N个时,还无法再次取得一个新的最小RMSE时,模型就会提前停止训练,将最小RMSE对应的模型保存为表现最优的预测模型。
优选的,步骤32中,注意力层的注意力权重加权计算过程具体为;将步骤31融合后的每一个节点的一系列特征数据序列用表示,其中N为一个节点包含的特征的维度;则n个节点的数据序列记作/>其中n为数据集中节点的数量,F是d维的每一个站点的输入特征,对于每个节点,采用自注意力机制获取注意力系数:
式中W∈RF′×F表示训练得到的权重矩阵,a∈R2F′表示一个单层的前馈神经网络。
优选的,步骤33中,引入softmax对注意力系数进行归一化过程具体如下:
为了使注意力系数在不同的节点便于比较,引入了softmax对注意力系数进行归一化,具体公式表示如下:
式中Ni为节点Pi的邻居节点集,W∈RF′×F表示训练得到的权重矩阵,可以被每个神经元共享;
将上述计算获得的归一化后的不同节点之间的注意力系数相应的应用于每一个节点,然后经过激活函数,得到每个节点的输出特征;
式中,F'表示d维的每个节点的输出特征,σ(·)为非线性激活函数,则最终输出的一组新的节点特征为/>
优选的,步骤34中,高斯过程建模具体如下:
高斯过程回归是使用高斯过程先验对数据进行回归分析的非参数模型,主要包括回归残差和高斯过程先验两部分,高斯过程回归能够拟合非线性数据,并且支持模型预测的不确定性(置信区间),可以直接输出关于预测点值的概率分布,其核心思想是假设已有数据服从高斯分布,运用贝叶斯思想,对于预测数据采用概率分布特征进行预测;
将上述步骤33得到的节点特征用X表示,即:得到其高斯过程由均值函数m(X)和协方差函数k(X,X')组成,如式(14)、式(15)所示:
m(X)=E[f(X)] (14)
k(X,X′)=E{[f(X)-m(X)][f(X′)-m(X′)T]} (15)
式中,f(X)是目标输出,X是d维的n个输入向量,对应的高斯过程表达式如下:
f(X)~GP[m(X),k(X,X′)] (16)
核函数k(X,X′)在建模过程中具有重要作用,可以获得对潜在函数性质的先验假设,一般均值函数设置为零,协方差函数使用周期指数函数(Squared Exponential,SE),其具体形式为:
式中,信号方差表示输出距离,l表示长度距离,通常函数都是有噪声的,假设噪声是加性的、独立的和高斯的,因此输入X和输出Y之间的关系如下所示:
Y=f(X)+ε (18)
式中,ε~N(0,σ2)是方差为的白噪声,观测值的先验分布可以表示为:
式中,In为n维单位矩阵;
协方差矩阵中,超参数Θ=[σf,I,σn]可以通过最大化似然方法来优化,表示为:
观测值Y和预测值Y*在测试数据集X*联合先验分布为:
根据Y的联合先验分布,可以计算出后验分布p(Y*|X,Y,Y*)如下:
式中,预测平均值和协方差/>如下:
此时将预测平均值作为最终预测出的订单需求量。
优选的,步骤36和步骤37的训练和验证过程中,损失函数使用均方根误差,其定义如下:
其中n为所有样本的总数,和Yi分别为在第i个站点处预测出的订单需求量和真实订单量。
本发明的有益效果为:(1)本发明使用DPC算法处理城市站点,将聚类出来的虚拟站点作为图的节点,而并非简单地将城市划分为网格区域,这样的聚类方法更加符合现实场景中的路网结构,有助于模型的工程应用;(2)引入softmax对注意力系数进行归一化来更新站点的特征表示,可以有效地捕捉空间依赖关系,解决图注意力网络的局限性,模型利用注意机制考虑了空间关联中的动态属性;(3)高斯过程回归模型采用周期核函数可以学习长期的时间依赖性,有助于更好地学习到长期的时间信息,还能缩短模型的训练时间;同时,为了获得更准确的预测结果,此外本发明还考虑了时间周期性因素。
附图说明
图1为本发明的方法流程示意图。
图2为本发明中图注意力网络(GAT)的运算结构图。
图3为本发明中图注意力网络(GAT)的运算结构图。
图4为本发明提供的高斯过程(GPR)模型结构图。
具体实施方式
如图1所示,一种基于GAT-GPR的外卖订单需求预测方法,包括如下步骤:
步骤1、获取各种数据集,对获得的历史订单数据集进行预处理;
步骤2、将经过步骤(1)预处理后的历史订单数据进行DPC聚类,将一城市中某个区域内的餐饮店商家划分为n个虚拟站点,并定义虚拟站点网络为一个无指向的图;将历史订单数据集按照指定的时间间隔进行时间切片,将一个区域的点餐量或取餐量定义为在固定的时间间隔内在虚拟站点点餐或取餐的次数,并对历史订单数据集中的订单数据进行标准化处理,将处理后的数据集划分为训练集、验证集和测试集;
步骤3、构建基于图注意力网络和高斯过程回归混合模型的订单需求混合预测模型;使用步骤2的训练集训练模型,对得到的训练后的模型利用步骤2得到的测试集进行测试,根据测试的结果选择出表现最优的预测模型;
步骤4、使用步骤3得到的最优预测模型对步骤2的测试集进行预测,得到模型的输出结果,对输出结果进行反标准化获得预测的点餐量或取餐量,取其中的点餐量为最终预测出的订单需求量。
步骤1中,获取各种数据集,对获得的历史订单数据集进行预处理具体包括如下步骤:
步骤11、获得美团、饿了么两大外卖平台的原始历史订单数据,包括用户ID、点餐下单地点经纬度、取餐点经纬度、点餐下单时间、取餐时间、配送里程、配送费用;
步骤12、基于百度公司提供的地图API,对步骤11原始历史订单数据中的上车点位置和下车点位置进行搜索,从而获得点餐与取餐地点的POI数据特征;
步骤13、利用程序在历史天气网中获取订单所在地区的历史天气数据,包含天气特征和温度数据;
步骤14、对属于周末和节假日的历史订单信息数据进行搜索查询与标记;
步骤15、对步骤11中得到的历史订单数据进行数据清洗预处理工作。
步骤15中,对步骤11中得到的历史订单数据进行数据清洗预处理工作具体包括如下步骤:
步骤151、当历史订单数据存在空值或者缺失数据时,清除该订单数据;
步骤152、当历史订单数据中的点餐位置或取餐位置超出该城市所在的经纬度范围时,认为该订单数据异常,删除该订单数据;
步骤153、当历史订单数据中的点餐时间和取餐时间之间的时间间隔过长,超过一定的阈值后,认为该订单数据异常,删除该订单数据;
步骤154、清除历史订单数据中不需要的信息,每一条订单数据只保留其点餐与取餐点的位置和时间。
步骤2中,将经过步骤(1)预处理后的历史订单数据进行DPC聚类,将一城市中某个区域内的餐饮店商家划分为n个虚拟站点,并定义虚拟站点网络为一个无指向的图;将历史订单数据集按照指定的时间间隔进行时间切片,将一个区域的点餐量或取餐量定义为在固定的时间间隔内在虚拟站点点餐或取餐的次数,并对历史订单数据集中的订单数据进行标准化处理,将处理后的数据集划分为训练集、验证集和测试集具体包括如下步骤:
步骤21、将步骤1中预处理后的历史订单数据利用密度峰值聚类方法,首先确定外卖历史订单数据集的聚类中心,对每一个历史数据样本点计算两个变量:历史数据样本点xi的局部密度ρi和相对距离δi。令数据集S={x1,x2,...,xn},Is={1,2…n}是数据集S对应的指标集。历史数据样本点xi的局部密度ρi计算公式如下:
dij表示历史数据样本xi与样本xj之间的欧氏距离;dc为截断距离;
历史数据样本点xi的相对距离δi公式如下:
计算出任意两个样本点间的欧氏距离后确定截断距离dc;根据式(1)和式(2)计算每个样本点的ρi和δi,根据以ρi为横轴,δi为纵轴的决策图选择ρi和δi,都相对较大的点作为聚类中心;最后,对所有的非聚类中心点进行分配,设定合理阈值,聚类出城市的n个虚拟站点P={p1,p2,...,pn},根据虚拟站点可将城市现实场景中的路网结构进行划分;
步骤22、定义虚拟站点网络为一个无指向的图,表示为G=(V,E,A),其中V代表图的一系列节点|V|=N,是步骤21中聚类出来的虚拟站点,E是一系列边,表示节点间的连接;A∈RN×N是图的邻接矩阵,由节点间的距离表示,计算虚拟站点之间的成对距离,其计算公式如下:
dist=dist(pi,pj) (3)
其中dist表示从pi到pj的“路网”距离,Wij为虚拟站点pi与虚拟站点pj之间的边的权值,σ为距离的标准差;
步骤23、使用二元组(τ,p)定义时空坐标,其中τ代表时间,p代表站点,将任意的一个订单行程的点餐与取餐分别定义为:d=(τd,pd),q=(τq,pq);(d,q)表示点取餐对,是所有的点取餐对;由给定的所有点取餐对/>得到如下公式:
和/>分别代表虚拟站点i在时间间隔t内的点餐量和取餐量;
步骤24、对历史订单数据集中的订单数据进行标准化处理,具体为:采用Z-score标准化方法,通过去除均值和按单位方差缩放来标准化点餐量和取餐量,具体实现公式如下:
σ=std(x) (7)
x代表点餐量或取餐量,σ表示x的标准差,x*代表经过标准化后的点餐量和取餐量,表示x的均值;
步骤25、将标准化后的历史订单数据进行划分,得到训练集、验证集、测试集。
步骤3中,构建基于图注意力网络和高斯过程回归混合模型的订单需求混合预测模型;使用步骤2的训练集训练模型,对得到的训练后的模型利用步骤2得到的测试集进行测试,根据测试的结果选择出表现最优的预测模型具体包括如下步骤:
步骤31、输入层是由经步骤25标准化后包含邻近、日周期和周周期时间的订单需求数据与步骤1中得到的外部数据进行融合构成的,所述邻近表示预测时刻的前几个小时,日周期表示每日相对时间间隔,周周期表示每周相对时间间隔;
步骤32、在注意力层,对于每个节点,使用注意力机制,为每个邻居站点分配一个注意力权重,反映其对当前站点的重要性;根据注意力权重加权聚合邻居站点的特征。这一步骤将邻居站点的信息考虑进当前站点的更新中,注意力权重决定了不同邻居站点对当前站点的贡献;
步骤33、节点更新层会根据注意力聚合的结果和当前站点的特征,进行节点的更新,引入softmax对注意力系数进行归一化来更新站点的特征表示;
步骤34、对步骤(3.3)经图注意力层输出得到的特征向量进行高斯过程建模,使用核函数描述样本之间的相似性。利用核函数计算训练数据集中样本之间的协方差矩阵,进而构建高斯过程模型;通过最大似然估计方法,估计核函数中的参数;通过计算输入样本与已观测数据之间的协方差矩阵,结合先验分布和训练数据的目标值,可以得到预测的输出值及其不确定性;
步骤35、使用步骤(2)中划分好的历史订单数据训练集训练步骤(3.1)~步骤(3.4)构建的基于图注意力网络和高斯过程回归的外卖订单需求混合预测模型,最终得到经过训练后的预测模型;
步骤36、对于训练后的预测模型,将步骤(2)的验证集输入其中进行验证,当损失函数达到一个新的最小值时,认为此时模型的表现最好;
步骤37、在验证集进行验证的过程中,模型会根据验证计算的最小RMSE,提前停止模型的训练算法:当验证的epochs最大达到N个时,还无法再次取得一个新的最小RMSE时,模型就会提前停止训练,将最小RMSE对应的模型保存为表现最优的预测模型。
步骤32中,注意力层的注意力权重加权计算过程具体为;将步骤31融合后的每一个节点的一系列特征数据序列用表示,其中N为一个节点包含的特征的维度;则n个节点的数据序列记作/>其中n为数据集中节点的数量,F是d维的每一个站点的输入特征。对于每个节点,采用自注意力机制获取注意力系数:
式中W∈RF′×F表示训练得到的权重矩阵,a∈R2F′表示一个单层的前馈神经网络。
如图2和图3所示,步骤33中,引入softmax对注意力系数进行归一化过程具体如下:
为了使注意力系数在不同的节点便于比较,引入了softmax对注意力系数进行归一化,具体公式表示如下:
式中Ni为节点Pi的邻居节点集,W∈RF′×F表示训练得到的权重矩阵,可以被每个神经元共享;
将上述计算获得的归一化后的不同节点之间的注意力系数相应的应用于每一个节点,然后经过激活函数,得到每个节点的输出特征;
式中,F'表示d维的每个节点的输出特征,σ(·)为非线性激活函数,则最终输出的一组新的节点特征为/>
如图4所示,步骤34中,高斯过程建模具体如下:
高斯过程回归是使用高斯过程先验对数据进行回归分析的非参数模型,主要包括回归残差和高斯过程先验两部分。高斯过程回归能够拟合非线性数据,并且支持模型预测的不确定性(置信区间),可以直接输出关于预测点值的概率分布。其核心思想是假设已有数据服从高斯分布,运用贝叶斯思想,对于预测数据采用概率分布特征进行预测。
将上述步骤(3.3)得到的节点特征用X表示,即:可得到其高斯过程由均值函数m(X)和协方差函数k(X,X')组成,如式(14)、式(15)所示:
m(X)=E[f(X)] (14)
k(X,X′)=E{[f(X)-m(X)][f(X′)-m(X′)T]} (15)
式中,f(X)是目标输出,X是d维的n个输入向量,对应的高斯过程表达式如下:
f(X)~GP[m(X),k(X,X′)] (16)
核函数k(X,X′)在建模过程中具有重要作用,可以获得对潜在函数性质的先验假设。一般均值函数设置为零,协方差函数使用周期指数函数(Squared Exponential,SE),其具体形式为:
式中,信号方差表示输出距离,l表示长度距离。通常函数都是有噪声的,假设噪声是加性的、独立的和高斯的,因此输入X和输出Y之间的关系如下所示:
Y=f(X)+ε (18)
式中,ε~N(0,σ2)是方差为的白噪声。观测值的先验分布可以表示为:
式中,In为n维单位矩阵。
协方差矩阵中,超参数Θ=[σf,I,σn]可以通过最大化似然方法来优化,表示为:
观测值Y和预测值Y*在测试数据集X*联合先验分布为:
根据Y的联合先验分布,可以计算出后验分布p(Y*|X,Y,Y*)如下:
式中,预测平均值和协方差/>如下:
此时将预测平均值作为最终预测出的订单需求量。/>
步骤36和步骤37的训练和验证过程中,损失函数使用均方根误差,其定义如下:
其中n为所有样本的总数,和Yi分别为在第i个站点处预测出的订单需求量和真实订单量。
本发明能够有效地对影响外卖订单需求的时空因素和外部因素进行建模,提升订单需求预测的精度,同时能够缩短外卖骑手取餐候单时间,提升骑手和用户的配送和用餐体验。

Claims (8)

1.一种基于GAT-GPR的外卖订单需求预测方法,其特征在于,包括如下步骤:
步骤1、获取各种数据集,对获得的历史订单数据集进行预处理;
步骤2、将经过步骤1预处理后的历史订单数据进行DPC聚类,将一城市中某个区域内的餐饮店商家划分为n个虚拟站点,并定义虚拟站点网络为一个无指向的图;将历史订单数据集按照指定的时间间隔进行时间切片,将一个区域的点餐量或取餐量定义为在固定的时间间隔内在虚拟站点点餐或取餐的次数,并对历史订单数据集中的订单数据进行标准化处理,将处理后的数据集划分为训练集、验证集和测试集;具体包括如下步骤:
步骤21、将步骤1中预处理后的历史订单数据利用密度峰值聚类方法,首先确定外卖历史订单数据集的聚类中心,对每一个历史数据样本点计算两个变量:历史数据样本点xi的局部密度ρi和相对距离δi,令数据集S={x1,x2,...,xn},Is={1,2…n}是数据集S对应的指标集,历史数据样本点xi的局部密度ρi计算公式如下:
dij表示历史数据样本xi与样本xj之间的欧氏距离;dc为截断距离;
历史数据样本点xi的相对距离δi公式如下:
计算出任意两个样本点间的欧氏距离后确定截断距离dc;根据式(1)和式(2)计算每个样本点的ρi和δi,根据以ρi为横轴,δi为纵轴的决策图选择ρi和δi,都相对较大的点作为聚类中心;最后,对所有的非聚类中心点进行分配,设定合理阈值,聚类出城市的n个虚拟站点P={p1,p2,...,pn},根据虚拟站点将城市现实场景中的路网结构进行划分;
步骤22、定义虚拟站点网络为一个无指向的图,表示为G=(V,E,A),其中V代表图的一系列节点|V|=N,是步骤21中聚类出来的虚拟站点,E是一系列边,表示节点间的连接;A∈RN×N是图的邻接矩阵,由节点间的距离表示,计算虚拟站点之间的成对距离,其计算公式如下:
dist=dist(pi,pj) (3)
其中dist表示从pi到pj的“路网”距离,Wij为虚拟站点pi与虚拟站点pj之间的边的权值,σ为距离的标准差;
步骤23、使用二元组(τ,p)定义时空坐标,其中τ代表时间,p代表站点,将任意的一个订单行程的点餐与取餐分别定义为:d=(τd,pd),q=(τq,pq);(d,q)表示点取餐对,是所有的点取餐对;由给定的所有点取餐对/>得到如下公式:
和/>分别代表虚拟站点i在时间间隔t内的点餐量和取餐量;
步骤24、对历史订单数据集中的订单数据进行标准化处理,具体为:采用Z-score标准化方法,通过去除均值和按单位方差缩放来标准化点餐量和取餐量,具体实现公式如下:
σ=std(x) (7)
x代表点餐量或取餐量,σ表示x的标准差,x*代表经过标准化后的点餐量和取餐量,表示x的均值;
步骤25、将标准化后的历史订单数据进行划分,得到训练集、验证集、测试集;
步骤3、构建基于图注意力网络和高斯过程回归混合模型的订单需求混合预测模型;使用步骤2的训练集训练模型,对得到的训练后的模型利用步骤2得到的测试集进行测试,根据测试的结果选择出表现最优的预测模型;具体包括如下步骤:
步骤31、输入层是由经步骤25标准化后包含邻近、日周期和周周期时间的订单需求数据与步骤1中得到的外部数据进行融合构成的,所述邻近表示预测时刻的前几个小时,日周期表示每日相对时间间隔,周周期表示每周相对时间间隔;
步骤32、在注意力层,对于每个节点,使用注意力机制,为每个邻居站点分配一个注意力权重,反映其对当前站点的重要性;根据注意力权重加权聚合邻居站点的特征,这一步骤将邻居站点的信息考虑进当前站点的更新中,注意力权重决定了不同邻居站点对当前站点的贡献;
步骤33、节点更新层会根据注意力聚合的结果和当前站点的特征,进行节点的更新,引入softmax对注意力系数进行归一化来更新站点的特征表示;
步骤34、对步骤33经图注意力层输出得到的特征向量进行高斯过程建模,使用核函数描述样本之间的相似性,利用核函数计算训练数据集中样本之间的协方差矩阵,进而构建高斯过程模型;通过最大似然估计方法,估计核函数中的参数;通过计算输入样本与已观测数据之间的协方差矩阵,结合先验分布和训练数据的目标值,得到预测的输出值及其不确定性;
步骤35、使用步骤(2)中划分好的历史订单数据训练集训练步骤31~步骤34构建的基于图注意力网络和高斯过程回归的外卖订单需求混合预测模型,最终得到经过训练后的预测模型;
步骤36、对于训练后的预测模型,将步骤(2)的验证集输入其中进行验证,当损失函数达到一个新的最小值时,认为此时模型的表现最好;
步骤37、在验证集进行验证的过程中,模型会根据验证计算的最小RMSE,提前停止模型的训练算法:当验证的epochs最大达到N个时,还无法再次取得一个新的最小RMSE时,模型就会提前停止训练,将最小RMSE对应的模型保存为表现最优的预测模型;
步骤4、使用步骤3得到的最优预测模型对步骤2的测试集进行预测,得到模型的输出结果,对输出结果进行反标准化获得预测的点餐量或取餐量,取其中的点餐量为最终预测出的订单需求量。
2.如权利要求1所述的基于GAT-GPR的外卖订单需求预测方法,其特征在于,步骤1中,获取各种数据集,对获得的历史订单数据集进行预处理具体包括如下步骤:
步骤11、获得美团、饿了么两大外卖平台的原始历史订单数据;
步骤12、基于百度公司提供的地图API,对步骤11原始历史订单数据中的上车点位置和下车点位置进行搜索,从而获得点餐与取餐地点的POI数据特征;
步骤13、利用程序在历史天气网中获取订单所在地区的历史天气数据,包含天气特征和温度数据;
步骤14、对属于周末和节假日的历史订单信息数据进行搜索查询与标记;
步骤15、对步骤11中得到的历史订单数据进行数据清洗预处理工作。
3.如权利要求2所述的基于GAT-GPR的外卖订单需求预测方法,其特征在于,步骤11中,原始历史订单数据包括用户ID、点餐下单地点经纬度、取餐点经纬度、点餐下单时间、取餐时间、配送里程、配送费用。
4.如权利要求2所述的基于GAT-GPR的外卖订单需求预测方法,其特征在于,步骤15中,对步骤11中得到的历史订单数据进行数据清洗预处理工作具体包括如下步骤:
步骤151、当历史订单数据存在空值或者缺失数据时,清除该订单数据;
步骤152、当历史订单数据中的点餐位置或取餐位置超出该城市所在的经纬度范围时,认为该订单数据异常,删除该订单数据;
步骤153、当历史订单数据中的点餐时间和取餐时间之间的时间间隔过长,超过一定的阈值后,认为该订单数据异常,删除该订单数据;
步骤154、清除历史订单数据中不需要的信息,每一条订单数据只保留其点餐与取餐点的位置和时间。
5.如权利要求1所述的基于GAT-GPR的外卖订单需求预测方法,其特征在于,步骤32中,注意力层的注意力权重加权计算过程具体为;将步骤31融合后的每一个节点的一系列特征数据序列用表示,其中N为一个节点包含的特征的维度;则n个节点的数据序列记作/>其中n为数据集中节点的数量,F是d维的每一个站点的输入特征,对于每个节点,采用自注意力机制获取注意力系数:
式中W∈RF′×F表示训练得到的权重矩阵,a∈R2F′表示一个单层的前馈神经网络。
6.如权利要求1所述的基于GAT-GPR的外卖订单需求预测方法,其特征在于,步骤33中,引入softmax对注意力系数进行归一化过程具体如下:
为了使注意力系数在不同的节点便于比较,引入了softmax对注意力系数进行归一化,具体公式表示如下:
式中Ni为节点Pi的邻居节点集,W∈RF′×F表示训练得到的权重矩阵,被每个神经元共享;
将上述计算获得的归一化后的不同节点之间的注意力系数相应的应用于每一个节点,然后经过激活函数,得到每个节点的输出特征;
式中,F'表示d维的每个节点的输出特征,σ(·)为非线性激活函数,则最终输出的一组新的节点特征为/>
7.如权利要求1所述的基于GAT-GPR的外卖订单需求预测方法,其特征在于,步骤34中,高斯过程建模具体如下:
将上述步骤33得到的节点特征用X表示,即:得到其高斯过程由均值函数m(X)和协方差函数k(X,X')组成,如式(14)、式(15)所示:
m(X)=E[f(X)] (14)
k(X,X′)=E{[f(X)-m(X)][f(X′)-m(X′)T]} (15)
式中,f(X)是目标输出,X是d维的n个输入向量,对应的高斯过程表达式如下:
f(X)~GP[m(X),k(X,X′)] (16)
均值函数设置为零,协方差函数使用周期指数函数SE,其具体形式为:
式中,信号方差表示输出距离,l表示长度距离,函数都是有噪声的,假设噪声是加性的、独立的和高斯的,因此输入X和输出Y之间的关系如下所示:
Y=f(X)+ε (18)
式中,ε~N(0,σ2)是方差为的白噪声,观测值的先验分布表示为:
式中,In为n维单位矩阵;
协方差矩阵中,超参数Θ=[σf,I,σn]通过最大化似然方法来优化,表示为:
观测值Y和预测值Y*在测试数据集X*联合先验分布为:
根据Y的联合先验分布,计算出后验分布p(Y*|X,Y,Y*)如下:
式中,预测平均值和协方差/>如下:
此时将预测平均值作为最终预测出的订单需求量。
8.如权利要求1所述的基于GAT-GPR的外卖订单需求预测方法,其特征在于,步骤36和步骤37的训练和验证过程中,损失函数使用均方根误差,其定义如下:
其中n为所有样本的总数,和Yi分别为在第i个站点处预测出的订单需求量和真实订单量。
CN202311096423.3A 2023-08-28 2023-08-28 一种基于gat-gpr的外卖订单需求预测方法 Active CN117057848B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN202311096423.3A CN117057848B (zh) 2023-08-28 2023-08-28 一种基于gat-gpr的外卖订单需求预测方法

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN202311096423.3A CN117057848B (zh) 2023-08-28 2023-08-28 一种基于gat-gpr的外卖订单需求预测方法

Publications (2)

Publication Number Publication Date
CN117057848A CN117057848A (zh) 2023-11-14
CN117057848B true CN117057848B (zh) 2024-05-31

Family

ID=88666123

Family Applications (1)

Application Number Title Priority Date Filing Date
CN202311096423.3A Active CN117057848B (zh) 2023-08-28 2023-08-28 一种基于gat-gpr的外卖订单需求预测方法

Country Status (1)

Country Link
CN (1) CN117057848B (zh)

Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN113807900A (zh) * 2021-10-14 2021-12-17 华东理工大学 一种基于贝叶斯优化的rf订单需求预测方法
CN114418606A (zh) * 2021-12-01 2022-04-29 武汉大学 基于时空卷积网络的网约车订单需求预测方法
WO2023029234A1 (zh) * 2021-09-01 2023-03-09 北京航空航天大学杭州创新研究院 一种面向有缺失数据的公交车到站时间预测方法

Family Cites Families (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN112684701A (zh) * 2020-12-01 2021-04-20 哈尔滨工程大学 一种基于长短时记忆网络和高斯过程回归的船舶运动预报方法

Patent Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2023029234A1 (zh) * 2021-09-01 2023-03-09 北京航空航天大学杭州创新研究院 一种面向有缺失数据的公交车到站时间预测方法
CN113807900A (zh) * 2021-10-14 2021-12-17 华东理工大学 一种基于贝叶斯优化的rf订单需求预测方法
CN114418606A (zh) * 2021-12-01 2022-04-29 武汉大学 基于时空卷积网络的网约车订单需求预测方法

Also Published As

Publication number Publication date
CN117057848A (zh) 2023-11-14

Similar Documents

Publication Publication Date Title
CN107610464B (zh) 一种基于高斯混合时间序列模型的轨迹预测方法
CN108564391B (zh) 一种考虑主客观信息的共享电动汽车需求预测方法及系统
CN113902011A (zh) 基于循环神经网络的城市轨道交通短时客流预测方法
JP7226855B2 (ja) 列車がトンネルを通過する時間の計算方法、システム及び記憶媒体
CN111860989B (zh) 一种基于蚁群算法优化的lstm神经网络短时交通流量预测方法
CN115790636B (zh) 基于大数据的无人驾驶零售车巡航路径规划方法及装置
CN109471982B (zh) 一种基于用户和服务聚类QoS感知的Web服务推荐方法
CN112419131B (zh) 交通起讫点需求估算方法
CN111401599A (zh) 一种基于相似性搜索和lstm神经网络的水位预测方法
CN111899059A (zh) 一种基于区块链的航司收益管理动态定价方法
CN112906948A (zh) 一种基于私家车轨迹大数据的城市区域吸引力预测方法、设备及介质
CN112418476A (zh) 一种超短期电力负荷预测方法
CN116628455A (zh) 一种城市交通碳排放监测与决策支持方法及系统
CN116187835A (zh) 一种基于数据驱动的台区理论线损区间估算方法及系统
Qu et al. How many vehicles do we need? Fleet sizing for shared autonomous vehicles with ridesharing
CN116797274A (zh) 一种基于Attention-LSTM-LightGBM的共享单车需求量预测方法
CN114782114A (zh) 一种基于CNN-GRU和SSA-GWO-LightGBM的机票价格预测方法
CN112784177B (zh) 一种空间距离自适应的下一个兴趣点推荐方法
CN112101132B (zh) 一种基于图嵌入模型和度量学习的交通状况预测方法
CN117057848B (zh) 一种基于gat-gpr的外卖订单需求预测方法
CN113537596A (zh) 一种城市轨道交通新线站点短时客流预测方法
Ma et al. Research and application of second-hand housing price prediction model based on LSTM
CN116777042A (zh) 一种基于区块链与联邦学习融合的交通流预测方法
CN115357798A (zh) 一种基于大数据的智慧旅游目标推荐方法及系统
CN113032688B (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