首页> 中国专利> 用户行为流量获取方法及装置、用户行为分析方法及系统

用户行为流量获取方法及装置、用户行为分析方法及系统

摘要

本发明公开了一种用户行为流量获取方法及装置、用户行为分析方法及系统。所述用户行为流量获取方法包括:统计电子设备在第一指定时间内产生的总流量;剔除所述总流量中的机器行为流量,获得所述第一指定时间内的用户行为流量。

著录项

  • 公开/公告号CN105429792A

    专利类型发明专利

  • 公开/公告日2016-03-23

    原文格式PDF

  • 申请/专利权人 北京网康科技有限公司;

    申请/专利号CN201510742786.9

  • 发明设计人 才华;肖春天;

    申请日2015-11-04

  • 分类号H04L12/24;

  • 代理机构北京派特恩知识产权代理有限公司;

  • 代理人李梅香

  • 地址 100190 北京市海淀区中关村路66号世纪科贸大厦A座3层

  • 入库时间 2023-12-18 15:07:46

法律信息

  • 法律状态公告日

    法律状态信息

    法律状态

  • 2019-01-25

    授权

    授权

  • 2016-04-20

    实质审查的生效 IPC(主分类):H04L12/24 申请日:20151104

    实质审查的生效

  • 2016-03-23

    公开

    公开

说明书

技术领域

本发明涉及信息处理领域,尤其涉及一种用户行为流量获取方法及装置、 用户行为分析方法及系统。

背景技术

随着信息技术和通信技术的发展,用户可通过手机、平板或可穿戴设备等 电子设备从网络上获取信息、进行社交、购物、订票、参与评论等活动。用户 在进行上述活动过程中,必然伴随着信息传输的流量的产生。流量可包括上行 流量和下行流量。通常上行流量可为电子设备向网络传输的信息的数据量,下 行流量可为网络发送给电子设备的信息的数据量。

由于流量某种程度上反映了用户行为,故基于流量的用户行为分析应运而 生。然而利用现有技术基于流量的用户行为分析得到的用户行为,发现精确性 还不够,往往可能出现得到的用户行为有较大的偏差。故在现有技术中,提出 一种能够更加精确的分析用户行为的方法是亟待解决的问题。

发明内容

有鉴于此,本发明实施例期望提供一种用户行为流量获取方法及装置,能 够为用户行为分析提供精确的用户行为流量;本发明实施例还期望提供一种用 户行为分析方法及系统,能够提供精确的用户行为分析结果。

为达到上述目的,本发明的技术方案是这样实现的:

本发明实施例提供的第一种用户行为流量获取方法,所述方法包括:

统计电子设备在第一指定时间内产生的总流量;

剔除所述总流量中的机器行为流量,获得所述第一指定时间内的用户行为 流量。

基于上述方案,所述剔除所述总流量中的机器行为流量,获得所述第一指 定时间内的用户行为流量,包括:

分析所述总流量,确定所述第一指定时间内流量基线范围;

确定所述电子设备各个行为流量是否位于所述流量基线范围内;

若一个所述行为流量位于所述流量基线范围外,则确定所述行为流量为所 述用户行为流量。

基于上述方案,所述总流量包括上行流量和下行流量;

所述分析所述总流量,确定所述第一指定时间内流量基线范围,包括:

分析所述总流量中的上行流量,确定所述第一指定时间内上行流量基线范 围;

分析所述总流量中的下行流量,确定所述第一指定时间内下行流量基线范 围;

所述确定所述电子设备各个行为流量是否位于所述流量基线范围内,包括:

确定各个上行流量是否位于所述上行流量基线范围;

确定各个下行流量是否位于所述下行流量基线范围。

基于上述方案,所述分析所述总流量中的上行流量,确定所述第一指定时 间内上行流量基线范围,包括:

采用聚类算法分析所述上行流量,形成上行流量聚类结果;

基于所述上行流量聚类结果确定所述上行流量基线范围;

所述分析所述总流量中的下行流量,确定所述第一指定时间内下行流量基 线范围,包括:

采用聚类算法分析所述下行流量,形成下行流量聚类结果;

基于所述下行流量聚类结果确定所述下行流量基线范围。

基于上述方案,所述基于所述上行流量聚类结果确定所述上行流量基线范 围,包括:

当所述上行流量聚类结果表明至少有一个聚类子集包括的行为流量个数大 于第一个数门限值,且所述聚类子集中的各个上行流量的标准差小于第一标准 差门限时,基于所述聚类子集中的上行流量中的极限值,确定所述上行基线范 围;

所述基于所述下行流量聚类结果确定所述下行流量基线范围,包括:

当所述下行流量聚类结果表明至少有一个聚类子集包括的行为流量个数大 于第二个数门限值,且所述聚类子集中的各个下行流量的标准差小于第二标准 差门限时,基于所述聚类子集中的下行流量中的极限值,确定所述下行基线范 围。

基于上述方案,所述剔除所述总流量中的机器行为流量,获得所述第一指 定时间内的用户行为流量,包括:

以时间窗口划分所述第一指定时间;其中,所述时间窗口的时长小于所述 第一指定时间的时长;

确定每一个所述时间窗口内的流量波动范围;

判断每一个所述时间窗口内各个行为流量是否位于所述流量波动范围内;

确定位于所述流量波动范围外的各个所述行为流量为所述用户行为流量。

