一种用户出行信息预测方法、装置、设备及存储介质与流程

文档序号:19158697发布日期:2019-11-16 01:06阅读:217来源:国知局
一种用户出行信息预测方法、装置、设备及存储介质与流程

本发明实施例涉及计算机技术领域,尤其涉及一种用户出行信息预测方法、装置、设备及存储介质。



背景技术:

共享经济作为一种新的经济形态,通过共享平台这一信息载体与用户进行高频交互,通过共享平台暂时转移供给方闲置资源,提高资产利用率,为需求方提供便利,为供给方创造价值。

在共享租车平台中为了给用户提供更好的服务,通常会根据用户的历史出行信息,对用户未来的出行规模以及出行类型等信息进行预测,以便针对不同出行规模,进行衣、食、住、行等出行关联信息的推荐。

现有技术中对用户未来出行规模进行预测时,通常采用经验分析的方式进行确定。然而,由于用户出行行为存在一定兴趣变化和周期性,采用经验分析的方式对用户未来出行信息进行预测时预测结果的准确度较差,降低了用户的使用体验。



技术实现要素:

本发明提供一种用户出行信息预测方法、装置、设备及存储介质,以提高预测的用户未来出行信息的准确度,进而提高用户的使用体验。

第一方面,本发明实施例提供了一种用户出行信息预测方法,包括:

获取当前用户在设定时间段的租用车辆的订单信息,并根据所述订单信息生成预测订单序列;

将所述预测订单序列输入至预先训练好的循环神经网络rnn模型中,根据所述rnn模型的输出结果预测所述当前用户的未来出行信息;所述未来出行信息包括未来出行规模和/或未来出行类型。

第二方面,本发明实施例还提供了一种用户出行信息预测装置,包括:

预测订单序列生成模块,用于获取当前用户在设定时间段的租用车辆的订单信息,并根据所述订单信息生成预测订单序列;

未来出行信息预测模块,用于将所述预测订单序列输入至预先训练好的循环神经网络rnn模型中,根据所述rnn模型的输出结果预测所述当前用户的未来出行信息;所述未来出行信息包括未来出行规模和/或未来出行类型。

第三方面,本发明实施例还提供了一种电子设备,包括:

一个或多个处理器;

存储器,用于存储一个或多个程序;

当所述一个或多个程序被所述一个或多个处理器执行,使得所述一个或多个处理器实现如第一方面实施例所提供的一种用户出行信息预测方法。

第四方面,本发明实施例还提供了一种计算机可读存储介质,其上存储有计算机程序,其特征在于,该程序被处理器执行时实现如第一方面实施例所提供的一种用户出行信息预测方法。

本发明实施例通过获取当前用户在设定时间段的租用车辆的订单信息,并根据订单信息生成预测订单序列;将预测订单序列输入至预先训练好的rnn(recurrentneuralnetwork,循环神经网络)模型中,根据rnn模型的输出结果预测当前用户的未来出行信息;未来出行信息包括未来出行规模和/或未来出行类型。上述技术方案通过基于当前用户的订单信息进行预测订单序列的生成,并将预测订单序列输入至rnn模型中,根据模型输出结果进行未来出行规模和未来出行类型的预测,使得在进行未来出行信息预测时能够结合用户多次出行的关联性,进而提高了对用户未来出行信息的预测结果的准确度,从而提升了用户的使用体验。

附图说明

图1是本发明实施例一中的一种用户出行信息预测方法的流程图;

图2是本发明实施例二中的一种用户出行信息预测方法的流程图;

图3a是本发明实施例三中的一种用户出行信息预测方法的流程图;

图3b是本发明实施例三中的滑动窗口选取订单序列示意图;

图3c是本发明实施例三中的rnn模型整体架构示意图;

图3d是本发明实施例三中的隐变量弱标签聚类分析示意图;

图4是本发明实施例四中的一种用户出行信息预测装置的结构图;

图5是本发明实施例五中的一种电子设备的结构图。

具体实施方式

下面结合附图和实施例对本发明作进一步的详细说明。可以理解的是,此处所描述的具体实施例仅仅用于解释本发明,而非对本发明的限定。另外还需要说明的是,为了便于描述,附图中仅示出了与本发明相关的部分而非全部结构。

实施例一

