CN106327236A - 一种确定用户行动轨迹的方法及装置 - Google Patents
一种确定用户行动轨迹的方法及装置 Download PDFInfo
- Publication number
- CN106327236A CN106327236A CN201510406207.3A CN201510406207A CN106327236A CN 106327236 A CN106327236 A CN 106327236A CN 201510406207 A CN201510406207 A CN 201510406207A CN 106327236 A CN106327236 A CN 106327236A
- Authority
- CN
- China
- Prior art keywords
- sequence
- fragment
- place
- frequent
- user
- 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.)
- Granted
Links
Landscapes
- Management, Administration, Business Operations System, And Electronic Commerce (AREA)
- Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
Abstract
本发明实施例公开了一种确定用户行动轨迹的方法及装置,涉及通信技术领域,用于提高确定的用户的行动轨迹的准确度,进而提高为用户进行导航、地点推荐时的效率。该方法包括:根据由用户的N个位置数据构成的轨迹序列确定R个场所序列;根据所述R个场所序列确定M个目标序列片段;将所述M个目标序列片段中的任意一个目标序列片段中的场所按照时间先后顺序串连形成的路线作为所述用户的行动轨迹。本发明实施例提供的技术方案可用于确定用户的行动轨迹的过程中。
Description
技术领域
本发明涉及通信技术领域,尤其涉及一种确定用户行动轨迹的方法及装置。
背景技术
用户的行动轨迹在多个领域都具有重要的潜在价值;例如,在得知用户行动轨迹后,可以为用户导航、为用户实现更精准的地点推荐,还可以为商户优化广告选址等。随着具有自动定位功能的终端设备(例如,智能手机、平板电脑等)的普及,用户的位置数据可以随时得以记录,如何根据用户的位置数据确定用户的行动轨迹具有重要的意义。
目前,在得知用户在不同时间点的位置数据后,分别找出离不同时间点对应的位置数据代表的位置距离最近的场所,将这些场所按照时间先后顺序串联形成的路线作为用户的行动轨迹。
通过上述方法确定的行动轨迹,由于用户所到的场所不一定是距离位置数据最近的场所,通过上述方法确定的用户的行动轨迹的准确度不高,利用该行动轨迹为用户进行导航、地点推荐时的效率也不高。
发明内容
本发明的实施例提供一种确定用户行动轨迹的方法及装置,用于提高确定的用户的行动轨迹的准确度,进而提高为用户进行导航、地点推荐时的效率。
为达到上述目的,本发明的实施例采用如下技术方案:
第一方面,提供一种确定用户行动轨迹的方法,包括:
根据由用户的N个位置数据构成的轨迹序列确定R个场所序列;其中,一个场所序列由N个场所构成,所述N个场所中的第n个场所为所述N个位置数据中的第n个位置数据对应的场所集合中的一个;一个位置数据对应的场所集合为:以该位置数据为中心的预设范围内所有场所的模糊集;1≤n≤N,R≥1,n、N和R均为整数;
根据所述R个场所序列确定M个目标序列片段;其中,当一个序列片段在所述R个场所序列中的多个场所序列中的频繁度大于预设频繁度、且所述多个场所序列的概率之和大于预设概率时,该序列片段为目标序列片段,一个序列片段在一个场所序列中的频繁度是指该序列片段在该场所序列中出现的次数;一个场所序列的概率是指该场所序列中的全部场所的概率的乘积,一个场所的概率是指在该场所所属的场所集合中该场所的概率;M≥1,M为整数;
将所述M个目标序列片段中的任意一个目标序列片段中的场所按照时间先后顺序串连形成的路线作为所述用户的行动轨迹。
结合第一方面,在第一种可能的实现方式中,所述根据所述R个场所序列确定M个目标序列片段,包括:
根据长度为x的频繁片段生成长度为x+1的频繁片段候选集,其中,当x=0时,长度为1的频繁片段候选集为:组成所述R个场所序列的所有不同场所的集合;x≥0,x为整数;
在所述R个场所序列中的每个场所序列中扫描所述长度为x+1的频繁片段候选集中的每个序列片段,得到所述长度为x+1的频繁片段候选集中的每个序列片段在所述R个场所序列中的每个场所序列中的频繁度;
当所述长度为x+1的频繁片段候选集中的一个序列片段在多个场所序列中的频繁度大于预设频繁度、且所述多个场所序列的概率之和大于预设概率时,确定该序列片段为一个长度为x+1的频繁片段;
确定全部的所述频繁片段中的M个频繁片段为M个目标序列片段。
结合第一方面的第一种可能的实现方式,在第二种可能的实现方式中,所述确定全部的所述频繁片段中的M个频繁片段为M个目标序列片段,包括:
确定全部的所述频繁片段中的M个闭合频繁片段为M个目标序列片段;其中,所述全部的所述频繁片段中的闭合频繁片段是指:不为所述全部的所述频繁片段中的任意一个频繁片段的子片段的频繁片段。
结合第一方面的第一种可能的实现方式或第二种可能的实现方式,在第三种可能的实现方式中,在一个所述场所序列中扫描所述长度为x+1的频繁片段候选集中的一个序列片段的过程中,通过自动机记录该序列片段在该场所序列中的频繁度。
结合第一方面、第一方面的第一种可能的实现方式至第三种可能的实现方式任一种,在第四种可能的实现方式中,所述轨迹序列为所述用户在预设时间段内的轨迹序列。
结合第一方面、第一方面的第一种可能的实现方式至第四种可能的实现方式任一种,在第五种可能的实现方式中,所述方法还包括:
将多个用户的目标序列片段进行聚类,得到k个聚类团簇,k≥1,k为整数;
将每个用户表示为具有k个维度的用户向量,一个维度对应一个聚类团簇,一个维度上的值为在该维度对应的聚类团簇中用户的目标序列片段的数量;
建立高斯混合模型,并根据所述多个用户的用户向量拟合所述高斯混合模型的参数,所述高斯混合模型由多个高斯模型构成,一个高斯模型对应一个用户团体,所述多个高斯模型对应的多个用户团体由所述多个用户构成。
第二方面,提供一种确定用户行动轨迹的装置,包括:
第一确定单元,用于根据由用户的N个位置数据构成的轨迹序列确定R个场所序列;其中,一个场所序列由N个场所构成,所述N个场所中的第n个场所为所述N个位置数据中的第n个位置数据对应的场所集合中的一个;一个位置数据对应的场所集合为:以该位置数据为中心的预设范围内所有场所的模糊集;1≤n≤N,R≥1,n、N和R均为整数;
第二确定单元,用于根据所述R个场所序列确定M个目标序列片段;其中,当一个序列片段在所述R个场所序列中的多个场所序列中的频繁度大于预设频繁度、且所述多个场所序列的概率之和大于预设概率时,该序列片段为目标序列片段,一个序列片段在一个场所序列中的频繁度是指该序列片段在该场所序列中出现的次数;一个场所序列的概率是指该场所序列中的全部场所的概率的乘积,一个场所的概率是指在该场所所属的场所集合中该场所的概率;M≥1,M为整数;
执行单元,用于将所述M个目标序列片段中的任意一个目标序列片段中的场所按照时间先后顺序串连形成的路线作为所述用户的行动轨迹。
结合第二方面,在第一种可能的实现方式中,所述第二确定单元包括:
生成单元,用于根据长度为x的频繁片段生成长度为x+1的频繁片段候选集,其中,当x=0时,长度为1的频繁片段候选集为:组成所述R个场所序列的所有不同场所的集合;x≥0,x为整数;
扫描单元,用于在所述R个场所序列中的每个场所序列中扫描所述长度为x+1的频繁片段候选集中的每个序列片段,得到所述长度为x+1的频繁片段候选集中的每个序列片段在所述R个场所序列中的每个场所序列中的频繁度;
第一确定子单元,用于当所述长度为x+1的频繁片段候选集中的一个序列片段在多个场所序列中的频繁度大于预设频繁度、且所述多个场所序列的概率之和大于预设概率时,确定该序列片段为一个长度为x+1的频繁片段;
第二确定子单元,用于确定全部的所述频繁片段中的M个频繁片段为M个目标序列片段。
结合第二方面的第一种可能的实现方式,在第二种可能的实现方式中,所述第二确定子单元具体用于:
确定全部的所述频繁片段中的M个闭合频繁片段为M个目标序列片段;其中,所述全部的所述频繁片段中的闭合频繁片段是指:不为所述全部的所述频繁片段中的任意一个频繁片段的子片段的频繁片段。
结合第二方面的第一种可能的实现方式或第二种可能的实现方式,在第三种可能的实现方式中,所述扫描单元在一个所述场所序列中扫描所述长度为x+1的频繁片段候选集中的一个序列片段的过程中,通过自动机记录该序列片段在该场所序列中的频繁度。
结合第二方面、第二方面的第一种可能的实现方式至第三种可能的实现方式任一种,在第四种可能的实现方式中,所述轨迹序列为所述用户在预设时间段内的轨迹序列。
结合第二方面、第二方面的第一种可能的实现方式至第四种可能的实现方式任一种,在第五种可能的实现方式中,所述装置还包括:
聚类单元,用于将多个用户的目标序列片段进行聚类,得到k个聚类团簇,k≥1,k为整数;
表示单元,用于将每个用户表示为具有k个维度的用户向量,一个维度对应一个聚类团簇,一个维度上的值为在该维度对应的聚类团簇中用户的目标序列片段的数量;
计算单元,用于建立高斯混合模型,并根据所述多个用户的用户向量拟合所述高斯混合模型的参数,所述高斯混合模型由多个高斯模型构成,一个高斯模型对应一个用户团体,所述多个高斯模型对应的多个用户团体由所述多个用户构成。
本发明实施例提供的方法及装置,可以根据由用户的历史位置数据构成的行动轨迹确定用户对应的场所序列,当一个序列片段在多个场所序列中的频繁度越大、且该多个场所序列的概率之和越大时,说明用户经过该序列片段中的场所的概率越大。若将预设频繁度和预设概率的值进行合理的设置时,与现有技术相比,根据本发明实施例提供的方法确定目标序列片段后,根据该目标序列片段确定的用户的行动轨迹较准确,根据该行动轨迹为用户进行导航、地点推荐时的效率较高。
附图说明
为了更清楚地说明本发明实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
图1为本发明实施例提供的一种确定用户行动轨迹的方法的流程图;
图2为本发明实施例提供的一个轨迹序列的示意图;
图3为本发明实施例提供的一种确定用户行动轨迹的装置的结构示意图;
图4为本发明实施例提供的又一种确定用户行动轨迹的装置的结构示意图;
图5为本发明实施例提供的再一种确定用户行动轨迹的装置的结构示意图。
具体实施方式
下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。
本发明实施例的执行主体可以为服务器、工作站和普通PC(PersonalComputer,个人计算机)等,服务器具体可以为HP DL系列服务器,工作站具体可以为Z820系列工作站。本发明实施例中的用户的位置数据是指用户的历史位置数据,用户的位置数据可以为某一时刻用户所在位置的经纬度值,该情况下,用户的轨迹序列可以为根据用户在一段时间内的行动轨迹获取的按照时间先后顺序排列的多个经纬度值。用户的位置数据也可以通过其他方式表示,本发明实施例不对此做具体限定。
本发明实施例提供了一种确定用户行动轨迹的方法,如图1所示,包括:
101、根据由用户的N个位置数据构成的轨迹序列确定R个场所序列;其中,一个场所序列由N个场所构成,所述N个场所中的第n个场所为所述N个位置数据中的第n个位置数据对应的场所集合中的一个;一个位置数据对应的场所集合为:以该位置数据为中心的预设范围内所有场所的模糊集;1≤n≤N,R≥1,n、N和R均为整数。
其中,一个位置数据对应的场所集合中的场所可以有一个或多个,一个位置为N个位置数据中的任意一个位置数据。
场所集合中的场所具体可以为广场、酒吧、高档商场、意大利餐馆、麦当劳、图书馆、公交站牌、停车场和博物馆等场所,当然还可以为其他场所,本发明实施例对此不进行限制。
具体的,当N个位置数据对应的N个场所集合中的场所的个数分别为r1、r2、…rN时,根据由该N个位置数据构成的轨迹序列确定的场所序列可以为R个,R=r1·r2·…·rN。
示例性的,如图2所示,一个轨迹序列由用户的4个位置数据构成,该4个位置数据分别为N1、N2、N3和N4,该轨迹序列实际所表示的轨迹可能为曲线轨迹,图2中为了简便,将该轨迹画为直线。以N1、N2、N3和N4为圆心的虚线圆代表以该位置数据为中心的预设的范围,则N1对应的场所集合为由场所A、B和C构成的模糊集,N2对应的场所集合为由场所A、B和C构成的模糊集,N3对应的场所集合为由场所A和D构成的模糊集,N4对应的场所集合为由场所B构成的模糊集。
则根据该轨迹序列可以确定18个场所序列,分别为:1.[A,A,A,B];2.[A,A,D,B];3.[A,B,A,B];4.[A,B,D,B];5.[A,C,A,B];6.[A,C,D,B];7.[B,A,A,B];8.[B,A,D,B];9.[B,B,A,B];10.[B,B,D,B];11.[B,C,A,B];12.[B,C,D,B];13.[C,A,A,B];14.[C,A,D,B];15.[C,B,A,B];16.[C,B,D,B];17.[C,C,A,B];18.[C,C,D,B]。
102、根据所述R个场所序列确定M个目标序列片段;其中,当一个序列片段在所述R个场所序列中的多个场所序列中的频繁度大于预设频繁度、且所述多个场所序列的概率之和大于预设概率时,该序列片段为目标序列片段,一个序列片段在一个场所序列中的频繁度是指该序列片段在该场所序列中出现的次数;一个场所序列的概率是指该场所序列中的全部场所的概率的乘积,一个场所的概率是指在该场所所属的场所集合中该场所的概率;M≥1,M为整数。
其中,目标序列片段可以由一个场所组成,也可以由多个场所组成。
具体的,当一个场所序列为[C,B,A,B]时,序列片段[AB]、序列片段[CA]、序列片段[BB]和序列片段[CB]等均为该场所序列的子片段,即一个场所序列的子片段为由该场所序列中的至少一个场所组成、且该至少一个场所按照其在所属的场所序列中出现的先后顺序排列。
基于图2所述的示例,序列片段[A]在第1个场所序列中出现了3次,则序列片段[A]在第1个场所序列中的频繁度为3。序列片段[AB]在第3个场所序列中出现了2次,则序列片段[AB]在第3个场所序列中的频繁度为2。需要说明的是,当场所序列为[A、C、B,A,E、B、D、B]时,序列片段[AB]在该场所序列中的频繁度也为2,即确定序列片段的频繁度时,序列片段中的若干个场所不需要在场所序列中连续出现,只要该若干个场所的先后顺序与该若干个场所在场所序列中出现时的先后顺序一致即可。
具体的,在一个位置数据对应的场所集合中,每个场所的概率为用户从该位置数据代表的位置去往该场所的概率。由于距离该位置数据越近的场所,用户从该位置数据代表的位置去往该场所的概率越大,因此,在该场所集合中每个场所的概率与该场所和该位置数据代表的位置之间的距离成反比。
在一个位置数据对应的场所集合中,一个场所的概率可以通过瑞利(Rayleigh)分布计算,具体可以为:其中,d为该位置数据代表的位置与该场所之间的距离,f(d)为在该场所集合中该场所的概率,σ一般取值为1。
示例性的,基于图2所示的示例,N2对应的场所集合为由场所A、B和C构成的模糊集,其中,在该场所集合中场所B的概率为f(d2),其中,如图2所示,d2为N2与场所B之间的距离。
以第4个场所序列为例,第4个场所序列的概率为P=f(d1)·f(d2)·f(d3)·f(d4),其中,d1为N1与A之间的距离,d2为N2与B之间的距离,d3为N3与D之间的距离,d4为N4与B之间的距离。
另外,当一个位置数据的预设的范围为以该位置数据为中心的方圆D米的范围时,在该位置数据对应的场所集合中,一个场所的概率还可以通过以下方式计算:其中,d为该场所与该位置数据代表的位置之间的距离。
示例性的,以第4个场所序列为例,第4个场所序列的概率为
103、将所述M个目标序列片段中的任意一个目标序列片段中的场所按照时间先后顺序串连形成的路线作为所述用户的行动轨迹。
一般情况下,用户每天的行动轨迹会具有一定的规律(例如上班族,在工作日内一般会有固定的行动轨迹)。本发明实施例提供的方法,可以根据由用户的历史位置数据构成的行动轨迹确定用户对应的场所序列,当一个序列片段在多个场所序列中的频繁度越大、且该多个场所序列的概率之和越大时,说明用户经过该序列片段中的场所的概率越大。若将预设频繁度和预设概率的值进行合理的设置时,与现有技术相比,根据本发明实施例提供的方法确定目标序列片段后,根据该目标序列片段确定的用户的行动轨迹较准确,根据该行动轨迹为用户进行导航、地点推荐时的效率较高。
可选的,步骤102在具体实现时可以为:
1021、根据长度为x的频繁片段生成长度为x+1的频繁片段候选集,其中,当x=0时,长度为1的频繁片段候选集为:组成所述R个场所序列的所有不同场所的集合;x≥0,x为整数。
1022、在所述R个场所序列中的每个场所序列中扫描所述长度为x+1的频繁片段候选集中的每个序列片段,得到所述长度为x+1的频繁片段候选集中的每个序列片段在所述R个场所序列中的每个场所序列中的频繁度。
1023、当所述长度为x+1的频繁片段候选集中的一个序列片段在多个场所序列中的频繁度大于预设频繁度、且所述多个场所序列的概率之和大于预设概率时,确定该序列片段为一个长度为x+1的频繁片段。
1024、确定全部的所述频繁片段中的M个频繁片段为M个目标序列片段。
示例性的,基于图2所述的示例,长度为1的频繁片段候选集为组成上述18个场所序列的所有场所的集合,即由场所[A]、[B]、[C]和[D]组成的集合。
具体的,可以采用Apriori算法将长度为x的频繁片段生成长度为x+1的频繁片段候选集。另外,长度为x+1的频繁片段还可以通过以下方式得到:将长度为1的频繁片段依次***到长度为x的频繁片段中的场所中,为了简便描述,在下文中本发明实施例以该情况为例进行描述。
示例性的,当长度为1的频繁片段为[A]和[B]时,则长度为2的频繁片段候选集为由序列片段[AA]、[AB]、[BA]和[BB]组成的集合。
示例性的,当长度为2的频繁片段为[AB]和[AC],长度为1的频繁片段为[A]、[D]时,将[A]***到[AB]中得到的序列片段为[AAB]和[ABA];将[D]***到[AB]中得到的序列片段为[DAB]、[ADB]和[ABD];同理,将[A]***到[AC]中,[D]***到[AC]中可以得到其他的序列片段,则长度为3的频繁片段候选集为由[AAB]、[ABA]、[DAB]、[ADB]、[ABD]、[AAC]、[ACA]、[DAC]、[ADC]和[ACD]组成的集合。
可选的,在一个所述场所序列中扫描所述长度为x+1的频繁片段候选集中的一个序列片段的过程中,通过自动机记录该序列片段在该场所序列中的频繁度。
该情况下,首先,对频繁片段候选集中的每个序列片段设置一个自动机。以上述场所序列15为例,当扫描长度为2的序列片段[CB]和[CA]时,此时[CB]对应第一自动机,[CA]对应第二自动机,则扫描到第一个场所C时,两个自动机同时进入初始状态C。扫描到第二个场所B时,第一个自动机进入第二个状态B,由于B是第一自动机对应的序列片段[CB]的最终状态,因此,[CB]的频繁度加1。扫描到第三个场所A时,第二个自动机进入第二个状态A,由于A是第二自动机对应的序列片段[CA]的最终状态,因此,[CA]的频繁度加1。之后,两个自动机继续扫描,直到扫描到的场所为C时,第一自动机和第二自动机重新进入初始状态C,重复上面的过程,直至扫描至场所序列的最后一位后,确定序列片段在该场所序列中的频繁度。
可选的,步骤1024在具体实现时可以为:确定全部的所述频繁片段中的M个闭合频繁片段为M个目标序列片段;其中,所述全部的所述频繁片段中的闭合频繁片段是指:不为所述全部的所述频繁片段中的任意一个频繁片段的子片段的频繁片段。需要说明的是,一个频繁片段不为自身的子片段。
一般情况下,根据用户的一个轨迹序列可以确定出大量的目标序列片段,该可选的方法,可以减少目标序列片段的数目。
示例性的,若在全部的频繁片段中,共有6个频繁片段,其中,长度为1的频繁片段为[A]、[B]、[C];长度为2的频繁片段为[AB]、[AC];长度为3的频繁片段为[ABC]。则由于[A]、[B]、[C]、[AB]、[AC]均为[ABC]的子片段,频繁片段[ABC]为闭合频繁片段,则可以确定闭合频繁片段[ABC]为目标序列片段。
上述实施例描述了利用一个用户的一个轨迹序列确定用户的目标序列片段的方法,当用户有多个轨迹序列时,可以利用上述方法根据多个轨迹序列确定用户的目标序列片段。
可选的,所述轨迹序列为所述用户在预设时间段内的轨迹序列。
具体的,预设时间段可以为1天也可以为一个上午或者下午,当然也可以为其他预设时间段,本发明实施例对此不做具体限定。
在具体实现时,由于用户在不同的时间段会进行不同的活动,为了提高确定的用户的行动轨迹的准确性,可以利用工作日内用户每天的轨迹序列确定用户的目标序列片段或利用休息日内用户每天的轨迹序列确定用户的目标序列片段。利用该情况下确定的目标序列片段确定用户的行动轨迹时,在工作日与休息日根据用户的行动轨迹可以为用户提供不同的推荐内容,提高推荐的效率。
可选的,上述方法还可以包括以下步骤:
(1)将多个用户的目标序列片段进行聚类,得到k个聚类团簇,k≥1,k为整数。
(2)将每个用户表示为具有k个维度的用户向量,一个维度对应一个聚类团簇,一个维度上的值为在该维度对应的聚类团簇中用户的目标序列片段的数量。
(3)建立高斯混合模型,并根据所述多个用户的用户向量拟合所述高斯混合模型的参数,所述高斯混合模型由多个高斯模型构成,一个高斯模型对应一个用户团体,所述多个高斯模型对应的多个用户团体由所述多个用户构成。
在该可选的方法中,用户的目标序列片段可以为根据一个轨迹序列确定的目标序列片段,也可以为根据多个轨迹序列确定的目标序列片段。
示例性的,可以通过K-means(K均值)、K-medoids(K中位数)等算法对多个用户的目标序列片段进行聚类,当然还可以通过其他的算法实现,本发明实施例对此不进行限制。
假设上述多个用户可以被分为J个用户团体,分别为C1,...,CJ,GMM(Gaussian Mixture Model,高斯混合模型)由J个高斯模型构成,一个高斯模型对应一个用户团体。一个高斯模型可以通过该高斯模型对应的用户团体里的用户向量构造。假设有I个用户的I个用户向量(一般情况下,I的值较大),则J个高斯模型线性加成组成的GMM的概率密度函数为:1≤j≤J,1≤i≤I,i、I、j和J均为整数。
其中,P(Cj)为第j个用户团体在I个用户中出现的概率,P(Ui|Cj)为第i个用户在第j个用户团体中出现的概率,P(Ui|Θ)为参数为Θ时第i个用户出现的概率。
Θ中包括2J个参数:分别为μ1,...,μJ和Σ1,...,ΣJ,其中,μj和Σj为第j个用户团体对应的参数。下文中μj g是指第g(g≥0,g为整数)轮计算得到的第j个用户团体对应的μj,Σj g是指第g轮计算得到的第j个用户团体对应的Σj,拟合GMM的参数的过程(即计算μ1,...,μJ和Σ1,...,ΣJ的过程)包括:
(1)利用根据μj (g)和Σj (g)计算得到的P(Ui|Cj)和P(Cj),根据计算μj (g+1),利用μj (g+1),根据 计算根据μj (g+1)和计算P(Ui|Cj)和P(Cj)。其中,计算μj (g+1)和时用到的P(Cj|Ui)可以通过根据μj (g)和Σj (g)计算得到的P(Ui|Cj)和P(Cj)计算得到。
(2)令g=g+1。
重复步骤(1)和(2),直至P(Ui|Cj)收敛,将P(Ui|Cj)收敛时的μj和Σj确定为第j个用户团体对应的参数。
当g=0时,初始化μj和Σj: 根据μj (0)和Σj (0)可以计算P(Ui|Cj)和P(Cj),其中,Ui是指第i个用户的用户向量。
根据每个用户的用户向量和每个用户团体对应的参数可以确定每个用户属于每个用户团体的概率,当一个用户属于一个用户团体的概率最大时,确定该用户所属的用户团体为该用户团体。那么根据该方法可以确定出上述多个用户所属的用户团体。
该可选的方法,将用户对应的大量的目标序列片段经过聚类,简化为了用户向量,并根据多个用户的用户向量建立了GMM模型,拟合了GMM模型的参数,使得根据用户的用户向量可以确定该用户在各个用户团体的概率,将概率最大的确定为用户所属的用户团体。该可选的方法,可以对处于相同用户团体的用户进行相同的推荐,提高推荐的效率。
本发明实施例提供了一种确定用户行动轨迹的装置30,用于执行如图1所示的确定用户行动轨迹的方法,如图3所示,该装置30包括:
第一确定单元301,用于根据由用户的N个位置数据构成的轨迹序列确定R个场所序列;其中,一个场所序列由N个场所构成,所述N个场所中的第n个场所为所述N个位置数据中的第n个位置数据对应的场所集合中的一个;一个位置数据对应的场所集合为:以该位置数据为中心的预设范围内所有场所的模糊集;1≤n≤N,R≥1,n、N和R均为整数;
第二确定单元302,用于根据所述R个场所序列确定M个目标序列片段;其中,当一个序列片段在所述R个场所序列中的多个场所序列中的频繁度大于预设频繁度、且所述多个场所序列的概率之和大于预设概率时,该序列片段为目标序列片段,一个序列片段在一个场所序列中的频繁度是指该序列片段在该场所序列中出现的次数;一个场所序列的概率是指该场所序列中的全部场所的概率的乘积,一个场所的概率是指在该场所所属的场所集合中该场所的概率;M≥1,M为整数;
执行单元303,用于将所述M个目标序列片段中的任意一个目标序列片段中的场所按照时间先后顺序串连形成的路线作为所述用户的行动轨迹。
可选的,如图4所示,所述第二确定单元302可以包括:
生成单元3021,用于根据长度为x的频繁片段生成长度为x+1的频繁片段候选集,其中,当x=0时,长度为1的频繁片段候选集为:组成所述R个场所序列的所有不同场所的集合;x≥0,x为整数;
扫描单元3022,用于在所述R个场所序列中的每个场所序列中扫描所述长度为x+1的频繁片段候选集中的每个序列片段,得到所述长度为x+1的频繁片段候选集中的每个序列片段在所述R个场所序列中的每个场所序列中的频繁度;
第一确定子单元3023,用于当所述长度为x+1的频繁片段候选集中的一个序列片段在多个场所序列中的频繁度大于预设频繁度、且所述多个场所序列的概率之和大于预设概率时,确定该序列片段为一个长度为x+1的频繁片段;
第二确定子单元3024,用于确定全部的所述频繁片段中的M个频繁片段为M个目标序列片段。
可选的,所述第二确定子单元3024具体用于:
确定全部的所述频繁片段中的M个闭合频繁片段为M个目标序列片段;其中,所述全部的所述频繁片段中的闭合频繁片段是指:不为所述全部的所述频繁片段中的任意一个频繁片段的子片段的频繁片段。
可选的,所述扫描单元3022在一个所述场所序列中扫描所述长度为x+1的频繁片段候选集中的一个序列片段的过程中,通过自动机记录该序列片段在该场所序列中的频繁度。
可选的,所述轨迹序列为所述用户在预设时间段内的轨迹序列。
可选的,如图4所示,所述装置30还可以包括:
聚类单元304,用于将多个用户的目标序列片段进行聚类,得到k个聚类团簇,k≥1,k为整数;
表示单元305,用于将每个用户表示为具有k个维度的用户向量,一个维度对应一个聚类团簇,一个维度上的值为在该维度对应的聚类团簇中用户的目标序列片段的数量;
计算单元306,用于建立高斯混合模型,并根据所述多个用户的用户向量拟合所述高斯混合模型的参数,所述高斯混合模型由多个高斯模型构成,一个高斯模型对应一个用户团体,所述多个高斯模型对应的多个用户团体由所述多个用户构成。
一般情况下,用户每天的行动轨迹会具有一定的规律(例如上班族,在工作日内一般会有固定的行动轨迹)。本发明实施例提供的装置,可以根据由用户的历史位置数据构成的行动轨迹确定用户对应的场所序列,当一个序列片段在多个场所序列中的频繁度越大、且该多个场所序列的概率之和越大时,说明用户经过该序列片段中的场所的概率越大。若将预设频繁度和预设概率的值进行合理的设置时,与现有技术相比,根据本发明实施例提供的方法确定目标序列片段后,根据该目标序列片段确定的用户的行动轨迹较准确,根据该行动轨迹为用户进行导航、地点推荐时的效率较高。
在硬件实现上,上述装置30中的各个单元可以以硬件形式内嵌于或独立于装置30的处理器中,也可以以软件形式存储于装置30的存储器中,以便于处理器调用执行以上各个单元对应的操作,该处理器可以为中央处理单元(CPU)、微处理器、单片机等。
如图5所示,本发明实施例提供另一种确定用户行动轨迹的装置50,用于执行如图1所示的确定用户行动轨迹的方法,该装置50包括:存储器501、处理器502和总线***503。
其中,存储器501和处理器502之间是通过总线***503耦合在一起的,其中存储器501可能包含随机存取存储器,也可能还包括非易失性存储器,例如至少一个磁盘存储器。总线***503,可以是ISA总线、PCI总线或EISA总线等。该总线***503可以分为地址总线、数据总线、控制总线等。为便于表示,图5中仅用一条粗线表示,但并不表示仅有一根总线或一种类型的总线。
存储器501用于存储一组代码,该代码用于控制处理器502执行以下动作:
根据由用户的N个位置数据构成的轨迹序列确定R个场所序列;其中,一个场所序列由N个场所构成,所述N个场所中的第n个场所为所述N个位置数据中的第n个位置数据对应的场所集合中的一个;一个位置数据对应的场所集合为:以该位置数据为中心的预设范围内所有场所的模糊集;1≤n≤N,R≥1,n、N和R均为整数;
根据所述R个场所序列确定M个目标序列片段;其中,当一个序列片段在所述R个场所序列中的多个场所序列中的频繁度大于预设频繁度、且所述多个场所序列的概率之和大于预设概率时,该序列片段为目标序列片段,一个序列片段在一个场所序列中的频繁度是指该序列片段在该场所序列中出现的次数;一个场所序列的概率是指该场所序列中的全部场所的概率的乘积,一个场所的概率是指在该场所所属的场所集合中该场所的概率;M≥1,M为整数;
将所述M个目标序列片段中的任意一个目标序列片段中的场所按照时间先后顺序串连形成的路线作为所述用户的行动轨迹。
可选的,所述处理器502具体用于:
根据长度为x的频繁片段生成长度为x+1的频繁片段候选集,其中,当x=0时,长度为1的频繁片段候选集为:组成所述R个场所序列的所有不同场所的集合;x≥0,x为整数;
在所述R个场所序列中的每个场所序列中扫描所述长度为x+1的频繁片段候选集中的每个序列片段,得到所述长度为x+1的频繁片段候选集中的每个序列片段在所述R个场所序列中的每个场所序列中的频繁度;
当所述长度为x+1的频繁片段候选集中的一个序列片段在多个场所序列中的频繁度大于预设频繁度、且所述多个场所序列的概率之和大于预设概率时,确定该序列片段为一个长度为x+1的频繁片段;
确定全部的所述频繁片段中的M个频繁片段为M个目标序列片段。
可选的,所述处理器502具体用于:
确定全部的所述频繁片段中的M个闭合频繁片段为M个目标序列片段;其中,所述全部的所述频繁片段中的闭合频繁片段是指:不为所述全部的所述频繁片段中的任意一个频繁片段的子片段的频繁片段。
可选的,所述处理器502在一个所述场所序列中扫描所述长度为x+1的频繁片段候选集中的一个序列片段的过程中,通过自动机记录该序列片段在该场所序列中的频繁度。
可选的,所述轨迹序列为所述用户在预设时间段内的轨迹序列。
可选的,所述处理器502还用于:
将多个用户的目标序列片段进行聚类,得到k个聚类团簇,k≥1,k为整数;
将每个用户表示为具有k个维度的用户向量,一个维度对应一个聚类团簇,一个维度上的值为在该维度对应的聚类团簇中用户的目标序列片段的数量;
建立高斯混合模型,并根据所述多个用户的用户向量拟合所述高斯混合模型的参数,所述高斯混合模型由多个高斯模型构成,一个高斯模型对应一个用户团体,所述多个高斯模型对应的多个用户团体由所述多个用户构成。
一般情况下,用户每天的行动轨迹会具有一定的规律(例如上班族,在工作日内一般会有固定的行动轨迹)。本发明实施例提供的装置,可以根据由用户的历史位置数据构成的行动轨迹确定用户对应的场所序列,当一个序列片段在多个场所序列中的频繁度越大、且该多个场所序列的概率之和越大时,说明用户经过该序列片段中的场所的概率越大。若将预设频繁度和预设概率的值进行合理的设置时,与现有技术相比,根据本发明实施例提供的方法确定目标序列片段后,根据该目标序列片段确定的用户的行动轨迹较准确,根据该行动轨迹为用户进行导航、地点推荐时的效率较高。
在本申请所提供的几个实施例中,应该理解到,所揭露的装置和方法,可以通过其它的方式实现。例如,以上所描述的装置实施例仅仅是示意性的,例如,所述模块的划分,仅仅为一种逻辑功能划分,实际实现时可以有另外的划分方式,例如多个模块或组件可以结合或者可以集成到另一个***,或一些特征可以忽略,或不执行。
所述作为分离部件说明的模块可以是或者也可以不是物理上分开的,作为模块显示的部件可以是或者也可以不是物理模块,即可以位于一个地方,或者也可以分布到多个网络单元上。可以根据实际的需要选择其中的部分或者全部单元来实现本实施例方案的目的。
另外,在本发明各个实施例中的各功能模块可以集成在一个处理模块中,也可以两个或两个以上模块集成在一个模块中。上述集成的模块既可以采用硬件的形式实现,也可以采用硬件加软件功能模块的形式实现。
上述以软件功能模块的形式实现的集成的模块,可以存储在一个计算机可读取存储介质中。上述软件功能模块存储在一个存储介质中,包括若干指令用以使得一台计算机设备(可以是个人计算机,服务器,或者网络设备等)执行本发明各个实施例所述方法的部分步骤。而前述的存储介质包括:U盘、移动硬盘、只读存储器(Read-Only Memory,简称ROM)、随机存取存储器(Random Access Memory,简称RAM)、磁碟或者光盘等各种可以存储程序代码的介质。
最后应说明的是:以上实施例仅用以说明本发明的技术方案,而非对其限制;尽管参照前述实施例对本发明进行了详细的说明,本领域的普通技术人员应当理解:其依然可以对前述各实施例所记载的技术方案进行修改,或者对其中部分技术特征进行等同替换;而这些修改或者替换,并不使相应技术方案的本质脱离本发明各实施例技术方案的精神和范围。
Claims (12)
1.一种确定用户行动轨迹的方法,其特征在于,包括:
根据由用户的N个位置数据构成的轨迹序列确定R个场所序列;其中,一个场所序列由N个场所构成,所述N个场所中的第n个场所为所述N个位置数据中的第n个位置数据对应的场所集合中的一个;一个位置数据对应的场所集合为:以该位置数据为中心的预设范围内所有场所的模糊集;1≤n≤N,R≥1,n、N和R均为整数;
根据所述R个场所序列确定M个目标序列片段;其中,当一个序列片段在所述R个场所序列中的多个场所序列中的频繁度大于预设频繁度、且所述多个场所序列的概率之和大于预设概率时,该序列片段为目标序列片段,一个序列片段在一个场所序列中的频繁度是指该序列片段在该场所序列中出现的次数;一个场所序列的概率是指该场所序列中的全部场所的概率的乘积,一个场所的概率是指在该场所所属的场所集合中该场所的概率;M≥1,M为整数;
将所述M个目标序列片段中的任意一个目标序列片段中的场所按照时间先后顺序串连形成的路线作为所述用户的行动轨迹。
2.根据权利要求1所述的方法,其特征在于,所述根据所述R个场所序列确定M个目标序列片段,包括:
根据长度为x的频繁片段生成长度为x+1的频繁片段候选集,其中,当x=0时,长度为1的频繁片段候选集为:组成所述R个场所序列的所有不同场所的集合;x≥0,x为整数;
在所述R个场所序列中的每个场所序列中扫描所述长度为x+1的频繁片段候选集中的每个序列片段,得到所述长度为x+1的频繁片段候选集中的每个序列片段在所述R个场所序列中的每个场所序列中的频繁度;
当所述长度为x+1的频繁片段候选集中的一个序列片段在多个场所序列中的频繁度大于预设频繁度、且所述多个场所序列的概率之和大于预设概率时,确定该序列片段为一个长度为x+1的频繁片段;
确定全部的所述频繁片段中的M个频繁片段为M个目标序列片段。
3.根据权利要求2所述的方法,其特征在于,所述确定全部的所述频繁片段中的M个频繁片段为M个目标序列片段,包括:
确定全部的所述频繁片段中的M个闭合频繁片段为M个目标序列片段;其中,所述全部的所述频繁片段中的闭合频繁片段是指:不为所述全部的所述频繁片段中的任意一个频繁片段的子片段的频繁片段。
4.根据权利要求2或3所述的方法,其特征在于,在一个所述场所序列中扫描所述长度为x+1的频繁片段候选集中的一个序列片段的过程中,通过自动机记录该序列片段在该场所序列中的频繁度。
5.根据权利要求1-4任一项所述的方法,其特征在于,所述轨迹序列为所述用户在预设时间段内的轨迹序列。
6.根据权利要求1-5任一项所述的方法,其特征在于,所述方法还包括:
将多个用户的目标序列片段进行聚类,得到k个聚类团簇,k≥1,k为整数;
将每个用户表示为具有k个维度的用户向量,一个维度对应一个聚类团簇,一个维度上的值为在该维度对应的聚类团簇中用户的目标序列片段的数量;
建立高斯混合模型,并根据所述多个用户的用户向量拟合所述高斯混合模型的参数,所述高斯混合模型由多个高斯模型构成,一个高斯模型对应一个用户团体,所述多个高斯模型对应的多个用户团体由所述多个用户构成。
7.一种确定用户行动轨迹的装置,其特征在于,包括:
第一确定单元,用于根据由用户的N个位置数据构成的轨迹序列确定R个场所序列;其中,一个场所序列由N个场所构成,所述N个场所中的第n个场所为所述N个位置数据中的第n个位置数据对应的场所集合中的一个;一个位置数据对应的场所集合为:以该位置数据为中心的预设范围内所有场所的模糊集;1≤n≤N,R≥1,n、N和R均为整数;
第二确定单元,用于根据所述R个场所序列确定M个目标序列片段;其中,当一个序列片段在所述R个场所序列中的多个场所序列中的频繁度大于预设频繁度、且所述多个场所序列的概率之和大于预设概率时,该序列片段为目标序列片段,一个序列片段在一个场所序列中的频繁度是指该序列片段在该场所序列中出现的次数;一个场所序列的概率是指该场所序列中的全部场所的概率的乘积,一个场所的概率是指在该场所所属的场所集合中该场所的概率;M≥1,M为整数;
执行单元,用于将所述M个目标序列片段中的任意一个目标序列片段中的场所按照时间先后顺序串连形成的路线作为所述用户的行动轨迹。
8.根据权利要求7所述的装置,其特征在于,所述第二确定单元包括:
生成单元,用于根据长度为x的频繁片段生成长度为x+1的频繁片段候选集,其中,当x=0时,长度为1的频繁片段候选集为:组成所述R个场所序列的所有不同场所的集合;x≥0,x为整数;
扫描单元,用于在所述R个场所序列中的每个场所序列中扫描所述长度为x+1的频繁片段候选集中的每个序列片段,得到所述长度为x+1的频繁片段候选集中的每个序列片段在所述R个场所序列中的每个场所序列中的频繁度;
第一确定子单元,用于当所述长度为x+1的频繁片段候选集中的一个序列片段在多个场所序列中的频繁度大于预设频繁度、且所述多个场所序列的概率之和大于预设概率时,确定该序列片段为一个长度为x+1的频繁片段;
第二确定子单元,用于确定全部的所述频繁片段中的M个频繁片段为M个目标序列片段。
9.根据权利要求8所述的装置,其特征在于,所述第二确定子单元具体用于:
确定全部的所述频繁片段中的M个闭合频繁片段为M个目标序列片段;其中,所述全部的所述频繁片段中的闭合频繁片段是指:不为所述全部的所述频繁片段中的任意一个频繁片段的子片段的频繁片段。
10.根据权利要求8或9所述的装置,其特征在于,所述扫描单元在一个所述场所序列中扫描所述长度为x+1的频繁片段候选集中的一个序列片段的过程中,通过自动机记录该序列片段在该场所序列中的频繁度。
11.根据权利要求7-10任一项所述的装置,其特征在于,所述轨迹序列为所述用户在预设时间段内的轨迹序列。
12.根据权利要求7-11任一项所述的装置,其特征在于,所述装置还包括:
聚类单元,用于将多个用户的目标序列片段进行聚类,得到k个聚类团簇,k≥1,k为整数;
表示单元,用于将每个用户表示为具有k个维度的用户向量,一个维度对应一个聚类团簇,一个维度上的值为在该维度对应的聚类团簇中用户的目标序列片段的数量;
计算单元,用于建立高斯混合模型,并根据所述多个用户的用户向量拟合所述高斯混合模型的参数,所述高斯混合模型由多个高斯模型构成,一个高斯模型对应一个用户团体,所述多个高斯模型对应的多个用户团体由所述多个用户构成。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201510406207.3A CN106327236B (zh) | 2015-07-10 | 2015-07-10 | 一种确定用户行动轨迹的方法及装置 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201510406207.3A CN106327236B (zh) | 2015-07-10 | 2015-07-10 | 一种确定用户行动轨迹的方法及装置 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN106327236A true CN106327236A (zh) | 2017-01-11 |
CN106327236B CN106327236B (zh) | 2020-04-14 |
Family
ID=57725345
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201510406207.3A Active CN106327236B (zh) | 2015-07-10 | 2015-07-10 | 一种确定用户行动轨迹的方法及装置 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN106327236B (zh) |
Cited By (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN108647735A (zh) * | 2018-05-15 | 2018-10-12 | 广州杰赛科技股份有限公司 | 用户出行规律分析方法、装置、设备及存储介质 |
CN108921876A (zh) * | 2018-07-10 | 2018-11-30 | 北京旷视科技有限公司 | 视频处理方法、装置和***及存储介质 |
WO2020057275A1 (zh) * | 2018-09-17 | 2020-03-26 | 北京京东尚科信息技术有限公司 | 轨迹的确定方法和装置、时间的推荐方法、装置和*** |
CN113286333A (zh) * | 2020-02-19 | 2021-08-20 | 华为技术有限公司 | 网络选择的方法和装置 |
CN118260698A (zh) * | 2024-05-07 | 2024-06-28 | 北京中核华辉科技发展有限公司 | 基于动态表单对工业数据分析方法及*** |
Citations (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN104239556A (zh) * | 2014-09-25 | 2014-12-24 | 西安理工大学 | 基于密度聚类的自适应轨迹预测方法 |
-
2015
- 2015-07-10 CN CN201510406207.3A patent/CN106327236B/zh active Active
Patent Citations (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN104239556A (zh) * | 2014-09-25 | 2014-12-24 | 西安理工大学 | 基于密度聚类的自适应轨迹预测方法 |
Cited By (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN108647735A (zh) * | 2018-05-15 | 2018-10-12 | 广州杰赛科技股份有限公司 | 用户出行规律分析方法、装置、设备及存储介质 |
CN108647735B (zh) * | 2018-05-15 | 2021-01-12 | 广州杰赛科技股份有限公司 | 用户出行规律分析方法、装置、设备及存储介质 |
CN108921876A (zh) * | 2018-07-10 | 2018-11-30 | 北京旷视科技有限公司 | 视频处理方法、装置和***及存储介质 |
WO2020057275A1 (zh) * | 2018-09-17 | 2020-03-26 | 北京京东尚科信息技术有限公司 | 轨迹的确定方法和装置、时间的推荐方法、装置和*** |
CN113286333A (zh) * | 2020-02-19 | 2021-08-20 | 华为技术有限公司 | 网络选择的方法和装置 |
CN118260698A (zh) * | 2024-05-07 | 2024-06-28 | 北京中核华辉科技发展有限公司 | 基于动态表单对工业数据分析方法及*** |
Also Published As
Publication number | Publication date |
---|---|
CN106327236B (zh) | 2020-04-14 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN106327236A (zh) | 一种确定用户行动轨迹的方法及装置 | |
EP3822880A1 (en) | Load prediction method and apparatus based on neural network | |
CN101210825B (zh) | 地图信息生成*** | |
CN111854779B (zh) | 一种路线规划方法、装置、电子设备及可读存储介质 | |
CN105528955B (zh) | 生成道路网络的方法及其装置 | |
CN104270714A (zh) | 确定用户行动轨迹的方法和装置 | |
CN104320789B (zh) | 一种基于博弈论的车联网rsu最优配置方法 | |
CN108073727A (zh) | 场所搜索的数据处理方法与装置 | |
CN104270818A (zh) | 一种停车场中车辆的无线定位方法 | |
CN106980924A (zh) | 基于需求预测的电动车充换电资源推荐方法及装置 | |
CN106595683A (zh) | 一种导航方法及装置 | |
CN111415035A (zh) | 一种预估建筑功能户型比的方法及装置 | |
CN111814079A (zh) | 结合聚类与cmab的群智感知车联网用户筛选方法 | |
CN108510050A (zh) | 一种基于混洗蛙跳的特征选择方法 | |
CN113706220A (zh) | 用户画像确定、用户需求预测方法以及数据处理*** | |
CN103971136A (zh) | 一种面向大规模数据的并行结构化支持向量机分类方法 | |
CN111784084A (zh) | 基于梯度提升决策树的出行生成预测方法、***及装置 | |
CN107704942A (zh) | 配送路径确定方法、装置和设备 | |
CN105096589B (zh) | 一种选取交通道路中代表性节点的方法、***及客户端 | |
CN115620252A (zh) | 轨迹纠偏方法、装置、计算机设备和存储介质 | |
CN116382306B (zh) | 全覆盖作业农机的轨迹跟踪控制方法、装置、设备及介质 | |
CN108985488A (zh) | 个体出行目的地预测的方法 | |
CN113358127A (zh) | 道路权值确定方法、模型生成方法和路线规划方法及装置 | |
CN107124727A (zh) | 一种pci优化方法及装置 | |
CN108364125A (zh) | 一种车载式移动众包多目标任务分发方法 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PB01 | Publication | ||
PB01 | Publication | ||
C10 | Entry into substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
GR01 | Patent grant | ||
GR01 | Patent grant |