基于关联规则和用户属性的异常行为检测方法和系统的制作方法

文档序号:10553006阅读:266来源:国知局
基于关联规则和用户属性的异常行为检测方法和系统的制作方法
【专利摘要】本发明涉及一种异常行为检测方法和系统,该方法包括:获取用户的属性信息和待检测行为信息,计算属性信息与预先存储的属性信息的匹配度;筛选出匹配度大于第一预设阈值的属性信息,并获取与属性信息对应的历史异常行为信息;获取历史异常行为信息对应的异常行为序列,并获取历史异常行为信息及其对应的关联行为信息之间的关联关系;根据关联关系获取待检测行为信息的关联行为信息,将待检测行为信息及其对应的关联行为信息组成待检测行为序列;计算待检测行为序列与异常行为序列的相似度;获取相似度大于第二预设阈值的待检测行为信息,将获取的待检测行为信息判定为异常行为信息。上述的异常行为检测方法和系统能够准确地进行用户异常行为检测。
【专利说明】
基于关联规则和用户属性的异常行为检测方法和系统
技术领域
[0001]本发明涉及计算机技术领域,特别是涉及一种基于关联规则和用户属性的异常行为检测方法和系统。
【背景技术】
[0002]用户异常行为常指违反社会文明准则或成群体行为习惯和标准的“反常”行为。特别是随着人们对公共安全意识、网络安全意识的提高,因此对人群场景、网络等环境中的异常行为检测的关注度越来越高。
[0003]目前对用户异常行为的检测,通常依据个体异常行为的特征进行匹配检测,或依据个体正常行为的特征进行对比检测。但由于同一个行为可能在某些情况下是异常行为,而在其他情况下是正常行为。因此可能会将正常行为误检为异常行为,也有可能会将异常行为漏检为正常行为,从而导致异常行为检测的错误率高。

【发明内容】