图1是本发明实施例一中的一种用户出行信息预测方法的流程图,本发明实施例适用于共享租车平台基于用户的历史出行信息对用户即将产生的出行规模以及出行类型等进行预测的情况。该方法由用户出行信息预测装置执行,该装置采用软件和/或硬件实现,并具体配置于具备一定数据运算能力的电子设备中,其中电子设备可以是服务器或个人电脑。

如图1所示的一种用户出行信息预测方法,包括:

s110、获取当前用户在设定时间段的租用车辆的订单信息,并根据所述订单信息生成预测订单序列。

其中,订单信息包括租用车辆的订单金额、车型座位数、租用天数、起租时间和出行地点等中的至少一种。其中,设定时间段可以由技术人员根据需要或经验值自行设定,在该设定时间段内,当前用户的租用车辆的订单信息中所包含的订单数量至少为1。

需要说明的是,订单信息还可以包括其他与用户出行类型或规模相关联的其他信息,在此不再赘述。

其中,订单信息可以电子设备本地、与电子设备所关联的其他存储设备或云端中;相应的,获取当前用户在设定时间段的租用车辆的订单信息,可以是在电子设备本地、与电子设备所关联的其他存储设备或云端中,进行订单信息的查找获取。示例性地,可以根据当前用户的用户标识(例如用户登录共享租车平台的账号信息)以及当前时间,进行设定时间段内租用车辆的订单信息的查找获取。

由于订单信息中可以包含数值型的属性信息(例如订单金额、车型座位数、以及租用天数等),还可以包括非数值型的属性信息(例如起租时间、以及出行地点等)。由于不同用户的行为频率和基数不同,为了提高预测结果的准确度,需要对订单信息进行归一化处理。

若订单信息包含数值型的属性信息,诸如订单金额、车型座位数、以及租用天数等,则根据订单信息生成预测订单序列,可以是对订单信息进行归一化处理,并根据归一化处理后的订单信息生成预测订单序列。

在对数值型的属性信息进行归一化处理时,可以在订单信息所包含的各订单中,确定订单信息所在属性类别对应的最值信息,并根据所确定的最值信息进行离差标准化;还可以在订单信息所包含的各订单中,确定订单信息所在属性类别对应的最值信息和均值信息,并根据所确定的最值信息和均值信息进行离差标准化;或者还可以在订单信息所包含的各订单中,确定订单信息所在属性类别对应的均值和标准差,并根据所确定的均值和标准差进行均值标准化。其中,属性类别包括订单金额、车型座位数、以及租用天数等。

示例性地,若订单信息包括车型座位数,则获取订单信息所包含的不同订单中车型座位数对应的最大值和最小值;针对每一订单中的车型座位数,确定车型座位数与最小值的浮动差值,并确定浮动差值与最大值和最小值之间的差值的比值,将确定的比值作为归一化处理后得到的车型座位数。或者,获取订单信息所包含的不同订单中车型座位数对应的最大值、最小值和平均值;针对每一订单中的车型座位数,确定车型座位数与平均值的浮动差值,并确定浮动差值与最大值和最小值之间的差值的比值,将确定的比值作为归一化处理后得到的车型座位数。或者,还可以获取订单信息所包含的不同订单中车型座位数对应的均值和标准差;针对每一订单中的车型座位数,确定车型座位数与均值的浮动差值,并确定浮动差值与标准差的比值,将确定的比值作为归一化处理后得到的车型座位数。

需要说明的是,由于不同订单中租用车辆的时长不同,因此为了避免租用时长不同导致的订单金额间带来的显著差异,可以在对订单金额进行归一化处理之前,根据订单金额和租用天数确定日均订单金额;相应的,对订单金额进行归一化处理时,对日均订单金额进行归一化处理。

若订单信息包含非数值型属性信息,诸如起租时间、以及出行地点等,则根据订单信息生成预测订单序列,可以是按照设定规则将订单信息进行数值转化处理,并根据数值转化后的订单信息生成预测订单序列。

以历史订单信息包括出行地点为例进行说明。可以将出行地点转化为经纬度坐标,以将非数值型的出行地点进行数值转化;或者还可以将出行地点转化为离散数值点,例如预先设定不同出行地点对应的数值标识,以通过出行地点与数值标识之间的映射关系,将非数值型的出行地点进行数值转化。

需要说明的是,本发明实施例对非数值型的订单信息进行数值转化所采用的设定规则不做任何限定,仅需保证与rnn模型训练时所采用的设定规则相同即可。

