CN109284372A - 用户操作行为分析方法、电子装置及计算机可读存储介质 - Google Patents
用户操作行为分析方法、电子装置及计算机可读存储介质 Download PDFInfo
- Publication number
- CN109284372A CN109284372A CN201811023319.0A CN201811023319A CN109284372A CN 109284372 A CN109284372 A CN 109284372A CN 201811023319 A CN201811023319 A CN 201811023319A CN 109284372 A CN109284372 A CN 109284372A
- Authority
- CN
- China
- Prior art keywords
- user
- vector
- operation behavior
- word frequency
- time
- 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
Classifications
-
- 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
Abstract
本发明提供一种用户操作行为分析方法,该方法分析第一时间内的用户日志数据,将得到的有效操作行为序列作为训练样本句子,将所述训练样本句子转换为向量,降维后得到第一向量形成的样本空间,对所述第一向量进行聚类,得到该第一时间内用户操作日志数据的分类类别及主题标签。之后,该方法分析第二时间内的用户日志数据得到第二时间内的用户操作行为序列,将用户操作行为序列转换为向量后映射到所述样本空间,得到该第二时间对应的第二向量,计算该第二向量与所述第一向量之间的欧氏距离,根据最小距离值确定该第二向量所属的分类类别并标注主题标签。本发明还提供一种电子装置及计算机可读存储介质。
Description
技术领域
本发明涉及计算机学习算法领域,尤其涉及一种用户操作行为分析方法、电子装置及计算机可读存储介质。
背景技术
用户的操作行为,即用户对应用系统或应用软件的操作行为,本质上是用户为了达到某种目标,通过机器能够理解的语言指导机器去实现目的,是一种人机对话的方式。随着互联网金融的发展,越来越多的用户通过电脑、智能手机操作金融业务,如何对海量的用户操作行为进行有效分析以识别出欺诈行为,是当前互联网金融公司面临的一大挑战。现有技术中,有很多利用有监督学习算法,例如基于神经网络、贝叶斯分类、逻辑回归的评分卡模型、支持向量机模型等,通过建立正、负样本,利用正、负样本对模型进行训练,再应用训练后的模型对用户实时操作行为进行识别的方法。
这些有监督的学习算法,是由行业专家对已知数据进行提炼分成正常操作/正常用户(正例)和异常操作/欺诈用户(负例)样本,利用机器去学习正负样本特征,最后对每个用户做出概率上的打分。数据提炼过程本质是通过统计知识对数据信息量进行压缩,难以避免信息丢失。此外,实际情况中欺诈用户量相对正常用户是非常微小的,非均衡数据对有监督算法有效性的影响非常严重,而欺诈方式千变万化,传统的机器学习算法想要在正负样例如此悬殊的情况下学习到具有泛化能力的模型是非常困难的。并且,由于正负样本在统计上不可避免的“幸存者偏差”,传统模型的实际有效性大打折扣。最后,模型结构往往是一个概率值,不容易解释,一般还需要加上规则系统共同判定。因为以上原因,现在的反欺诈模型大多数都建立在理论上,实际运用效果较差。
发明内容
有鉴于此,本发明提出一种用户操作行为分析方法、电子装置及计算机可读存储介质,以解决至少一个上述技术问题。
首先,为实现上述目的,本发明提出一种用户操作行为分析方法,该方法包括步骤:
读取第一时间内的用户日志数据,并对用户日志数据进行清洗;
解析清洗后的用户日志数据得到每个用户的一个或多个操作行为序列,过滤掉无效的操作行为序列,得到的有效操作行为序列为训练样本句子;
将所述训练样本句子转换为词袋向量,利用词频模型将所述训练样本句子的词袋向量转换为词频向量,对该词频向量进行降维得到第一向量形成的样本空间;
对所述第一向量进行聚类,得到该第一时间内用户操作日志数据的分类类别及各类别对应的主题标签;
读取第二时间内的用户日志数据,对数据进行清洗、解析得到该第二时间内的用户操作行为序列,将该第二时间内的用户操作行为序列转换为词频向量后利用矩阵变换映射到样本空间,得到该第二时间对应的第二向量;
计算该第二时间内对应的第二向量与所述每个分类类别中的第一向量之间的欧氏距离,根据最小距离值确定该第二时间内对应的第二向量所属的分类类别并标注相应的主题标签。
优选地,将所述训练样本句子转换为词袋向量,利用词频模型将所述训练样本句子的词袋向量转换为词频向量,对该词频向量进行降维得到第一向量形成的样本空间的步骤包括:
通过词袋模型得到每个训练样本句子中代表用户操作行为的各操作代码的出现次数;
利用词频-逆词频算法计算得到每个训练样本句子中各操作代码的出现次数对应的词频;
基于计算得到的词频,将所有样本句子构成m行、n列的样本矩阵,m代表样本句子的总数,n代表每个样本句子包含的操作代码的总数,矩阵中每一行的数值为样本句子各操作代码的词频,其中,m、n为正整数;
利用奇异值分解算法对所述样本矩阵进行分解,得到每个样本句子降维后的第一向量形成的样本空间。
优选地,对所述降维后的句子向量进行聚类的步骤包括:
视第一时间降维后得到的第一向量集合中的每个向量为一个点,利用局部异常点检查算法标注出集合中的正常点及异常点;
利用层次聚类算法对正常点进行分类,得到正常点的分类类别及主题标签;
计算异常点与正常点之间的欧氏距离,根据最小距离值将异常点划分到正常点所属的分类类别并标注相应的主题标签。
此外,为实现上述目的,本发明还提供一种电子装置,包括存储器和处理器,所述存储器上存储有可在所述处理器上运行的用户操作行为分析程序,所述用户操作行为分析程序被所述处理器执行时实现如下步骤:
读取第一时间内的用户日志数据,并对用户日志数据进行清洗;
解析清洗后的用户日志数据得到每个用户的一个或多个操作行为序列,过滤掉无效的操作行为序列,得到的有效操作行为序列为训练样本句子;
将所述训练样本句子转换为词袋向量,利用词频模型将所述训练样本句子的词袋向量转换为词频向量,对该词频向量进行降维得到第一向量形成的样本空间;
对所述第一向量进行聚类,得到该第一时间内用户操作日志数据的分类类别及各类别对应的主题标签;
读取第二时间内的用户日志数据,对数据进行清洗、解析得到该第二时间内的用户操作行为序列,将该第二时间内的用户操作行为序列转换为词频向量后利用矩阵变换映射到样本空间,得到该第二时间对应的第二向量;
计算该第二时间内对应的第二向量与所述每个分类类别中的第一向量之间的欧氏距离,根据最小距离值确定该第二时间内对应的第二向量所属的分类类别并标注相应的主题标签。
优选地,将所述训练样本句子转换为词袋向量,利用词频模型将所述训练样本句子的词袋向量转换为词频向量,对该词频向量进行降维得到第一向量形成的样本空间的步骤包括:
通过词袋模型得到每个训练样本句子中代表用户操作行为的各操作代码的出现次数;
利用词频-逆词频算法计算得到每个训练样本句子中各操作代码的出现次数对应的词频;
基于计算得到的词频,将所有样本句子构成m行、n列的样本矩阵,m代表样本句子的总数,n代表每个样本句子包含的操作代码的总数,矩阵中每一行的数值为样本句子各操作代码的词频,其中,m、n为正整数;
利用奇异值分解算法对所述样本矩阵进行分解,得到每个样本句子降维后的第一向量形成的样本空间。
优选地,对所述降维后的句子向量进行聚类的步骤包括:
视第一时间降维后得到的第一向量集合中的每个向量为一个点,利用局部异常点检查算法标注出集合中的正常点及异常点;
利用层次聚类算法对正常点进行分类,得到正常点的分类类别及主题标签;
计算异常点与正常点之间的欧氏距离,根据最小距离值将异常点划分到正常点所属的分类类别并标注相应的主题标签。
进一步地,为实现上述目的,本发明还提供一种计算机可读存储介质,所述计算机可读存储介质存储有用户操作行为分析程序,所述用户操作行为分析程序可被至少一个处理器执行,以使所述至少一个处理器执行所述的用户操作行为分析方法的步骤。
本发明基于原始用户日志数据,利用无监督算法对用户的操作行为进行分析、确定用户操作的类别及主题标签,并初步识别用户操作行为是否存在异常。本发明基于原始用户日志数据进行分析,也不需要把高维的原始数据提炼成多个统计指标,从而避免了数据提炼导致的信息丢失,也不需要行业专家的介入,避免了人工干预。基于无监督算法进行建模的方式,不需要让模型去认识正负样本特点,避免了非均衡数据对模型学习的影响,也避免了统计上的“幸存者偏差”,提高了分析的效率及准确性。
附图说明
图1是本发明电子装置一实施例的示意图;
图2是图1中用户操作行为分析程序的程序模块图;
图3是以表格形式示出了本发明实施例中的一个有效的用户操作行为序列;
图4是以表格形式示出了本发明实施例中的训练样本句子经过词袋模型计算后的格式;
图5是以表格形式示出了本发明实施例中的训练样本句子各操作代码的出现次数经过TF-IDF模型转换后得到的词频向量。
图6是本发明用户操作行为分析方法一实施例的流程图;
图7是图6中步骤S30的细化流程图;
图8是图6中步骤S40的细化流程图;
本发明目的的实现、功能特点及优点将结合实施例,参照附图做进一步说明。
具体实施方式
为了使本发明的目的、技术方案及优点更加清楚明白,以下结合附图及实施例,对本发明进行进一步详细说明。应当理解,此处所描述的具体实施例仅用以解释本发明,并不用于限定本发明。基于本发明中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。
需要说明的是,在本发明中涉及“第一”、“第二”等的描述仅用于描述目的,而不能理解为指示或暗示其相对重要性或者隐含指明所指示的技术特征的数量。由此,限定有“第一”、“第二”的特征可以明示或者隐含地包括至少一个该特征。另外,各个实施例之间的技术方案可以相互结合,但是必须是以本领域普通技术人员能够实现为基础,当技术方案的结合出现相互矛盾或无法实现时应当认为这种技术方案的结合不存在,也不在本发明要求的保护范围之内。
参阅图1所示,是本发明电子装置1一实施例的示意图。
在本实施例中,电子装置1可以是服务器、智能手机、平板电脑、个人电脑、便携计算机以及其它具有运算功能的电子设备。
所述电子装置1包括:存储器11、处理器12以及网络接口13。存储器11至少包括一种类型的可读存储介质。所述至少一种类型的可读存储介质可为如闪存、硬盘、多媒体卡、卡型存储器等的非易失性存储介质。在一些实施例中,所述存储器11可以是所述电子装置1的内部存储单元,例如该电子装置1的硬盘。在另一些实施例中,所述存储器11也可以是所述电子装置1的外部存储单元,例如所述电子装置1上配备的插接式硬盘,智能存储卡(Smart Media Card,SMC),安全数字(Secure Digital,SD)卡,闪存卡(Flash Card)等。
在本实施例中,所述存储器11可以用于存储安装于所述电子装置1的应用软件及各类数据,例如用户操作行为分析程序10的程序代码及其运行过程中产生的相关数据。
处理器12在一些实施例中可以是一中央处理器(Central Processing Unit,CPU)、微处理器或其它数据处理芯片,用于运行存储器11中存储的程序代码或处理数据。
网络接口13可选的可以包括标准的有线接口、无线接口(如WI-FI接口),通常用于在该装置1与其他电子设备之间建立通信连接。
可选地,该装置1还可以包括用户接口,用户接口可以包括显示器(Display)、输入单元比如键盘(Keyboard),可选的用户接口还可以包括标准的有线接口、无线接口。可选地,在一些实施例中,显示器可以是LED显示器、液晶显示器、触控式液晶显示器以及OLED(Organic Light-Emitting Diode,有机发光二极管)触摸器等。其中,显示器也可以适当的称为显示屏或显示单元,用于显示在电子装置1中处理的信息以及用于显示可视化的用户界面。
图1仅示出了具有组件11-13以及用户操作行为分析程序10的电子装置1,但是应理解的是,图1并未示出电子装置1的所有组件,可以替代实施更多或者更少的组件。
在图1所示的电子装置1实施例中,存储器11中存储有用户操作行为分析程序10,处理器12执行存储器11中存储的用户操作行为分析程序10时实现本发明方法的步骤,细化过程将在程序模块图和方法流程图中介绍。
参照图2所示,为图1中用户操作行为分析程序10的程序模块图。在本实施例中,用户操作行为程序10被分割为多个模块,该多个模块被存储于存储器11中,并由处理器12执行,以完成本发明。本发明所称的模块是指能够完成特定功能的一系列计算机程序指令段。
所述用户操作行为程序10可以被分割为:预处理模块110、第一分析模块120、聚类模块130及第二分析模块140。
预处理模块110,用于读取第一时间内(例如,1周内)的用户日志数据并对用户日志数据进行清洗。每条用户日志包括用户的一个或多个操作行为及每个操作行为对应的操作代码,此外还包括用户请求和回执信息。用户请求包括用户请求执行何种操作,回执信息是指被用户操作的业务系统应请求返回给用户的信息。对用户日志数据进行清洗包括剔除重复、过滤空值等操作。
第一分析模块120,用于解析清洗后的用户日志数据得到每个用户的一个或多个操作行为序列,并过滤掉无效的操作行为序列,将得到的有效操作行为序列视为训练样本句子。每个有效的操作行为序列包括依操作时间顺序排列的多个操作代码。一个用户操作行为序列,是对用户的对话流进行分割、截取出的基于单一目的用户操作行为。截取操作可以基于客户、渠道和时间三个维度。例如,某用户A在某一渠道下两段对话流之间停顿的时间间隔作为对话流分割的指标,停顿时间超过一阈值将意味着用户的某一目的已经到达或终止实施,而当两个完全一样的操作间隔时间极小时(例如小于一预设阈值5秒)将其合并为一个操作。过滤无效的操作行为序列包括过滤掉操作行为过少、或不完整的对话流。图3为一个有效的用户操作行为序列。
第一分析模块120将所述训练样本句子转换为词袋向量,利用词频-逆词频(TermFrequency–Inverse Document Frequency,TF-IDF)模型将所述训练样本句子的词袋向量转换为词频向量,对该词频向量进行降维得到第一向量形成的样本空间。
通过词袋(Bag of Words,BOW)模型得到每个训练样本句子中各操作代码的出现次数。
一个训练样本句子经过BOW模型计算后得到图4所示的格式表示,表格中第二行的数字代表该训练样本句子中各操作代码的出现次数。
之后,第一分析模块120利用TF-IDF算法计算得到每个训练样本句子中各操作代码的出现次数对应的词频。例如,训练样本句子各操作代码的出现次数经过TF-IDF模型转换后,得到图5所示的词频向量。
类似的,通过TF-IDF模型,所有样本句子构成m行n列的样本矩阵,m代表样本句子的总数,n代表每个样本句子包含的操作代码的总数,矩阵中每一行的数值为样本句子各操作代码的词频,其中,m、n为正整数。
利用奇异值分解(Singular Value Decomposition,SVD)算法对所述样本矩阵Am×n进行分解,得到每个样本句子降维后的第一向量。
对于任意矩阵:
奇异值分解都存在如下分解方式:
Am×n=Um×mΣm×nVn×n
其中:
该矩阵为对角矩阵,{σi|i∈1,…,k}为奇异值,奇异值从左上角向右下降序排列,代表各维度的重要性依次减小,因此可以选择排名靠前的前r个奇异值(r为正整数)和其对应的维度来近似矩阵Am×n的结果:
Am×n≈Um×rΣr×rVr×n
基于上述词频向量,列字段的操作代码为词,行字段的句子ID为行索引,经过SVD的上述分解方式分解后,得到的U为句子向量,V为词向量。根据需求选择重要维度得到降维后的第一向量。
为了降维后的第一向量形成的样本空间足够大,用作训练的用户操作日志可以选择较大时间范围(例如1周),矩阵分解的时候用到的是全量数据(例如1周内的全部日志数据),训练得到样本空间后,有新的训练样本句子加入或有待测试的句子时,无需重新计算全量数据,而是基于训练出的样本空间把的训练样本句子或待测试的句子映射到训练出的样本空间。
聚类模块130,用于对所述降维后的第一向量进行聚类,得到该第一时间内用户操作日志数据的分类类别及各类别对应的主题标签。
在本实施例中,聚类模块130视第一时间对应的所述降维后得到的第一向量集合中的每个向量为一个点,利用局部异常点检查(Local Outlier Factor,LOF)算法标注出集合中的正常点及异常点。
之后,聚类模块130利用层次聚类算法对正常点进行分类,得到正常点的分类类别及主题标签。在本实施例中,是基于最小描述长度(Minimum Description Length,MDL)算法确定分类类别的数量:首先对句子向量空间进行多次层次聚类,对每次聚类结果进行统计,然后把一次聚类结果中的所有分类按元素个数进行排序,最后根据各分类元素个数与阈值p的大小关系将这些分类分成两种:主要类和次要类,再由MDL的计算公式计算得到每一个主要类和次要类的编码值之和,选择其中最小的编码值之和所对应的阈值p为最优分界点,主要类个数则为此次层次聚类的最优个数,而多次层次聚类获得的多次最优个数的稳定值作为最终分类类别的数目,其中,主要类指的是元素多的类,次要类指的是元素少的类,元素多少按照阈值p来判断,超过阈值p为主要类,低于阈值p为次要类。
得到正常点的分类类别后,同一个类别中的操作行为具有相同的特征(例如相同的操作代码),聚类模块130根据这些相同特征可以确定该类别对应的主题标签。例如主题标签可以包括新股申购、基金交易、股票买卖等。
聚类模块130计算异常点与正常点之间的欧氏距离,根据最小距离值将异常点划分到正常点所属的分类类别并标注相应的主题标签。例如,聚类模块130计算得到一个异常点p1与每个正常点之间的欧氏距离d1、d2、d3,…dn(n为正整数),从d1、d2、d3,…dn中取最小值dmax,将异常点p1划分到该最小值dmax对应的正常点所属的分类类别,并将该最小值dmax对应的正常点的主题标签赋给异常点p1。
最后,聚类模块130筛选并输出被标注有分类、主题标签及是否异常的全部句子向量。
第二分析模块140,用于读取第二时间内(例如当前2小时内)的用户日志数据,对数据进行清洗、解析得到该第二时间内的用户操作行为序列,将用户操作行为序列转换为词频向量后利用矩阵变换映射到样本空间,得到该第二时间对应的第二向量。
假设所有训练样本句子所形成的空间为Φ,且有R为实数空间。只要训练样本的数据足够丰富,可以认为Φ涵盖了所有的情况,从而把Φ映射到向量空间Ψ,且有当矩阵Am×n中的n=r时,方程Am×n=Um×mΣm×nVn×n,可以写成如下形式:
Am×r=Um×rΣr×rVr×r
且Σr×r和Vr×r都可逆,则以上方程可以写成如下形式:
Um×r=Am×r(Vr×r)-1(Σr×r)-1
对于任意向量B1×r∈,由于已经假设Φ涵盖了所有情况,所以认为都存在以下变换:
其中,则是向量B1×r∈Φ通过变换(Vr×r)-1(Σr×r)-1在新空间的像,且由于这两个矩阵是可逆方阵,所以这个映射方式是唯一的,及和B1×r一一对应。根据这个原理,第二时间内的每个用户操作行为序列都可以映射到第一向量的样本空间中的一个降维后的向量
综上,第二分析模块140根据SVD分解得到的矩阵Σr×r和Vr×r及其逆矩阵能将一个新的用户操作行为序列映射到训练样本所构成的空间,训练过程和测试过程的映射分成两个流程,训练结束后有新的样本加入或测试过程中无需再重构空间,既满足了空间上的一致性,又提高了模型的运算效率。
最后,第二分析模块140计算第二时间内对应的第二向量与所述每个分类类别中的第一向量之间的欧氏距离,根据最小距离值确定第二时间内对应的第二向量所属的分类类别并标注相应的主题标签,以及对应的LOF值。例如,第二分析模块140以与第二时间内对应的第二向量a欧式距离最近(即距离值最小)的第一向量b的LOF值,作为第二向量a的LOF值。
参阅图6所示,是本方案提供的用户操作行为分析方法一实施例的流程示意图。在本实施例中,根据不同的需求,图6所示的流程图步骤的执行顺序可以改变,某些步骤可以省略。
步骤S10,预处理模块110读取第一时间内(例如,1周内)的用户日志数据并对用户日志数据进行清洗。每条用户日志包括用户的一个或多个操作行为及代表每个操作行为的操作代码(每个操作代码由若干个数字组成),此外还包括用户请求和回执信息。用户请求包括用户请求执行何种操作,回执信息包括被用户操作的业务系统应请求返回给用户的信息,对用户日志数据进行清洗包括剔除重复、过滤空值等操作。
步骤S20,第一分析模块120解析清洗后的用户日志数据得到每个用户的一个或多个操作行为序列,并过滤掉无效的操作行为序列,将得到的有效操作行为序列视为训练样本句子。每个有效的操作行为序列包括依操作时间顺序排列的多个操作代码。一个用户操作行为序列,是对用户的对话流进行分割、截取出的基于单一目的用户操作行为。截取操作可以基于客户、渠道和时间三个维度。例如,某用户A在某一渠道下两段对话流之间停顿的时间间隔作为对话流分割的指标,停顿时间超过一阈值将意味着用户的某一目的已经到达或终止实施,而当两个完全一样的操作间隔时间极小时(例如小于一预设阈值5秒)将其合并为一个操作。过滤无效的操作行为序列包括过滤掉操作行为过少、或不完整的对话流。图3为一个有效的用户操作行为序列。
步骤S30,第一分析模块120将所述训练样本句子转换为词袋向量,利用词频模型将所述训练样本句子的词袋向量转换为第一词频向量,对第一词频向量进行降维得到降维后的第一向量形成的样本空间。
参阅图7所示,是图6中步骤S30的细化流程图。
步骤S310,第一分析模块120通过BOW模型得到每个训练样本句子中各操作代码的出现次数。
一个训练样本句子经过词袋后得到图4所示的格式表示,表格中第二行的数字代表所述训练样本句子中各操作代码的出现次数。
步骤S320,第一分析模块120利用TF-IDF算法计算得到每个训练样本句子中各操作代码的出现次数对应的词频。例如图4中训练样本句子各操作代码的出现次数经过TF-IDF模型转换后得到的词频向量如图5的表格所示。
步骤S330,类似的,第一分析模块120通过TF-IDF模型,所有样本句子构成m行n列的样本矩阵Am×n,m代表样本句子的总数,n代表每个样本句子包含的操作代码的总数,矩阵中每一行的数值为样本句子各操作代码的词频,其中,m、n为正整数。
步骤S340,第一分析模块120利用SVD算法对所述样本矩阵Am×n进行分解,得到每个样本句子降维后的句子向量。
对于任意矩阵:
SVD都存在如下分解方式:
Am×n=Um×mΣm×nVn×n
其中:
该矩阵是对角矩阵,{σi|i∈1,…,k}为奇异值,奇异值从左上角向右下降序排列,代表各维度的重要性依次减小,因此可以选择排名靠前的前r个奇异值和其对应的维度来近似矩阵Am×n的结果:
Am×n≈Um×rΣr×rVr×n。
基于上述词频向量,列字段的操作代码为词,行字段的句子ID为行索引,经过SVD的上述分解方式分解后,得到的U为句子向量,V为词向量。根据需求选择重要维度得到降维后的第一向量。
为了降维后的第一向量形成的样本空间足够大,用作训练的用户操作日志可以选择较大时间范围(例如一周),矩阵分解的时候用到的是全量数据(例如一周内的全部日志数据),训练得到样本空间后,有新的训练样本句子加入或有待测试的句子时,无需重新计算全量数据,而是基于训练出的样本空间把的训练样本句子或待测试的句子映射到训练出的样本空间,可以参考图8中步骤S40。
步骤S40,聚类模块130对所述降维后的第一向量进行聚类,得到该第一时间内用户操作日志数据的分类类别及各类别对应的主题标签。
参阅图8所示,是图6中步骤S40的细化流程图。
步骤S410,聚类模块130视第一时间对应的所述降维后得到的第一向量集合中的每个向量为一个点,利用LOF算法标注出集合中的正常点及异常点。
步骤S420,聚类模块130利用层次聚类算法对正常点进行分类,得到正常点的分类类别及主题标签。在本实施例中,是基于MDL算法确定分类类别的数量:首先对向量空间进行多次层次聚类,对每次聚类结果进行统计,然后把一次聚类结果中的所有分类按元素个数进行排序,最后根据各分类元素个数与阈值p的大小关系将这些分类分成两种:主要类和次要类,再由MDL的计算公式计算得到每一个主要类和次要类的编码值之和,选择其中最小的编码值之和所对应的阈值p为最优分界点,主要类个数则为此次层次聚类的最优个数,而多次层次聚类获得的多次最优个数的稳定值作为最终分类类别的数目,其中,主要类指的是元素多的类,次要类指的是元素少的类,元素多少按照阈值p来判断,超过阈值p为主要类,低于阈值p为次要类。
第一分析模块120得到正常点的分类类别后,同一个类别中的操作行为具有相同的特征(例如相同的操作代码),根据这些相同特征可以确定该类别对应的主题标签。例如主题标签可以包括新股申购、基金交易、股票买卖等。
步骤S430,聚类模块130计算异常点与正常点之间的欧氏距离,根据最小距离值将异常点划分到正常点所属的分类类别并标注相应的主题标签。
最后,聚类模块130筛选并输出被标注有分类、主题标签及是否异常的全部第一向量。
步骤S50,第二分析模块140读取第二时间内(例如当前2小时内)的用户日志数据,对数据进行清洗、解析得到该第二时间内的用户操作行为序列,将用户操作行为序列转换为词频向量后利用矩阵变换映射到样本空间,得到该第二时间对应的第二向量。
假设步骤S30中所有训练样本句子所形成的空间为Φ,且有R为实数空间。只要训练样本的数据足够丰富,可以认为Φ涵盖了所有的情况,从而把Φ映射到向量空间Ψ,且有当矩阵Am×n中的n=r时,方程Am×n=Um×mΣm×nVn×n,可以写成如下形式:
Am×r=Um×rΣr×rVr×r
且Σr×r和Vr×r都可逆,则以上方程可以写成如下形式:
Um×r=Am×r(Vr×r)-1(Σr×r)-1
对于任意向量B1×r∈,由于已经假设Φ涵盖了所有情况,所以认为都存在以下变换:
其中,则是向量B1×r∈Φ通过变换(Vr×r)-1(Σr×r)-1在新空间的像,且由于这两个矩阵是可逆方阵,所以这个映射方式是唯一的,及和B1×r一一对应。根据这个原理,第二时间内的每个用户操作行为序列都可以映射到第一时间句向量样本空间中的一个降维后的第一向量
综上,根据SVD分解得到的矩阵Σr×r和Vr×r及其逆矩阵能将一个新的句子映射到训练样本所构成的空间,训练过程和测试过程的句子映射分成两个流程,训练结束后有新的样本加入或测试过程中无需再重构空间,既满足了空间上的一致性,又提高了模型的运算效率。
步骤S60,第二分析模块计算该第二时间内对应的第二向量与所述每个分类类别中的第一向量之间的欧氏距离,根据最小距离值确定该第二时间内对应的句子向量所属的分类类别并标注相应的主题标签,以及对应LOF值。
本发明提供一种计算机可读存储介质,所述计算机可读存储介质存储有用户操作行为分析程序10,所述用户操作行为分析程序10可被至少一个处理器执行,以使所述至少一个处理器执行如上述的用户操作行为分析方法的步骤。
本发明计算机可读存储介质具体实施方式与上述用户操作行为分析方法和电子装置各实施例基本相同,在此不作累述。
上述本发明实施例序号仅仅为了描述,不代表实施例的优劣。
通过以上的实施方式的描述,本领域的技术人员可以清楚地了解到上述实施例方法可借助软件加必需的通用硬件平台的方式来实现,当然也可以通过硬件,但很多情况下前者是更佳的实施方式。基于这样的理解,本发明的技术方案本质上或者说对现有技术做出贡献的部分可以以软件产品的形式体现出来,该计算机软件产品存储在一个存储介质(如ROM/RAM、磁碟、光盘)中,包括若干指令用以使得一台客户端(可以是手机,计算机,电子装置或者网络设备等)执行本发明各个实施例所述的方法。
以上仅为本发明的优选实施例,并非因此限制本发明的专利范围,凡是利用本发明说明书及附图内容所作的等效结构或等效流程变换,或直接或间接运用在其他相关的技术领域,均同理包括在本发明的专利保护范围内。
Claims (10)
1.一种用户操作行为分析方法,其特征在于,所述方法包括步骤:
读取第一时间内的用户日志数据,并对用户日志数据进行清洗;
解析清洗后的用户日志数据得到每个用户的一个或多个操作行为序列,过滤掉无效的操作行为序列,得到的有效操作行为序列为训练样本句子;
将所述训练样本句子转换为词袋向量,利用词频模型将所述训练样本句子的词袋向量转换为词频向量,对该词频向量进行降维得到第一向量形成的样本空间;
对所述第一向量进行聚类,得到该第一时间内用户操作日志数据的分类类别及各类别对应的主题标签;
读取第二时间内的用户日志数据,对数据进行清洗、解析得到该第二时间内的用户操作行为序列,将该第二时间内的用户操作行为序列转换为词频向量后利用矩阵变换映射到样本空间,得到该第二时间对应的第二向量;
计算该第二时间内对应的第二向量与所述每个分类类别中的第一向量之间的欧氏距离,根据最小距离值确定该第二时间内对应的第二向量所属的分类类别并标注相应的主题标签。
2.如权利要求1所述的用户操作行为分析方法,其特征在于,将所述训练样本句子转换为词袋向量,利用词频模型将所述训练样本句子的词袋向量转换为词频向量,对该词频向量进行降维得到第一向量形成的样本空间的步骤包括:
通过词袋模型得到每个训练样本句子中代表用户操作行为的各操作代码的出现次数;
利用词频-逆词频算法计算得到每个训练样本句子中各操作代码的出现次数对应的词频;
基于计算得到的词频,将所有样本句子构成m行、n列的样本矩阵,m代表样本句子的总数,n代表每个样本句子包含的操作代码的总数,矩阵中每一行的数值为样本句子各操作代码的词频,其中,m、n为正整数;
利用奇异值分解算法对所述样本矩阵进行分解,得到每个样本句子降维后的第一向量形成的样本空间。
3.如权利要求1或2所述的用户操作行为分析方法,其特征在于,对所述第一向量进行聚类的步骤包括:
视第一时间降维后得到的第一向量集合中的每个向量为一个点,利用局部异常点检查算法标注出集合中的正常点及异常点;
利用层次聚类算法对正常点进行分类,得到正常点的分类类别及主题标签;
计算异常点与正常点之间的欧氏距离,根据最小距离值将异常点划分到正常点所属的分类类别并标注相应的主题标签。
4.如权利要求1或2所述的用户操作行为分析方法,其特征在于,每条用户日志包括用户的一个或多个操作行为及代表每个操作行为的操作代码。
5.如权利要求4所述的用户操作行为分析方法,其特征在于,所述操作行为序列,是对用户的对话流进行分割、截取出的基于单一目的用户操作行为。
6.一种电子装置,其特征在于,所述电子装置包括存储器和处理器,所述存储器上存储有可在所述处理器上运行的用户操作行为分析程序,所述用户操作行为分析程序被所述处理器执行时实现如下步骤:
读取第一时间内的用户日志数据,并对用户日志数据进行清洗;
解析清洗后的用户日志数据得到每个用户的一个或多个操作行为序列,过滤掉无效的操作行为序列,得到的有效操作行为序列为训练样本句子;
将所述训练样本句子转换为词袋向量,利用词频模型将所述训练样本句子的词袋向量转换为词频向量,对该词频向量进行降维得到第一向量形成的样本空间;
对所述第一向量进行聚类,得到该第一时间内用户操作日志数据的分类类别及各类别对应的主题标签;
读取第二时间内的用户日志数据,对数据进行清洗、解析得到该第二时间内的用户操作行为序列,将用户操作行为序列转换为词频向量后利用矩阵变换映射到样本空间,得到该第二时间对应的第二向量;
计算该第二时间内对应的第二向量与所述每个分类类别中的第一向量之间的欧氏距离,根据最小距离值确定该第二时间内对应的第二向量所属的分类类别并标注相应的主题标签。
7.如权利要求6所述的用户操作行为分析方法,其特征在于,将所述训练样本句子转换为词袋向量,利用词频模型将所述训练样本句子的词袋向量转换为词频向量,对该词频向量进行降维得到第一向量形成的样本空间的步骤包括:
通过词袋模型得到每个训练样本句子中代表用户操作行为的各操作代码的出现次数;
利用词频-逆词频算法计算得到每个训练样本句子中各操作代码的出现次数对应的词频;
基于计算得到的词频,将所有样本句子构成m行、n列的样本矩阵,m代表样本句子的总数,n代表每个样本句子包含的操作代码的总数,矩阵中每一行的数值为样本句子各操作代码的词频,其中,m、n为正整数;
利用奇异值分解算法对所述样本矩阵进行分解,得到每个样本句子降维后的第一向量形成的样本空间。
8.如权利要求6或7所述的用户操作行为分析方法,其特征在于,对所述第一向量进行聚类的步骤包括:
视第一时间降维后得到的第一向量集合中的每个向量为一个点,利用局部异常点检查算法标注出集合中的正常点及异常点;
利用层次聚类算法对正常点进行分类,得到正常点的分类类别及主题标签;
计算异常点与正常点之间的欧氏距离,根据最小距离值将异常点划分到正常点所属的分类类别并标注相应的主题标签。
9.如权利要求6或7所述的用户操作行为分析方法,其特征在于,每条用户日志包括用户的一个或多个操作行为及代表每个操作行为的操作代码。
10.一种计算机可读存储介质,所述计算机可读存储介质存储有用户操作行为分析程序,所述用户操作行为分析程序可被至少一个处理器执行,以使所述至少一个处理器执行如权利要求1-5中任一项所述的用户操作行为分析方法的步骤。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201811023319.0A CN109284372B (zh) | 2018-09-03 | 2018-09-03 | 用户操作行为分析方法、电子装置及计算机可读存储介质 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201811023319.0A CN109284372B (zh) | 2018-09-03 | 2018-09-03 | 用户操作行为分析方法、电子装置及计算机可读存储介质 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN109284372A true CN109284372A (zh) | 2019-01-29 |
CN109284372B CN109284372B (zh) | 2023-07-25 |
Family
ID=65184411
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201811023319.0A Active CN109284372B (zh) | 2018-09-03 | 2018-09-03 | 用户操作行为分析方法、电子装置及计算机可读存储介质 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN109284372B (zh) |
Cited By (10)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN110113368A (zh) * | 2019-06-27 | 2019-08-09 | 电子科技大学 | 一种基于子轨迹模式的网络行为异常检测方法 |
CN110209658A (zh) * | 2019-06-04 | 2019-09-06 | 北京字节跳动网络技术有限公司 | 数据清洗方法和装置 |
CN110493176A (zh) * | 2019-07-02 | 2019-11-22 | 北京科东电力控制系统有限责任公司 | 一种基于非监督机器学习的用户可疑行为分析方法及系统 |
CN110992106A (zh) * | 2019-12-11 | 2020-04-10 | 上海风秩科技有限公司 | 训练数据获取方法,装置,模型训练方法及装置 |
CN111369044A (zh) * | 2020-02-27 | 2020-07-03 | 腾讯云计算(北京)有限责任公司 | 一种估计流失的方法、设备及计算机可读存储介质 |
JPWO2020255219A1 (zh) * | 2019-06-17 | 2020-12-24 | ||
CN112306982A (zh) * | 2020-11-16 | 2021-02-02 | 杭州海康威视数字技术股份有限公司 | 异常用户检测方法、装置、计算设备及存储介质 |
CN112348041A (zh) * | 2019-08-07 | 2021-02-09 | 中移(苏州)软件技术有限公司 | 日志分类、日志分类训练方法及装置、设备、存储介质 |
WO2021139437A1 (zh) * | 2020-01-06 | 2021-07-15 | 支付宝(杭州)信息技术有限公司 | 事件序列数据的处理方法、装置、电子设备 |
CN115994527A (zh) * | 2023-03-23 | 2023-04-21 | 广东聚智诚科技有限公司 | 一种基于机器学习的ppt自动生成系统 |
Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
EP2624149A2 (en) * | 2012-02-02 | 2013-08-07 | Xerox Corporation | Document processing employing probabilistic topic modeling of documents represented as text words transformed to a continuous space |
CN106776713A (zh) * | 2016-11-03 | 2017-05-31 | 中山大学 | 一种基于词向量语义分析的海量短文本聚类方法 |
CN107679144A (zh) * | 2017-09-25 | 2018-02-09 | 平安科技(深圳)有限公司 | 基于语义相似度的新闻语句聚类方法、装置及存储介质 |
CN108363821A (zh) * | 2018-05-09 | 2018-08-03 | 深圳壹账通智能科技有限公司 | 一种信息推送方法、装置、终端设备及存储介质 |
-
2018
- 2018-09-03 CN CN201811023319.0A patent/CN109284372B/zh active Active
Patent Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
EP2624149A2 (en) * | 2012-02-02 | 2013-08-07 | Xerox Corporation | Document processing employing probabilistic topic modeling of documents represented as text words transformed to a continuous space |
CN106776713A (zh) * | 2016-11-03 | 2017-05-31 | 中山大学 | 一种基于词向量语义分析的海量短文本聚类方法 |
CN107679144A (zh) * | 2017-09-25 | 2018-02-09 | 平安科技(深圳)有限公司 | 基于语义相似度的新闻语句聚类方法、装置及存储介质 |
CN108363821A (zh) * | 2018-05-09 | 2018-08-03 | 深圳壹账通智能科技有限公司 | 一种信息推送方法、装置、终端设备及存储介质 |
Non-Patent Citations (1)
Title |
---|
张宏鑫;盛风帆;徐沛原;汤颖;: "基于移动终端日志数据的人群特征可视化" * |
Cited By (19)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN110209658A (zh) * | 2019-06-04 | 2019-09-06 | 北京字节跳动网络技术有限公司 | 数据清洗方法和装置 |
US11928160B2 (en) | 2019-06-17 | 2024-03-12 | Nippon Telegraph And Telephone Corporation | Classification device, classification method, and classification program |
JP7207537B2 (ja) | 2019-06-17 | 2023-01-18 | 日本電信電話株式会社 | 分類装置、分類方法及び分類プログラム |
JPWO2020255219A1 (zh) * | 2019-06-17 | 2020-12-24 | ||
WO2020255219A1 (ja) * | 2019-06-17 | 2020-12-24 | 日本電信電話株式会社 | 分類装置、分類方法及び分類プログラム |
CN110113368B (zh) * | 2019-06-27 | 2021-08-20 | 电子科技大学 | 一种基于子轨迹模式的网络行为异常检测方法 |
CN110113368A (zh) * | 2019-06-27 | 2019-08-09 | 电子科技大学 | 一种基于子轨迹模式的网络行为异常检测方法 |
CN110493176A (zh) * | 2019-07-02 | 2019-11-22 | 北京科东电力控制系统有限责任公司 | 一种基于非监督机器学习的用户可疑行为分析方法及系统 |
CN110493176B (zh) * | 2019-07-02 | 2022-06-10 | 北京科东电力控制系统有限责任公司 | 一种基于非监督机器学习的用户可疑行为分析方法及系统 |
CN112348041B (zh) * | 2019-08-07 | 2022-12-13 | 中移(苏州)软件技术有限公司 | 日志分类、日志分类训练方法及装置、设备、存储介质 |
CN112348041A (zh) * | 2019-08-07 | 2021-02-09 | 中移(苏州)软件技术有限公司 | 日志分类、日志分类训练方法及装置、设备、存储介质 |
CN110992106B (zh) * | 2019-12-11 | 2023-11-03 | 上海风秩科技有限公司 | 训练数据获取方法,装置,模型训练方法及装置 |
CN110992106A (zh) * | 2019-12-11 | 2020-04-10 | 上海风秩科技有限公司 | 训练数据获取方法,装置,模型训练方法及装置 |
WO2021139437A1 (zh) * | 2020-01-06 | 2021-07-15 | 支付宝(杭州)信息技术有限公司 | 事件序列数据的处理方法、装置、电子设备 |
CN111369044A (zh) * | 2020-02-27 | 2020-07-03 | 腾讯云计算(北京)有限责任公司 | 一种估计流失的方法、设备及计算机可读存储介质 |
CN111369044B (zh) * | 2020-02-27 | 2023-06-06 | 腾讯云计算(北京)有限责任公司 | 一种估计流失的方法、设备及计算机可读存储介质 |
CN112306982A (zh) * | 2020-11-16 | 2021-02-02 | 杭州海康威视数字技术股份有限公司 | 异常用户检测方法、装置、计算设备及存储介质 |
CN115994527A (zh) * | 2023-03-23 | 2023-04-21 | 广东聚智诚科技有限公司 | 一种基于机器学习的ppt自动生成系统 |
CN115994527B (zh) * | 2023-03-23 | 2023-06-09 | 广东聚智诚科技有限公司 | 一种基于机器学习的ppt自动生成系统 |
Also Published As
Publication number | Publication date |
---|---|
CN109284372B (zh) | 2023-07-25 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN109284372A (zh) | 用户操作行为分析方法、电子装置及计算机可读存储介质 | |
CN109284371A (zh) | 反欺诈方法、电子装置及计算机可读存储介质 | |
Duboue | The art of feature engineering: essentials for machine learning | |
CN109325165B (zh) | 网络舆情分析方法、装置及存储介质 | |
US11010548B2 (en) | Data analytics system and methods for text data | |
US20210042590A1 (en) | Machine learning system using a stochastic process and method | |
CN108021651B (zh) | 一种网络舆情风险评估方法及装置 | |
CN113626607B (zh) | 异常工单识别方法、装置、电子设备及可读存储介质 | |
CN112380343A (zh) | 问题解析方法、装置、电子设备及存储介质 | |
CN106600052A (zh) | 一种基于时空轨迹的用户属性与社会网络检测系统 | |
CN107818491A (zh) | 电子装置、基于用户上网数据的产品推荐方法及存储介质 | |
Britton | Vine: Visualizing statistical interactions in black box models | |
CN113268615A (zh) | 资源标签生成方法、装置、电子设备及存储介质 | |
CN110276382A (zh) | 基于谱聚类的人群分类方法、装置及介质 | |
CN109992704A (zh) | 一种基于长短期记忆神经网络的企业舆情监控系统及方法 | |
CN112560465A (zh) | 批量异常事件的监控方法、装置、电子设备及存储介质 | |
CN103544299A (zh) | 一种商业智能云计算系统的构建方法 | |
CN110069558A (zh) | 基于深度学习的数据分析方法及终端设备 | |
CN111784360B (zh) | 一种基于网络链接回溯的反欺诈预测方法及系统 | |
WO2021128721A1 (zh) | 文本分类处理方法和装置 | |
CN114912731A (zh) | 一种基于大数据的政策匹配分析系统和精准推送方法 | |
Lo et al. | An emperical study on application of big data analytics to automate service desk business process | |
Chopra et al. | Data Science with Python: Combine Python with machine learning principles to discover hidden patterns in raw data | |
CN115099680A (zh) | 风险管理方法、装置、设备及存储介质 | |
CN115269998A (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 | ||
GR01 | Patent grant | ||
GR01 | Patent grant |