一种因果样本构建方法、服务器及存储介质与流程

文档序号:35089255发布日期:2023-08-10 01:33阅读:29来源:国知局
一种因果样本构建方法、服务器及存储介质与流程

本技术涉及数据处理,尤其涉及一种因果样本构建方法、服务器及存储介质。


背景技术:

1、用户使用电子设备的过程中,用户行为使得电子设备的窗口内容、网络状态、地理位置、运动状态等发生变化,产生了设备事件,设备事件包括窗口内容变化事件、网络状态变化事件、地理位置变化事件、运动状态变化事件等。上述设备事件之间可能存在因果关系,即一些设备事件可能导致另一些设备事件发生。以用户的地理位置发生变化后,用户执行了付款操作为例,地理位置变化事件会导致窗口内容变化事件发生,该地理位置变化事件为原因事件,该窗口内容变化事件为结果事件,原因事件和结果事件构成了因果样本。从海量设备事件中提取具有因果关系的设备事件构成因果样本,能够用于训练目标事件预测模型。目标事件预测模型基于电子设备上已发生的原因事件预测电子设备上将发生的结果事件,为电子设备侧提供参考,使电子设备侧提供与该结果事件相关的推送服务。而如何构建因果样本是目前亟待解决的问题。


技术实现思路

1、本技术提供一种因果样本构建方法、服务器及存储介质,能够从电子设备采集的设备事件中获取原因事件和结果事件并构建因果样本。

2、第一方面,本技术提供一种因果样本构建方法,应用于服务器,服务器包括待训练的目标事件预测模型,目标事件预测模型用于基于电子设备上已发生的设备事件预测电子设备上将发生的设备事件,以触发电子设备进行信息推送。设备事件包括电子设备按事件类型划分的窗口内容变化事件、网络状态变化事件、地理位置变化事件以及运动状态变化事件中的至少一种。该方法中,服务器获取电子设备采集的多个设备事件,并获取目标事件预测模型进行推理预测将发生的设备事件的预测时刻。如果从预测时刻开始的第二时长内的第一设备事件为预设触发事件,则服务器从多个设备事件中获取预测时刻前第一时长内电子设备采集的设备事件,得到至少一个原因事件;以及从多个设备事件中获取从预设时刻开始到第一设备事件的事件发生时刻之间的时段内电子设备采集的设备事件,得到至少一个结果事件。然后服务器以至少一个原因事件与至少一个结果事件构建用于训练目标事件预测模型的一个目标因果样本。

3、本方案中通过从设备事件中获取原因事件和结果事件构建了目标因果样本。其中原因事件的事件发生时刻和预测时刻之间的时长在第一时长内,结果事件的事件发生时刻和预测时刻之间的时长在第二时长内,通过预测时刻,第一时长和第二时长实现了对发生的太早或太晚的设备事件的过滤,从而控制输出的设备事件的数量,避免查询得到的设备事件太多浪费计算资源。

4、其中,上述发生的太早是指设备事件早于预测时刻发生且设备事件的事件发生时刻和预测时刻之间的时长大于第一时长,上述发生的太晚是指设备事件晚于预测时刻发生且设备事件的事件发生时刻和预测时刻之间的时长大于第二时长。

5、在第一方面的另一种可能的设计方式中,上述从多个设备事件中获取预测时刻前第一时长内电子设备采集的设备事件,得到至少一个原因事件,包括:服务器按照多个设备事件的事件发生时刻的先后顺序,依次将多个设备事件插入事件缓存队列。如果事件缓存队列中队尾的设备事件的事件发生时刻与事件缓存队列中队头的设备事件的事件发生时刻之间的差值大于或等于第一时长,则服务器对事件缓存队列中队头的设备事件执行出队操作。如果事件缓存队列中队尾的设备事件的事件发生时刻为预测时刻,则服务器将事件缓存队列中的所有设备事件作为原因事件,得到至少一个原因事件。

6、该设计方式下,服务器利用队列先进先出的特点将查询得到的设备事件按时间的先后顺序插入事件缓存队列中,先发生的设备事件先入队也先出队,后发生的设备事件后入队也后出队。所以距离预测时刻前越早发生的设备事件将越早出队,当事件缓存队列中队尾的设备事件的事件发生时刻为预测时刻,服务器已经将发生在预测时刻前且距离预测时刻的时长超过第一时长的设备事件全部剔除。因为剔除的是太早发生所以对模型训练效果起到的作用较小的设备事件,所以获取到的设备事件可作为原因事件。通过事件缓存队列提高了从设备事件中筛选原因事件的效率。