s120、将所述预测订单序列输入至预先训练好的rnn模型中,根据所述rnn模型的输出结果预测所述当前用户的未来出行信息。

其中,所述未来出行信息包括未来出行规模和/或未来出行类型。

其中,未来出行规模包括当前用户未来出行时的订单金额、车型座位数、租用天数、起租时间、和出行地点中的至少一种。

其中,rnn模型需要预先根据大量的训练样本进行模型参数训练,并将训练好的rnn模型进行使用。

示例性的,在对rnn模型进行训练时,采用不同历史用户在固定时段的历史订单信息对应的历史订单序列;将历史订单序列作为训练样本,对预先设定的rnn模型进行模型训练,直至模型的输出结果与训练样本对应的实际结果之间的差值收敛。其中,历史订单信息包括订单金额、车型座位数、租用天数、起租时间、和出行地点中的至少一种。相应的,rnn模型的输出结果包括订单金额、车型座位数、租用天数、起租时间、和出行地点中的至少一种的关联信息。例如,订单金额的关联信息为日均订单金额、起租时间的关联信息为起租时间对应的数值信息、出行地点的关联信息为出行地点对应的数值信息、车型座位数的关联信息为车型座位数、以及租用天数的关联信息为租用天数等。

其中,rnn模型的输出结果还包括与输入rnn模型的历史订单序列对应的输出隐变量,以及与输入rnn模型的预测订单序列对应的输出隐变量。相应的,根据所述rnn模型的输出结果预测所述当前用户的未来出行类型,可以是:获取不同历史用户对应的历史订单序列和预测订单序列输入至训练好的rnn模型后得到的输出隐变量;对各输出隐变量进行聚类分析,以根据所述当前用户对应的聚类分析结果预测当前用户的未来出行类型。

示例性地,可以采用k-means算法(k-meansclusteringalgorithm,k均值聚类算法)对各输出隐变量进行聚类分析,使得划分结果更为精准。具体的,可以采用以下方式加以实现:

1)预先指定不同的用户出行类型标签(如通勤类、旅游类等),记为c1、c2、…、cn,人工标注部分明显特征的样本,将k-means的簇中心个数k值设置为大于标签的个数,以进行弱标签聚类分析。

2)初始化k-means的簇中心ci,前n个中心的值为各个标签少量标注数据的平均值:

3)迭代更新簇中心ci,直至收敛;

4)交叉验证选取最合适的k值。

需要说明的是,预先指定不同的用户出行类型标签,可以根据用户租用车辆的订单信息进行统计分析得到。示例性地,可以对用户的订单金额、车型座位数、租用天数、起租时间以及出行地点等进行统计,并根据统计结果进行用户出行类型的划分,例如将固定起租时间、固定出行地点、以及固定租用天数等相应的稳定性类型确定为通勤型;将热门起租时间、热门租用时段、以及热门出行地点等非稳定性类型确定为旅游类等。

可以理解的是,当确定当前用户的未来出行类型之后,还可以根据当前用户的未来出行类型,通过共享租车平台向用户进行出行关联信息的推荐,增强用户的平台使用体验。

示例性地,可以对未来出行类型相同类型的其他用户对应的历史订单序列进行特征提取,并根据提取的特征对当前用户进行出行关联信息推荐。其中,出行关联信息可以是旅游出行套餐、旅游所需用品、以及通勤餐饮等。

本发明实施例通过获取当前用户在设定时间段的租用车辆的订单信息,并根据订单信息生成预测订单序列;将预测订单序列输入至预先训练好的rnn模型中,根据rnn模型的输出结果预测当前用户的未来出行信息;未来出行信息包括未来出行规模和/或未来出行类型。上述技术方案通过基于当前用户的订单信息进行预测订单序列的生成,并将预测订单序列输入至rnn模型中,根据模型输出结果进行未来出行规模和未来出行类型的预测,使得在进行未来出行信息预测时能够结合用户多次出行的关联性,进而提高了对用户未来出行信息的预测结果的准确度,从而提升了用户的使用体验。

实施例二

图2是本发明实施例二中的一种用户出行信息预测方法的流程图,本发明实施例在上述各实施例的技术方案的基础上进行了优化改进。