基于上述方案,所述行为流量包括上行流量和下行流量;

所述确定每一个所述时间窗口内的流量波动范围,包括:

确定每一个所述时间窗口内的上行流量波动范围和下行流量波动范围;

所述判断每一个所述时间窗口内各个行为流量是否位于所述流量波动范围 内,包括:

判断每一个所述时间窗口内所述上行流量是否位于所述上行流量波动范围 内;

判断每一个所述时间窗口内所述下行流量是否位于所述下行流量波动范围 内。

本发明实施例第二方面提供一种用户行为分析方法,所述方法包括:

采用前述任一项的方法,确定用户行为流量;

对所述用户行为流量进行分析,形成用户行为分析结果。

本发明实施例第三方面提供一种用户行为流量获取装置,所述装置包括:

统计单元,用于统计电子设备在第一指定时间内产生的总流量;

获取单元,用于剔除所述总流量中的机器行为流量,获得所述第一指定时 间内的用户行为流量。

基于上述方案,所述获取单元,包括:

分析模块,用于分析所述总流量,确定所述第一指定时间内流量基线范围;

第一确定模块,用于确定所述电子设备各个行为流量是否位于所述流量基 线范围内;

第二确定模块,用于若一个所述行为流量位于所述流量基线范围外,则确 定所述行为流量为所述用户行为流量。

基于上述方案,所述行为流量包括上行流量和下行流量;

所述分析模块,具体用于分析所述总流量中的上行流量,确定所述第一指 定时间内上行流量基线范围;分析所述总流量中的下行流量,确定所述第一指 定时间内下行流量基线范围;

所述第一确定模块,具体用于确定各个上行流量是否位于所述上行流量基 线范围;确定各个下行流量是否位于所述下行流量基线范围。

基于上述方案,所述分析模块,具体用于采用聚类算法分析所述上行流量, 形成上行流量聚类结果;基于所述上行流量聚类结果确定所述上行流量基线范 围;

所述分析模块,还具体用于采用聚类算法分析所述下行流量,形成下行流 量聚类结果;基于所述下行流量聚类结果确定所述下行流量基线范围。

基于上述方案,所述分析模块,具体用于当所述上行流量聚类结果表明至 少有一个聚类子集包括的行为流量个数大于第一个数门限值,且所述聚类子集 中的各个上行流量的标准差小于第一标准差门限时,基于所述聚类子集中的上 行流量中的极限值,确定所述上行基线范围;及当所述下行流量聚类结果表明 至少有一个聚类子集包括的行为流量个数大于第二个数门限值,且所述聚类子 集中的各个下行流量的标准差小于第二标准差门限时,基于所述聚类子集中的 下行流量中的极限值,确定所述下行基线范围。

基于上述方案,所述获取单元,包括:

划分模块,用于以时间窗口划分所述第一指定时间;其中,所述时间窗口 的时长小于所述第一指定时间的时长;

第三确定模块,用于确定每一个所述时间窗口内的流量波动范围;

判断模块,用于判断每一个所述时间窗口内各个行为流量是否位于所述流 量波动范围内;

第四确定模块,用于确定位于所述流量波动范围外的各个所述行为流量为 所述用户行为流量。

基于上述方案,所述总流量包括上行流量和下行流量;

所述第三确定模块,具体用于确定每一个所述时间窗口内的上行流量波动 范围和下行流量波动范围;

所述判断模块,具体用于判断每一个所述时间窗口内所述上行流量是否位 于所述上行流量波动范围内;判断每一个所述时间窗口内所述下行流量是否位 于所述下行流量波动范围内。

本发明实施例第五方面提供一种用户行为分析系统,所述系统包括:

上述任一项所述用户行为流量获取装置,用于确定用户行为流量;

分析装置,用于对所述用户行为流量进行分析,形成用户行为分析结果。

本发明实施例提供例一种用户行为流量获取方法及装置、用户行为分析方 法及系统,首先通过提出总流量中的机器行为流量,可以获得更加精确的用户 行为流量,在利用精确的行为流量进行用户行为分析,显然会得到更为精确的 用户行为分析结果。

附图说明

图1为本发明实施例提供的第一种用户行为流量获取方法的流程示意图;

图2为本发明实施例提供的第一种确定用户行为流量的流程示意图;

图3为本发明实施例提供的第二种确定用户行为流量的流程示意图;

图4为本发明实施例提供的一种用户行为分析方法的流程示意图;

图5为本发明实施例提供的一种用户行为流量获取装置的结构示意图;

图6为本发明实施例提供的一种用户行为分析系统的结构示意图;

图7为本发明实施例提供的另一种用户行为流量获取方法的流程示意图;

图8为本发明实施例提供的一种确定基线范围的流程示意图;

图9为本发明实施例提供的又一种用户行为流量获取方法的流程示意图。

具体实施方式

以下结合说明书附图及具体实施例对本发明的技术方案做进一步的详细阐 述。

方法实施例一:

如图1所示,本实施例提供一种用户行为流量获取方法,所述方法包括:

步骤S110:统计电子设备在第一指定时间内产生的总流量;

步骤S120:剔除所述总流量中的所述机器行为流量,获得所述第一指定时 间内的用户行为流量。

