一种基于访问行为的活跃用户识别方法技术

技术编号:14135712 阅读:57 留言:0更新日期:2016-12-10 03:18
一种基于访问行为的活跃用户识别方法,步骤如下:1)解析用户访问日志,提取用户的有用信息:包含用户ID、用户姓名、用户访问时间、用户访问模块URL;2)统计用户模块访问次数;3)过滤冗余用户和访问模块,根据得到的每个用户每日模块的访问次数,由于用户的数量远远大于模块的数量,用户‑模块访问组成的矩阵将会是一个高维稀疏的矩阵,对矩阵进行优化,舍掉不必要的特征,只留下核心模块;4)划分用户身份,采用聚类领域的相关算法对用户进行划分;考虑到只需要将用户划分成活跃用户和非活跃用户,采用K‑means算法,其中K=2,进行活跃用户划分。

【技术实现步骤摘要】

本专利技术涉及用户身份识别领域,具体而言,通过分析用户的访问行为,对用户活跃身份进行识别划分。技术背景随着互联网技术的快速发展,互联网用户的使用人数也在逐日增加,这些用户每日访问互联网网站,都会产生大量的访问信息,合理的利用这些访问信息,不仅可以挖掘用户的使用偏好,还能鉴别用户的活跃身份,使公司从中能够获得巨大的商业价值。然而,通过我们对访问量的分析发现,虽然访问总量很多,但冗余、垃圾、的访问信息依然不少,访问模块虽多,但核心模块却很有限,总的访问用户数量庞大,但活跃用户并不多。现有的技术,很难有一种系统的方法,能够依据大量的访问信息,筛选有价值的访问内容和有效的访问模块,合理的判断用户的活跃身份。
技术实现思路
本专利技术目的是,提出一种基于访问行为的活跃用户身份识别方法,该方法可以有效的依据用户对网站各个模块的访问量,根据访问量的信息,合理判别用户身份。本专利技术技术方案是:一种基于访问行为的活跃用户识别方法,步骤如下:1)解析用户访问日志,访问日志来自于数据库的中日志表;解析日志的任务,提取用户的有用信息:包含用户ID、用户姓名、用户访问时间、用户访问模块URL;2)统计用户模块访问次数,首先应在数据库中建立一张访问模块信息的维表,该维表应该包含各级模块的URL地址以及各级模块之间的对应关系;访问的模块有一级至三级从高级到低级的模块结构,若一级模块名称、二级模块名称、三级模块中有上下级模块缺失(比如只有上级一级模块没有下级二级模块和三级模块,或者只有上级一、二级模块,没有下级三级模块),应进行必要的补充;然后,依据之前提取访问日志信息,匹配模块维表,统计用户每天在不同模块的访问次数;3)过滤冗余用户和访问模块,根据得到的每个用户每日模块的访问次数,由于用户的数量远远大于模块的数量,用户-模块访问组成的矩阵将会是一个高维稀疏的矩阵,对矩阵进行优化:第一是面向用户,根据访问量统计用户频数分布,把频数和访问量同时较小的用户过滤掉,第二是面向模块,利用SVD技术对模块维度进行特征抽取,舍掉不必要的特征,只留下核心模块;4)划分用户身份,采用聚类领域的相关算法对用户进行划分;考虑到只需要将用户划分成活跃用户和非活跃用户,故采用如K-means算法,其中K=2,进行活跃用户划分。进一步,具体步骤如下:S11:解析用户访问日志,根据留存的用户访问网站的历史访问日志,在对应的BI架构数据仓库系统中,访问日志通常放在数据仓库层;对数据仓库层访问日志表解析中,首先应该核心提取访问用户ID,访问用户的访问时间,访问地址URL字段;在日志处理中,限制爬虫,日志表里有限制爬虫字段,spider=1,限制非爬虫;过滤内部IP即关联内部IP表;访问链接URL解析,由于访问链接地址多种多样,采用正则表达式对地址进行有效的过滤,包括确立链接开头地址;对于无效用户同时排除;S12:统计用户模块访问次数,首先应该在数据仓库中建立好访问模块对应的维表,维表包含链接编号即主键、一级模块名称、二级模块名称、三级模块名称、地址链接字段;由于访问模块有一级至三级从高级到低级的模块结构,各个模块存在层级关系,应确立地址链接URL属于的访问模块;有的模块还会存在层级不全情况,用高级模块去补全低级模块;三级模块如果为空的话,就用“设置主打模块”去补充三级模块,如果只有一个一级“登陆”模块,就用“登陆”模块去补第二级和第三级模块;根据维表,用之前从访问日志提取的信息去匹配维表,统计用户每日访问模块次数,处理方法应根据访问日期,访问用户ID去分组,先统计底层即三级模块的访问次数,再在这基础上,统计二级、一级模块的次数,在这同时,还需统计每个用户每一级模块下所有模块的访问次数总和;S13:过滤冗余用户和访问模块,第一是对用户过滤,对用户过滤的方法用相对简单,用基本统计方法即可完成,将频率值较低和总的点击次数也比较低的用户直接过滤 掉。或采用对冗余模块的过滤,即利用矩阵分析里面奇异值分解SVD技术,将矩阵分解一种类型,数学表达形式为A=U∑V,其中A是一个m*n的矩阵,就是用户-模块矩阵,通过分解,得到U(m*m),∑(m*n),V(n*n)三个矩阵,其中矩阵∑是一个对角阵,主对角线上的元素就是奇异值,通常一定比例的奇异值之和就能占据到全部奇异值和的99%以上,这里取r(r<n)个奇异值,用数学来表示,A≈U(m*r)∑(m*r)V(r*n),这里用表达式右边的部分去代替原始矩阵A,由于r(分解后的访问模块数)的值小于n(原始的访问模块数),就实行了特征降维的操作;用户-模块当成矩阵A,原始的一级模块有登陆、产品管理、会员信息11个模块,经过SVD分解之后,只剩下包括登陆、前台页面查看5个模块,降低了访问模块的冗余度;S14:划分用户身份,采用机器学习算法对用户划分大致分为两类,一类是有监督的学习:分类,另一类是无监督的学习:聚类算法采用简单的K-means算法;K-means算法以距离作为相似度,认为距离越近的两个对象,之间的相似度就越高,就应该被划分到同一类簇中;随机选取K个对象作为类簇中心,然后把剩余对象划分到与类簇中心距离最近的类簇中,然后重新计算类簇中心,重新划分对象,直到类簇不再变化。K-means算法简单高效,聚类效果较好,比较适合处理类似活跃用户划分问题。有益效果:本专利技术提出的一种基于访问行为的活跃用户身份识别方法,可以有效的依据用户对网站各个模块的访问量,根据访问量的信息,合理判别用户身份。本专利技术是一种系统的方法,能够依据大量的访问信息,筛选有价值的访问内容和有效的访问模块,合理的判断用户的活跃身份。附图说明图1本实施例的一种基于访问行为的活跃用户识别方法流程图。具体实施方案下面结合附图和实施例,对本专利技术的具体实施方案作进一步详细描述。参阅图1所示,本专利技术的实施步骤如下:S11:解析用户访问日志一般互联网公司都会留有用户访问网站的历史访问日志,在对应的BI架构数据仓库系统中,访问日志通常放在数据仓库层。对数据仓库层访问日志表解析中,首先应该核心提取访问用户ID,访问用户访问时间,访问地址URL字段。在日志处理中,还应该注意以下几个问题,比如限制爬虫(日志表里有限制爬虫字段,spider=1,限制非爬虫);过滤内部IP(关联内部IP表);访问链接URL解析,由于访问链接地址多种多样(PC端,触屏端等),应该采用如正则表达式对地址进行有效的过滤之类的,比如确立链接开头地址(http开头、m开头);对于无效用户(如访问用户ID<=0)也应同时排除。S12:统计用户模块访问次数在这个方面,首先应该在数据仓库中建立好访问模块对应的维表,维表包含链接编号(主键),一级模块名称、二级模块名称、三级模块名称、地址链接字段,维表的设计应该满足一定的要求。由于各个模块存在层级关系(访问模块有三级结构),应确立好地址链接URL属于的访问模块。有的模块还会存在层级不全情况,如下表所示,此时应该用高级模块去补全低级模块,比如一级“产品管理”模块,二级“设置主打产品模块”,三级模块如果为空的话,就用“设置主打模块”去补充三级模块。如果只有一个一级“登陆”模块,就用“登陆”模块去补第二级和第三级模块。链接编号 一级模块 二级模块 三级模块 地址链接 1本文档来自技高网...
一种基于访问行为的活跃用户识别方法