进一步地,在操作“将所述预测订单序列输入至预先训练好的循环神经网络rnn模型中”之前,追加“对预先设定的rnn模型进行模型训练”;相应的,将操作“对预先设定的rnn模型进行模型训练”细化为“获取不同历史用户租用车辆的历史订单信息,并根据所述历史订单信息生成历史订单序列;其中,各所述历史用户对应的历史订单序列中包含至少两个订单信息;将所述历史订单序列作为训练样本,对预先设定的rnn模型进行模型训练”,以完善rnn模型的训练机制。

如图2所示的一种用户出行信息预测方法,包括:

s210、获取不同历史用户租用车辆的历史订单信息,并根据所述历史订单信息生成历史订单序列。

其中,各所述历史用户对应的历史订单序列中包含至少两个订单信息;

其中,历史订单信息可以电子设备本地、与电子设备所关联的其他存储设备或云端中;相应的,获取不同历史用户租用车辆的历史订单信息,可以是在电子设备本地、与电子设备所关联的其他存储设备或云端中,进行历史订单信息的查找获取。示例性地,可以根据不同历史用户的用户标识(例如用户登录共享租车平台的账号信息)进行历史订单信息的查找获取。

其中,历史订单信息包括订单金额、车型座位数、租用天数、起租时间、和出行地点中的至少一种。

由于历史订单信息中可以包含数值型的属性信息(例如订单金额、车型座位数、以及租用天数等),还可以包括非数值型的属性信息(例如起租时间、以及出行地点等)。由于不同历史用户的行为频率和基数不同,为了便于后续基于历史订单信息进行rnn模型的训练,以提高模型精度,需要对不同类型的属性信息进行预处理,以生成历史订单序列,后续根据历史订单序列进行rnn模型的训练。

示例性地,若历史订单信息为数值型,则根据历史订单信息生成历史订单序列,可以是对不同历史用户对应的所述历史订单信息进行归一化处理;根据处理后的历史订单信息生成所述历史订单序列。

可选的,可以采用离差标准化对历史订单信息进行归一化处理,例如可以是在历史订单信息所包含的各订单中,确定历史订单信息所在属性类别对应的最值信息,并根据所确定的最值信息进行离差标准化;或者可选的,还可以在订单信息所包含的各订单中,确定历史订单信息所在属性类别对应的最值信息和均值信息,并根据所确定的最值信息和均值信息进行离差标准化。

以历史订单信息包括车型座位数为例进行说明。采用离差标准化对车型座位数进行归一化处理,可以是获取历史订单信息所包含的不同订单中车型座位数对应的最大值和最小值;针对每一订单中的车型座位数,确定车型座位数与最小值的浮动差值,并确定浮动差值与最大值和最小值之间的差值的比值,将确定的比值作为归一化后得到的车型座位数。或者,获取历史订单信息所包含的不同订单中车型座位数对应的最大值、最小值和平均值;针对每一订单中的车型座位数,确定车型座位数与平均值的浮动差值,并确定浮动差值与最大值和最小值之间的差值的比值,将确定的比值作为归一化处理后得到的车型座位数。

具体的,针对车型座位数对应的历史订单信息,可以采用以下公式进行离差标准化:

其中,x为历史订单信息中车型座位数的数值;x'为归一化处理后得到的车型座位数;xmin和xmax为历史订单信息中各车型座位数的最小值和最大值。

或者,针对车型座位数对应的历史订单信息,还可以采用以下公式进行离差标准化:

其中,x为历史订单信息中车型座位数的数值;x'为归一化处理后得到的车型座位数;xmin和xmax为历史订单信息中各车型座位数的最小值和最大值;μ为历史订单信息中各车型座位数的平均值。

或者可选的,还可以采用均值标准化对历史订单信息进行归一化处理:在历史订单信息所包含的各订单中,确定历史订单信息所在属性类别对应的均值和标准差,并根据所确定的均值和标准差进行均值标准化。其中,属性类别包括订单金额、车型座位数、以及租用天数等。

延续前述示例,继续以历史订单信息包括车型座位数为例进行说明。采用均值标准化对车型座位数进行归一化处理,可以是获取历史订单信息所包含的不同订单中车型座位数对应的均值和标准差;针对每一订单中的车型座位数,确定车型座位数与均值的浮动差值,并确定浮动差值与标准差的比值,将确定的比值作为归一化处理后得到的车型座位数。

具体的,针对车型座位数对应的历史订单信息,可以采用以下公式进行均值标准化:

其中,x为历史订单信息中车型座位数的数值;x'为归一化处理后得到的车型座位数;μ为历史订单信息中各车型座位数的均值;σ为历史订单信息中各车型座位数的标准差。