[0004]基于此,有必要针对上述技术问题,提供一种异常行为检测方法和系统,其能够准确地进行用户异常行为检测。
[0005]—种异常行为检测方法,包括以下步骤:
[0006]获取用户的属性信息和待检测行为信息,并计算所述属性信息与预先存储的用户行为数据库中的属性信息的匹配度;
[0007]筛选出所述匹配度大于第一预设阈值的属性信息,并从所述用户行为数据库中获取与所述属性信息对应的历史异常行为信息;
[0008]从所述用户行为数据库中获取所述历史异常行为信息对应的异常行为序列,并获取所述异常行为序列中所述历史异常行为信息与所述历史异常行为信息对应的关联行为信息之间的关联关系;
[0009]根据所述关联关系获取所述待检测行为信息的关联行为信息,将所述待检测行为信息及其对应的关联行为信息组成待检测行为序列;
[0010]计算所述待检测行为序列与所述异常行为序列的相似度;
[0011]获取所述相似度大于第二预设阈值的待检测行为序列中的待检测行为信息,将获取的所述待检测行为信息判定为异常行为信息。
[0012]在其中一个实施例中,所述计算所述待检测行为序列与所述异常行为序列的相似度的步骤包括:
[0013]计算所述待检测行为序列与所述异常行为序列之间的转换代价,将所述转换代价作为所述相似度,其中,转换代价为由所述待检测行为序列转换到所述异常行为序列所需的最少编辑操作的次数。
[0014]在其中一个实施例中,在所述将获取的待检测行为信息判定为异常行为信息的步骤之后,还包括:将所述待检测行为信息的判定结果保存至所述用户行为数据库。
[0015]在其中一个实施例中,在所述获取用户的待检测行为信息的步骤之前,还包括:建立所述用户行为数据库;
[0016]所述建立所述用户行为数据库的步骤包括:
[0017]获取具有相同属性信息的历史行为信息中的历史异常行为信息和历史非异常行为信息;
[0018]获取历史异常行为信息对应的行为序列和历史非异常行为信息对应的行为序列;
[0019]根据获取的历史异常行为信息对应的行为序列和历史非异常行为信息对应的行为序列,获取异常行为序列;
[0020]将所述历史异常行为信息对应的关联行为信息,以及所述异常行为序列存储至所述用户行为数据库,其中,所述用户行为数据库的存储方式包括数据库或大数据存储库。
[0021]在其中一个实施例中,所述根据获取的历史异常行为信息对应的行为序列和历史非异常行为信息对应的行为序列,获取异常行为序列的步骤包括:
[0022]计算所述历史异常行为信息所属的第i类行为序列中的第j项行为信息与所述历史非异常行为信息所属的第k类行为序列中的第j项行为信息的匹配度,其中,i,j,k均为正整数;
[0023]判断所述匹配度是否大于所述第一预设阈值;
[0024]如果是,则将第j项行为信息从所述历史异常行为信息所属的第i类行为序列中删除;
[0025]对所述历史非异常行为信息所属的所有行为序列中的第j项行为信息重复执行上述步骤;
[0026]对所述历史异常行为信息所属的第i类行为序列中的所有项行为信息重复执行上述步骤;
[0027]获取最终的所述行为序列作为所述历史异常行为信息对应的所述异常行为序列。
[0028]一种异常行为检测系统,包括:
[0029]匹配度计算模块,用于获取用户的属性信息和待检测行为信息,并计算所述属性信息与预先存储的用户行为数据库中的属性信息的匹配度;
[0030]历史异常行为信息获取模块,用于筛选出所述匹配度大于第一预设阈值的属性信息,并从所述用户行为数据库中获取与所述属性信息对应的历史异常行为信息;
[0031]关联关系获取模块,用于从所述用户行为数据库中获取所述筛选出的历史异常行为信息对应的异常行为序列,并获取所述异常行为序列中所述筛选出的历史异常行为信息与所述筛选出的历史异常行为信息对应的关联行为信息之间的关联关系,其中,所述用户行为数据库的存储方式包括数据库或大数据存储库;
[0032]待检测行为序列生成模块,用于根据所述关联关系获取所述待检测行为信息的关联行为信息,将所述待检测行为信息及其对应的关联行为信息组成待检测行为序列;
[0033]相似度计算模块,用于计算所述待检测行为序列与所述异常行为序列的相似度;
[0034]判定模块,用于获取所述相似度大于第二预设阈值的待检测行为序列对应的待检测行为信息,将获取的待检测行为信息判定为异常行为信息。
[0035]在其中一个实施例中,相似度计算模块还用于计算所述待检测行为序列与所述异常行为序列之间的转换代价,将所述转换代价作为所述相似度,其中,转换代价为由所述待检测行为序列转换到所述异常行为序列所需的最少编辑操作的次数。
[0036]在其中一个实施例中,还包括:用户行为数据库建立模块;所述用户行为数据库建立模块还用于存储所述历史异常行为信息,所述历史异常行为信息所对应的关联行为信息,以及所述历史异常行为信息对应的异常行为序列。
[0037]在其中一个实施例中,所述用户行为数据库建立模块还用于将存储所述待检测行为信息及其对应的判定结果。
[0038]在其中一个实施例中,所述用户行为数据库建立模块还用于计算所述历史异常行为信息所属的第i类行为序列中的第j项行为信息与所述历史非异常行为信息所属的第k类行为序列中的第j项行为信息的匹配度,其中,i,j,k均为正整数;判断所述匹配度是否大于所述第一预设阈值;如果是,则将第j项行为信息从所述历史异常行为信息所属的第i类行为序列中删除;对所述历史非异常行为信息所属的所有行为序列中的第j项行为信息重复执行上述步骤;对所述历史异常行为信息所属的第i类行为序列中的所有项行为信息重复执行上述步骤;获取最终的所述行为序列作为所述历史异常行为信息对应的所述异常行为序列。
[0039]上述的异常行为检测方法和系统,根据历史异常行为信息的关联关系,挖掘出待检测行为信息对应的待检测行为序列;并计算待检测行为序列与异常行为序列的相似度;获取相似度大于第二预设阈值的待检测行为信息;将获取的待检测行为信息判定为异常行为信息。同一个行为可能在某些情况下是异常行为,而在其他情况下是正常行为;通过异常行为序列对行为信息进行判定,不会将正常行为误检为异常行为,也不会将异常行为漏检为正常行为,从而使得异常行为检测的准确率高。上述的异常行为检测方法和系统,提高了用户异常行为检测的准确度。
【附图说明】
[0040]图1为一个实施例的异常行为检测方法流程图;
[0041 ]图2为一个实施例的建立用户行为数据库的流程图;
[0042]图3为一个实施例的获取异常行为序列的方法流程图;
[0043]图4为一个实施例的采用文本匹配方式计算待检测行为信息与预先存储的用户行为数据库中的历史异常行为信息之间的匹配度的流程图;
[0044]图5为一个实施例的异常行为检测系统的结构框图;
[0045]图6为另一个实施例的异常行为检测系统的结构框图。
【具体实施方式】
[0046]在一个实施例中,如图1所示,提出了一种异常行为检测方法,该方法包括以下步骤:
[0047]步骤102,获取用户的属性信息和待检测行为信息,并计算属性信息与预先存储的用户行为数据库中的属性信息的匹配度。
[0048]在本实施例中,用户的属性信息包括性别、年龄和体貌特征等。待检测行为信息为用户的某一个具体的行为动作信息,例如用户的待检测行为信息可以为该用户从ATM机取款的行为序列“走进银行_>插卡_>输入密码_>取款_>走出银行”中的任意一个行为动作信息,例如取款。
[0049]用户的待检测行为信息可以为用户在购物网站上购物时进行的操作信息,该用户的待检测行为信息能够通过购物网站的后台记录获取;或者用户在ATM机取款时进行的操作信息,该用户的待检测行为信息可以通过ATM机的后台记录及ATM机上安装的摄像头获取;还可以为用户在公共场所的活动信息,该用户的待检测行为信息可以通过公共场所安装的摄像头获取。
[0050]在一个实施例中,预先存储的用户行为数据库中存储有用户的属性信息及对应的历史行为信息。该历史行为信息可以为历史异常行为信息和历史正常行为信息。历史行为信息为某一具体的行为动作信息。通常匹配度是指相比较的两个对象之间的相同或者相似程度。
[0051]由于用户行为数据库中存储的历史行为信息可以为多种格式,例如,图像、音频、视频和文本等。因此计算待检测行为信息与预先存储的用户行为数据库中的历史异常行为信息之间的匹配度可以通过图像匹配方式、音频匹配方式、视频匹配方式或者文本匹配方式实现。
[0052]步骤104,筛选出匹配度大于第一预设阈值的属性信息,并从用户行为数据库中获取与属性信息对应的历史异常行为信息。
[0053]将上述步骤102计算得到的匹配度与第一预设阈值作比较,从用户行为数据库中筛选出匹配度大于第一预设阈值的用户属性信息。所述历史异常信息可能有一个或多个。一般第一预设阈值可以根据具体需要进行设定,在本实施例中设定为60%。
[0054]步骤106,从用户行为数据库中获取历史异常行为信息对应的异常行为序列,并获取异常行为序列中历史异常行为信息与历史异常行为信息对应的关联行为信息之间的关联关系。
[0055]在本实施例中,异常行为序列是由历史异常行为信息及其关联行为信息按照预定关联关系排列而成。
[0056]在本实施例中,历史异常行为信息对应的关联行为信息可以有O个或I个或多个。当只有O个关联行为信息时,则异常行为序列为该历史异常行为信息。当有I个或多个关联行为信息时,则异常行为序列中各个关联行为信息与历史异常行为信息之间的连接关系包括但不限于队列关系、树状关系、网状关系或者其它连接关系。
[0057]关联行为信息为与历史异常行为信息存在预定关联关系的行为信息。在本实施例中,所述预定关联关系包括时间关系(例如时间先后关系)、空间关系(例如空间相邻关系)、因果关系和属性关系(例如属性相似关系)中的至少一种。
[0058]例如,历史异常行为信息为“取款”,“取款”对应的异常行为序列包括第一异常行为序列:走进银行(该行为信息中有“东张西望”)_>插卡(该行为信息中有“手发抖”)_>取款,第二异常行为序列:走进银行(该行为信息中有“东张西望”)_>插卡(该行为信息中有“手发抖”取款_>走出银行(该行为信息中有“东张西望”)。第一异常行为序列中与“取款”对应的关联行为信息为“走进银行(该行为信息中有“东张西望”),,、“插卡(该行为信息中有“手发抖”)”,第二异常行为序列中与“取款”对应的关联行为信息为“走进银行(该行为信息中有“东张西望”),,、“插卡(该行为信息中有“手发抖”),,、“走出银行(该行为信息中有“东张西望”)”。
[0059]通过获取的关联行为信息,挖掘出历史异常行为信息及其关联行为信息之间的关联关系。
[0060]步骤108,根据关联关系获取待检测行为信息的关联行为信息,将待检测行为信息及其对应的关联行为信息组成待检测行为序列。
[0061]根据上述步骤106获取的关联关系,获取待检测行为信息的关联行为信息,然后将待检测行为信息及其关联行为信息按照前述的关联关系组成待检测行为序列。
[0062]步骤110,计算待检测行为序列与异常行为序列的相似度。
[0063]在本实施例中,待检测行为序列与异常行为序列的相似度为:将待检测行为序列转换成异常行为序列的代价。转换代价越高则说明这两个行为序列的相似度越低。转换代价指是指:由待检测行为序列转换成异常行为序列所需的最少编辑操作次数。计入操作次数的编辑操作包括:将一个行为信息替换成另一个匹配度小于或等于第二预设阈值行为信息、插入一个行为信息、删除一个行为信息。不计入操作次数的编辑操作包括将一个行为信息替换成另一个匹配度大于第二预设阈值的行为信息。
[0064]步骤112,获取相似度大于第二预设阈值的待检测行为序列对应的待检测行为信息,将获取的待检测行为信息判定为异常行为信息。
[0065]比较上述实施例获取的相似度与第二预设阈值的大小,由于异常行为序列可能有一个或者多个,所以异常行为序列与待检测行为序列进行比对得到的相似度可能有一个或者多个,在本实施例中,只要存在一个大于第二预设阈值的相似度时,即可将待检测行为信息标记为异常行为信息。
[0066]上述的异常行为检测方法,根据历史异常行为信息及其对应的关联行为信息的关联关系,挖掘出待检测行为信息对应的待检测行为序列;计算待检测行为序列与异常行为序列的相似度,将相似度大于第二预设阈值的待检测行为信息标记为异常行为信息。上述的异常行为检测方法,提高了用户异常行为检测的准确度,减少了用户异常行为检测的错误率。
[0067]在一个实施例中,在步骤102获取用户的待检测行为信息的步骤之前,该方法还包括:建立用户行为数据库的步骤。
[0068]如图2所示,建立用户行为数据库的步骤具体包括:
[0069]步骤202,获取具有相同属性信息的历史行为信息中的历史异常行为信息和历史非异常行为信息。
[0070]具有相同属性信息的历史行为信息是指具有相同属性信息的用户的历史行为信息。历史行为信息包括历史异常行为信息和历史非异常行为信息。例如,用户在购物网站上购物时进行的操作信息,能够通过购物网站的后台记录获取。用户在ATM机取款时进行的操作信息,可以通过ATM机的后台记录及ATM机上安装的摄像头获取。公共场所用户的活动信息,可以通过公共场所安装的摄像头获取。需要说明的是,获取到的用户历史行为信息已被标注为异常或者非异常。在本实施例中,非异常是指正常或者不确定状态。
[0071]步骤204,获取历史异常行为信息对应的行为序列和历史非异常行为信息对应的行为序列。
[0072]在本实施例中,历史异常行为信息所对应的关联行为信息是指与历史异常行为信息存在预定关联关系的关联行为信息。预定关联关系包括时间关系(例如时间先后关系)、空间关系(例如空间相邻关系)、因果关系和属性关系(例如属性相似关系)中的至少一种。
[0073]步骤206,根据获取历史异常行为信息对应的行为序列和历史非异常行为信息对应的行为序列获取异常行为序列。
[0074]在本实施例中,如图3所示,根据获取历史异常行为信息对应的行为序列和历史非异常行为信息对应的行为序列获取异常行为序列的具体过程包括:
[0075]步骤226,计算历史异常行为信息所属的第i类异常行为序列中的第j项行为信息与历史非异常行为信息所属的第k类行为序列中的第j项行为信息的匹配度。
[0076]步骤246,判断该匹配度是否大于第一预设阈值,如果是,则执行步骤266。
[0077]步骤266,当匹配度大于第一预设值时,则将第j项行为信息从历史异常行为信息所属的第i类行为序列中删除。
[0078]步骤286,当匹配度小于第一预设值时,则将第j项行为信息保留在历史异常行为信息所属的第i类行为序列中。
[0079]对历史非异常行为信息所属的所有行为序列中的第j项行为信息重复执行上述步骤;对历史异常行为信息所属的第i类行为序列中的所有项行为信息重复执行上述步骤。
[0080]即重复执行步骤226至步骤286,直至得到最终的序列作为历史异常行为信息对应的异常行为序列。在本实施例中,i,j,k均为正整数。
[0081 ]例如,通过ATM机的后台记录及ATM机上安装的摄像头获取,用户在ATM机取款时进行的操作信息,其中异常取款行为标记有3000个,其中2600个是非瞎子用户的,400个是瞎子用户的。
[0082](可能为盗用别人的银行卡来取款的行为)。通过聚类算法对这2600个非瞎子用户的行为序列进行归类:
[0083]第I类:走进银行(该行为信息中有“东张西望”)->插卡(该行为信息中有“手发抖”)_>输入密码(该行为信息中有“多次输入密码”)_>取款_>走出银行(该行为信息中没有“东张西望”)。
[0084]第2类:走进银行(该行为信息中有“东张西望”)_>插卡(该行为信息中有“手发抖”)_>输入密码(该行为信息中有“I次输入密码”)_>取款_>走出银行(该行为信息中没有“东张西望”)。
[0085]第3类:走进银行(该行为信息中有“东张西望”)_>插卡(该行为信息中有“手发抖”)_>输入密码(该行为信息中有“多次输入密码”)_>取款_>走出银行(该行为信息中有“东张西望”)。
[0086]第4类:走进银行(该行为信息中有“东张西望”)_>插卡(该行为信息中有“手发抖”)_>输入密码(该行为信息中有“I次输入密码”)_>取款_>走出银行(该行为信息中有“东张西望”)。
[0087]另外非异常取款行为标记有60000个,其中50000个是非瞎子用户的,10000个是瞎子用户的。
[0088]通过聚类算法对这50000万个非瞎子用户的行为序列进行归类:
[0089]第I类:走进银行(该行为信息中没有“东张西望”)->插卡(该行为信息中没有“手发抖”)_>输入密码(该行为信息中有“多次输入密码”)_>取款_>走出银行(该行为信息中没有“东张西望”)。
[0090]第2类:走进银行(该行为信息中没有“东张西望”)_>插卡(该行为信息中没有“手发抖”)_>输入密码(该行为信息中有“I次输入密码”)_>取款_>走出银行(该行为信息中没有“东张西望”)。
[0091]如果异常取款行为所属的第i类行为序列中的第j项行为信息与非异常取款行为所属的某一类行为序列中的第j项行为信息匹配度大于第一预设值,则将第j项行为信息从异常取款行为所属的第i类行为序列中删除,最终得到的序列作为异常取款行为对应的异常行为序列;如果得到了多个异常行为序列,删除重复的异常行为序列,得到多类异常行为序列。需要说明的是,异常行为“取款行为”本身无需比较和删除。
[0092]根据上述的方式:
[0093]异常取款行为所属的第I类行为序列中的输入密码(该行为信息中有“多次输入密码”)在非异常取款行为所属的某一类行为序列中有,删除;异常取款行为所属的第I类行为序列中的走出银行(该行为信息中没有“东张西望”)在非异常取款行为所属的某一类行为序列中有,删除;得到的异常行为序列为:走进银行(该行为信息中有“东张西望”)_>插卡(该行为信息中有“手发抖” )_>取款。
[0094]异常取款行为所属的第2类行为序列中的输入密码(该行为信息中有“I次输入密码”)在非异常取款行为所属的某一类行为序列中有,删除;异常取款行为所属的第I类行为序列中的走出银行(该行为信息中没有“东张西望”)在非异常取款行为所属的某一类行为序列中有,删除;得到的异常行为序列为:走进银行(该行为信息中有“东张西望”)_>插卡(该行为信息中有“手发抖” )_>取款。
[0095]异常取款行为所属的第3类行为序列中的输入密码(该行为信息中有“多次输入密码”)在非异常取款行为所属的某一类行为序列中有,删除;得到的异常行为序列为:走进银行(该行为信息中有“东张西望”)_>插卡(该行为信息中有“手发抖”)_>取款_>走出银行(该行为信息中有“东张西望”)。
[0096]异常取款行为所属的第4类行为序列中的输入密码(该行为信息中有“I次输入密码”)在非异常取款行为所属的某一类行为序列中有,删除;得到的异常行为序列为:走进银行(该行为信息中有“东张西望”)_>插卡(该行为信息中有“手发抖”)_>取款_>走出银行(该行为信息中有“东张西望”)。
[0097]对得到的异常行为序列进行归类,得到2类非瞎子用户的异常取款行为对应的异常行为序列,因此与异常取款行为所关联的异常行为序列为:
[0098]第I类:走进银行(该行为信息中有“东张西望”)->插卡(该行为信息中有“手发抖”)_>取款
[0099]第2类:走进银行(该行为信息中有“东张西望”)_>插卡(该行为信息中有“手发抖”)_>取款_>走出银行(该行为信息中有“东张西望”)。
[0100]步骤208,将关联行为信息,以及异常行为序列存储至用户行为数据库。
[0101]进一步地,将上述步骤中获取的历史异常行为信息对应的关联行为信息,属性信息及其历史异常行为信息,以及历史异常行为信息对应的异常行为序列建立关联后保存至用户行为数据库。例如,以记录的形式存储。
[0102]上述步骤建立的用户行为数据库,用户的属性信息、历史行为信息、关联行为信息以及异常行为序列之间存在着对应关系。用户行为数据库的存储方式包括数据库或大数据存储库。通过上述的方式建立的用户行为数据库便于后续的待检测行为信息的检测,提高了检测效率。
[0103]在一个实施例中,采用文本匹配方式计算待检测行为信息与预先存储的用户行为数据库中的历史异常行为信息之间的匹配度。如图4所示,具体的实施步骤为:
[0104]步骤402,从待检测行为信息中抽取第一关键词,并从历史异常行为信息中抽取第一■关键词。
[0105]从待检测行为信息和历史异常行为信息的两个文本中分别抽取第一关键词和第二关键词。在本实施例中,第一关键词和第二关键词的数目可以为一个或者多个,且第一关键词和第二关键词的数目相等。
[0106]步骤404,对第一关键词和第二关键词进行匹配。
[0107]对从两个文本中抽取出的关键词进行匹配。其中,在进行关键词匹配时,将关键词作为字符串,既可以采用字符串的精确匹配,也可以采用字符串的模糊匹配。
[0108]步骤406,计算第一关键词和第二关键词的匹配度。
[0109]在本实施例中,将匹配成功的关键词数目与总的关键词数目的比值作为匹配度。
[0110]通过上述方式将计算得到的匹配度与第一预设阈值作比较,获取一个或多个大于第一预设阈值的匹配度对应的历史异常行为信息。
[0111]通过上述的文本匹配方式,从用户行为数据库中筛选出匹配度大于第一预设阈值的历史异常行为信息,提高了用户异常行为检测的准确率。
[0112]在一个实施例中,计算待检测行为序列与异常行为序列的相似度的步骤包括:计算待检测行为序列与所述异常行为序列之间的转换代价,将转换代价作为相似度。
[0113]在一个实施例中,转换代价是指两个行为序列之间,由一个转换成另一个所需的最少编辑操作的次数。计入操作次数的编辑操作包括:将一个行为信息替换成另一个行为信息,插入一个行为信息,或者删除一个行为信息。不计入操作次数的编辑操作包括将一个行为信息替换成另一个匹配度大于预设值的行为信息。在一个实施例中,待检测行为序列与异常行为序列的相似度为:将待检测行为序列异常行为序列的代价。转换代价越高则表明待检测行为序列与异常行为序列的相似度越低。
[0114]转换代价的具体计算过程为:
[0115]假设待检测行为序列A包含m个行为信息A1,记为
ie [l,m]。异常行为序列B包含η个行为信息Bj,记为:Β={Βι,Β2,...,Bn},其中,η彡I,je[l,n]0
[0116]假设F(i,j)为将待检测行为序列A=M^A2,...,仏}转换成异常行为序列B=IB1,B2,...,Bj}的代价,其中,F(0,0) = 0,F(0,j) = j 表示将空字符串转换为 B={Bi,B2,...,Bj},那么需要进行的操作次数为B= (B1,B2,...,Bj的长度j,所进行的操作即为将B= {Bi,B2,...%}所有的行为信息1插入<^(1,0) = 1表示解释将八=01,如,...,Ai}转换为空字符串,那么需要进行的操作次数为A=...,A1)的长度i,所进行的操作即为将A= (A1,A2,...,&}所有的行为信息丢弃。
[0117]在一个实施例中,计算F(i,j)的过程为:
[0118]假设?(卜1,」-1)、?(卜1,」)、?(1,」-1)的值已经通过同样的过程求出。
[0119](I)若六1与&的匹配度gUnBj大于或等于第二预设值,待检测行为序列A= M1,A2,...,&}与异常行为序列B=IB1, B2,...,Bj}之间的删除、替换或者插入均不会对转换代价有较大影响,因此此时转换代价F( i,j) =F( 1-1,j-1)。
[0120](2)若仏与氏的匹配度小于第二预设值,
[0121]当1^11作(1-1,」-1),?(1-1,」),?(1,」-1)}=?(1-1,」-1)时,这时将待检测行为序列A= (A1J2,...,Ai}转换成异常行为序列B= (B1J2,...,Bj}需要把Ai替换为Bj,此时转换R#F(i,j)=F(1-l,j-l)+l;
[0122]当min{F(1-l,j-l),F(1-l,j),F(i,j-l)}=F(1-l,j)时,这时将待检测行为序列 A= {Ai,A2)...,Ai}转换成异常行为序列B= (B1J2,...,Bj}需要将Ai删除,此时转换代价F(i,j)=F(1-l,j-l)+l;
[0123]当min{F(1-l,j-1),F(1-l,j),F(i,j_l)}=F(i,j_l)时,这将待检测行为序列A ={Al,A2,...▲}转换成异常行为序列8=他,82,...,Bj}需要在Ai后插入字符Bj,此时转换代^F(i,j)=F(1-l,j-l)+l0
[0124]在另一个实施例中,计算F(i,j)的过程为:
[0125]假设?(卜1,」-1)、?(卜1,」)、?(1,」-1)的值已经通过同样的过程求出。
[0126](I)若六1与&的匹配度gUnBj大于或等于第二预设值,待检测行为序列A= M1,A2,...,仏}与异常行为序列B=IB1, B2,...,Bj}之间的删除、替换或者插入均不会对转换代价有较大影响,因此此时转换代价F( i,j) =F( 1-1,j-1) + (l-g(Ai,Bj)) o
[0127](2)若仏与氏的匹配度小于第二预设值,
[0128]当1^11作(1-1,」-1),?(1-1,」),?(1,」-1)}=?(1-1,」-1)时,这时将待检测行为序列A= (A1J2,...,Ai}转换成异常行为序列B= (B1J2,...,Bj}需要把Ai替换为Bj,此时转换代价F(i, j)=F(1-l,j-l) + (l-g(Ai,Bj));
[0129]当min{F(1-l,j-l),F(1-l,j),F(i,j-l)}=F(1-l,j)时,这时将待检测行为序列 A= {Ai,A2)...,Ai}转换成异常行为序列B= (B1J2,...,Bj}需要将Ai删除,此时转换代价F(i,j)=F(1-l,j-l) + l ;当min{F(1-l,j-1),F(1-l,j),F(i,j-1)} =F(i,j-1)时,这将待检测行为序列A= MiA2,...,Ai}转换成异常行为序列B=IB1,B2,...,Bj}需要在Ai后插入字符Bj,此时转换代价F( i,j) =F( 1-1,j-1 )+1。
[0130]在一个实施例中,在将获取的待检测行为信息判定为异常行为信息的步骤之后,该方法还包括:将待检测行为信息及其对应的判定结果保存至用户行为数据库。
[0131]在本实施例中,将待检测行为信息的判定结果,即异常行为或正常行为,标注在待检测行为信息中,然后将待检测行为信息、待检测行为信息对应的关联行为信息、待检测行为序列以及判定结果保存至用户行为数据库。
[0132]需要补充的是,如果用户现实检验发现将该待检测行为信息的判定结果标注有误,则可对所述用户行为数据库中该待检测行为信息的标注进行修改。
[0133]通过上述步骤,将待检测行为信息相关的数据存储至用户行为数据库,丰富了用户行为数据,进一步提高了异常行为检测的准确度。
[0134]在一个实施例中,如图5所示,提出了一种异常行为检测系统500,该系统500包括:匹配度计算模块502、历史异常行为信息筛选模块504、关联关系获取模块506、待检测行为序列生成模块508、相似度计算模块510和判定模块512。
[0135]匹配度计算模块502,用于获取用户的属性信息和待检测行为信息,并计算属性信息与预先存储的用户行为数据库中的属性信息的匹配度。历史异常行为信息筛选模块504用于筛选出匹配度大于第一预设阈值的属性信息,并从用户行为数据库中获取与属性信息对应的历史异常行为信息。关联关系获取模块506用于从用户行为数据库中获取历史异常行为信息对应的异常行为序列,并获取异常行为序列中历史异常行为信息与历史异常行为信息对应的关联行为信息之间的关联关系,其中,用户行为数据库的存储方式包括数据库或大数据存储库。待检测行为序列生成模块508用于根据关联关系获取待检测行为信息的关联行为信息,将待检测行为信息及其对应的关联行为信息组成待检测行为序列。相似度计算模块510用于计算待检测行为序列与异常行为序列的相似度。判定模块512用于获取相似度大于第二预设阈值的待检测行为序列对应的待检测行为信息,将获取的待检测行为信息判定为异常行为信息。
[0136]在一个实施例中,匹配度计算模块502还用于从待检测行为信息中抽取第一关键词,并从历史异常行为信息中抽取第二关键词;对第一关键词和第二关键词进行匹配;计算第一关键词和第二关键词的匹配度。
[0137]在一个实施例中,相似度计算模块510还用于计算待检测行为序列与异常行为序列之间的转换代价,将转换代价作为相似度,其中,转换代价为由待检测行为序列转换到异常行为序列所需的最少编辑操作的次数。
[0138]在一个实施例中,如图6所示,该系统500还包括用户行为数据库建立模块514。用户行为数据库建立模块514用于存储历史异常行为信息,历史异常行为信息所对应的关联行为信息,以及历史异常行为信息对应的异常行为序列。
[0139]在一个实施例中,用户行为数据库建立模块514还用于将存储待检测行为信息、待检测行为序列、以及待检测行为信息对应的判定结果。
[0140]在一个实施例中,用户行为数据库建立模块514还用于计算历史异常行为信息所属的第i类异常行为序列中的第j项行为信息与历史非异常行为信息所属的第k类行为序列中的第j项行为信息的匹配度,其中,i,j,k均为正整数;当匹配度大于第一预设阈值时,将第j项行为信息从历史异常行为信息所属的第i类行为序列中删除;当匹配度小于第一预设阈值时,将第j项行为信息保留在历史异常行为信息所属的第i类行为序列中;对所述历史非异常行为信息所属的所有行为序列中的第j项行为信息重复执行上述步骤;对所述历史异常行为信息所属的第i类行为序列中的所有项行为信息重复执行上述步骤;获取最终的所述行为序列作为所述历史异常行为信息对应的所述异常行为序列。
[0141]本实施例的异常行为检测系统500用于实现前述的异常行为检测方法,因此异常行为检测系统500中的具体实施可参见前文中异常行为检测方法的实施例部分,例如,匹配度计算模块502、历史异常行为信息筛选模块504、关联关系获取模块506、待检测行为序列生成模块508、相似度计算模块510和判定模块512分别用于实现上述异常行为检测方法中步骤102、104、106、108、110和112,所以,其具体实现方式可参照前文中有关步骤102、104、106、108、110和112的各个实施例的描述,在此不再累述。
[0142]上述的异常行为检测系统,根据历史异常行为信息的关联关系,挖掘出待检测行为信息对应的待检测行为序列;并计算待检测行为序列与异常行为序列的相似度;获取相似度大于第二预设阈值的待检测行为信息;将获取的待检测行为信息判定为异常行为信息。同一个行为可能在某些情况下是异常行为,而在其他情况下是正常行为;通过异常行为序列对行为信息进行判定,不会将正常行为误检为异常行为,也不会将异常行为漏检为正常行为,从而使得异常行为检测的准确率高。上述的异常行为检测系统,提高了用户异常行为检测的准确度。
[0143]以上所述实施例的各技术特征可以进行任意的组合,为使描述简洁,未对上述实施例中的各个技术特征所有可能的组合都进行描述,然而,只要这些技术特征的组合不存在矛盾,都应当认为是本说明书记载的范围。
[0144]以上所述实施例仅表达了本发明的几种实施方式,其描述较为具体和详细,但并不能因此而理解为对发明专利范围的限制。应当指出的是,对于本领域的普通技术人员来说,在不脱离本发明构思的前提下,还可以做出若干变形和改进,这些都属于本发明的保护范围。因此,本发明专利的保护范围应以所附权利要求为准。
【主权项】
1.一种异常行为检测方法,其特征在于,包括以下步骤: 获取用户的属性信息和待检测行为信息,并计算所述属性信息与预先存储的用户行为数据库中的属性信息的匹配度; 筛选出所述匹配度大于第一预设阈值的属性信息,并从所述用户行为数据库中获取与所述属性信息对应的历史异常行为信息; 从所述用户行为数据库中获取所述历史异常行为信息对应的异常行为序列,并获取所述异常行为序列中所述历史异常行为信息与所述历史异常行为信息对应的关联行为信息之间的关联关系; 根据所述关联关系获取所述待检测行为信息的关联行为信息,将所述待检测行为信息及其对应的关联行为信息组成待检测行为序列; 计算所述待检测行为序列与所述异常行为序列的相似度; 获取所述相似度大于第二预设阈值的待检测行为序列中的待检测行为信息,将获取的所述待检测行为信息判定为异常行为信息。2.根据权利要求1所述的方法,其特征在于,所述计算所述待检测行为序列与所述异常行为序列的相似度的步骤包括: 计算所述待检测行为序列与所述异常行为序列之间的转换代价,将所述转换代价作为所述相似度,其中,转换代价为由所述待检测行为序列转换到所述异常行为序列所需的最少编辑操作的次数。3.根据权利要求1所述的方法,其特征在于,在所述将获取的待检测行为信息判定为异常行为信息的步骤之后,还包括:将所述待检测行为信息的判定结果保存至所述用户行为数据库。4.根据权利要求1所述的方法,其特征在于,在所述获取用户的待检测行为信息的步骤之前,还包括:建立所述用户行为数据库; 所述建立所述用户行为数据库的步骤包括: 获取具有相同属性信息的历史行为信息中的历史异常行为信息和历史非异常行为信息; 获取历史异常行为信息对应的行为序列和历史非异常行为信息对应的行为序列; 根据获取的历史异常行为信息对应的行为序列和历史非异常行为信息对应的行为序列,获取异常行为序列; 将所述历史异常行为信息对应的关联行为信息,以及所述异常行为序列存储至所述用户行为数据库,其中,所述用户行为数据库的存储方式包括数据库或大数据存储库。5.根据权利要求4所述的方法,其特征在于,所述根据获取的历史异常行为信息对应的行为序列和历史非异常行为信息对应的行为序列,获取异常行为序列的步骤包括: 计算所述历史异常行为信息所属的第i类行为序列中的第j项行为信息与所述历史非异常行为信息所属的第k类行为序列中的第j项行为信息的匹配度,其中,i,j,k均为正整数; 判断所述匹配度是否大于所述第一预设阈值; 如果是,则将第j项行为信息从所述历史异常行为信息所属的第i类行为序列中删除; 对所述历史非异常行为信息所属的所有行为序列中的第j项行为信息重复执行上述步骤; 对所述历史异常行为信息所属的第i类行为序列中的所有项行为信息重复执行上述步骤; 获取最终的所述行为序列作为所述历史异常行为信息对应的所述异常行为序列。6.一种异常行为检测系统,其特征在于,包括: 匹配度计算模块,用于获取用户的属性信息和待检测行为信息,并计算所述属性信息与预先存储的用户行为数据库中的属性信息的匹配度; 历史异常行为信息获取模块,用于筛选出所述匹配度大于第一预设阈值的属性信息,并从所述用户行为数据库中获取与所述属性信息对应的历史异常行为信息; 关联关系获取模块,用于从所述用户行为数据库中获取所述筛选出的历史异常行为信息对应的异常行为序列,并获取所述异常行为序列中所述筛选出的历史异常行为信息与所述筛选出的历史异常行为信息对应的关联行为信息之间的关联关系,其中,所述用户行为数据库的存储方式包括数据库或大数据存储库; 待检测行为序列生成模块,用于根据所述关联关系获取所述待检测行为信息的关联行为信息,将所述待检测行为信息及其对应的关联行为信息组成待检测行为序列; 相似度计算模块,用于计算所述待检测行为序列与所述异常行为序列的相似度; 判定模块,用于获取所述相似度大于第二预设阈值的待检测行为序列对应的待检测行为信息,将获取的待检测行为信息判定为异常行为信息。7.根据权利要求6所述的系统,其特征在于,相似度计算模块还用于计算所述待检测行为序列与所述异常行为序列之间的转换代价,将所述转换代价作为所述相似度,其中,转换代价为由所述待检测行为序列转换到所述异常行为序列所需的最少编辑操作的次数。8.根据权利要求6所述的系统,其特征在于,还包括:用户行为数据库建立模块;所述用户行为数据库建立模块还用于存储所述历史异常行为信息,所述历史异常行为信息所对应的关联行为信息,以及所述历史异常行为信息对应的异常行为序列。9.根据权利要求8所述的系统,其特征在于,所述用户行为数据库建立模块还用于将存储所述待检测行为信息及其对应的判定结果。10.根据权利要求6所述的系统,其特征在于,所述用户行为数据库建立模块还用于计算所述历史异常行为信息所属的第i类行为序列中的第j项行为信息与所述历史非异常行为信息所属的第k类行为序列中的第j项行为信息的匹配度,其中,i,j,k均为正整数;判断所述匹配度是否大于所述第一预设阈值;如果是,则将第j项行为信息从所述历史异常行为信息所属的第i类行为序列中删除;对所述历史非异常行为信息所属的所有行为序列中的第j项行为信息重复执行上述步骤;对所述历史异常行为信息所属的第i类行为序列中的所有项行为信息重复执行上述步骤;获取最终的所述行为序列作为所述历史异常行为信息对应的所述异常行为序列。
【文档编号】G06F17/30GK105912652SQ201610219086
【公开日】2016年8月31日
【申请日】2016年4月8日
【发明人】朱定局
【申请人】华南师范大学
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1