在现有技术中通常会将电子设备产生的所有行为流量都视为用户行为流 量,而实质上有些电子设备的行为流量使电子设备自动行为产生的机器行为流 量。显然这种估算或确定用户行为流量的确定结果,极其不精确。在本实施例 中在步骤S110中将统计总流量。在步骤S120中将统计机器行为流量,并通过 将将确定总流量与机器行为流量的差值等方式,确定出用户行为流量。当然所 述步骤S120也可以直接为确定出总流量中哪些行为流量为用户行为流量,并最 终统计出各个用户行为流量。这里的机器行为流量为机器触发导致的流量,用 户行为流量为用户操作行为触发而导致的流量。

所述第一指定时间为任意一个指定的时长长度,如一天、一周、两周或一 个月等。

本实施例中所述机器行为流量可包括电子设备运行过程中的应用程序更 新、信息自动刷新等机器行为产生的流量。例如,手机中安装有意炒股软件, 炒股软件的升级更新可视为本实施例中所述的机器行为流量。所述炒股软件中 的炒股信息的自动刷新可认为所述机器行为流量。电子设备接收的网络服务器 等其他电子设备自动推送信息产生的流量也可以视为所述机器行为流量。总之 所述机器行为流量可认为是所述电子设备的自动行为触发产生的流量。所述电 子设备的自动行为可为电子设备内置指令触发产生的流量。所述电子设备内置 指令为未基于用户设置行为而形成的预置指令。

所述用户行为流量为基于用户操作行为产生的流量,具体如用户打开搜索 网页,输入搜索关键字,产生的上网行为流量。用户点击播放视频,产生的视 频播放流量,用户利用电子设备进行社交,产生的社交流量等。总之用户行为 流量是基于用户某个或某一系列被电子设备检测到的用户操作而产生的流量。 所述用户操作可以为手势操作、语音操作、眼神示意操作等各种与电子设备进 行交互的用户交互行为的操作。

值得注意的是:在进行流量统计时,通常首先对设备产生的流量进行应用 识别,进而基于应用对流量进行分类。后续的学习和判决都是针对基于同一应 用流量进行的。一个设备上可能运行不同应用,如果不加以区分,识别准确性 无法得到保障。故在本实施例所述的用户行为流量获取方法中,将总流量中的 机器行为流量剔除的过程中,也可以是基于每一个应用的流量进行的。

在步骤S110中可以基于流量日志,统计得到所述第一指定时间内的总流 量。所述流量日志为记录了电子设备各个行为产生的行为流量。

流量日志体现的可为:上网行为管理设备基于用户和应用维度对网络流量 的周期性采样结果。流量日志可以描述特定用户特定应用每分钟上行下行流量 的数值。在流量日志中,用户行为流量和机器行为流量混杂在一起。如果希望 通过应用流量日志准确的分析用户行为,需要能够剔除机器行为流量。通常流 量日志记录的信息可包括流量产生的时间、流量产生的用户账号,流量产生的 应用等信息,这样的话,显然可以通过数据统计,确定出各个用户账号下,特 定应用每分钟的上行和下行流量的流量值。

故步骤S110中可通过流量日志统计出所述总流量。

当然所述步骤S110还可包括利用计数器统计所述电子设备通信接口的收 发数据量,获得所述电子设备在第一指定时间内产生的总流量。

在步骤S120可通过记录每一个用户操作及用户操作的时间,形成用户操作 记录,将用户操作记录与流量日志进行比对,可确定出流量日志中哪些行为流 量是基于用户操作产生的,则其他的部分可认为是机器行为产生的流量,这样 的话,在步骤S130中可通过提剔除机器行为流量确定出总流量中的用户行为流 量。当然具体实现方式有很多种,不局限于此处的举例;以下提供两种确定总 流量中每一个行为流量是否为机器行为流量的可实现方式。

方式一为流量基线分析法,方式二为流量突变分析法。

在介绍两种方式之前,先来分析研究一下机器行为流量和用户行为的特性。

机器行为流量的特性:

第一:机器行为流量具有周期性。应用的保持激活状态、检查更新、信息 刷新等操作过一般由程序自身的定时器自动触发,在应用的保持激活状态、检 查更新、信息刷新时,在流量上也会呈现周期性。如利用流量日志来积极性流 量产生的记录,则在流量日志上体现为流量的周期性波动。

第二:机器行为流量具有相似性。应用的通讯一般由固定的信令所组成。 同样的业务,每次运行业务时通讯信令的内容是相似的。在流量日志上体现为, 流量在上行或下行方向上产生的流量值具有相似性。

第三:机器行为流量的持续时间长,应用自动产生的流量往往贯穿应用程 序运行的始终,其存在时间往往远远长于用户行为流量的时长。

综合上述特点,机器行为所产生的流量适于使用流量基线模型进行描述。 即在较长的时间范围来看,上行或下行流量大小的值有绝大部分分布在特定的 几个值域区间内。

而与此相对,由用户操作所触发的用户行为流量具有的特征为:时间突发 性,流量大小突变性和持续时间相对短促。用户操作所触发的用户行为流量, 其每分钟上行或下行流量的大小,往往分布于机器行为流量的流量基线之外, 同时在时序上看,也表现为上行或下行流量大小的突变。

本实施例方式一和方式二是基于机器行为流量和用户行为流量的特性而提 出的。

方式一:

如图2所示,所述步骤S120可包括:

步骤S1201:分析所述总流量,确定所述第一指定时间内流量基线范围;

步骤S1202:确定所述电子设备各个行为流量是否位于所述流量基线范围 内;