需要说明的是,由于不同订单中租用车辆的时长不同,因此为了避免租用时长不同导致的订单金额间的显著差异,可以在对订单金额进行归一化处理之前,根据所述订单金额和所述租用天数,确定日均订单金额;相应的,对不同历史用户对应的所述历史订单信息进行归一化处理,可以对不同历史用户对应的所述日均订单金额进行归一化处理。

示例性地,若历史订单信息为非数值型,则根据历史订单信息生成历史订单序列,可以是按照设定规则将所述历史订单信息进行数值转化处理;根据处理后的历史订单信息生成所述历史订单序列。

以历史订单信息包括出行地点为例进行说明。可以将出行地点转化为经纬度坐标,以将非数值型的出行地点进行数值转化;或者还可以将出行地点转化为离散数值点,例如预先设定不同出行地点对应的数值标识,以通过出行地点与数值标识之间的映射关系,将非数值型的出行地点进行数值转化。

需要说明的是,由于历史用户对应的历史订单信息可能不止一笔,为了充分考量同一用户不同订单之间的关联关系,进一步挖掘订单之间的隐藏信息,典型的,在进行rnn模型训练时,所采用的一个历史订单序列中会包含至少二一笔订单。

示例性地,在根根据所述历史订单信息生成历史订单序列时,针对每一历史用户,采用滑动窗口在所述历史用户对应的历史订单信息中选取固定时段对应的候选订单信息;统计各候选订单信息中包含的订单数量,以确定最大订单数量值,并对各候选订单信息进行序列填充,以使各候选订单信息中所包含的订单数量与所述最大订单数量值相等;将填充后的各候选订单信息拼接组合,得到所述历史订单序列。一般的,在进行序列填充时,可以采用“0”值填充或“null”值填充,通过序列填充的方式,能够使不同候选订单信息所包含信息的维度相同。其中,固定时段可以由技术人员根据需要或经验值进行设定,还可以通过大量试验加以确定。

需要说明的是,由于各历史用户对应的历史订单序列中包含至少两个订单信息,使得在rnn模型训练的过程中,能够考虑相同历史用户不同订单之间的关联性,充分进行隐藏信息的挖掘,使得基于历史订单序列所训练的rnn模型的预测结果准确性更优。

s220、将所述历史订单序列作为训练样本,对预先设定的rnn模型进行模型训练。

将大量的历史用户对应的历史订单序列作为训练样本,输入至rnn模型中,得到输出结果;根据模型输出结果与历史订单序列相对应的实际结果,确定损失函数的函数值,并采用梯度回传算法根据损失函数的函数值对rnn模型的模型参数加以调整,直至损失函数的函数值收敛,得到训练好的rnn模型。

s230、获取当前用户在设定时间段的租用车辆的订单信息,并根据所述订单信息生成预测订单序列。

s240、将所述预测订单序列输入至预先训练好的循环神经网络rnn模型中,根据所述rnn模型的输出结果预测所述当前用户的未来出行信息;所述未来出行信息包括未来出行规模和/或未来出行类型。

本发明实施例通过在将预测订单序列输入至预先训练好的rnn模型中之前,追加对预先设定的rnn模型进行模型训练的操作,并将模型训练操作细化为获取不同历史用户租用车辆的历史订单信息,并根据历史订单信息生成历史订单序列;其中,各所述历史用户对应的历史订单序列中包含至少两个订单信息;将历史订单序列作为训练样本,对预先设定的rnn模型进行模型训练,完善了rnn模型的训练机制,使得在rnn模型的训练阶段能够充分考虑同一用户不同订单之间的关联性,进而在使用训练好的rnn模型时,能够结合用户出行之间的关联性,提高了模型输出结果的准确度,从而提升用户的使用体验。

实施例三

图3a是本发明实施例三中的一种用户出行信息预测方法的流程图,本发明实施例在上述各实施例的技术方案的基础上提供了一种优选实施方式。

如图3a所示的一种用户出行信息预测方法,包括:

s310、样本准备阶段;

s320、rnn模型训练阶段;

s330、rnn模型使用阶段。

结合图3b所示的滑动窗口选取订单序列示意图、图3c所示的rnn模型整体架构示意图以及图3d所示的隐变量弱标签聚类分析示意图,对用户出行信息预测方法进行详细说明。