7、在第一方面的另一种可能的设计方式中,上述从多个设备事件中获取从预设时刻开始到第一设备事件的事件发生时刻之间的时段内电子设备采集的设备事件,得到至少一个结果事件,包括:服务器按照多个设备事件的事件发生时刻的先后顺序,依次将多个设备事件插入事件缓存队列。如果事件缓存队列中队尾的设备事件为预设触发事件,且队尾的设备事件的事件发生时刻与预测时刻之间的差值小于第二时长,则服务器从事件缓存队列中将事件发生时刻在预测时刻和队尾的设备事件的事件发生时刻之间的设备事件与队尾的设备事件都作为结果事件,得到至少一个结果事件。

8、在第一方面的另一种可能的设计方式中,该方法还包括:如果从预测时刻开始的第二时长内的设备事件都不为预测触发事件,则服务器获取从预测时刻开始的第二时长内的电子设备采集的设备事件,得到至少一个结果事件。

9、在第一方面的另一种可能的设计方式中,上述如果从预测时刻开始的第二时长内的设备事件都不为预测触发事件,则获取从预测时刻开始的第二时长内的电子设备采集的设备事件,得到至少一个结果事件,包括:服务器按照多个设备事件的事件发生时刻的先后顺序,依次将多个设备事件插入事件缓存队列。如果事件缓存队列中队尾的设备事件的事件发生时刻是结束时刻且队尾的设备事件不为预测触发事件,则服务器从事件缓存队列中将事件发生时刻在预测时刻和队尾的设备事件的事件发生时刻之间的设备事件作为结果事件,得到至少一个结果事件。其中,结束时刻是预测时刻后的时刻且结束时刻与预测时刻之间的差值是第二时长。

10、在第一方面的另一种可能的设计方式中,在获取电子设备采集的多个设备事件之前,该方法还包括:服务器获取用于训练事件预测模型的多个因果样本的结构特点信息。其中,每个因果样本包括多个设备事件,每个因果样本的结构特点信息包括:因果样本中的每个设备事件结构化处理后得到多个特征项;多个特征项包括:设备事件的用户标识、设备事件的事件发生时刻以及设备事件的事件内容;其中,事件内容包含至少一个特征数据,且不同事件类型的设备事件的事件内容中包含的特征数据的数据类型不同。服务器根据因果样本的结构特点信息,设置因果样本的属性;其中,因果样本中,用户标识的属性是字符串,事件发生时刻的属性是时间戳以及事件内容的属性是对象;其中,因果样本的属性用于确定设备事件对应的多个特征项中的每个特征项的存储类型。然后服务器按照设置的因果样本的属性,将电子设备采集的设备事件存储至原始数据表中。其中,原始数据表包括多个字段,多个字段包括用户标识字段、事件发生时刻字段和事件内容字段,用户标识字段用于存储属性是字符串的用户标识,事件发生时刻字段用于存储属性是时间戳的事件发生时刻,事件内容字段用于存储属性是对象的事件内容。

11、该设计方式下,服务器将包含多个不同数据类型的特征数据的事件内容的属性设置为对象,使得事件内容中的各个特征数据被关联。那么在查询事件内容中的多个特征数据时,不必分别查询各个特征数据再对查询结果做关联计算,而是先查询事件内容,再查询事件内容中的各个特征数据。因此在构建包含事件内容的因果样本时,构建效率更高。为各个特征项设置了属性后,把属性是字符串的用户标识存在用户标识字段里,把属性是时间戳的事件发生时刻存在事件发生时刻字段里,把属性是对象的事件内容存在事件内容字段里。也就是说事件内容中的各个特征数据被存储于同一个字段中,那么在查询时通过查询事件内容字段可查询到事件内容中的所有特征数据,因此查询效率更高。查询得到的设备事件能被用于构建用来训练上述待训练目标事件预测模型的因果样本,因此构建因果样本的效率更高。

12、在第一方面的另一种可能的设计方式中,上述获取电子设备采集的多个设备事件,包括:服务器获取查询语句,查询语句包括查询列表和至少一个判断式。查询列表包括至少一个待查询特征项的名称以及每个待查询特征项中至少一个待查询特征数据的名称,至少一个待查询特征项包括用户标识、事件发生时刻、事件内容中的至少一项。至少一个判断式包括第一判断式和/或第二判断式,第一判断式用于指示判断事件内容是否存在,第二判断式用于指示判断特征项与常数的大小关系。服务器从多个特征项中查询待查询事件内容的名称指示的事件内容字段中的至少一个第一事件内容,再从第一事件内容中查询待查询特征数据的名称对应的至少一个第一特征数据。然后服务器从至少一个第一特征数据中筛选符合至少一个判断式的至少一个目标特征数据,得到包括至少一个目标特征数据的设备事件。