步骤S1203:若一个所述行为流量位于所述流量基线范围外,则确定所述 行为流量为所述用户行为流量。

由于机器行为流量的持续时间长,统计一个较长时间内,该较长时间即为 所述第一指定时间。通常所述第一指定时间可为半天以上的时间长度。通过统 计该第一指定时间长度的流量基线范围。所述流量基线范围至少对应有上基线 边界;所述上基线边界可理解为流量基础上限值。在步骤S1201中将判断每个 行为流量是否不大于所述上基线边界,若不大于所述上基线边界,则该行为流 量为机器行为流量。当然所述基线流量范围可包括上基线边界和下基线边界。

譬如手机登陆有QQ,为了确保QQ处于激活状态,网络侧的服务器通常 会与手机中QQ的检测数据包的交互,确定QQ是否处于激活状态,这个时候 产生的为所述机器行为流量。通常所述检测数据包的包长都较小,且呈现周期 性。若用户此时利用QQ与QQ好友进行QQ通话,显然会产生大量的流量, 这个流量就会远远大于检测数据包造成的流量。在本实施例中通过对第一指定 时间长度的总流量确定出流量基线,由于总流量中包括机器行为流量和用户行 为流量。综合这两者每一次用户行为流量,形成的流量基线范围可能位于大部 分用户行为流量和机器行为流量的之间,这样的话,就可以很好的筛选出机器 行为流量和用户行为流量。那QQ通话造成的用户流量显然会超过流量基线范 围,检测数据包的流量就位于所述流量基线范围内的机器行为流量。

采用这种方法能够即便精确的确定出所述机器行为流量。

所述总流量包括上行流量和下行流量。所述步骤S1201可包括:分析所述 总流量中的上行流量,确定所述第一指定时间内上行流量基线范围;分析所述 总流量中的下行流量,确定所述第一指定时间内下行流量基线范围。所述步骤 S1202可包括:确定各个上行流量是否位于所述上行流量基线范围;确定各个 下行流量是否位于所述下行流量基线范围。

当然由于电子设备的行为流量根据流量传输方向,分为了上行流量和下行 流量,在本实施例中为了进一步精确确定出用户行为流量,将分别确定出上行 流量基线范围和下行基线范围,分别确定出哪些上行流量为上行的机器行为流 量,哪些下行流量为下行的机器行为流量。从而能够在步骤S1203中精确确定 出所述用户行为流量。

所述步骤S1201可具体包括:采用聚类算法分析所述上行流量,形成上行 流量聚类结果;基于所述上行流量聚类结果确定所述上行流量基线范围。

所述步骤S1202还可具体包括:采用聚类算法分析所述下行流量,形成下 行流量聚类结果;基于所述下行流量聚类结果确定所述下行流量基线范围。

所述聚类算法可包括划分法(PartitioningMethods,PM)、层次法 (HierarchicalMethods,HM)、基于密度的方法(Density-basedmethods)、基 于网格的方法(Grid-basedmethods)、基于模型的方法(Model-BasedMethods)。 这些聚类算法将每一个行为流量视为一个元素,对每一个行为流量的流量值进 行聚类,得到聚类结果。这些聚类算法的具体实现方式可参见现有技术,在此 就不一一举例了。利用聚类算法进行确定基线范围确定时,充分的利用了机器 行为流量的相似性。

所述基于所述上行流量聚类结果确定所述上行流量基线范围,包括:当所 述上行流量聚类结果表明至少有一个聚类子集包括的行为流量个数大于第一个 数门限值,且所述聚类子集中的各个上行流量的标准差小于第一标准差门限时, 基于所述聚类子集中的上行流量中的极限值,确定所述上行基线范围。

所述基于所述下行流量聚类结果确定所述下行流量基线范围,包括:当所 述下行流量聚类结果表明至少有一个聚类子集包括的行为流量个数大于第二个 数门限值,且所述聚类子集中的各个下行流量的标准差小于第二标准差门限时, 基于所述聚类子集中的下行流量中的极限值,确定所述下行基线范围。

本实施例中所述第一个数门限值、第二个数门限值、第一标准差门限和第 二标准差门限,都可以预先设定的值,也可以动态确定的值。例如所述第一个 数门限值可为第一比例与上行流量的个数的乘积,所述第二个数门限值可为第 二比例与下行流量的个数的乘积。当然所述第一个数门限子涵、第二个数门限 值、第一标准差门限和第二标准差门限都可以为通过对历史流量信息的统计确 定,也可以通过仿真确定的。在具体实现时,所述标准差及标准差门限可以用 方差及方差门限来进行等效替换。这里的标准差包括所述上行流量的标准差和 下行流量的标准差。所述标准差门限可包括第一标准差门限和第二标准差门限。 所述标准差反映的波动性,而机器行为流量因相似性较大,则呈现出较小的波 动性。

基于本方式提供一个具体示例:

步骤S11:对所有流量日志基于上行流量的流量值大小划分为upper50% 和lower50%两个集合。所述upper50%包括流量值按从高到低排序在前50%的 上行流量行为。所述lower50%包括流量值按从高到低排序在后50%的上行流 量行为。

步骤S12:进行聚类。聚类的具体操作可分别使用upper50%和lower50% 两个集合上行流量的中位数作为核心,运行聚类算法(例如KMEANS),使用 聚类算法将所有日志重新划分为两个集合。

步骤S13:基于聚类结果进行决策:

1)若聚类得到的子集合满足基线条件则得到流量基线,基线条件可以为:

(a)子集合内元素个数超过门限,例如全部流量日志的25%;25%可对应于 上述的第一个数门限值。

(b)子集合内所有流量日志的上行流量,其标准差小于门限限制。这里的门 限限制即对应于所述第一标准差门限。

通过上述条件可以找到上行流量相似并且频繁出现的流量日志集合。集合 中上行流量的最大值和最小值会作为流量基线的上下边界;从而就确定出了所 述上行流量基线范围。

2)若子集合不满足基线条件,但子集合内流量日志的数量超过预定门限, 则可以对子集合再次进行聚类划分,以得到上行流量特征更相似的集合。返回 步骤S11,对子集合进行递归的聚类划分。

3)若子集合不满足基线条件,但集合内流量日志的数量小于预定门限。停 止对该子集合做处理。这意味着集合内的日志没有基线特征。

步骤S14:所有递归处理结束后,获取得到的流量基线结果

步骤S15:根据流量基线结果,对流量日志进行判决,当日志的上行流量 落在任意一条基线的上下边界内,则标记日志为机器行为流量;剔除为标记为 所述机器行为流量的行为流量即为所述用户行为流量。通常每一条流量日志是 对设备上一个应用的网络流量在一个周期内的流量统计。例如1分钟内的流量 统计形成一个所述流量日志。

方式二:

如图3所示,所述步骤S120可包括:

步骤S1211:以时间窗口划分所述第一指定时间;其中,所述时间窗口的 时长小于所述第一指定时间的时长;

步骤S1212:确定每一个所述时间窗口内的流量波动范围;

步骤S1213:判断每一个所述时间窗口内各个行为流量是否位于所述流量 波动范围内;

步骤S1214:确定位于所述流量波动范围外的各个所述行为流量为所述用 户行为流量。

这里的时间窗口可为滑动的时间窗口,在本实施例中利用用户行为流量的 突变性,筛选出哪些机器性为流量和用户行为流量,实现用户行为流量的精确 统计。所述时间窗口可为n分钟组成的时间窗口,所述n可为不小于1的正数。 所述时间窗口沿着时间轴进行滑动,

在步骤S1212可包括:

通过统计每一个时间窗口内的行为流量的中位值;

基于所述中位值与调整参数,计算出所述流量波动范围。所述调整参数可 为预设加权系数等。这里的调整参数可为预先根据历史流量数据的统计或仿真 得到的调整因子。中位值与所述调整参数之前的函数关系可为比例函数关系, 即所述中位值与所述调整参数的乘积可构成所述流量波荡范围的上限。

这样就能够方便步骤S1213中,通过判断各个所述行为流量是否位于所述 流量波动范围内确定出是否为用户行为流量。在本实施例中通过步骤S1214实 现了对机器行为流量的排除,精确的统计出了用户行为流量。

当然所述总流量包括上行流量和下行流量。

所述步骤S1212可包括:确定每一个所述时间窗口内的上行流量波动范围 和下行流量波动范围。所述步骤S1213可包括:判断每一个所述时间窗口内所 述上行流量是否位于所述上行流量波动范围内;判断每一个所述时间窗口内所 述下行流量是否位于所述下行流量波动范围内。

以下结合上述方式二,确定上行流量中哪些是上行的用户行为流量的示例。

步骤S21:将流量日志按时间进行排序;从时间最早的一条日志开始处理。

步骤S22:计算时间窗口的预期波动范围:按照流量日志的时序从时间窗 口的起始处开始读取n分钟流量日志的数据,形成长度为n的时间窗口。将各 流量日志的上行流量排序,取中位数。将中位数乘上加权系数作为预期的波动 范围上限。

步骤S23:进行是否为用户行为流量的判决。判决的过程可为:如果窗口内 日志的上行流量大于波动范围上限,则将日志对应的流量判决为用户行为流量。

步骤S24:滑动时间窗口,例如将窗口延时间轴向后滑动1分钟,并返回 到步骤S22。

显然本实施例所述的方法,通过机器行为流量的排除,能够从总流量中精 确的获得所述用户行为流量,为后续使用用户行为流量提供精确的数据依据, 避免后续数据分析产生的精确度低等问题。

值得注意的是:在具体实现过程中,可通过结合方式一和方式二的方法, 来确定所述用户行为流量,例如,方式一或方式二中任意一个方式确定了某一 个行为流量为用户行为流量,则该行为流量即为所述用户行为流量。也可以是 仅有在方式一和方式二均确定了一个行为流量为所述用户行为流量时,该行为 流量才认为是用户行为流量。至于到底如何结合使用,需要根据确定用户行为 流量中的实际参数及要求的精确度来确定,在此就不一一举例说明了。

方法实施例二:

如图4所示,本实施例提供一种用户行为分析方法,所述方法包括:

步骤S210:剔除电子设备产生总流量中的所述机器行为流量,获得所述第 一指定时间内的用户行为流量,确定用户行为流量;

步骤S220:对所述用户行为流量进行分析,形成用户行为分析结果。

本实施例步骤S210中提出所述机器行为流量来获取所述用户行为流量的 方法,可以参见方法实施例一中的任意一个技术方案。

本实施例所述用户行为分析,是在提出了机器行为流量的基础上,进行的 用户行为分析,得到的用户行为分析结果的精确度更高。