其中,样本准备阶段包括以下步骤:

s311、获取历史用户的历史订单日志。

s312、使用滑动窗口获取一定时间内历史用户的历史订单日志,生成历史订单序列。

参见图3b所示的滑动窗口选取订单序列的示意图,以最近一次订单为滑动窗口起始时间,根据预先设定的时间段t作为滑动窗口的窗口大小,向第一次产生订单的时间方向滑窗,进行历史订单序列的生成。

其中,历史订单序列中包括订单金额、车型座位数、租用天数、起租时间、以及起租地点等属性信息。

s313、将历史订单序列中的订单金额转化为日均订单金额。

s314、将转化后的历史订单序列中的数值型属性信息进行归一化处理。

考虑到每个用户的行为频率和基数的不同,需要对历史订单序列中数值型属性信息进行归一化处理。针对同一历史用户的每种数值型属性信息,根据以下公式进行归一化处理:

其中,x为历史订单信息中同种数值型属性信息的数值;x'为归一化处理后得到的同种数值型属性信息的数值;xmin和xmax为历史订单信息中同种数值型属性信息的数值中的最小值和最大值。

s315、将归一化后的历史订单序列中非数值型属性信息进行数值转化处理。

其中s314和s315可以同时进行,也可以分别进行,对s314和s315的先后顺序不做任何限定。

s316、对处理后的历史订单序列进行序列填充,使各历史订单序列长度相同。

由于固定时间t内订单序列所包含的订单数量通常不同,取最长序列长度(也即最大订单数量)n作为rnn网络输入的步长,对长度不足n的订单序列进行序列填充,使得最终得到等长的序列样本。其中,序列填充可以是填“0”操作。

s317、将填充后的历史订单序列划分为训练集、验证集和测试集。

可以将历史订单序列组成的数据集进行划分,选取80%作为训练集,10%作为验证集,10%作为测试集。

s321、选取合适的超参进行模型训练。

选取合适的学习率α进行训练,通过交叉验证进行优化,根据模型在验证集上的损失表现,调整选择最优的学习率α。

s322、将训练集中的训练样本输入至待训练的rnn模型中,计算损失优化模型。

参见图3c所示的rnn模型整体架构示意图。训练样本的特征序列为[xi1,xi2,…,xik],其中xik表示第i个用户第k个滑动窗口在固定时间t对应的历史订单序列,xik包含有n个订单对应的订单信息。rnn网络隐藏层状态更新如下:

ht=σ(uxt+wht-1+b);

输出层计算:

ot=vht+c;

其中,u、w、v为rnn参数,b和c为偏置,σ为激活函数,ot为隐藏层所输出的隐变量,若输出特征为离散型,则需要使用softmax函数进行处理,否则作为回归值输出。随后根据模型输出结果与真实值计算损失函数,进行梯度回传更新rnn网络参数。

s331、将待测订单序列输入至rnn网络得到输出结果。

其中,输出结果包括预测的未来出行规模和rnn网络输出的隐变量。

其中,未来出行规模包括订单金额、车型座位数、租用天数、起租时间、以及起租地点等。

其中,待测订单序列[x1,x2,…,xk]输入至训练好rnn网络,获取输出:

ht=σ(uxt+wht-1+b);

获取输出隐变量:

ot=vht+c;

使用softmax函数获得特征输出,若输出特征为离散值,使用softmax函数进行计算:

s332、使用k-means对当前用户和历史用户输出的隐变量进行聚类分析。

参见图3d所示的隐变量弱标签聚类分析示意图。

首先,对历史用户的历史订单序列中的订单金额、车型座位数、租车天数、起租时间、以及出行地点等进行统计,划分出用户出行类型。如通勤类(稳定性,固定时间地点,天数短),旅游类(异地,热门时间段,天数长)等。标准包括但不限于上述两种,结合具体的业务需求而制定不同的划分标准。

其次,针对上述用户出行类型,制定不同用户出行类型标签,记为c1、c2、…、cn,人工标注部分明显特征的样本,将k-means的簇中心个数k值设为大于标签的个数。

然后,初始化k-means的簇中心ci,前n个中心的值为各个标签少量标注数据的平均值:

再者,迭代更新簇中心ci,直至收敛;

最终,交叉验证选取最合适的k值。

s333、对各类样本进行特征分析,根据分析的结果进行关联信息推荐。

实施例四