13、该设计方式下,获取服务器查询语句后,可直接通过查询语句中的待查询事件内容的名称指示的查询事件内容字段查询到事件内容中的所有特征数据,而不必先单独查询各个特征数据再对查询结果做关联计算,因此查询效率更高。服务器查询到第一特征数据后,通过判断式对查询到的第一特征数据进行筛选,得到的是包含符合判断式的目标特征数据的设备事件,从而实现了对符合至少一个判断式的设备事件的查询。

14、在第一方面的另一种可能的设计方式中,在设置因果样本的属性之前,该方法还包括:服务器从每个设备事件中获取描述事件内容的多个特征数据的数据类型。上述事件内容的属性是对象,包括:如果存在任一设备事件中,描述事件内容的多个特征数据中任意两个特征数据的数据类型不同,则以对象作为每个设备事件的事件内容的属性。

15、在第一方面的另一种可能的设计方式中,事件内容为wi-fi状态事件内容,描述wi-fi状态事件内容的特征数据包括wi-fi名称、wi-fi事件类型、wi-fi强度和wi-fi基础服务集。上述从设备事件中获取描述事件内容的多个特征数据的数据类型,包括:服务器获取wi-fi名称、wi-fi事件类型、wi-fi强度和wi-fi基础服务集的数据类型,得到wi-fi名称对应的数据类型为时间戳,wi-fi事件类型对应的数据类型为字符串,wi-fi强度对应的数据类型为整型以及wi-fi基础服务集的数据类型为字符串。上述如果存在任一设备事件中,描述事件内容的多个特征数据中任意两个特征数据的数据类型不同,则以对象作为每个设备事件的事件内容的属性,包括:wi-fi状态事件的wi-fi名称、wi-fi事件类型、wi-fi强度和wi-fi基础服务集中,wi-fi名称的数据类型、wi-fi事件类型的数据类型和wi-fi强度的数据类型各不相同,服务器确定以对象作为设备事件的wi-fi状态事件内容的属性。

16、以设备事件的事件内容为wi-fi状态事件内容为例,先获取事件内容中各个特征数据的数据类型,在特征数据有多个,且存在任意两个特征数据的数据类型不同的情况下,将wi-fi状态事件内容的属性确定为对象。那么wi-fi状态事件内容中的wi-fi名称、wi-fi事件类型、wi-fi强度和wi-fi基础服务集可被存储于属性为对象的wi-fi状态事件内容字段中,在查询任一特征数据时,先查询wi-fi状态事件内容字段,再查询wi-fi状态事件内容字段中的某个特征数据使得查询效率更高。

17、在第一方面的另一种可能的设计方式中,该方法还包括:为特征项设置常数和操作符,常数和操作符用于与特征项组成判断式。

18、除了根据因果样本的结构特点构建各个特征项的属性之外,服务器还为各个特征项设置了常数和操作符,用于和特征项组成判断式,通过判断式可以对原始数据表中的数据进行筛选。

19、在第一方面的另一种可能的设计方式中,上述从至少一个第一特征数据中筛选符合至少一个判断式的至少一个目标特征数据,得到包括至少一个目标特征数据的设备事件,包括:服务器从至少一个第一特征数据中筛选符合至少一个判断式的至少一个目标特征数据得到多个第二设备事件。然后从多个第二设备事件中查询第二设备事件的事件发生时刻靠近预测时刻的n个第二设备事件,得到多个设备事件,其中,n为样本数量上限值。

20、该设计方式下,通过样本数量上限值能够控制输出的设备事件的数量,避免查询得到的设备事件太多浪费计算资源。样本数量上限值剔除预测时刻前较早发生的设备事件,只保留与预测时刻前后较接近的时刻发生的设备事件,与预测时刻前后较接近的时刻发生的设备事件对预测时刻预测出准确的结果事件的作用大。

21、第二方面,本技术提供一种服务器,包括:处理器、通信模块和用于存储处理器可执行指令的存储器,服务器通过通信模块接收电子设备发送的设备事件,处理器被配置为执行指令时,使得服务器实现如第一方面及其任一种可能的设计方式所述的方法。

22、第三方面,本技术提供一种计算机可读存储介质,包括计算机指令,当计算机指令在服务器上运行时,使得服务器执行如第一方面及其任一种可能的设计方式所述的方法。

23、第四方面,本技术提供一种计算机程序产品,当所述计算机程序产品在服务器上运行时,使得所述服务器执行如第一方面及其任一种可能的设计方式所述的方法。

24、可以理解地,上述提供的第二方面的服务器,第三方面的计算机可读存储介质以及第四方面的计算机程序产品的有益效果,可参考第一方面及其任一种可能的实施方式中的有益效果,此处不再赘述。

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