譬如,分析用户是更喜欢利用社交软件A进行社交,还是基于社交软件B 进行社交。若采用现有的方法,则会直接根据社交软件A和社交软件B产生的 所有流量来进行,显然由于社交软件的更新、保持激活状态的检测等机器行为 流量的干扰,会导致用户行为结果出现较大错误率的问题。如社交软件A最近 进行了多次更新,实质上用户利用社交软件B进行通信的频率和产生的流量都 较大,可以是由于机器行为流量的干扰,可能得到的分析结果确认为用户更喜 欢利用社交软件A进行社交。显然这是错误的用户行为分析结果。若利用本实 施例所述的用户行为分析方法,则可以很好的剔除机器行为流量的干扰,得到 较为精确的基于流量的用户行为分析的分析结果。

设备实施例一:

如图5所示,本实施例提供一种用户行为流量获取装置,所述装置包括:

统计单元110,用于统计电子设备在第一指定时间内产生的总流量;

获取单元120,用于剔除所述总流量中的机器行为流量,获得所述第一指 定时间内的用户行为流量。

本实施例所述的用户行为获取装置可对应于各种类型的电子设备,如服务 器、台式电脑、笔记本电脑或平板电脑等各种电子设备。

所述统计单元110可包括计数器和计时器等结构。所述计时器用于计量所 述第一指定时间,所述计数器用于通过计数和计算确定出所述总流量。

所述获取单元120的具体结构可包括各种具有信息筛选结构的处理器或处 理电路。所述处理器可包括应用处理器AP、数字信号处理器DSP、可编程阵 列PLC、中央处理器CPU或微处理器MCU等处理结构。所述处理器通常还连 接着存储介质。所述存储介质内存储着有可执行代码,所述处理器通过内部通 信总线等结构读取并执行所述可执行代码,能够实现剔除掉所述机器行为流量, 得到用户行为流量。

所述获取单元120的具体结构还可包括处理电路,所述处理电路可为专用 集成电路ASIC等,同样可实现剔除所述机器行为流量,获得所述用户行为流 量。

所述获取单元120,包括:

分析模块,用于分析所述总流量,确定所述第一指定时间内流量基线范围;

第一确定模块,用于确定所述电子设备各个行为流量是否位于所述流量基 线范围内;

第二确定模块,用于若一个所述行为流量位于所述流量基线范围外,则确 定所述行为流量为所述用户行为流量。

本实施例所述的分析模块可对应于上述处理器或处理电路,通过分析总流 量确定出所述流量基线范围。所述第一确定模块可包括比较器或比较电路或具 有比较功能的处理器。通过将各个行为流量与所述流量基线范围的上下边界的 比较,可确定出每一个行为流量是否位于所述流量基线范围内。第二确定模块 可包括处理器或处理电路,与所述第一确定模块连接,根据第一确定模块的结 果,标识出哪些是用户行为流量。

所述总流量包括上行流量和下行流量。所述分析模块,具体用于分析所述 总流量中的上行流量,确定所述第一指定时间内上行流量基线范围;分析所述 总流量中的下行流量,确定所述第一指定时间内下行流量基线范围。

所述第一确定模块,具体用于确定各个上行流量是否位于所述上行流量基 线范围;确定各个下行流量是否位于所述下行流量基线范围。

在本实施例中为了得到更加精确的结果,分析模块会分分别确定出上行流 量基线范围及下行流量基线范围。第一确定模块会分别比较出上行流量和下行 流量,这样能够获得更加精确的用户行为流量。获得的用户行为流量可包括上 行用户行为流量和下行用户行为流量。

与此同时,所述分析模块,具体用于采用聚类算法分析所述上行流量,形 成上行流量聚类结果;基于所述上行流量聚类结果确定所述上行流量基线范围。 所述分析模块,还具体用于采用聚类算法分析所述下行流量,形成下行流量聚 类结果;基于所述下行流量聚类结果确定所述下行流量基线范围。

在本实施例中所述分析模块,可为前述任意所述的处理器或处理电路,通 过聚类分析确定出上行流量基线范围及下行流量基线范围。所述聚类分析算法 有多个,在本实施例中可选其中的任意一个,优选可为KMEANS聚类算法。

所述分析模块,具体用于当所述上行流量聚类结果表明至少有一个聚类子 集包括的行为流量个数大于第一个数门限值,且所述聚类子集中的各个上行流 量的标准差小于第一标准差门限时,基于所述聚类子集中的上行流量中的极限 值,确定所述上行基线范围;及当所述下行流量聚类结果表明至少有一个聚类 子集包括的行为流量个数大于第二个数门限值,且所述聚类子集中的各个下行 流量的标准差小于第二标准差门限时,基于所述聚类子集中的下行流量中的极 限值,确定所述下行基线范围。

本实施例提供了一种所述分析模块的结构,该结构通过个数门限值及标准 差等处理,确定出上行流量基线范围及下行流量基线范围。

所述获取单元120还可包括:

划分模块,用于以时间窗口划分所述第一指定时间;其中,所述时间窗口 的时长小于所述第一指定时间的时长;

第三确定模块,用于确定每一个所述时间窗口内的流量波动范围;

判断模块,用于判断每一个所述时间窗口内各个行为流量是否位于所述流 量波动范围内;

第四确定模块,用于确定位于所述流量波动范围外的各个所述行为流量为 所述用户行为流量。