图4是本发明实施例四中的一种用户出行信息预测装置的结构图,本发明实施例适用于共享租车平台基于用户的历史出行信息对用户即将产生的出行规模以及出行类型等进行预测的情况。该装置采用软件和/或硬件实现,并具体配置于具备一定数据运算能力的电子设备中,其中电子设备可以是服务器或个人电脑。

如图4所示的一种用户出行信息预测装置,包括:预测订单序列生成模块410和未来出行信息确预测模块420。

其中,预测订单序列生成模块410,用于获取当前用户在设定时间段的租用车辆的订单信息,并根据所述订单信息生成预测订单序列;

未来出行信息预测模块420,用于将所述预测订单序列输入至预先训练好的循环神经网络rnn模型中,根据所述rnn模型的输出结果预测所述当前用户的未来出行信息;所述未来出行信息包括未来出行规模和/或未来出行类型。

本发明实施例通过预测订单序列生成模块获取当前用户在设定时间段的租用车辆的订单信息,并根据订单信息生成预测订单序列;通过未来出行信息确定模块将预测订单序列输入至预先训练好的rnn模型中,根据rnn模型的输出结果预测当前用户的未来出行信息;未来出行信息包括未来出行规模和/或未来出行类型。上述技术方案通过基于当前用户的订单信息进行预测订单序列的生成,并将预测订单序列输入至rnn模型中,根据模型输出结果进行未来出行规模和未来出行类型的预测,使得在进行未来出行信息预测时能够结合用户多次出行的关联性,进而提高了对用户未来出行信息的预测结果的准确度,从而提升了用户的使用体验。

进一步地,该装置还包括模型训练模块,用于:

在将所述预测订单序列输入至预先训练好的循环神经网络rnn模型中之前,对预先设定的rnn模型进行模型训练;

进一步地,模型训练模块,包括:

历史订单序列获取单元,用于获取不同历史用户租用车辆的历史订单信息,并根据所述历史订单信息生成历史订单序列;其中,各所述历史用户对应的历史订单序列中包含至少两个订单信息;

模型训练单元,用于将所述历史订单序列作为训练样本,对预先设定的rnn模型进行模型训练。

进一步地,所述历史订单信息包括订单金额、车型座位数、租用天数、起租时间、和出行地点中的至少一种。

进一步地,历史订单序列获取单元,在执行根据所述历史订单信息生成历史订单序列时,包括:

候选订单信息选取子单元,用于针对每一历史用户,采用滑动窗口在所述历史用户对应的历史订单信息中选取固定时段对应的候选订单信息;

序列填充子单元,用于统计各候选订单信息中包含的订单数量,以确定最大订单数量值,并对各候选订单信息进行序列填充,以使各候选订单信息中所包含的订单数量与所述最大订单数量值相等;

拼接组合子单元,用于将填充后的各候选订单信息拼接组合,得到所述历史订单序列。

进一步地,历史订单序列获取单元,在执行根据所述历史订单信息生成历史订单序列时,包括:

归一化处理子单元,用于在所述历史订单信息为数值型时,对不同历史用户对应的所述历史订单信息进行归一化处理;

历史订单序列生成子单元,用于根据处理后的历史订单信息生成所述历史订单序列。

进一步地,若所述历史订单信息包括所述订单金额和所述租用天数,则历史订单序列获取单元,还包括:

日均订单金额确定单元,用于在对不同历史用户对应的所述历史订单信息进行归一化处理之前,根据所述订单金额和所述租用天数,确定日均订单金额;

相应的,归一化处理子单元在执行对不同历史用户对应的所述历史订单信息进行归一化处理时,具体用于:

对不同历史用户对应的所述日均订单金额进行归一化处理。

进一步地,历史订单序列获取单元,在执行根据所述历史订单信息生成历史订单序列时,包括:

数值转化子单元,用于在所述历史订单信息为非数值型时,按照设定规则将所述历史订单信息进行数值转化处理;

历史订单序列生成子单元,用于根据处理后的历史订单信息生成所述历史订单序列。

进一步地,未来出行信息预测模块420,在执行根据所述rnn模型的输出结果预测所述当前用户的未来出行信息时,包括:

输出隐变量得到单元,用于获取不同历史用户对应的历史订单序列和所述预测订单序列输入至训练好的rnn模型后得到输出隐变量;

聚类分析单元,用于对各输出隐变量进行聚类分析,以根据所述当前用户对应的聚类分析结果预测所述当前用户的未来出行类型。