【技术保护点】
一种基于访问行为的活跃用户识别方法,其特征是步骤如下:1)解析用户访问日志,访问日志来自于数据库的中日志表;解析日志的任务,提取用户的有用信息:包含用户ID、用户姓名、用户访问时间、用户访问模块URL;2)统计用户模块访问次数,首先应在数据库中建立一张访问模块信息的维表,该维表应该包含各级模块的URL地址以及各级模块之间的对应关系;访问的模块有一级至三级从高级到低级的模块结构,若一级模块名称、二级模块名称、三级模块中有上下级模块缺失,应进行必要的补充;然后,依据之前提取访问日志信息,匹配模块维表,统计用户每天在不同模块的访问次数;3)过滤冗余用户和访问模块,根据得到的每个用户每日模块的访问次数,由于用户的数量远远大于模块的数量,用户‑模块访问组成的矩阵将会是一个高维稀疏的矩阵,对矩阵进行优化:第一是面向用户,根据访问量统计用户频数分布,把频数和访问量同时较小的用户过滤掉,第二是面向模块,利用SVD技术对模块维度进行特征抽取,舍掉不必要的特征,只留下核心模块;4)划分用户身份,采用聚类领域的相关算法对用户进行划分;考虑到只需要将用户划分成活跃用户和非活跃用户,故采用如K‑means算法,其中K=2,进行活跃用户划分。...