所述划分模块、第三确定模块、判断模块和第四确定模块的具体结构均可 对应于前述的处理器或处理电路。所述判断模块还可包括比较器或比较电路等 结构,通过比较的比较确定出各个行为流量是否位于波动范围内。

所述总流量包括上行流量和下行流量。所述第三确定模块,具体用于确定 每一个所述时间窗口内的上行流量波动范围和下行流量波动范围。所述判断模 块,具体用于判断每一个所述时间窗口内所述上行流量是否位于所述上行流量 波动范围内;判断每一个所述时间窗口内所述下行流量是否位于所述下行流量 波动范围内。

在本实施例中通过时间窗口的引入,逐个时间段的分析所述第一指定时间 内的行为流量,确定出哪些是所述用户行为流量,具有实现简便的特点。

设备实施例二:

如图6所示,本实施例提供一种用户行为分析系统,所述系统包括:

设备实施例一任一技术方案中所述用户行为流量获取装置210,用于确定 用户行为流量;

分析装置220,用于对所述用户行为流量进行分析,形成用户行为分析结 果。

在本实施例中所述分析装置可为包括处理器或处理电路的电子设备,所述 处理器和处理电路可为前述实施例中的所述的处理器或处理电路。

当然所述分析装置可与所述用户行为获取装置,集成对应于同一处理器或 处理电路。集成对应的处理器或处理电路可采用时分复用或并发线程的方式, 分别实现所述用户行为流量的获取和用户行为分析。

在本实施例所述的用户行为分析系统中,进行用户行为分析的用户行为流 量是剔除了机器行为流量的用户行为流量,能够解决以电子设备产生的总流量 为分析对象产生的分析结果精确度低的问题。

以下结合上述任意实施例,提供几个具体示例。

示例一:

如图7所示,本示例提供一种用户行为流量获取方法,包括:

步骤S101:分析获取上行流量基线范围;

步骤S102:分析获取下行流量基线范围;

步骤S103:判断流量日志的上行流量或下行流量是否属于基线范围。这里 的基线范围包括对应于上行流量上行流量基线范围和对应于下行流量的下行流 量基线范围。判断结果为是,进入步骤S105,若判断结果为否,进入步骤S104。

步骤S104:将流量日志标记为用户行为流量,表示该流量日志的行为流量 为用户行为流量。

步骤S105:将流量日志标记为机器行为流量,表示该流量日志的行为流量 为机器行为流量。

如图8所示的为步骤S101或步骤S102的细化步骤,可用于获取上行基线 范围或下行基线范围,具体包括:

步骤S201:取每分钟上行流量值或下行流量值;

步骤S202:按照流量值大小排序;

步骤S203:将集合按照流量值大小分为upper和lower两个子集。集合内 包括所有的行为流量的流量值。

步骤S204:将子集的中位数作为核心,运行聚类算法获得两个新子集。这 里的中位数为所述upper和lower子集中流量值的中位数。所述新子集为通过聚 类形成的聚类集合。

步骤S205:判断新子集中的元素个数及标准差是否符合指定条件,这里的 指定条件包括元素个数大于前述的第一个数门限值或第二个数门限值,标准差 是否小于第一标准差门限或第二标准差门限。判断结果为是,进入步骤S206, 判断结果为否,进入步骤S207。这里的元素指代的为集合、子集或新子集中的 流量值。

步骤S206:新子集能够用于找到基线,将新子集中的最小值min和最大值 max作为基线范围。

步骤S207:判断新子集的元素个数高于个数门限,若为否,进入步骤S208, 若为是,返回步骤S203。

步骤S208:确定新子集无法找到基线。

示例二:

如图9所示,本示例提供另一个不同于示例的用户行为流量确定方法,包 括:

步骤S301:将流量日志按照时间排序,将最早的流量日志作为时间窗口的 起点。

步骤S302:计算时间窗口内m条流量日志的上行/下行流量的中位数。这 的上行/下行流量表示的上行流量或下行流量。

步骤S303:比较时间窗口内流量日子还是与基于中位数形成的加权值。

步骤S304:判断上行/下行流量是否大于加权值,如果是,进入步骤S307, 如果否,进入步骤S305。

步骤S305:确定为机器行为流量,并进入步骤S306。

步骤S306:滑动时间窗口至下一条流量日志。

步骤S307:确定为用户行为流量。

示例三:

选取了某个用户一天内从9点到下午15点的通达信交易客户端的流量, 每分钟一条,共420条流量日志。日志的内容采用JSON格式表示。以下 为一条JSON格式表示的流量日志为:

{timestamp":"2015-05-07T12:24:00+08:00","用户":"192.168.204.86"," 应用":"通达信行情分析(行情)","上行流量":15279,"下行流量":6992}

所述JSON为JavaScriptObjectNotation的缩写,是一种轻量级的数据 交换格式。

该用户的实际操作信息由人工标注为:

用户192.168.204.86

应用:通达信交易客户端(行情)

日期:5月7日

用户行为:

09:36登录

09:47浏览

13:05浏览

13:53浏览

14:26浏览

以下采用流量突变分析确定用户行为流量:

选择时间窗口大小为m=6.选择加权系数为10。

基于时间戳,对流量日志在时间维度上进行排序。

计算时间窗口的流量日志的波动范围:对时间窗口内流量日志分别基于 上行流量和下行流量排序。获得上行流量的中位数和下行流量的中位数。在 某个时间窗口的计算中,获得的中位数为上行流量20279,下行流量10138。 则该事件窗口内流量日志的上行流量波动范围上限为20279*10=202790,下 行流量波动范围上限为10138*10=101380。

流量日志判定阶段:若时间窗口内的流量日志,上行流量或下行流量超 过了波动范围上限,则判决为用户行为流量。

重复步骤3)和4)直到处理完成所有日志流量数据。