进一步地,该装置还包括信息推荐模块,用于:

在确定所述当前用户的未来出行类型之后,对与所述未来出行类型相同类型的其他用户对应的历史订单序列进行特征提取,并根据提取的特征对所述当前用户进行出行关联信息推荐。

上述用户出行信息预测装置可执行本发明任意实施例所提供的用户出行信息预测方法,具备执行用户出行信息预测方法相应的功能模块和有益效果。

实施例五

图5是本发明实施例五中的一种电子设备的结构图。该电子设备可以是服务器。如图5所示的电子设备,包括:输入装置510、处理器520以及存储装置530。

其中,输入装置510,用于获取当前用户在设定时间段的租用车辆的订单信息;

一个或多个处理器520;

存储装置530,用于存储一个或多个程序。

图5中以一个处理器520为例,该电子设备中的输入装置510可以通过总线或其他方式与、处理器520以及存储装置530相连,且处理器520和存储装置530也通过总线或其他方式连接,图5中以通过总线连接为例。

在本实施例中,电子设备中的处理器520可以控制输入装置510获取当前用户在设定时间段的租用车辆的订单信息;还可以根据所述订单信息生成预测订单序列;还可以将所述预测订单序列输入至预先训练好的循环神经网络rnn模型中,根据所述rnn模型的输出结果预测所述当前用户的未来出行信息;所述未来出行信息包括未来出行规模和/或未来出行类型。

该电子设备中的存储装置530作为一种计算机可读存储介质,可用于存储一个或多个程序,所述程序可以是软件程序、计算机可执行程序以及模块,如本发明实施例中用户出行信息预测方法对应的程序指令/模块(例如,附图4所示的预测订单序列生成模块410和未来出行信息预测模块420)。处理器520通过运行存储在存储装置530中的软件程序、指令以及模块,从而执行电子设备的各种功能应用以及数据处理,即实现上述方法实施例中的用户出行信息预测方法。

存储装置530可包括存储程序区和存储数据区,其中,存储程序区可存储操作系统、至少一个功能所需的应用程序;存储数据区可存储数据等(如上述实施例中的预测订单序列、训练好的rnn模型以及未来出行信息等)。此外,存储装置530可以包括高速随机存取存储器,还可以包括非易失性存储器,例如至少一个磁盘存储器件、闪存器件、或其他非易失性固态存储器件。在一些实例中,存储装置530可进一步包括相对于处理器520远程设置的存储器,这些远程存储器可以通过网络连接至服务器。上述网络的实例包括但不限于互联网、企业内部网、局域网、移动通信网及其组合。

实施例六

本发明实施例六还提供一种计算机可读存储介质,其上存储有计算机程序,该程序被用户出行信息预测装置执行时实现本发明实施提供的一种用户出行信息预测方法,包括:获取当前用户在设定时间段的租用车辆的订单信息,并根据所述订单信息生成预测订单序列;将所述预测订单序列输入至预先训练好的循环神经网络rnn模型中,根据所述rnn模型的输出结果预测所述当前用户的未来出行信息;所述未来出行信息包括未来出行规模和/或未来出行类型。

通过以上关于实施方式的描述,所属领域的技术人员可以清楚地了解到,本发明可借助软件及必需的通用硬件来实现,当然也可以通过硬件实现,但很多情况下前者是更佳的实施方式。基于这样的理解,本发明的技术方案本质上或者说对现有技术做出贡献的部分可以以软件产品的形式体现出来,该计算机软件产品可以存储在计算机可读存储介质中,如计算机的软盘、只读存储器(read-onlymemory,rom)、随机存取存储器(randomaccessmemory,ram)、闪存(flash)、硬盘或光盘等,包括若干指令用以使得一台计算机设备(可以是个人计算机,服务器,或者网络设备等)执行本发明各个实施例所述的方法。

注意,上述仅为本发明的较佳实施例及所运用技术原理。本领域技术人员会理解,本发明不限于这里所述的特定实施例,对本领域技术人员来说能够进行各种明显的变化、重新调整和替代而不会脱离本发明的保护范围。因此,虽然通过以上实施例对本发明进行了较为详细的说明,但是本发明不仅仅限于以上实施例,在不脱离本发明构思的情况下,还可以包括更多其他等效实施例,而本发明的范围由所附的权利要求范围决定。

当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1