CN116226519A - 用户行为分析方法、装置、电子设备及存储介质 - Google Patents
用户行为分析方法、装置、电子设备及存储介质 Download PDFInfo
- Publication number
- CN116226519A CN116226519A CN202310123846.3A CN202310123846A CN116226519A CN 116226519 A CN116226519 A CN 116226519A CN 202310123846 A CN202310123846 A CN 202310123846A CN 116226519 A CN116226519 A CN 116226519A
- Authority
- CN
- China
- Prior art keywords
- sequence
- user behavior
- user
- window
- behaviors
- 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.)
- Pending
Links
- 238000004458 analytical method Methods 0.000 title claims abstract description 58
- 230000006399 behavior Effects 0.000 claims abstract description 926
- 238000006243 chemical reaction Methods 0.000 claims abstract description 190
- 238000000034 method Methods 0.000 claims abstract description 44
- 238000012545 processing Methods 0.000 claims abstract description 9
- 230000009466 transformation Effects 0.000 description 34
- 238000010586 diagram Methods 0.000 description 16
- 238000004364 calculation method Methods 0.000 description 14
- 230000014759 maintenance of location Effects 0.000 description 8
- 238000012360 testing method Methods 0.000 description 7
- 238000004891 communication Methods 0.000 description 6
- 238000013461 design Methods 0.000 description 2
- 238000011161 development Methods 0.000 description 2
- 230000018109 developmental process Effects 0.000 description 2
- 238000012544 monitoring process Methods 0.000 description 2
- 238000003491 array Methods 0.000 description 1
- 238000005516 engineering process Methods 0.000 description 1
- 238000011160 research Methods 0.000 description 1
- 230000011218 segmentation Effects 0.000 description 1
- 238000007619 statistical method Methods 0.000 description 1
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F16/00—Information retrieval; Database structures therefor; File system structures therefor
- G06F16/90—Details of database functions independent of the retrieved data types
- G06F16/95—Retrieval from the web
- G06F16/953—Querying, e.g. by the use of web search engines
- G06F16/9535—Search customisation based on user profiles and personalisation
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F16/00—Information retrieval; Database structures therefor; File system structures therefor
- G06F16/20—Information retrieval; Database structures therefor; File system structures therefor of structured data, e.g. relational data
- G06F16/24—Querying
- G06F16/245—Query processing
- G06F16/2458—Special types of queries, e.g. statistical queries, fuzzy queries or distributed queries
- G06F16/2474—Sequence data queries, e.g. querying versioned data
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F16/00—Information retrieval; Database structures therefor; File system structures therefor
- G06F16/90—Details of database functions independent of the retrieved data types
- G06F16/906—Clustering; Classification
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F16/00—Information retrieval; Database structures therefor; File system structures therefor
- G06F16/90—Details of database functions independent of the retrieved data types
- G06F16/95—Retrieval from the web
- G06F16/953—Querying, e.g. by the use of web search engines
- G06F16/9537—Spatial or temporal dependent retrieval, e.g. spatiotemporal queries
-
- Y—GENERAL TAGGING OF NEW TECHNOLOGICAL DEVELOPMENTS; GENERAL TAGGING OF CROSS-SECTIONAL TECHNOLOGIES SPANNING OVER SEVERAL SECTIONS OF THE IPC; TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
- Y02—TECHNOLOGIES OR APPLICATIONS FOR MITIGATION OR ADAPTATION AGAINST CLIMATE CHANGE
- Y02D—CLIMATE CHANGE MITIGATION TECHNOLOGIES IN INFORMATION AND COMMUNICATION TECHNOLOGIES [ICT], I.E. INFORMATION AND COMMUNICATION TECHNOLOGIES AIMING AT THE REDUCTION OF THEIR OWN ENERGY USE
- Y02D10/00—Energy efficient computing, e.g. low power processors, power management or thermal management
Landscapes
- Engineering & Computer Science (AREA)
- Databases & Information Systems (AREA)
- Theoretical Computer Science (AREA)
- Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Data Mining & Analysis (AREA)
- Fuzzy Systems (AREA)
- Mathematical Physics (AREA)
- Probability & Statistics with Applications (AREA)
- Software Systems (AREA)
- Computational Linguistics (AREA)
- Debugging And Monitoring (AREA)
Abstract
本发明实施例涉及数据处理技术领域,公开了一种用户行为分析方法、装置、电子设备及存储介质,该方法包括:获取用户行为序列,用户行为序列包括多个用户行为,以及各用户行为的发生时间;根据多个用户行为的预设发生顺序,确定用户行为序列中第一用户行为的数量,以及至少一个第二用户行为的总数量;若第一用户行为的数量大于或等于至少一个第二用户行为的总数量,则根据第三用户行为对用户行为序列进行窗口划分,得到第一窗口序列,第三用户行为是至少一个第二用户行为中的任意一个用户行为;根据第一窗口序列中的各用户行为,确定用户行为序列对应的转化信息。应用本发明的技术方案,能够提高用户行为序列的分析效率,节约计算机资源。
Description
技术领域
本发明实施例涉及数据处理技术领域,具体涉及一种用户行为分析方法、装置、电子设备及存储介质。
背景技术
随着互联网技术等的发展,许多业务从线下办理转为了线上办理,这为用户提供了极大的便利,并且也使得用户的行为数据得以保存,使得业务提供方可以依据用户的行为数据分析用户的个人喜好,从而不断优化业务内容,为用户提供更为优质的服务。
其中,漏斗分析是一种分析多步骤过程中每个步骤的用户转化和流失情况的方法。该方法可以帮助业务提供方快速掌握一段时间内产品在各个步骤环节中的转化情况,使其可以定位用户流失的环节和原因。由于该方法具备快速定位问题、多维度切分分析和监控漏斗转化趋势的优势,目前已经广泛应用于网站、应用程序的用户行为分析中。然而,随着业务内容的不断丰富,业务流程和转化步骤也会不断增多,如何提高采用漏斗分析方法分析用户行为的效率成为目前的研究重点。
发明内容
鉴于上述问题,本发明实施例提供了一种用户行为分析方法、装置、电子设备及存储介质,用于解决现有技术中存在的用户行为分析效率不高的问题。
根据本发明实施例的一个方面,提供了一种用户行为分析方法,所述方法包括:获取用户行为序列,所述用户行为序列包括多个用户行为,以及各所述用户行为的发生时间;根据所述多个用户行为的预设发生顺序,确定所述用户行为序列中第一用户行为的数量,以及至少一个第二用户行为的总数量;其中,所述第二用户行为是预设发生顺序晚于所述第一用户行为的预设发生顺序的任意一个用户行为;若所述第一用户行为的数量大于或等于至少一个所述第二用户行为的总数量,则根据第三用户行为对所述用户行为序列进行窗口划分,得到第一窗口序列,所述第三用户行为是所述至少一个第二用户行为中的任意一个用户行为,所述第一窗口序列包括所述第一用户行为;根据所述第一窗口序列中的各用户行为,确定所述用户行为序列对应的转化信息,所述转化信息包括转化深度和转化时长中的至少一项。
在一种可选的方式中,所述用户行为序列中的所述多个用户行为按照各用户行为的发生时间从早到晚排列,所述根据第三用户行为对所述用户行为序列进行窗口划分,得到第一窗口序列,包括:将用户行为序列中的所述多个用户行为按照各用户行为的发生时间从晚到早排列,得到所述用户行为序列的逆序列;在所述逆序列中以每个所述第三用户行为为所述第一窗口序列中的第一个用户行为,按照预设窗口长度对所述逆序列进行划分,得到至少一个所述第一窗口序列。
在一种可选的方式中,所述用户行为序列中的所述多个用户行为按照各用户行为的发生时间从早到晚排列,所述根据第三用户行为对所述用户行为序列进行窗口划分,得到第一窗口序列,包括:在所述用户行为序列中以每个所述第三用户行为为所述第一窗口序列中的最后一个用户行为,按照预设窗口长度对所述用户行为序列进行划分,得到至少一个所述第一窗口序列。
在一种可选的方式中,所述根据所述第一窗口序列中的各用户行为,确定所述用户行为序列对应的转化信息,包括:对所述第一窗口序列中的各用户行为的发生时间进行排列,得到至少一个时间序列;根据所述至少一个时间序列,确定发生时间符合所述预设发生顺序的目标用户行为序列,其中,所述目标用户行为序列中任意相邻两个用户行为是所述预设发生顺序中任意相邻的两个用户行为,且所述目标用户行为序列包括所述第一用户行为;根据所述目标用户行为序列中包括的各用户行为数量和/或各用户行为的发生时间,确定所述用户行为序列对应的转化信息。
在一种可选的方式中,所述根据所述目标用户行为序列中包括的用户行为数量和/或各用户行为的发生时间,确定所述用户行为序列对应的转化信息,包括:若所述目标用户行为序列中包括的用户行为数量等于预设转化深度,则将所述用户行为序列对应的转化深度确定为所述预设转化深度,将所述目标用户行为序列中最晚发生时间与最早发生时间之间的差值确定为所述用户行为序列对应的转化时长。
在一种可选的方式中,所述根据所述目标用户行为序列中包括的用户行为数量和/或各用户行为的发生时间,确定所述用户行为序列对应的转化信息,包括:若所述目标用户行为序列中包括的用户行为数量小于预设转化深度,则根据第四用户行为对所述用户行为序列进行窗口划分,得到第二窗口序列,所述第四用户行为是所述多个用户行为中预设发生顺序早于所述第三用户行为的预设发生顺序的用户行为,所述第二窗口序列包括所述第一用户行为;根据所述第二窗口序列中的各用户行为,确定所述用户行为序列对应的转化信息。
在一种可选的方式中,所述方法还包括:若所述第一用户行为的数量小于所述至少一个所述第二用户行为的总数量,则根据所述第一用户行为对所述用户行为序列进行窗口划分,得到第三窗口序列;根据所述第三窗口序列中的各用户行为,确定所述用户行为序列对应的转化信息。
根据本发明实施例的另一方面,提供了一种用户行为分析装置,所述装置包括:获取模块,用于获取用户行为序列,所述用户行为序列包括多个用户行为,以及各所述用户行为的发生时间;第一确定模块,用于根据所述多个用户行为的预设发生顺序,确定所述用户行为序列中第一用户行为的数量,以及至少一个第二用户行为的总数量;其中,所述第一用户行为是所述多个用户行为中预设发生顺序最早的用户行为,所述第二用户行为是预设发生顺序晚于所述第一用户行为的预设发生顺序的任意一个用户行为;划分模块,用于若所述第一用户行为的数量大于或等于至少一个所述第二用户行为的总数量,则根据第三用户行为对所述用户行为序列进行窗口划分,得到第一窗口序列,所述第三用户行为是所述至少一个第二用户行为中的任意一个用户行为,所述第一窗口序列包括所述第一用户行为;第二确定模块,用于根据所述第一窗口序列中的各用户行为,确定所述用户行为序列对应的转化信息,所述转化信息包括转化深度和转化时长中的至少一项。
在一种可选的方式中,所述用户行为序列中的所述多个用户行为按照各用户行为的发生时间从早到晚排列,所述划分模块用于将用户行为序列中的所述多个用户行为按照各用户行为的发生时间从晚到早排列,得到所述用户行为序列的逆序列,在所述逆序列中以每个所述第三用户行为为所述第一窗口序列中的第一个用户行为,按照预设窗口长度对所述逆序列进行划分,得到至少一个所述第一窗口序列。
在一种可选的方式中,所述用户行为序列中的所述多个用户行为按照各用户行为的发生时间从早到晚排列,所述划分模块用于在所述用户行为序列中以每个所述第三用户行为为所述第一窗口序列中的最后一个用户行为,按照预设窗口长度对所述用户行为序列进行划分,得到至少一个所述第一窗口序列。
在一种可选的方式中,所述第二确定模块用于对所述第一窗口序列中的各用户行为的发生时间进行排列,得到至少一个时间序列,根据所述至少一个时间序列,确定发生时间符合所述预设发生顺序的目标用户行为序列,其中,所述目标用户行为序列中任意相邻两个用户行为是所述预设发生顺序中任意相邻的两个用户行为,且所述目标用户行为序列包括所述第一用户行为,根据所述目标用户行为序列中包括的各用户行为数量和/或各用户行为的发生时间,确定所述用户行为序列对应的转化信息。
在一种可选的方式中,所述第二确定模块还用于若所述目标用户行为序列中包括的用户行为数量等于预设转化深度,则将所述用户行为序列对应的转化深度确定为所述预设转化深度,将所述目标用户行为序列中最晚发生时间与最早发生时间之间的差值确定为所述用户行为序列对应的转化时长。
在一种可选的方式中,所述第二确定模块还用于若所述目标用户行为序列中包括的用户行为数量小于预设转化深度,则根据第四用户行为对所述用户行为序列进行窗口划分,得到第二窗口序列,所述第四用户行为是所述多个用户行为中预设发生顺序早于所述第三用户行为的预设发生顺序的用户行为,所述第二窗口序列包括所述第一用户行为,根据所述第二窗口序列中的各用户行为,确定所述用户行为序列对应的转化信息。
在一种可选的方式中,所述划分模块还用于若所述第一用户行为的数量小于所述至少一个所述第二用户行为的总数量,则根据所述第一用户行为对所述用户行为序列进行窗口划分,得到第三窗口序列,所述第二确定模块还用于根据所述第三窗口序列中的各用户行为,确定所述用户行为序列对应的转化信息。
根据本发明实施例的另一方面,提供了一种电子设备,包括:处理器;存储器,用于存放至少一可执行指令;所述可执行指令使所述处理器执行如上任一项所述的用户行为分析方法的操作。
根据本发明实施例的又一方面,提供了一种计算机可读存储介质,所述存储介质中存储有至少一可执行指令,所述可执行指令在电子设备上运行时,使得电子设备执行如如上任一项所述的用户行为分析方法的操作。
本发明实施例可以根据多个用户行为的预设发生顺序,确定用户行为序列中第一用户行为的数量和至少一个第二用户行为的总数量,在第一用户行为的数量大于或等于至少一个第二用户行为的总数量时,根据多个用户行为中预设发生顺序最晚的用户行为,即第三用户行为对用户行为序列进行窗口划分,得到第一窗口序列,该第一窗口序列包括第一用户行为,进而根据第一窗口序列中的各用户行为,确定用户行为序列对应的转化深度和转化时长。
通过这种方式,可以根据用户行为序列中的第一用户行为和第二用户行为的数量占比,以用户行为序列中较少数量的第三用户行为划分窗口序列,能够减少用户行为分析的数据量,提高计算效率,节约计算机资源,并且由于在一些情况下,第一用户行为的数量占比非常高,应用本方案,不需要对每个第一用户行为进行窗口划分,所以不会产生数据倾斜的问题,能够提高计算稳定性。
上述说明仅是本发明实施例技术方案的概述,为了能够更清楚了解本发明实施例的技术手段,而可依照说明书的内容予以实施,并且为了让本发明实施例的上述和其它目的、特征和优点能够更明显易懂,以下特举本发明的具体实施方式。
附图说明
附图仅用于示出实施方式,而并不认为是对本发明的限制。而且在整个附图中,用相同的参考符号表示相同的部件。在附图中:
图1示出了本发明提供的一种用户行为分析方法的流程图;
图2示出了本发明提供的一种用户行为序列的示意图;
图3示出了本发明提供的另一种用户行为分析方法的流程图;
图4示出了本发明提供的一种用户行为序列的逆序列的示意图;
图5示出了本发明提供的一种窗口划分的示意图;
图6示出了本发明提供的另一种窗口划分的示意图;
图7示出了本发明提供的又一种用户行为分析方法的流程图;
图8示出了本发明提供的又一种窗口划分的示意图;
图9示出了本发明提供的又一种用户行为分析方法的流程图;
图10示出了本发明提供的一种二维数组的示意图;
图11示出了本发明提供的又一种用户行为分析方法的流程图;
图12示出了本发明提供的又一种用户行为分析方法的流程图;
图13示出了本发明提供的又一种窗口划分的示意图;
图14示出了本发明提供的又一种用户行为分析方法的流程图;
图15示出了本发明提供的又一种用户行为分析方法的流程图;
图16示出了本发明提供的一种用户行为分析装置的结构示意图;
图17示出了本发明提供的一种电子设备的结构示意图。
具体实施方式
下面将参照附图更详细地描述本发明的示例性实施例。虽然附图中显示了本发明的示例性实施例,然而应当理解,可以以各种形式实现本发明而不应被这里阐述的实施例所限制。
为了确定业务过程中的用户转化情况,可以按照各用户行为的转化顺序,以转化顺序对应的第一个用户行为为起点,对用户行为序列进行窗口划分,得到多个窗口序列,然后在每个窗口序列中查找符合转化顺序的用户行为,来得到用户的转化信息。然而,由于用户参与业务的步骤通常都是从第一个用户行为开始的,这种方式会导致用户行为序列划分得到的窗口序列数量大大增加,计算每个窗口序列的转化信息得到整个用户行为序列的转化信息也会耗费非常长的时间,所以用户行为分析效率较低。
鉴于上述的一个或多个问题,图1示出了本发明实施例提供的一种用户行为分析方法的流程图,该方法可以由电子设备执行,可以获取用户行为序列,并基于对用户行为序列的分析,确定用户转化信息,使得业务提供方可以针对用户的个人喜好进行定制化设计,让用户的操作路径更加便捷。其中,电子设备可以是业务提供方的后台服务器或服务集群。如图1所示,该方法可以包括以下步骤:
步骤110:获取用户行为序列。
其中,用户行为序列可以包括多个用户行为,以及各用户行为的发生时间。按照业务场景的不同,用户行为的种类和数量可以有所区别。例如,在电子商务中,用户行为可以包括物品广告点击、浏览详情、下单购买等行为。在车辆销售中,用户行为可以包括广告点击、用户信息留存、用户试驾和用户下单等行为。
本实施例中,用户行为序列可以是记录一个用户的行为序列的序列数据。当生成的用户行为序列中包括多个用户的行为序列时,可以从该用户行为序列中以用户标识为索引,从中筛选出每个用户的用户行为序列。
用户行为序列可以由电子设备,如服务器或服务器集群监测用户在终端设备上的操作,如广告点击、浏览详情、加入会员、下单购买等的操作,来生成各个用户的行为序列。同时,由于业务类型的不同,一些业务场景下,还可以获取营业员等输入的用户在线下的行为信息,将该行为信息与线上获取的同一用户的行为信息一起生成为一个用户的行为序列。
以上述车辆销售为例,用户默认的操作流程包括广告点击、用户信息留存、用户试驾和用户下单这四个流程,其中,广告点击、用户信息留存这两个流程可以是用户通过手机等进行的线上行为,用户试驾和用户下单这两个流程则是用户在车辆销售点进行的线下行为。在这种情况下,线上录入的数据和线下由营业员录入的数据可以共同构成用户的用户行为序列。
步骤120:根据多个用户行为的预设发生顺序,确定用户行为序列中第一用户行为的数量,以及至少一个第二用户行为的总数量。
其中,第一用户行为是多个用户行为中预设发生顺序最早的用户行为,第二用户行为是预设发生顺序晚于第一用户行为的预设发生顺序的任意一个用户行为。
预设发生顺序是依据用户的转化顺序预先设置的用户行为的发生顺序,一般来说,随着用户行为的发生顺序从前往后,用户行为所对应的用户转化程度不断增强,用户转化深度不断增加,用户粘性不断增强。以上述车辆销售为例,多个用户行为的预设发生顺序依次可以是广告点击、用户信息留存、用户试驾和用户下单,且用户转化程度不断增强。
第一用户行为是多个用户行为中预设发生顺序最早的用户行为,如在上述车辆销售的业务场景中,第一用户行为可以是预设发生顺序中的第一个用户行为“广告点击”;第二用户行为是预设发生顺序晚于第一用户行为的预设发生顺序的任意一个用户行为,如可以是上述预设发生顺序中的最后一个用户行为“用户下单”,或者也可以是倒数第二个用户行为“用户试驾”。
在获取用户的用户行为序列后,可以根据多个用户行为的预设发生顺序,统计用户行为序列中第一用户行为的数量,以及至少一个第二用户行为的总数量。
以车辆销售的业务场景为例,图2示出了本发明实施例提供的一种用户行为序列的示意图,如图2所示,按照时间顺序一共包括18个用户行为,依次为E1、E1、E2……E1,t1至t18分别表示对应的用户行为发生的发生时间节点。可以看出,该用户行为序列中一共包括四种用户行为,即E1、E2、E3和E4。其中,E1可以表示“广告点击”,E2可以表示“用户信息留存”,E3可以表示“用户试驾”,E4可以表示“用户下单”。
在该用户行为序列中,第一用户行为E1的数量等于6,第二用户行为可以是E2、E3和E4中的任意一个,假设第二用户行为是指E4,则第二用户行为的总数量为2。
在一种可选的方式中,第二用户行为可以是预设发生顺序中的后半部分的某个用户行为。具体的,后半部分的用户行为可以根据预设发生顺序对应的用户行为的总数量确定。例如,对于上述预设发生顺序依次为E1、E2、E3和E4的用户行为,其用户行为一共有偶数个,则第二用户行为可以是其中的后半部分:E3和E4中的任意一个。
当预设发生顺序对应的用户行为一共有奇数个时,其后半部分可以包括余数部分,例如,对于预设发生顺序依次为X1、X2、X3、X4和X5的用户行为,第二用户行为可以是X3、X4和X5中的任意一个。
在一种可选的方式中,在获取用户行为序列后,为了确定各用户行为的数量和位置等,还可以统计各类用户行为的数量和占比,一类或多类用户行为的偏移量。
例如,在如图2所示的用户行为序列中,用户行为的总数量为18,其中,E1有6个,E2有6个,E3有4个,E4有2个,占比分别为:33.3%、33.3%、22.2%、11.1%;第一用户行为,也就是按照多个用户行为的预设发生顺序中的第一个用户行为E1的数量,以及后半部分,也就是E3和E4的总数量的比值为1,分布在后半部分的用户行为的偏移量的位置为E4:(12,17),E3:(7,10,11,14)。
通过进行统计分析,可以快速确定序列的基本分布,为后续定位各种用户行为,分析用户行为提供便利。
步骤130:若第一用户行为的数量大于或等于至少一个第二用户行为的总数量,则根据第三用户行为对用户行为序列进行窗口划分,得到第一窗口序列。
其中,第三用户行为是上述至少一个第二用户行为中的任意一个用户行为,第一窗口序列包括第一用户行为。例如,第三用户行为可以是上述多个第二用户行为E3和E4中的任意一个。当上述至少一个第二用户行为仅包括一个用户行为时,第三用户行为与第二用户行为相同。
当第一用户行为的数量大于或等于一个或多个第二用户行为的总数量时,即第一用户行为的数量/一个或多个第二用户行为的总数量≥1,说明在整个用户行为序列中,第一用户行为的数量最多,即用户的大多数操作都是按照预设发生顺序排列的第一个用户行为。此时,可以按照第三用户行为,即预设发生顺序晚于第一用户行为的预设发生顺序的任意一个用户行为,对用户行为序列进行窗口划分,来得到第一窗口序列。
由于第一用户行为的数量大于第二用户行为的总数量,而第三用户行为是至少一个第二用户行为中的任意一个用户行为,所以第三用户行为在用户行为序列中的数量也必然小于第一用户行为的数量,按照第三用户行为划分的窗口序列的数量也会大大减少,因而能够减少后续计算用户转化情况的数据量,提高用户行为序列的分析效率。
步骤140:根据第一窗口序列中的各用户行为,确定用户行为序列对应的转化信息。
其中,转化信息可以包括转化深度和转化时长中的至少一项。
示例性的,根据第一窗口序列中的各个用户行为,可以确定第一窗口序列中包含的用户行为的种类和时间,从而确定用户在每个用户行为阶段的转化情况,确定该用户的用户行为序列对应的转化信息。另外,第一窗口序列中的用户行为可以包括多个用户行为中的部分用户行为,也可以包括多个用户行为中的所有用户行为,本申请实施例对此不做限定。
例如,以第一窗口序列中的用户行为包括多个用户行为中的部分用户行为,该第一窗口序列为{E1:t1;E2:t2}为例,按照用户行为的种类和时间顺序,该第一窗口序列对应的用户转化深度为用户行为的数量2,转化时间为t2-t1。
在一种可选的方式中,在确定用户行为序列对应的转化信息后,可以进一步计算用户转化率,即可以依据计算得到的每个用户的转化深度,统计所有用户的转化深度,进而计算得到用户转化率=所有用户的转化深度/用户数量。
例如,假设存在10个用户,其中:5个用户的转化深度为2,3个用户的转化深度为3,2个用户的转化深度为4,则按照多个用户行为的预设发生顺序,第一个用户行为和第二个用户行为的用户转化率均为100%,第三个用户行为的用户转化率为50%,第四个用户行为的用户转化率为20%。
根据本实施例提供的用户行为分析方法,可以根据多个用户行为的预设发生顺序,确定用户行为序列中第一用户行为的数量和至少一个第二用户行为的总数量,该第二用户行为是预设发生顺序晚于第一用户行为的预设发生顺序的任意一个用户行为,在第一用户行为的数量大于或等于至少一个第二用户行为的总数量时,根据至少一个第二用户行为中的任意一个用户行为,即第三用户行为对用户行为序列进行窗口划分,得到第一窗口序列,该第一窗口序列包括第一用户行为,进而根据第一窗口序列中的各用户行为,确定用户行为序列对应的转化信息,即转化深度和转化时长。
由于在实际的业务过程中,用户行为序列中第一用户行为的数量一般都是最多的,以上述车辆销售的业务场景为例,第一用户行为“广告点击”的数量是最多的,而其他用户行为,如“用户信息留存”的数量均小于第一用户行为的数量。
因此,通过这种方式,可以根据用户行为序列中的第一用户行为和第二用户行为的数量占比,以用户行为序列中较少数量的第三用户行为划分窗口序列,能够减少用户行为分析的数据量,提高计算效率,节约计算机资源,并且由于在多数情况下,第一用户行为的数量占比非常高,应用本方案,不需要对每个第一用户行为进行窗口划分,所以划分得到的窗口序列数量不会很多,也不会导致系统资源集中分配给依据第一用户行为划分得到的窗口序列,故不会产生数据倾斜的问题,能够提高计算稳定性。
在一种可选的方式中,用户行为序列中的多个用户行为可以按照各用户行为的发生时间从早到晚排列。在此基础上,图3示出了本实施例提供的另一种用户行为分析方法的流程图,如图3所示,用户行为分析方法可以包括以下步骤310~350:
步骤310:获取用户行为序列。
其中,用户行为序列可以包括多个用户行为,以及各用户行为的发生时间,且用户行为序列中的多个用户行为是按照用户行为的发生时间从早到晚依次排列的。
步骤320:根据多个用户行为的预设发生顺序,确定用户行为序列中第一用户行为的数量,以及至少一个第二用户行为的总数量。
按照多个用户行为的预设发生顺序统计获取的用户行为序列中的第一用户行为的数量和至少一个第二用户行为的总数量。
步骤330:若第一用户行为的数量大于或等于至少一个第二用户行为的总数量,将用户行为序列中的多个用户行为按照各用户行为的发生时间从晚到早排列,得到用户行为序列的逆序列。
如果第一用户行为的数量大于或等于至少一个第二用户行为的总数量,则说明用户完成多个用户行为的预设发生顺序中的第一个用户行为的数量较多,而随着时间发展,用户的转化深度不断加深。此时,可以将用户行为序列按照各用户行为的发生时间从晚到早排列,得到用户行为序列的逆序列。例如,对于如图2所示的用户行为序列,将其按照各用户行为的发生时间从晚到早进行排列,可以得到如图4所示的逆序列。
步骤340:在逆序列中以每个第三用户行为为第一窗口序列中的第一个用户行为,按照预设窗口长度对逆序列进行划分,得到至少一个第一窗口序列。
其中,预设窗口长度是指划分窗口序列的时间窗口长度,可以按照业务场景等进行设置,以车辆销售为例,预设窗口长度可以设置为1个小时、1周、1个月、3个月等。按照业务需求,预设窗口长度可以是完成一次用户转化所需要的时间长度,其中,一次用户转化可以根据业务需要和用户行为的分布情况设置,例如,当用户A在7天内完成了“广告点击”、“用户信息留存”和“用户试驾”三个阶段的用户行为时,则可以确定完成一次用户转化,此时预设窗口长度为7天。
在逆序列中,可以以每个第三用户行为为第一窗口序列中的第一个用户行为,按照预设窗口长度确定从这个用户行为往后的所有用户行为,来得到一个第一窗口序列。按照从逆序列的起点往终点的方向进行划分,得到用户行为序列划分得到的所有第一窗口序列。
由于第三用户行为是一个或多个第二用户行为中的任意一个用户行为,所以,第三用户行为可以是多个用户行为中预设发生顺序最晚的用户行为,也可以是所有的第二用户行为中预设发生顺序早于最晚用户行为的任意一个用户行为。例如,第三用户行为可以是如图2所示的用户行为序列中的E4,也可以是E3或者E2中的任意一个。
图5示出了本发明实施例提供的一种窗口划分的示意图,如图5所示,该用户行为序列为图4中得到的逆序列。假设第三用户行为是该逆序列中预设发生顺序最晚的用户行为E4,按照E4所在的位置及预设窗口长度7,从前往后依次选择窗口序列,并且每个窗口序列中包含第一用户行为E1。
由此,通过逆序列中的E1和E4,可以定位出每个窗口序列的位置,得到逆序列中的全部第一窗口序列,即图5中示出的窗口序列1:{E4:t17;E2:t16;E2:t15;E3:t14;E1:t13;E4:t12;E3:t11},窗口序列2:{E4:t12;E3:t11;E3:t10;E2:t9;E1:t8;E3:t7;E1:t6}。
图6示出了本发明实施例提供的另一种窗口划分的示意图,如图6所示,该用户行为序列同样是图4中得到的逆序列。假设第三用户行为是所有第二用户行为中预设发生顺序早于最晚用户行为的一个用户行为E2,按照E2所在的位置及预设窗口长度7,从前往后依次选择窗口序列,并且每个窗口序列中包含第一用户行为E1。
由此,通过逆序列中的E1和E2,可以定位出每个窗口序列的位置,得到逆序列中的全部第一窗口序列,即图6中示出的窗口序列3:{E2:t16;E2:t15;E3:t14;E1:t13;E4:t12;E3:t11;E3:t10}和窗口序列4:{E2:t15;E3:t14;E1:t13;E4:t12;E3:t11;E3:t10;E2:t9}、窗口序列5:{E2:t9;E1:t8;E3:t7;E1:t6;E2:t5;E1:t4;E2:t3}。
步骤350:根据第一窗口序列中的各用户行为,确定用户行为序列对应的转化信息。
示例性的,在得到所有的第一窗口序列后,可以根据每个第一窗口序列中的各个用户行为,确定每个第一窗口序列中所包含的用户行为的种类和各类用户行为的时间顺序。按照时间先后顺序,可以确定各类用户行为是否随时间顺序依次发生,且中间无用户行为的缺失,从而得到用户行为序列对应的转化深度,并计算得到转化时长。
通过上述步骤310~350,可以在第一用户行为的数量大于或等于至少一个第二用户行为的总数量的情况下,对用户行为序列的逆序列进行窗口划分,生成一个或多个第一窗口序列。由于第一用户行为的数量大于或等于其他一种或多种用户行为的总数量,由此得到的逆序列中,位置靠前的窗口序列最有可能出现转化深度最高的用户行为,所以划分的窗口序列中能够很快遍历得到整个用户行为序列的最大转化深度。因此,用户行为序列的分析效率更高。
需要说明的是,上述步骤310~320的具体实现方式可以参见前述实施例中步骤110~120的具体实现方式,此处不再赘述。
图7示出了本发明实施例提供的又一种用户行为分析的流程图,如图7所示,可以包括以下步骤:
步骤710:获取用户行为序列。
步骤720:根据多个用户行为的预设发生顺序,确定用户行为序列中第一用户行为的数量,以及至少一个第二用户行为的总数量。
步骤730:若第一用户行为的数量大于或等于至少一个第二用户行为的总数量,在用户行为序列中以每个第三用户行为为第一窗口序列中的最后一个用户行为,按照预设窗口长度对用户行为序列进行划分,得到至少一个第一窗口序列。
如果第一用户行为的数量大于或等于至少一个第二用户行为的总数量,则可以在用户行为序列中,将每个第三用户行为作为第一窗口序列中的最后一个用户行为,按照预设窗口长度确定从最后一个用户行为往前的所有用户行为,来得到一个第一窗口序列。按照用户行为序列从起点到终点的方向,依次划分得到所有的第一窗口序列。
图8示出了本实施例提供的又一种窗口划分的示意图,如图8所示,用户行为序列为如图2所示的用户行为序列。在进行窗口划分时,可以将每个第三用户行为,如E4,作为一个第一窗口序列中的最后一个用户行为,从后往前按照预设窗口长度确定该第一窗口序列中的所有用户行为,得到所有的第一窗口序列,即窗口序列6:{E1:t6;E3:t7;E1:t8;E2:t9;E3:t10;E3:t11;E4:t12},窗口序列7:{E3:t11;E4:t12;E1:t13;E3:t14;E2:t15;E2:t16;E4:t17}。
步骤740:根据第一窗口序列中的各用户行为,确定用户行为序列对应的转化信息。
对于每个第一窗口序列,可以根据其中包含的用户行为的种类和时间顺序来确定窗口序列中随时间顺序依次发生,且中间无用户行为的缺失的用户行为,来确定每个第一窗口序列的转化信息。例如,对于上述窗口序列6,其随时间顺序发生的序列为:{E1:t8;E2:t9;E3:t10;E4:t12},所以该序列对应的转化深度为4,转化时长为t12-t8。
在得到每个第一窗口序列的转化信息,即转化深度和转化时长后,可以进一步比较各个第一窗口序列的转化深度和转化时长,确定用户行为序列的转化深度和转化时长。
示例性的,可以将各个第一窗口序列得到的用户转化深度进行比较,可以将其中的最大转化深度作为用户行为序列的转化深度,将所有第一窗口序列的转化时长的平均值作为用户行为序列的转化时长。
通过上述步骤710~740,可以不需要对用户行为序列进行逆序处理,便划分得到每个第一窗口序列,进而计算得到用户行为序列的转化信息,可以简化用户行为序列的处理流程,提升分析效率。
需要说明的是,上述步骤710~720的具体实现方式可以参见前述实施例中步骤110~120的具体实现方式,此处不再赘述。
在一种可选的方式中,在划分得到所有的第一窗口序列时,可以根据划分得到的所有第一窗口序列的序列分布情况计算得到用户行为序列的转化信息。图9示出了本发明实施例提供的又一种用户行为分析的流程图,如图9所示,可以包括以下步骤:
步骤910:获取用户行为序列。
步骤920:根据多个用户行为的预设发生顺序,确定用户行为序列中第一用户行为的数量,以及至少一个第二用户行为的总数量。
步骤930:若第一用户行为的数量大于或等于至少一个第二用户行为的总数量,则根据第三用户行为对用户行为序列进行窗口划分,得到第一窗口序列。
在第一用户行为的数量大于或等于所有第二用户行为的总数量时,可以在用户行为序列中定位每个第三用户行为,然后在用户行为序列中查找每个包含第三用户行为和第一用户行为的窗口序列,得到所有的第一窗口序列。
步骤940:对第一窗口序列中的各用户行为的发生时间进行排列,得到至少一个时间序列。
示例性的,在如图5所示的用户行为序列中,第一窗口序列包括两个窗口序列,即窗口序列1和窗口序列2。根据这两个窗口序列中的各用户行为的发生时间,分别对窗口序列1和窗口序列2的进行从E1到E4的遍历,可以得到时间序列1:{E3:t11;E4:t12;E1:t13;E3:t14;E2:t15;E2:t16;E4:t17},以及时间序列2:{E1:t6;E3:t7;E1:t9;E2:t9;E3:t10;E3:t11;E4:t12}。
步骤950:根据至少一个时间序列,确定发生时间符合预设发生顺序的目标用户行为序列。
其中,目标用户行为序列中任意相邻两个用户行为是预设发生顺序中任意相邻的两个用户行为,且目标用户行为序列包括所述第一用户行为。也就是说,目标用户行为序列中相邻两个用户行为是连续的,比如相邻两个用户行为是E1和E2,或者E2和E3。同时,由于转化深度是从第一用户行为开始计算的,所以目标用户行为序列中可以包括第一用户行为,如E1。
示例性的,当根据时间序列确定符合预设发生顺序的各个用户行为的发生时间是增加的,说明该时间序列的发生时间符合预设发生顺序,那么可以根据该时间序列中的各个用户行为及其发生时间确定目标用户行为序列,如对于上述时间序列1,符合预设发生顺序的目标用户行为序列为{E1:t13;E2:t15},对于上述时间序列2,符合预设发生顺序的目标用户行为序列为{E1:t6;E2:t9;E3:t10;E4:t12}。
当根据时间序列确定发生时间符合预设发生顺序的同一个用户行为的出现次数大于1时,可以以该用户行为出现的最早时间为准。
步骤960:根据目标用户行为序列中包括的各用户行为数量和/或各用户行为的发生时间,确定用户行为序列对应的转化信息。
例如,目标用户行为序列中包含的各个用户行为的数量可以作为该目标用户行为序列对应的转化深度,目标用户行为序列中最后一个用户行为到第一个用户行为之间的时间差为该目标用户行为序列对应的转化时长。如对于上述目标用户行为序列{E1:t13;E2:t15},转化深度为2,转化时长为t15-t13,目标用户行为序列{E1:t6;E2:t9;E3:t10;E4:t12},转化深度为4,转化时长为t12-t6。
在得到每个目标用户行为序列的转化深度和转化时长后,可以进一步依据每个目标用户行为序列的转化深度和转化时长,计算得到整个用户行为序列的转化深度和转化时长。
在一种可选的方式中,在步骤940~950中,可以对第一窗口序列进行遍历,来将每个第一窗口序列转化为二维数组,基于该二维数组确定发生时间符合预设发生顺序的最长时间序列,来确定用户行为序列的转化深度和转化时长。在一个二维数组中,一种用户行为仅出现一次。
示例性的,在如图5所示的用户行为序列中,窗口序列1中的用户行为依次为:E4>E2>E2>E3>E1>E4>E3,窗口序列2中的用户行为依次为:E4>E3>E3>E2>E1>E3>E2。按照发生时间的顺序,分别对窗口序列1和窗口序列2进行从E1到E4的遍历,将窗口序列1和窗口序列2分别转化为如图10所示的二维数组,在每个窗口序列对应的二维数组中,确定发生时间符合预设发生顺序的最长时间序列,如在窗口序列1对应的二维数组1中,对应的E1到E4的最长时间序列为:{E1:t13;E2:t16;E3:t14;E4:t17},在窗口序列2对应的二维数组2中,对应的E1到E4的最长时间序列为:{E1:t9;E2:t9;E3:t11;E4:t12}。
在上述二维数组的生成过程中,当窗口序列中同一用户行为出现的时间节点包括多个时,可以按照序列顺序确定该同一用户行为的时间节点的列的位置。例如,对于上述窗口序列1而言,按照序列顺序,E2首次出现的时间节点为t16,第二次出现的时间节点为t15,所以t16为第一列,t15为第二列。最长时间序列为第一列二维数组对应的序列。
对于窗口序列1对应的二维数组而言,其随时间顺序依次发生的用户行为是E1、E2,所以该窗口序列1的转化深度为2,窗口序列2对应的二维数组随时间顺序依次发生的用户行为是E1、E2、E3和E4,所以该窗口序列2的转化深度为4。用户行为序列的转化深度和转化时长为窗口序列2的转化深度和转化时长。
通过上述步骤910~960,可以对每个第一窗口序列中的用户行为及其发生时间进行分析,来得到用户行为序列的转化深度和转化时长,完成对用户行为数据的转化分析。
图11示出了本发明实施例提供的又一种用户行为分析的流程图,如图11所示,可以包括以下步骤:
步骤1110:获取用户行为序列。
步骤1120:根据多个用户行为的预设发生顺序,确定用户行为序列中第一用户行为的数量,以及至少一个第二用户行为的总数量。
步骤1130:若第一用户行为的数量大于或等于至少一个第二用户行为的总数量,则根据第三用户行为对用户行为序列进行窗口划分,得到第一窗口序列。
步骤1140:对第一窗口序列中的各用户行为的发生时间进行排列,得到至少一个时间序列。
步骤1150:根据至少一个时间序列,确定发生时间符合预设发生顺序的目标用户行为序列。
其中,目标用户行为序列中任意相邻两个用户行为是预设发生顺序中任意相邻的两个用户行为,且目标用户行为序列包括第一用户行为。
步骤1160:若目标用户行为序列中包括的用户行为数量等于预设转化深度,则将用户行为序列对应的转化深度确定为预设转化深度,将目标用户行为序列中最晚发生时间与最早发生时间之间的差值确定为用户行为序列对应的转化时长。
其中,预设转化深度可以是按照多个用户行为的预设发生顺序设置的最大转化深度,例如,对于如图2所示的车辆销售中的用户行为序列,预设发生顺序为E1、E2、E3和E4,其预设转化深度可以是4。
在得到目标用户行为序列的转化深度和转化时长之后,如果某个目标用户行为序列中包括的用户行为数量等于预设转化深度,则整个用户行为序列对应的转化深度等于上述预设转化深度,并且转化时长可以是这个目标用户行为序列中最晚的发生时间与最早发生时间之间的差值。
通过上述步骤1110~1160,可以根据目标用户行为序列中包括的用户行为数量与预设转化深度之间的数量关系,确定用户行为序列的转化深度和转化时长是否为目标用户行为序列的转化深度和转化时长。在确定之后,就不需要再执行剩余用户行为序列的窗口划分和计算,因而能够提高用户行为序列的分析效率。
需要说明的是,上述步骤1110~1150的具体实现方式可以参见前述实施例中步骤910~950的具体实现方式,此处不再赘述。
考虑到在一些情况下,用户的转化深度不会达到最大深度,所以根据第三用户行为划分的窗口序列无法计算得到用户的最大转化深度,在这种情况下,为了计算用户行为序列的转化深度和转化时长,图12示出了本发明实施例提供的又一种用户行为分析的流程图,如图12所示,可以包括以下步骤:
步骤1210:获取用户行为序列。
步骤1220:根据多个用户行为的预设发生顺序,确定用户行为序列中第一用户行为的数量,以及至少一个第二用户行为的总数量。
步骤1230:若第一用户行为的数量大于或等于至少一个第二用户行为的总数量,则根据第三用户行为对用户行为序列进行窗口划分,得到第一窗口序列。
步骤1240:对第一窗口序列中的各用户行为的发生时间进行排列,得到至少一个时间序列。
步骤1250:根据至少一个时间序列,确定发生时间符合预设发生顺序的目标用户行为序列。
其中,目标用户行为序列中任意相邻两个用户行为是预设发生顺序中任意相邻的两个用户行为,且目标用户行为序列包括第一用户行为。
步骤1260:若目标用户行为序列中包括的用户行为数量小于预设转化深度,则根据第四用户行为对用户行为序列进行窗口划分,得到第二窗口序列。
第四用户行为是多个用户行为中预设发生顺序早于第三用户行为的预设发生顺序的用户行为,第二窗口序列包括第一用户行为。例如,在上述车辆销售中,如果第三用户行为为E4,则第四用户行为可以是其中的倒数第二个用户行为E3。
如果所有的目标用户行为序列中包括的用户行为数量均小于预设转化深度,则说明这些目标用户行为序列所对应的用户转化深度未达到最大转化深度,此时,可以根据多个用户行为中预设发生顺序早于第三用户行为的用户行为,即第四用户行为对用户行为序列进行窗口划分,来得到一个或多个第二窗口序列。
以图4所示的逆序列为例,图13示出了本发明实施例提供的又一种划分窗口序列的示意图,如图13所示,可以在用户行为序列的逆序列中,按照多个用户行为中预设发生顺序早于第三用户行为的用户行为E3,为每个第二窗口序列中的第一个用户行为,按照预设窗口长度划分每个第二窗口序列,该第二窗口序列中既包含第四用户行为E3,也包含第一用户行为E1,来得到所有的第二窗口序列,如图中示出的窗口序列8~11。
步骤1270:根据第二窗口序列中的各用户行为,确定用户行为序列对应的转化信息。
在得到第二窗口序列之后,可以根据各个第二窗口序列中的各用户行为,确定用户行为序列对应的转化信息,即转化深度和转化时长。
示例性的,可以按照步骤940~960的方法对第二窗口序列进行处理,来确定用户行为序列的转化深度和转化时长。具体而言,可以对第二窗口序列中的各用户行为的发生时间进行排列,得到一个或多个时间序列,然后从这些时间序列中,确定发生时间符合预设发生顺序的目标用户行为序列,根据目标用户行为序列中包括的各用户行为数量和/或各用户行为的发生时间,确定用户行为序列对应的转化深度和转化时长。
在一种可选的方式中,在根据第二窗口序列计算得到的用户行为序列的转化深度<预设转化深度-1时,可以进一步根据第五用户行为对用户行为序列进行窗口划分,得到第二窗口序列,进而计算新的用户行为序列的转化深度和转化时长。其中,第五用户行为是多个用户行为中预设发生顺序与第四用户行为相邻,且比第四用户行为早的用户行为。例如,当第四用户行为为E3时,第五用户行为是E2。
通过上述步骤1210~1270,可以在目标用户行为序列的用户行为数量小于预设转化深度时,进一步划分第二窗口序列,来计算新的用户行为序列的转化深度。由此,在完成一次窗口划分后,可以依据当前划分的窗口序列计算转化深度,如果该转化深度为窗口划分所能达到的最大转化深度,则停止计算,所以该方式实现了对用户行为序列的迭代划分和计算,不需要一次性划分出所有的窗口序列,因而能够大大减少转化分析的计算量和效率。
需要说明的是,上述步骤1210~1250的具体实现方式可以参见前述实施例中步骤910~950的具体实现方式,此处不再赘述。
另外,由于在如图5所示的用户行为序列中,最大转化深度为4,并且基于第三用户行为划分得到的窗口序列已经得出该用户行为序列的转化深度为4,所以在根据第三用户行为划分得到的窗口序列得到用户行为序列的转化深度之后便可以停止计算,上述按照第四用户行为进行窗口划分,并计算用户行为序列的转化深度和转化时长的方法仅作为示例说明,不应对本实施例造成范围限定。
在一种可选的方式中,第一用户行为的数量可能会小于所有第二用户行为的总数量,以车辆销售为例,在一段时间内多数用户可能直接进行“用户信息留存”和“用户试驾”的用户行为,而很少产生“广告点击”的用户行为。在这种情况下,为了计算用户行为序列的转化深度和转化时长,图14示出了本发明实施例提供的又一种用户行为分析的流程图,具体的,如图14所示,可以包括以下方法:
步骤1410:获取用户行为序列。
步骤1420:根据多个用户行为的预设发生顺序,确定用户行为序列中第一用户行为的数量,以及至少一个第二用户行为的总数量。
步骤1430:若第一用户行为的数量小于至少一个第二用户行为的总数量,则根据第一用户行为对用户行为序列进行窗口划分,得到第三窗口序列。
如果第一用户行为的数量小于所有的第二用户行为的总数量,即第一用户行为的数量/一个或多个第二用户行为的总数量<1,说明在整个用户行为序列中,第一用户行为的数量最少,即用户的极少数操作是按照预设发生顺序排列的第一个用户行为。此时,可以按照第一用户行为,即预设发生顺序最早的用户行为,对用户行为序列进行窗口划分,来得到第三窗口序列。
由于第一用户行为的数量小于第二用户行为的总数量,按照第一用户行为划分的窗口序列的数量也会大大减少,因而能够减少后续计算用户转化情况的数据量,提高用户行为序列的分析效率。
步骤1440:根据第三窗口序列中的各用户行为,确定用户行为序列对应的转化信息。
示例性的,可以按照步骤940~960的方法对第三窗口序列进行处理,来确定用户行为序列的转化信息。具体而言,可以对第三窗口序列中的各用户行为的发生时间进行排列,得到一个或多个时间序列,然后从这些时间序列中,确定发生时间符合预设发生顺序的目标用户行为序列,根据目标用户行为序列中包括的各用户行为数量和各用户行为的发生时间,确定用户行为序列对应的转化深度和转化时长。
通过上述方法,可以在第一用户行为的数量小于至少一个第二用户行为的总数量的情况下,第一用户行为对用户行为序列进行窗口划分,生成一个或多个第三窗口序列。由于第一用户行为的数量小于其他一种或多种用户行为的总数量,由此得到的第三窗口序列的数量较少,所以能够很快计算得到用户行为序列的转化深度和转化时长,即用户行为序列的分析效率更高。
需要说明的是,步骤1410~1420的具体实现方式可以参见前述实施例中步骤110~120的具体实现方式,此处不再赘述。
图15示出了本实施例提供的又一种用户行为分析方法的流程图,如图15所示,该方法包括以下步骤:
步骤1510:获取用户行为序列。
步骤1510:根据多个用户行为的预设发生顺序,确定用户行为序列中第一用户行为的数量,以及至少一个第二用户行为的总数量。
步骤1530:确定第一用户行为的数量是否小于至少一个第二用户行为的总数量。如果否,执行步骤1540~1560,如果是,执行步骤1570~1590。
步骤1540:将用户行为序列中的多个用户行为按照各用户行为的发生时间从晚到早排列,得到用户行为序列的逆序列,在逆序列中以每个第三用户行为为第一窗口序列中的第一个用户行为,按照预设窗口长度对逆序列进行划分,得到至少一个第一窗口序列。
其中,第三用户行为可以是多个用户行为中预设发生顺序最晚的用户行为。
在第一用户行为的数量大于或等于至少一个第二用户行为的总数量时,可以将用户行为序列按照各用户行为的发生时间从晚到早排列,得到用户行为序列的逆序列。
然后,在逆序列中,以每个第三用户行为为第一窗口序列中的第一个用户行为,按照预设窗口长度确定从这个用户行为往后的所有用户行为,来得到一个第一窗口序列,按照从逆序列的起点往终点的方向进行划分,得到用户行为序列划分得到的所有第一窗口序列。
步骤1550:将每个第一窗口序列转化为二维数组。
对第一窗口序列进行遍历,来将每个第一窗口序列转化为二维数组。在一个二维数组中,一种用户行为仅出现一次。
步骤1560:在每个第一窗口序列对应的二维数组中,确定发生时间符合预设发生顺序的最长时间序列,根据最长时间序列确定用户行为序列的转化深度和转化时长。
最长时间序列为包含用户行为的种类最多的时间序列。根据最长时间序列,可以确定随着时间顺序各个用户行为是否依次发生,从而可以得到用户行为序列的转化深度和转化时长,该转化深度为用户行为序列的最大转化深度。
步骤1570:在用户行为序列中以每个第一用户行为为第一窗口序列中的第一个用户行为,按照预设窗口长度对用户行为序列进行划分,得到至少一个第三窗口序列。
在第一用户行为的数量小于所有的第二用户行为的总数量时,可以按照第一用户行为对用户行为序列进行窗口划分,即在用户行为序列中以每个第一用户行为为第一窗口序列中的第一个用户行为,按照预设窗口长度对用户行为序列进行划分,得到一个或多个第三窗口序列。这样划分得到的第三窗口序列最少,也能够快速得到用户行为序列的转化深度和转化时长。
步骤1580:将每个第三窗口序列转化为二维数组。
对第一窗口序列进行遍历,来将每个第一窗口序列转化为二维数组。在一个二维数组中,一种用户行为仅出现一次。
步骤1590:在每个第三窗口序列对应的二维数组中,确定发生时间符合预设发生顺序的最长时间序列,根据最长时间序列确定用户行为序列的转化深度和转化时长。
示例性的,可以按照时间顺序,对第三窗口序列对应的二维数组中的各用户行为的发生时间进行排列,得到发生时间符合预设发生顺序的最长时间序列。
然后,可以根据最长时间序列中包括的各用户行为数量和各用户行为的发生时间,确定用户行为序列对应的转化深度和转化时长。
根据本实施例中的用户行为分析方法,可以通过用户行为序列中的第一用户行为和第二用户行为的数量的比较,确定不同的窗口划分策略,以减少划分得到的窗口序列的数量,从而依据较少数量的窗口序列快速计算得到用户行为序列的转化深度和转化时长,所以能够提高用户转化分析的效率,节省计算资源。
需要说明的是,步骤1510~1520的具体实现方式可以参见前述实施例中步骤110~120的具体实现方式,此处不再赘述。
图16示出了本发明实施例提供的一种用户行为分析装置的结构示意图。如图16所示,该用户行为分析装置1600可以包括:获取模块1610,用于获取用户行为序列,用户行为序列包括多个用户行为,以及各用户行为的发生时间;第一确定模块1620,用于根据多个用户行为的预设发生顺序,确定用户行为序列中第一用户行为的数量,以及至少一个第二用户行为的总数量;其中,第一用户行为是多个用户行为中预设发生顺序最早的用户行为,第二用户行为是预设发生顺序晚于第一用户行为的预设发生顺序的任意一个用户行为;划分模块1630,用于若第一用户行为的数量大于或等于至少一个第二用户行为的总数量,则根据第三用户行为对用户行为序列进行窗口划分,得到第一窗口序列,第三用户行为是上述至少一个第二用户行为中的任意一个用户行为,第一窗口序列包括第一用户行为;第二确定模块1640,用于根据第一窗口序列中的各用户行为,确定用户行为序列对应的转化信息,该转化信息包括转化深度和/或转化时长。
在一种可选的方式中,用户行为序列中的多个用户行为按照各用户行为的发生时间从早到晚排列,划分模块1630可以用于将用户行为序列中的多个用户行为按照各用户行为的发生时间从晚到早排列,得到用户行为序列的逆序列,在逆序列中以每个第三用户行为为第一窗口序列中的第一个用户行为,按照预设窗口长度对逆序列进行划分,得到至少一个第一窗口序列。
在一种可选的方式中,用户行为序列中的多个用户行为按照各用户行为的发生时间从早到晚排列,划分模块1630可以用于在用户行为序列中以每个第三用户行为为第一窗口序列中的最后一个用户行为,按照预设窗口长度对用户行为序列进行划分,得到至少一个第一窗口序列。
在一种可选的方式中,第二确定模块1640可以用于对第一窗口序列中的各用户行为的发生时间进行排列,得到至少一个时间序列,根据至少一个时间序列,确定发生时间符合预设发生顺序的目标用户行为序列,其中,目标用户行为序列中任意相邻两个用户行为是预设发生顺序中任意相邻的两个用户行为,且目标用户行为序列包括第一用户行为,根据目标用户行为序列中包括的各用户行为数量和/或各用户行为的发生时间,确定用户行为序列对应的转化信息。
在一种可选的方式中,第二确定模块1640还可以用于若目标用户行为序列中包括的用户行为数量等于预设转化深度,则将用户行为序列对应的转化深度确定为预设转化深度,将目标用户行为序列中最晚发生时间与最早发生时间之间的差值确定为用户行为序列对应的转化时长。
在一种可选的方式中,第二确定模块1640还可以用于若目标用户行为序列中包括的用户行为数量小于预设转化深度,则根据第四用户行为对用户行为序列进行窗口划分,得到第二窗口序列,第四用户行为是多个用户行为中预设发生顺序早于第三用户行为的预设发生顺序的用户行为,第二窗口序列包括第一用户行为,根据第二窗口序列中的各用户行为,确定用户行为序列对应的转化信息。
在一种可选的方式中,划分模块1630还可以用于若第一用户行为的数量小于至少一个第二用户行为的总数量,则根据第一用户行为对用户行为序列进行窗口划分,得到第三窗口序列,第二确定模块1640还可以用于根据第三窗口序列中的各用户行为,确定用户行为序列对应的转化信息。
图17示出了本发明实施例提供的一种电子设备的结构示意图,本发明具体实施例并不对电子设备的具体实现做限定。
如图17所示,该电子设备可以包括:处理器(processor)1702、通信接口(Communications Interface)1704、存储器(memory)1706、以及通信总线1708。
其中:处理器1702、通信接口1704、以及存储器1706通过通信总线1708完成相互间的通信。通信接口1704,用于与其它设备比如客户端或其它服务器等的网元通信。处理器1702,用于执行程序1710,具体可以执行上述用于用户行为分析方法实施例中的相关步骤。
具体地,程序1710可以包括程序代码,该程序代码包括计算机可执行指令。
处理器1702可能是中央处理器CPU,或者是特定集成电路ASIC(ApplicationSpecific Integrated Circuit),或者是被配置成实施本发明实施例的一个或多个集成电路。电子设备包括的一个或多个处理器,可以是同一类型的处理器,如一个或多个CPU;也可以是不同类型的处理器,如一个或多个CPU以及一个或多个ASIC。
存储器1706,用于存放程序1710。存储器1706可能包含高速RAM存储器,也可能还包括非易失性存储器(non-volatile memory),例如至少一个磁盘存储器。
程序1710具体可以被处理器1702调用使电子设备执行上述用户行为分析方法的操作步骤。
本发明实施例提供了一种计算机可读存储介质,所述存储介质存储有至少一可执行指令,该可执行指令在电子设备上运行时,使得所述电子设备执行上述任意方法实施例中的用户行为分析方法。
可执行指令具体可以用于使得电子设备执行上述用户行为分析方法的操作步骤。
在此提供的算法或显示不与任何特定计算机、虚拟系统或者其它设备固有相关。此外,本发明实施例也不针对任何特定编程语言。
在此处所提供的说明书中,说明了大量具体细节。然而能够理解,本发明的实施例可以在没有这些具体细节的情况下实践。类似地,为了精简本发明并帮助理解各个发明方面中的一个或多个,在上面对本发明的示例性实施例的描述中,本发明实施例的各个特征有时被一起分组到单个实施例、图、或者对其的描述中。其中,遵循具体实施方式的权利要求书由此明确地并入该具体实施方式,其中每个权利要求本身都作为本发明的单独实施例。
本领域技术人员可以理解,可以对实施例中的设备中的模块进行自适应性地改变并且把它们设置在与该实施例不同的一个或多个设备中。可以把实施例中的模块或单元或组件组合成一个模块或单元或组件,以及此外可以把它们分成多个子模块或子单元或子组件。除了这样的特征和/或过程或者单元中的至少一些是相互排斥之外。
应该注意的是上述实施例对本发明进行说明而不是对本发明进行限制,并且本领域技术人员在不脱离所附权利要求的范围的情况下可设计出替换实施例。在权利要求中,不应将位于括号之间的任何参考符号构造成对权利要求的限制。单词“包含”不排除存在未列在权利要求中的元件或步骤。位于元件之前的单词“一”或“一个”不排除存在多个这样的元件。本发明可以借助于包括有若干不同元件的硬件以及借助于适当编程的计算机来实现。在列举了若干装置的单元权利要求中,这些装置中的若干个可以是通过同一个硬件项来具体体现。单词第一、第二、以及第三等的使用不表示任何顺序。可将这些单词解释为名称。上述实施例中的步骤,除有特殊说明外,不应理解为对执行顺序的限定。
Claims (10)
1.一种用户行为分析方法,其特征在于,所述方法包括:
获取用户行为序列,所述用户行为序列包括多个用户行为,以及各所述用户行为的发生时间;
根据所述多个用户行为的预设发生顺序,确定所述用户行为序列中第一用户行为的数量,以及至少一个第二用户行为的总数量;其中,所述第一用户行为是所述多个用户行为中预设发生顺序最早的用户行为,所述第二用户行为是预设发生顺序晚于所述第一用户行为的预设发生顺序的任意一个用户行为;
若所述第一用户行为的数量大于或等于至少一个所述第二用户行为的总数量,则根据第三用户行为对所述用户行为序列进行窗口划分,得到第一窗口序列,所述第三用户行为是所述至少一个第二用户行为中的任意一个用户行为,所述第一窗口序列包括所述第一用户行为;
根据所述第一窗口序列中的各用户行为,确定所述用户行为序列对应的转化信息,所述转化信息包括转化深度和转化时长中的至少一项。
2.根据权利要求1所述的方法,其特征在于,所述用户行为序列中的所述多个用户行为按照各用户行为的发生时间从早到晚排列,所述根据第三用户行为对所述用户行为序列进行窗口划分,得到第一窗口序列,包括:
将用户行为序列中的所述多个用户行为按照各用户行为的发生时间从晚到早排列,得到所述用户行为序列的逆序列;
在所述逆序列中以每个所述第三用户行为为所述第一窗口序列中的第一个用户行为,按照预设窗口长度对所述逆序列进行划分,得到至少一个所述第一窗口序列。
3.根据权利要求1所述的方法,其特征在于,所述用户行为序列中的所述多个用户行为按照各用户行为的发生时间从早到晚排列,所述根据第三用户行为对所述用户行为序列进行窗口划分,得到第一窗口序列,包括:
在所述用户行为序列中以每个所述第三用户行为为所述第一窗口序列中的最后一个用户行为,按照预设窗口长度对所述用户行为序列进行划分,得到至少一个所述第一窗口序列。
4.根据权利要求2或3所述的方法,其特征在于,所述根据所述第一窗口序列中的各用户行为,确定所述用户行为序列对应的转化信息,包括:
对所述第一窗口序列中的各用户行为的发生时间进行排列,得到至少一个时间序列;
根据所述至少一个时间序列,确定发生时间符合所述预设发生顺序的目标用户行为序列;其中,所述目标用户行为序列中任意相邻两个用户行为是所述预设发生顺序中任意相邻的两个用户行为,且所述目标用户行为序列包括所述第一用户行为;
根据所述目标用户行为序列中包括的各用户行为数量和/或各用户行为的发生时间,确定所述用户行为序列对应的转化信息。
5.根据权利要求4所述的方法,其特征在于,所述根据所述目标用户行为序列中包括的用户行为数量和/或各用户行为的发生时间,确定所述用户行为序列对应的转化信息,包括:
若所述目标用户行为序列中包括的用户行为数量等于预设转化深度,则将所述用户行为序列对应的转化深度确定为所述预设转化深度,将所述目标用户行为序列中最晚发生时间与最早发生时间之间的差值确定为所述用户行为序列对应的转化时长。
6.根据权利要求4所述的方法,其特征在于,所述根据所述目标用户行为序列中包括的用户行为数量和/或各用户行为的发生时间,确定所述用户行为序列对应的转化信息,包括:
若所述目标用户行为序列中包括的用户行为数量小于预设转化深度,则根据第四用户行为对所述用户行为序列进行窗口划分,得到第二窗口序列,所述第四用户行为是所述多个用户行为中预设发生顺序早于所述第三用户行为的预设发生顺序的用户行为,所述第二窗口序列包括所述第一用户行为;
根据所述第二窗口序列中的各用户行为,确定所述用户行为序列对应的转化信息。
7.根据权利要求1所述的方法,其特征在于,所述方法还包括:
若所述第一用户行为的数量小于所述至少一个所述第二用户行为的总数量,则根据所述第一用户行为对所述用户行为序列进行窗口划分,得到第三窗口序列;
根据所述第三窗口序列中的各用户行为,确定所述用户行为序列对应的转化信息。
8.一种用户行为分析装置,其特征在于,所述装置包括:
获取模块,用于获取用户行为序列,所述用户行为序列包括多个用户行为,以及各所述用户行为的发生时间;
第一确定模块,用于根据所述多个用户行为的预设发生顺序,确定所述用户行为序列中第一用户行为的数量,以及至少一个第二用户行为的总数量;其中,所述第一用户行为是所述多个用户行为中预设发生顺序最早的用户行为,所述第二用户行为是预设发生顺序晚于所述第一用户行为的预设发生顺序的任意一个用户行为;
划分模块,用于若所述第一用户行为的数量大于或等于至少一个所述第二用户行为的总数量,则根据第三用户行为对所述用户行为序列进行窗口划分,得到第一窗口序列,所述第三用户行为是所述至少一个第二用户行为中的任意一个用户行为,所述第一窗口序列包括所述第一用户行为;
第二确定模块,用于根据所述第一窗口序列中的各用户行为,确定所述用户行为序列对应的转化信息,所述转化信息包括转化深度和转化时长中的至少一项。
9.一种电子设备,其特征在于,包括:处理器;
存储器,用于存放至少一可执行指令;
所述可执行指令使所述处理器执行如权利要求1~7任意一项所述的用户行为分析方法的操作。
10.一种计算机可读存储介质,其特征在于,所述存储介质中存储有至少一可执行指令,所述可执行指令在电子设备上运行时,使得电子设备执行如权利要求1~7任意一项所述的用户行为分析方法的操作。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202310123846.3A CN116226519A (zh) | 2023-02-16 | 2023-02-16 | 用户行为分析方法、装置、电子设备及存储介质 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202310123846.3A CN116226519A (zh) | 2023-02-16 | 2023-02-16 | 用户行为分析方法、装置、电子设备及存储介质 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN116226519A true CN116226519A (zh) | 2023-06-06 |
Family
ID=86580087
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202310123846.3A Pending CN116226519A (zh) | 2023-02-16 | 2023-02-16 | 用户行为分析方法、装置、电子设备及存储介质 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN116226519A (zh) |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN117150224A (zh) * | 2023-10-30 | 2023-12-01 | 宜兴启明星物联技术有限公司 | 基于物联网的用户行为数据存储分析方法 |
-
2023
- 2023-02-16 CN CN202310123846.3A patent/CN116226519A/zh active Pending
Cited By (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN117150224A (zh) * | 2023-10-30 | 2023-12-01 | 宜兴启明星物联技术有限公司 | 基于物联网的用户行为数据存储分析方法 |
CN117150224B (zh) * | 2023-10-30 | 2024-01-26 | 宜兴启明星物联技术有限公司 | 基于物联网的用户行为数据存储分析方法 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN108804619B (zh) | 兴趣偏好预测方法、装置、计算机设备及存储介质 | |
US10354201B1 (en) | Scalable clustering for mixed machine learning data | |
CN108540826B (zh) | 弹幕推送方法、装置、电子设备及存储介质 | |
CN111177111A (zh) | 基于用户指定分段执行查询时归因建模 | |
US20120109946A1 (en) | Determination of category information using multiple | |
US11809455B2 (en) | Automatically generating user segments | |
CN110968380B (zh) | 数据可视化方法及系统 | |
CN116226519A (zh) | 用户行为分析方法、装置、电子设备及存储介质 | |
CN111143359A (zh) | 查询语句生成方法及装置 | |
CN111159563A (zh) | 用户兴趣点信息的确定方法、装置、设备及存储介质 | |
US10827013B2 (en) | Dynamically modifying systems to increase system efficiency | |
US20210055973A1 (en) | Automatic task distribution and optimization using machine learning and artificial intelligence | |
Rozov et al. | Faucet: streaming de novo assembly graph construction | |
US10313262B1 (en) | System for management of content changes and detection of novelty effects | |
CN108537570B (zh) | 一种信息曝光方法及装置 | |
CN111090790A (zh) | 一种数据处理方法、装置及电子设备 | |
CN113111078B (zh) | 资源数据处理方法、装置、计算机设备和存储介质 | |
US11449523B2 (en) | Generating overlap estimations between high-volume digital data sets based on multiple sketch vector similarity estimators | |
CN111367750B (zh) | 一种异常处理方法、装置及其设备 | |
CN114168624A (zh) | 数据分析方法、计算设备及存储介质 | |
CN110378714B (zh) | 一种处理访问数据的方法和装置 | |
CN107623863B (zh) | 算法测试方法、装置及服务器 | |
CN112799797A (zh) | 一种任务管理的方法和装置 | |
CN111598638A (zh) | 点击率确定方法、装置及设备 | |
CN117952732A (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 |