依据上述方法,对前述420条日志进行判断之后,得到的结果是以下时 间的行为流量为用户行为流量:

2015-05-0709:45:00

2015-05-0709:46:00

2015-05-0710:40:00

2015-05-0713:04:00

2015-05-0713:52:00

2015-05-0714:25:00

由于人工标注的误差,可近似认为人工标注的13:05对应于采用本示 例方法确定的13:04;人工标注的13:53即为本示例方法确定的13:52; 人工标注的14:26即为本示例方法确定的14:25,可认为09:47:00对应于不 能示例方法确定的09:46。

在采流量基线方式分析上述420条流量日志,具体操作如下:

采用K-means的聚类算法递归的对流量日志集合进行聚类分隔,K的选 取值为2,基线生成的条件是流量日志子集合的标准差小于标准差阈值std (流量集合平均值大小的2%)且子集合中的流量日志条数大于总流量日志 条数的10%。

取所有流量日志的上行流量作为分析对象。将上行流量均分为两个集 合,分别计算两个集合的中位数作为初始的核心。

对集合使用K-means算法,将其分为两个子集合。计算两个集合的标准 差std。

对子集合进行基线生成判别:若子集合内流量日志数量小于总数量的 10%,抛弃该子集合;若子集合流量日志数量大于总数量的10%且其标准差 小于集合内流量均值的2%,则该子集合收敛,取集合内行为流量的最大值 和最小值作为基线的范围;若子集合流量日志数量大于总数量的10%且其标 准差大于std,对子集合重复使用步骤(2)的K-means聚类算法,递归的进行 处理;

获取上行流量的基线范围

对下行流量重复步骤(1)~(4),获取下行流量的基线范围。

对流量日志进行处理,对于流量落入到基线范围内的流量日志,均认为 是机器行为,其他的为用户行为流量。

采用本方式最终确定以下时间产生的流量为用户行为流量:

2015-05-0709:35:00

2015-05-0709:36:00

2015-05-0709:45:00

2015-05-0709:46:00

2015-05-0710:40:00

2015-05-0713:04:00

2015-05-0713:52:00

2015-05-0714:25:00

基于两种确定方法,取判决结果的交集,获得的最终结果为:

2015-05-0709:45:00

2015-05-0709:46:00

2015-05-0710:40:00

2015-05-0713:04:00

2015-05-0713:52:00

2015-05-0714:25:00

显然通过与人工标注的用户行为进行比对,显然从420条流量日志对应 的420个行为流量中,精确的删选出了用户行为流量中条,误判了两条,删 除剩余410多个行为流量被视为用户行为流量来对待,显然大大的提升了用 户行为流量的精确度。

在本申请所提供的几个实施例中,应该理解到,所揭露的设备和方法, 可以通过其它的方式实现。以上所描述的设备实施例仅仅是示意性的,例如, 所述单元的划分,仅仅为一种逻辑功能划分,实际实现时可以有另外的划分 方式,如:多个单元或组件可以结合,或可以集成到另一个系统,或一些特 征可以忽略,或不执行。另外,所显示或讨论的各组成部分相互之间的耦合、 或直接耦合、或通信连接可以是通过一些接口,设备或单元的间接耦合或通 信连接,可以是电性的、机械的或其它形式的。

上述作为分离部件说明的单元可以是、或也可以不是物理上分开的,作 为单元显示的部件可以是、或也可以不是物理单元,即可以位于一个地方, 也可以分布到多个网络单元上;可以根据实际的需要选择其中的部分或全部 单元来实现本实施例方案的目的。

另外,在本发明各实施例中的各功能单元可以全部集成在一个处理模块 中,也可以是各单元分别单独作为一个单元,也可以两个或两个以上单元集 成在一个单元中;上述集成的单元既可以采用硬件的形式实现,也可以采用 硬件加软件功能单元的形式实现。

本领域普通技术人员可以理解:实现上述方法实施例的全部或部分步骤 可以通过程序指令相关的硬件来完成,前述的程序可以存储于一计算机可读 取存储介质中,该程序在执行时,执行包括上述方法实施例的步骤;而前述 的存储介质包括:移动存储设备、只读存储器(ROM,Read-OnlyMemory)、 随机存取存储器(RAM,RandomAccessMemory)、磁碟或者光盘等各种 可以存储程序代码的介质。

以上所述,仅为本发明的具体实施方式,但本发明的保护范围并不局限 于此,任何熟悉本技术领域的技术人员在本发明揭露的技术范围内,可轻易 想到变化或替换,都应涵盖在本发明的保护范围之内。因此,本发明的保护 范围应以所述权利要求的保护范围为准。

去获取专利,查看全文>

相似文献

  • 专利
  • 中文文献
  • 外文文献
获取专利

客服邮箱:kefu@zhangqiaokeyan.com

京公网安备:11010802029741号 ICP备案号:京ICP备15016152号-6 六维联合信息科技 (北京) 有限公司©版权所有
  • 客服微信

  • 服务号