预测方法、装置、电子设备及存储介质
技术领域
本申请涉及车辆数量检测技术领域,具体而言,涉及一种预测方法、装置、电子设备及存储介质。
背景技术
目前,随着人们环保意识的增强,市场上出现了越来越多的共享车辆,共享自行车、共享电动车等逐渐受到人们的欢迎。
对于共享电动车来说,其车辆的管理和运营成本很高,因此当平台方对一个新的区域进行车辆投放时,往往会先试探性投放少量的车,再根据市场的反馈再慢慢增投车辆。
然而现有技术在投放车辆的过程中,往往很难把握在某一区域的车辆投放量与该区域的用户未满足的用车需求量的平衡。
发明内容
有鉴于此,本申请实施例的目的在于提供一种预测方法、装置、电子设备及存储介质,能够通过完成训练的模型对某一区域的车辆需调度量预测,从而改善该区域车辆投放量与用户未满足的用车需求量不平衡的问题。
一方面,本申请实施例提供一种预测方法,包括:获取目标区域内的特征数据,所述特征数据包括第一时间段内的服务特征数据、环境特征数据以及用户特征数据;将所述特征数据输入预测模型,所述预测模型以多个预设区域中的每个预设区域的第二时间段内的历史车辆需调度量以及历史特征数据作为样本训练得到,其中,所述历史特征数据作为模型输入,所述历史车辆需调度量作为模型输出;获得所述预测模型预测的目标区域的车辆需调度量的预测值。
本申请实施例将目标区域的特征数据输入给完成训练的模型,获得目标区域的车辆需调度量的预测值,从而指导工作人员根据预测值对目标区域的车辆进行投放,改善目标区域的车辆投放量与用户未满足的用车需求量(即车辆需调度量)不平衡的问题。
可选地,在所述将所述特征数据输入预测模型之前,所述方法还包括:获取多个预设区域中每个预设区域的第二时间段内的历史车辆需调度量以及历史特征数据,所述历史特征数据包括第二时间段内的服务特征数据、环境特征数据以及用户特征数据;将所述每个预设区域的第二时间段内的历史车辆需调度量以及历史特征数据作为样本,对预测模型进行训练,获得训练后的预测模型,其中,所述历史特征数据作为模型输入,所述历史车辆需调度量作为模型输出。
预测模型是以每个预设区域在第二时间段内的历史车辆需调度量以及历史特征数据作为样本训练获得的,其中,历史特征数据作为自变量,历史车辆需调度量作为因变量。
可选地,对于每个预设区域,获取第二时间段内的历史车辆需调度量,包括:获取用户在所述第二时间段内发送车辆使用请求但在预设时间段内未使用车辆的第一次数;获取用户在所述第二时间段内发送车辆查找请求但未发送车辆使用请求的第二次数;计算所述第一次数与所述第二次数之和,将其作为该预设区域所述第二时间段内的历史车辆需调度量。
用户发送车辆使用请求但未使用车辆通常是由于车辆是坏车而导致用户的用车需求无法得到满足,同一辆坏车可能会被多个人请求使用,因此统计第一次数可以真实的记录用户未被满足的用车需求数。用户发送车辆查找请求但未发送车辆使用请求通常是由于用户打开应用程序欲找车,但用户所在位置附近无可用车辆。获得第一次数与第二次数之和,便可以获得预测区域的第二时间段内的用户未被满足的用车需求量,即需要调度车辆的数量。
可选地,在获取目标区域内的特征数据之前,所述方法还包括:采用测试集数据对所述训练后的预测模型进行测试,所述测试集数据包括测试区域内的测试时间段内的特征数据以及测试需调度量;确定所述预测模型得出的第一需调度量与所述测试需调度量相比,误差小于预设值。
在获得训练后的预测模型后,可以通过对预测模型进行测试来验证预测模型预测的准确性,预测模型根据测试集数据中的特征数据预测第一需调度量,若第一需调度量与测试集数据中的测试需调度量的误差小于预设值,则表明预测模型预测的准确性较高。
可选地,所述预测模型为Extreme Gradient Boosting模型、Gradient BoostingDecision Tree模型、线性回归模型、神经网络模型中任一项。
可选地,所述服务特征数据包括车辆使用请求的发起数量、车辆使用请求的成交数量、所述预设区域的车辆存量、所述预设区域的车辆流入数量、所述预设区域的车辆流出数量以及所述预设区域的坏车数量中至少一项。
可选地,所述环境特征数据包括所述预设区域的类型以及所述预设区域的人口密度以及所述预设区域内热点事件中至少一项。
可选地,所述用户特征数据包括发起车辆查找请求的用户数量、发起车辆使用请求的用户数量、车辆使用请求成交的用户数量中至少一项。
另一方面,本申请实施例还提供一种预测装置,包括:目标特征获取模块,用于获取目标区域内的特征数据,所述特征数据包括第一时间段内的服务特征数据、环境特征数据以及用户特征数据;特征数据输入模块,用于将所述特征数据输入预测模型,所述预测模型以多个预设区域中的每个预设区域的第二时间段内的历史车辆需调度量以及历史特征数据作为样本训练得到,其中,所述历史特征数据作为模型输入,所述历史车辆需调度量作为模型输出;需调度量预测模块,用于获得所述预测模型预测的目标区域的车辆需调度量的预测值。
本申请实施例将目标区域的特征数据输入给完成训练的模型,获得目标区域的车辆需调度量的预测值,从而指导工作人员根据预测值对目标区域的车辆进行投放,改善目标区域的车辆投放量与用户未满足的用车需求量(即车辆需调度量)不平衡的问题。
可选地,所述装置还包括:历史数据获取模块,用于获取多个预设区域中每个预设区域的第二时间段内的历史车辆需调度量以及历史特征数据,所述历史特征数据包括第二时间段内的服务特征数据、环境特征数据以及用户特征数据;模型训练模块,用于将所述每个预设区域的第二时间段内的历史车辆需调度量以及历史特征数据作为样本,对预测模型进行训练,获得训练后的预测模型,其中,所述历史特征数据作为模型输入,所述历史车辆需调度量作为模型输出。
预测模型是以每个预设区域在第二时间段内的历史车辆需调度量以及历史特征数据作为样本,训练获得的,其中,历史特征数据作为自变量,历史车辆需调度量作为因变量。
可选地,所述历史数据获取模块包括:第一次数获取模块,用于获取用户在所述第二时间段内发送车辆使用请求但在预设时间段内未使用车辆的第一次数;第二次数获取模块,用于获取用户在所述第二时间段内发送车辆查找请求但未发送车辆使用请求的第二次数;加和计算模块,用于计算所述第一次数与所述第二次数之和,将其作为该预设区域所述第二时间段内的历史车辆需调度量。
用户发送车辆使用请求但未使用车辆通常是由于车辆是坏车而导致用户的用车需求无法得到满足,同一辆坏车可能会被多个人请求使用,因此统计第一次数可以真实的记录用户未被满足的用车需求数。用户发送车辆查找请求但未发送车辆使用请求通常是由于用户打开应用程序欲找车,但用户所在位置附近无可用车辆。获得第一次数与第二次数之和,便可以获得预测区域的第二时间段内的用户未被满足的用车需求量,即需要调度车辆的数量。
可选地,所述装置还包括:模型测试模块,用于采用测试集数据对所述训练后的预测模型进行测试,所述测试集数据包括测试区域内的测试时间段内的特征数据以及测试需调度量;误差确定模块,用于确定所述预测模型得出的第一需调度量与所述测试需调度量相比,误差小于预设值。
在获得训练后的预测模型后,可以通过对预测模型进行测试来验证预测模型预测的准确性,预测模型根据测试集数据中的特征数据预测第一需调度量,若第一需调度量与测试集数据中的测试需调度量的误差小于预设值,则表明预测模型预测的准确性较高。
另一方面,本申请实施例还提供一种电子设备,包括:处理器、存储介质和总线;存储介质存储有处理器可执行的机器可读指令,当电子设备运行时,处理器与存储介质之间通过总线通信,处理器执行机器可读指令,以执行时执行如上述一方面提供的预测方法。
另一方面,本申请实施例还提供一种存储介质,该存储介质上存储有计算机程序,该计算机程序被处理器运行时执行如上述一方面提供的预测方法。
附图说明
为了更清楚地说明本申请实施例的技术方案,下面将对实施例中所需要使用的附图作简单地介绍,应当理解,以下附图仅示出了本申请的某些实施例,因此不应被看作是对范围的限定,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他相关的附图。
图1为本申请实施例提供的电子设备结构示意图;
图2示出了本申请实施例所提供的一种预测方法的流程示意图;
图3示出了本申请实施例所提供的一种预测方法的部分步骤的流程示意图;
图4示出了本申请实施例所提供的一种预测方法的部分步骤的流程示意图;
图5示出了本申请实施例所提供的一种预测方法的部分步骤的流程示意图;
图6示出了本申请实施例提供的预测装置的示意性结构框图。
具体实施方式
为使本申请实施例的目的、技术方案和优点更加清楚,下面将结合本申请实施例中的附图,对本申请实施例中的技术方案进行清楚、完整地描述,应当理解,本申请中附图仅起到说明和描述的目的,并不用于限定本申请的保护范围。本申请中使用的流程图示出了根据本申请的一些实施例实现的操作。应该理解,流程图的操作可以不按顺序实现,没有逻辑的上下文关系的步骤可以反转顺序或者同时实施。此外,本领域技术人员在本申请内容的指引下,可以向流程图添加一个或多个其他操作,也可以从流程图中移除一个或多个操作。
另外,所描述的实施例仅仅是本申请一部分实施例,而不是全部的实施例。通常在此处附图中描述和示出的本申请实施例的组件可以以各种不同的配置来布置和设计。因此,以下对在附图中提供的本申请的实施例的详细描述并非旨在限制要求保护的本申请的范围,而是仅仅表示本申请的选定实施例。基于本申请的实施例,本领域技术人员在没有做出创造性劳动的前提下所获得的所有其他实施例,都属于本申请保护的范围。
为了使得本领域技术人员能够使用本申请内容,结合预测方法,给出以下实施方式。对于本领域技术人员来说,在不脱离本申请的精神和范围的情况下,可以将这里定义的一般原理应用于其他实施例和应用场景。虽然本申请主要围绕车辆数量预测进行描述,但是应该理解,这仅是一个示例性实施例。本申请可以应用于任何其他交通运输类型。例如,本申请可以应用于不同的运输系统环境,包括陆地,海洋,或航空等,或其任意组合。
需要说明的是,本申请实施例中将会用到术语“包括”,用于指出其后所声明的特征的存在,但并不排除增加其它的特征。此外,本申请实施例中,“多个”是指两个或两个以上。
图1为本申请实施例提供的电子设备结构示意图。例如,处理器可以用于电子设备100上,并且用于执行本申请中的功能。
电子设备100可以是通用计算机或特殊用途的计算机,两者都可以用于实现本申请的预测方法。本申请尽管仅示出了一个计算机,但是为了方便起见,可以在多个类似平台上以分布式方式实现本申请描述的功能,以均衡处理负载。
例如,电子设备100可以包括连接到网络的网络端口110、用于执行程序指令的一个或多个处理器120、通信总线130、和不同形式的存储介质140,例如,磁盘、ROM、或RAM,或其任意组合。示例性地,计算机平台还可以包括存储在ROM、RAM、或其他类型的非暂时性存储介质、或其任意组合中的程序指令。根据这些程序指令可以实现本申请的方法。电子设备100还包括计算机与其他输入输出设备(例如键盘、显示屏)之间的输入/输出(Input/Output,I/O)接口150。
为了便于说明,在电子设备100中仅描述了一个处理器。然而,应当注意,本申请中的电子设备100还可以包括多个处理器,因此本申请中描述的一个处理器执行的步骤也可以由多个处理器联合执行或单独执行。例如,若电子设备100的处理器执行步骤A和步骤B,则应该理解,步骤A和步骤B也可以由两个不同的处理器共同执行或者在一个处理器中单独执行。例如,第一处理器执行步骤A,第二处理器执行步骤B,或者第一处理器和第二处理器共同执行步骤A和B。
现有技术中对一个区域增投车辆的方案可以有多种,可以根据区域的大小进行投放,可以根据人口密度的大小进行投放,现有技术通常是根据单一特征来预测该区域的车辆的需求量,预测的准确性较低。因此,本申请实施例提供了一种预测方法,能够提高对预设区域的车辆需调度量预测的准确率。
请参见图2,图2示出了本申请实施例提供的预测方法,具体包括如下步骤:
步骤S10,获取目标区域内的特征数据,所述特征数据包括第一时间段内的服务特征数据、环境特征数据以及用户特征数据。
目标区域为欲获得车辆需调度量的预测值的区域。
特征数据可以包括服务特征数据、环境特征数据以及用户特征数据。其中,服务特征数据包括车辆使用请求的发起数量、车辆使用请求的成交数量、所述预设区域的车辆存量、所述预设区域的车辆流入数量、所述预设区域的车辆流出数量以及所述预设区域的坏车数量。环境特征数据包括所述预设区域的类型、所述预设区域的人口密度以及所述预设区域内热点事件。用户特征数据包括发起车辆查找请求的用户数量、发起车辆使用请求的用户数量、车辆使用请求成交的用户数量。
第一时间段的具体时间值跟特征数据的特征属性有关,对于一些特征数据,第一时间段可以是对目标区域进行车辆需调度量预测日的前一天,对于一些特征数据,第一时间段可以是对目标区域进行车辆需调度量预测日当天。
具体地,上述特征数据中的如车辆使用请求的发起数量、车辆使用请求的成交数量、预设区域的车辆存量、预设区域的车辆流入数量、预设区域的车辆流出数量、预设区域的坏车数量、发起车辆查找请求的用户数量、发起车辆使用请求的用户数量、车辆使用请求成交的用户数量均为需要收集才能获得的数据,因此可以是对目标区域预测车辆需调度量前一天的数据。例如,欲对11月30号时目标区域的车辆需调度量进行预测,可以将11月29日的车辆使用请求的发起数量、车辆使用请求的成交数量、预设区域的车辆流入数量、预设区域的车辆流出数量、预设区域的坏车数量、发起车辆查找请求的用户数量、发起车辆使用请求的用户数量、车辆使用请求成交的用户数量作为特征数据。预设区域的类型、预设区域的人口密度为稳定性较强的数据,可以从预先存储的数据库中获取。
特征数据也可以包括能够实时获得的数据,如天气情况特征,路况特征、预设区域内的热点事件等,热点事件可以为演唱会、大型促销活动等。具体地,若欲对11月30号时目标区域的车辆需调度量进行预测,可以获得11月30号当天的天气情况,路况特征信息以及热点事件。
步骤S20,将所述特征数据输入预测模型,所述预测模型以多个预设区域中的每个预设区域的第二时间段内的历史车辆需调度量以及历史特征数据作为样本训练得到,其中,所述历史特征数据作为模型输入,所述历史车辆需调度量作为模型输出。
预测模型可以为Extreme Gradient Boosting(xgboost)模型、GradientBoosting Decision Tree(GBDT)模型、线性回归模型、神经网络模型中任一项。
xgboost算法具有可并行化处理和可移植性的优点。GBDT算法具有适合低维数据、能处理非线性数据,可灵活处理各种类型的数据的优点。线性回归模型在分析多因素模型时更加简洁方便,可以准确地计量各个因素之间的相关程度与回归拟合程度的高低,提高预测方程式的效果。神经网络模型是有能力学习和构建非线性的复杂关系的模型,可以更好地模拟异方差性(即具有高波动性和不稳定方差的数据),神经网络模型具有学习数据中隐藏关系的能力。
接下来以xgboost模型为例进行说明:
xgboost是通过多个分类与回归树(Classification and Regression Trees,CART)组成的监督模型,其输出的结果是每个CART树的预测值之和。CART树是一种典型的二叉决策树,由于CART树的叶子节点对应的值是一个实际的分数,而非一个确定的类别,这将有利于实现高效的优化算法。xgboost算法可以通过如下数学公式表示:
其中,k表示CART树的个数,Γ表示所有可能的CART树,f表示一颗具体的CART树。
模型的目标函数为:
这个目标函数包括两部分,第一部分为损失函数,第二部分为正则项,该正则项是由K棵树的正则化项相加而来。
接下来,可以根据上述目标函数,采用加法训练的方法对每棵树进行优化,第t棵树的优化后目标函数如下:
通过对每一棵CART树进行优化后,获得最终的预测模型。
预设区域具体可以根据GeoHash算法来获得,GeoHash算法可以将二维的经纬度转换成字符串,每一个字符串代表某一矩形区域。也就是说,该矩形区域内所有的点(经纬度坐标)均共享同一GeoHash字符串。GeoHash字符串的长度越长,表示的范围越精确,例如5位编码可以代表10万平方千米的矩形区域,6位编码可以表示约0.34平方千米的矩形区域,7位编码可以表示更精细的区域。本申请实施例中的预设区域可以选择GeoHash7位编码。
下面结合具体例子对获得GeoHash字符串的方式进行说明:
不妨设北纬为正,南纬为负,东经为正,西经为负。以纬度39.928167°、经度116.389550°为例,对于二分后的区间,落在左侧区间标记为0,落在右侧区间标记为1。
对于纬度39.928167°,将地球的纬度区间[-90,90]二分为[-90,0]和[0,90],纬度39.928167°落在右侧区间,标记为1;
接着将区间[0,90]二分为[0,45]和[45,90],纬度39.928167°落在左侧区间,标记为0;
……
递归上述过程,最终获得纬度39.928167°的编码为:
1 1 0 1 0 0 1 0 1 1 0 0 0 1 0
对于经度116.389550°,同理可得,其编码为:
1 0 1 1 1 0 0 0 1 1 0 0 0 1 1
将上述两个编码合并,偶数位放经度,奇数位放纬度,可得
11100 11101 00100 01111 0000 01101
将合并后的编码转换为十进制,对应28、29、4、15、0、13,十进制对应的base32编码为wx4g0e。上述步骤介绍了获得GeoHash6位编码的过程,可以通过上述方式来获得GeoHash5位编码或GeoHash7位编码。
车辆可以是两轮电动车,由于电动车的管理和运营成本较高,因此需对车辆的调度和投放进行更加细致的规划。车辆也可以是其他车辆,例如自行车、平衡车、滑板车等。
第二时间段为早于对目标区域的车辆需调度量进行预测的第一时间段的一个时间段,第二时间段可以为一天,例如,若对11月30号时目标区域的车辆需调度量进行预测,第二时间段可以是11月28号全天;第二时间段也可以是更长的时间段,例如对目标区域的车辆需调度量进行预测发生日的前一周,从而可以获得足够多的训练样本;第二时间段也可以是一天中的特定时间段,如早上、中午或晚上分别的出行高峰时间段,以便分别获得某一区域一天中不同时段的车辆需调度量。
历史车辆需调度量为每个预设区域的第二时间段内的用户未满足的用车需求量,根据用户未满足的用车需求量来进行车辆的投放,更加直观。
历史特征数据可以包括第二时间段内的服务特征数据、环境特征数据以及用户特征数据。其中,服务特征数据包括车辆使用请求的发起数量、车辆使用请求的成交数量、预设区域的车辆存量、预设区域的车辆流入数量、预设区域的车辆流出数量以及预设区域的坏车数量中至少一项。环境特征数据包括预设区域的类型以及预设区域的人口密度、所述预设区域内热点事件中至少一项。用户特征数据包括发起车辆查找请求的用户数量、发起车辆使用请求的用户数量、车辆使用请求成交的用户数量中至少一项。历史特征数据还可以包括天气特征、路况特征、热点事件等。
预设区域的类型可以是预设区域的区域特征,区域特征包括小区、商场、商务区、景区。车辆查找请求可以在用户打开用车应用程序(Application,APP)时,APP自动发起车辆查找请求,APP具体根据用户的位置查找用户位置附近的可用车辆,因此,用户打开用车APP可以视为发起车辆查找请求。
将多个预设区域的每个预设区域的历史特征数据以及历史需调度量均作为样本来对预测模型进行训练,可以增多预测模型的样本数量,使预测模型的预测结果更加可靠。
步骤S30,获得所述预测模型预测的目标区域的车辆需调度量的预测值。
将目标区域的特征数据输入给完成训练的模型,获得目标区域的车辆需调度量的预测值,从而指导工作人员根据预测值对目标区域的车辆进行投放,改善目标区域的车辆投放量与用户未被满足的用车需求量不平衡的问题。
不妨设目标区域的车辆需调度量的预测值为M,该目标区域的车辆投放量应为M*K,其中,K为一个比例系数,可以由运营人员根据不同的运营目的来调整,例如若准备刺激目标区域的用户活跃度,K可以是大于1的数。
可选地,请参见图3,在将特征数据输入预测模型之前,所述方法还包括:
步骤S110,获取多个预设区域的每个预设区域的第二时间段内的历史车辆需调度量以及历史特征数据。
步骤S120,将所述每个预设区域的第二时间段内的历史车辆需调度量以及历史特征数据作为样本,对预测模型进行训练,获得训练后的预测模型,其中,所述历史特征数据作为模型输入,所述历史车辆需调度量作为模型输出。
本申请实施例可以将每个预设区域在第二时间段内的历史车辆需调度量以及历史特征数据均作为样本,对预测模型进行训练,其中,历史特征数据作为自变量,历史车辆需调度量作为因变量。将多个预设区域的每个预设区域的历史特征数据以及历史需调度量均作为样本来对预测模型进行训练,可以增多预测模型的样本数量,使预测模型的预测结果更加可靠。
请参见图4,可选地,在上述实施例的基础上,获取第二时间段内的历史车辆需调度量,具体可以包括如下步骤:
步骤S101,获取用户在所述第二时间段内发送车辆使用请求但在预设时间段内未使用车辆的第一次数。
车辆使用请求可以由用户点按、长按用车APP中的按钮或滑动用车APP中的显示界面触发并发送给服务器,车辆使用请求的触发方式不应该理解为是对本申请的限制。预设时间段为用户发送车辆使用请求之后开始计时的一个时间段,时间段的时长可以为20分钟或30分钟。用户发送车辆使用请求但未使用车辆通常是由于车辆是坏车而导致用户的用车需求无法得到满足,同一辆坏车可能会被多个人请求使用,因此统计第一次数可以真实地记录用户未被满足的用车需求数。
步骤S102,获取用户在所述第二时间段内发送车辆查找请求但未发送车辆使用请求的第二次数。
车辆查找请求可以在用户打开用车APP时,APP自动发起车辆查找请求,APP具体根据用户的位置查找用户位置附近的可用车辆,因此,用户打开用车APP可以视为发起车辆查找请求。车辆查找请求也可以通过其他方式发起,如用户点按、长按用车APP中的按钮或滑动用车APP中的显示界面,车辆查找请求的发起方式不应该理解为是对本申请的限制。
用户发送车辆查找请求但未发送车辆使用请求通常是由于用户打开应用程序欲找车使用,但用户所在位置附近无可用车辆。因此统计第二次数可以真实地记录用户未被满足的且不与第一次数重叠的用车需求数。
步骤S103,计算所述第一次数与所述第二次数之和,将其作为该预设区域所述第二时间段内的历史车辆需调度量。
获得第一次数与第二次数之和,便可以获得预测区域的第二时间段内的用户未被满足的用车需求量,即需要调度车辆的数量
请参见图5,可选地,在上述实施例的基础上,在步骤S130之前,还可以包括如下步骤:
步骤S210,采用测试集数据对所述训练后的预测模型进行测试,所述测试集数据包括测试区域内的测试时间段内的特征数据以及测试需调度量。
测试时间段为与第二时间段相同时段的时间段,例如,第二时间段为一天的时长,则测试时间段也为一天的时长;第二时间段为某一天的中午11点至14点的时长,测试时间段为另外一天的中午11点至14点的时长。测试需调度量为与测试时间段内的特征数据匹配的实际需调度量。
在对训练后的预测模型进行测试时,可以将预设时间段内的特征数据代入训练后的预测模型,得到预测模型预测的第一需调度量,然后将第一需调度量与测试需调度量进行比较。
步骤S220,确定所述预测模型得出的第一需调度量与所述测试需调度量相比,误差小于预设值。
预设值为一个预先设定的具体阈值,例如15%。若第一需调度量与测试集数据中的测试需调度量的误差小于预设值,则表明预测模型预测的准确性较高。
若第一需调度量与测试集数据中的测试需调度量的误差大于预设值,表明预测模型预测的准确性较低,此时,可以重新构造特征数据,可以重新选择新的特征,例如预设区域的人口的年龄大小、性别特征等,也可以利用现有的特征进行交叉运算;也可以重新选择预测模型,例如当前预测模型为xgboost模型,也可以换用GBDT模型或线性回归模型等。
通过对训练后的预测模型进行测试,可以提高预测模型获得的预测结果的可靠性,加强预测获得的车辆需调度量的可参考性。
图6示出了预测装置的示意性结构框图,该预测装置实现的功能对应上述方法执行的步骤。该装置可以理解为执行预测方法的服务器,或服务器中的处理器,也可以理解为独立于上述服务器或处理器之外的在服务器控制下实现本申请功能的组件,如图所示,该预测装置300可以包括:
目标特征获取模块310,用于获取目标区域内的特征数据,所述特征数据包括第一时间段内的服务特征数据、环境特征数据以及用户特征数据。
特征数据输入模块320,用于将所述特征数据输入预测模型,所述预测模型以多个预设区域中的每个预设区域的第二时间段内的历史车辆需调度量以及历史特征数据作为样本训练得到,其中,所述历史特征数据作为模型输入,所述历史车辆需调度量作为模型输出。
需调度量预测模块330,用于获得所述预测模型预测的目标区域的车辆需调度量的预测值。
在上述实施例的基础上,所述装置还包括:
历史数据获取模块,用于获取多个预设区域中每个预设区域的第二时间段内的历史车辆需调度量以及历史特征数据,所述历史特征数据包括第二时间段内的服务特征数据、环境特征数据以及用户特征数据。
模型训练模块,用于将所述每个预设区域的第二时间段内的历史车辆需调度量以及历史特征数据作为样本,对预测模型进行训练,获得训练后的预测模型,其中,所述历史特征数据作为模型输入,所述历史车辆需调度量作为模型输出。
在上述实施例的基础上,所述历史数据获取模块包括:
第一次数获取模块,用于获取用户在所述第二时间段内发送车辆使用请求但在预设时间段内未使用车辆的第一次数。
第二次数获取模块,用于获取用户在所述第二时间段内发送车辆查找请求但未发送车辆使用请求的第二次数。
加和计算模块,用于计算所述第一次数与所述第二次数之和,将其作为该预设区域所述第二时间段内的历史车辆需调度量。
在上述实施例的基础上,所述装置还包括:
模型测试模块,用于采用测试集数据对所述训练后的预测模型进行测试,所述测试集数据包括测试区域内的测试时间段内的特征数据以及测试需调度量。
误差确定模块,用于确定所述预测模型得出的第一需调度量与所述测试需调度量相比,误差小于预设值。
在上述实施例的基础上,所述预测模型为Extreme Gradient Boosting模型、Gradient Boosting Decision Tree模型、线性回归模型、神经网络模型中任一项。
在上述实施例的基础上,所述服务特征数据包括车辆使用请求的发起数量、车辆使用请求的成交数量、所述预设区域的车辆存量、所述预设区域的车辆流入数量、所述预设区域的车辆流出数量以及所述预设区域的坏车数量中至少一项。
在上述实施例的基础上,所述环境特征数据包括所述预设区域的类型以及所述预设区域的人口密度以及所述预设区域内热点事件中至少一项。
在上述实施例的基础上,所述用户特征数据包括发起车辆查找请求的用户数量、发起车辆使用请求的用户数量、车辆使用请求成交的用户数量中至少一项。
上述模块可以经由有线连接或无线连接彼此连接或通信。有线连接可以包括金属线缆、光缆、混合线缆等,或其任意组合。无线连接可以包括通过LAN、WAN、蓝牙、ZigBee、或NFC等形式的连接,或其任意组合。两个或更多个模块可以组合为单个模块,并且任何一个模块可以分成两个或更多个单元。
所属领域的技术人员可以清楚地了解到,为描述的方便和简洁,上述描述的装置的具体工作过程,可以参考方法实施例中的对应过程,本申请中不再赘述。在本申请所提供的几个实施例中,应该理解到,所揭露的装置和方法,可以通过其它的方式实现。以上所描述的装置实施例仅仅是示意性的,例如,所述模块的划分,仅仅为一种逻辑功能划分,实际实现时可以有另外的划分方式,又例如,多个模块或组件可以结合或者可以集成到另一个系统,或一些特征可以忽略,或不执行。另一点,所显示或讨论的相互之间的耦合或直接耦合或通信连接可以是通过一些通信接口,装置或模块的间接耦合或通信连接,可以是电性,机械或其它的形式。
所述作为分离部件说明的模块可以是或者也可以不是物理上分开的,作为模块显示的部件可以是或者也可以不是物理单元,即可以位于一个地方,或者也可以分布到多个网络单元上。可以根据实际的需要选择其中的部分或者全部单元来实现本实施例方案的目的。
另外,在本申请各个实施例中的各功能单元可以集成在一个处理单元中,也可以是各个单元单独物理存在,也可以两个或两个以上单元集成在一个单元中。
所述功能如果以软件功能单元的形式实现并作为独立的产品销售或使用时,可以存储在一个处理器可执行的非易失的计算机可读取存储介质中。基于这样的理解,本申请的技术方案本质上或者说对现有技术做出贡献的部分或者该技术方案的部分可以以软件产品的形式体现出来,该计算机软件产品存储在一个存储介质中,包括若干指令用以使得一台计算机设备(可以是个人计算机,服务器,或者网络设备等)执行本申请各个实施例所述方法的全部或部分步骤。而前述的存储介质包括:U盘、移动硬盘、ROM、RAM、磁碟或者光盘等各种可以存储程序代码的介质。
另一方面,本申请实施例还提供一种存储介质,该存储介质上存储有计算机程序,该计算机程序被处理器运行时执行如上述一方面提供的预测方法的步骤。
以上仅为本申请的具体实施方式,但本申请的保护范围并不局限于此,任何熟悉本技术领域的技术人员在本申请揭露的技术范围内,可轻易想到变化或替换,都应涵盖在本申请的保护范围之内。因此,本申请的保护范围应以权利要求的保护范围为准。