【技术特征摘要】
1.一种基于访问行为的活跃用户识别方法,其特征是步骤如下:1)解析用户访问日志,访问日志来自于数据库的中日志表;解析日志的任务,提取用户的有用信息:包含用户ID、用户姓名、用户访问时间、用户访问模块URL;2)统计用户模块访问次数,首先应在数据库中建立一张访问模块信息的维表,该维表应该包含各级模块的URL地址以及各级模块之间的对应关系;访问的模块有一级至三级从高级到低级的模块结构,若一级模块名称、二级模块名称、三级模块中有上下级模块缺失,应进行必要的补充;然后,依据之前提取访问日志信息,匹配模块维表,统计用户每天在不同模块的访问次数;3)过滤冗余用户和访问模块,根据得到的每个用户每日模块的访问次数,由于用户的数量远远大于模块的数量,用户-模块访问组成的矩阵将会是一个高维稀疏的矩阵,对矩阵进行优化:第一是面向用户,根据访问量统计用户频数分布,把频数和访问量同时较小的用户过滤掉,第二是面向模块,利用SVD技术对模块维度进行特征抽取,舍掉不必要的特征,只留下核心模块;4)划分用户身份,采用聚类领域的相关算法对用户进行划分;考虑到只需要将用户划分成活跃用户和非活跃用户,故采用如K-means算法,其中K=2,进行活跃用户划分。2.根据权利要求1所述的基于访问行为的活跃用户识别方法,其特征是具体步骤如下:S11:解析用户访问日志,根据留存的用户访问网站的历史访问日志,在对应的BI架构数据仓库系统中,访问日志通常放在数据仓库层;对数据仓库层访问日志表解析中,首先应该核心提取访问用户ID,访问用户的访问时间,访问地址URL字段;在日志处理中,限制爬虫,日志表里有限制爬虫字段,spider=1,限制非爬虫;过滤内部IP即关联内部IP表;访问链接URL解析,由于访问链接地址多种多样,采用正则表达式对地址进行有效的过滤,包括确立链接开头地址;对于无效用户同时排除;S12:统计用户模块访问次数,首先应该在...

【专利技术属性】
技术研发人员:许哲熙
申请(专利权)人:焦点科技股份有限公司
类型:发明
国别省市:江苏;32

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1