基于马尔科夫逻辑网络的数据关联方法、系统及设备转让专利

申请号 : CN201810785245.8

文献号 : CN109166069B

文献日 :

基本信息:

PDF:

法律信息:

相似专利:

发明人 : 周可孙锡林乔宏永郑胜

申请人 : 华中科技大学武汉数为科技有限公司

摘要 :

本发明公开了一种基于马尔科夫逻辑网络的数据关联方法、系统及设备,包括:利用重点人员数据库、待破案件及其对应的带权规则库构建基于马尔科夫逻辑网络的犯案概率获取模型,得到每一个重点人员犯待破案件的概率,从而筛选出目标对象,进而实现目标对象与待破案件之间的数据关联;带权规则库的获取方法包括:利用与待破案件主类型相同的已破案件数据构建本体模型视图集合,并分别提取一阶逻辑规则集合和谓词原子集合,然后利用所提取的两个集合构建基于马尔科夫逻辑网络的规则权重学习模型,并训练模型从而得到规则权重,由此得到由一阶逻辑规则和对应的规则权重构成的带权规则库。本发明中规则的获取不依赖于人力,能提高数据关联的准确率。

权利要求 :

1.一种基于马尔科夫逻辑网络的数据关联方法,其特征在于,包括:

(1)对于待破案件,将其主类型作为目标类型,利用与所述待破案件对应的带权规则库构建基于马尔科夫逻辑网络的犯案概率获取模型,用于得到重点人员数据库中每一个重点人员犯所述待破案件的概率;所述带权规则库由一阶逻辑规则及对应的规则权重构成,且其中的每一条一阶逻辑规则均提取自主类型为目标类型的已破案件的案件数据;

所述步骤(1)中,与所述待破案件对应的带权规则库的获取方法包括如下步骤:

(11)获得由主类型为目标类型且满足预设条件的案件类别构成的案件类别集合s,然后根据所述案件类别集合s从已破案件数据库中随机提取N个案件并构建其中每一个案件的本体模型视图,从而得到本体模型视图集合G;其中,N为正整数;

(12)根据所述本体模型视图集合G,基于关联规则学习得到一阶逻辑规则集合F;

(13)根据所述本体模型视图集合G,提取出一阶谓词逻辑格式的谓词原子,从而得到谓词原子集合p1;

(14)利用所述一阶逻辑规则集合F和所述谓词原子集合p1构建基于马尔科夫逻辑网络的规则权重学习模型并训练所述规则权重学习模型,从而得到所述一阶逻辑规则集合F中每一条规则的权重,并由此得到由所述一阶逻辑规则集合F中的一阶逻辑规则及对应的规则权重构成的带权规则库;

(2)利用待破案件的案件数据以及重点人员数据库中的数据提取出一阶谓词逻辑格式的谓词原子,从而得到谓词原子集合p2;

所述步骤(2)中,提取所述谓词原子集合p2时,采用行政区划邻接矩阵方法计算案发地点到重点人员现住址之间的距离作为犯案距离;所述行政区划邻接矩阵方法包括:按照城市行政区划分类,根据所述待破案件的案件数据中对于案发地点的描述和重点人员数据库中对重点人员现住址的描述,分别得到所述待破案件所属的行政区划和重点人员所属的行政区划;

若两个行政区划在地图上相同或相邻,则将犯案距离标记为近;否则,将犯案距离标记为远;

(3)以所述谓词原子集合p2为输入,利用所述犯案概率获取模型得到重点人员数据库中每一个重点人员犯所述待破案件的概率,并筛选出犯所述待破案件的概率最高的前top-K重点人员;将筛选出的重点人员作为目标对象,并从重点人员数据库中获取每一个目标对象的信息,从而实现目标对象与所述待破案件之间的数据关联;

其中,所述主类型为案件所属的中类类别,所述谓词原子为赋值之后的谓词,top-K为预设的具体人数或百分数。

2.如权利要求1所述的基于马尔科夫逻辑网络的数据关联方法,其特征在于,所述步骤(11)中,对于所述N个案件中的任意一个案件,其本体模型视图的构建方法包括:(111)对于每一个犯案个体,根据案件数据中对该犯案个体的文化程度的描述,对该犯案个体的文化程度进行分类;

(112)对于每一个犯案个体,根据案件数据中对该犯案个体的职业的描述,对该犯案个体的职业进行分类;若分类结果不属于主类型为目标类型的案件的常见职业类别,则该犯案个体的数据不参与构建案件的本体模型视图;

(113)按照城市行政区划分类,根据案件数据中对于案发地点的描述得到该案件所属的行政区划;

(114)根据案件数据中对于案发地点和犯案个体现住址的描述,分别计算该案件的每一个犯案个体现住址到案发地点之间的距离作为犯案距离,并将计算结果与预设的临近阈值进行比较,将大于所述临近阈值的犯案距离标记为远,将小于或等于所述临近阈值的犯案距离标记为近。

3.如权利要求2所述的基于马尔科夫逻辑网络的数据关联方法,其特征在于,所述步骤(114)中,犯案个体现住址到案发地点之间的距离的计算方法包括:分别将案件数据中对于案发地点和犯案个体现住址的描述转换为点坐标(lngA,latA)和(lngB,latB);

按照如下公式计算犯案距离LAB:

其中,R为地球半径,lngA和latA分别为案发地点的经度和纬度,lngB和latB分别为犯案个体现住址的经度和纬度。

4.如权利要求1或2所述的基于马尔科夫逻辑网络的数据关联方法,其特征在于,所述步骤(12)包括:(121)从所述本体模型视图集合G中,提取每一个犯案个体的概念向量,由此得到概念向量集合T;所述概念向量包括对应的犯案个体的文化程度类别、职业类别、犯案距离以及所犯案件的案件类别和行政区划;

(122)以所述概念向量集合T为输入,利用关联规则挖掘算法得到频繁项集F';

(123)将所述频繁项集F'中的每一个频繁项都转换为一阶逻辑规则,从而得到一阶逻辑规则集合F;或者,计算所述频繁项集F'中每一个频繁项的影响度,并过滤掉所述频繁项集F'中影响度小于预设的影响度阈值的频繁项,从而得到强规则集合F”,然后将所述强规则集合F”中的每一条规则都转换为一阶逻辑规则,从而得到一阶逻辑规则集合F;

所述频繁项集F'中的任意一个频繁项 其影响度 的计算公式如

下:

若P(Y)<1且P(Y|X)>P(Y),则

若P(Y)<1且P(Y|X)<P(Y),则

若P(Y)<1且P(Y|X)=P(Y),则

若P(Y)=1且P(X)=1,则

若P(Y)=1且P(X)<1,则

其中,X和Y分别为两个概念频繁项集,P表示概率,P(Y|X)表示所述频繁项 的置信度。

5.如权利要求1或2所述的基于马尔科夫逻辑网络的数据关联方法,其特征在于,所述步骤(14)中,利用所述一阶逻辑规则集合F和所述谓词原子集合p1构建基于马尔科夫逻辑网络的规则权重学习模型,包括:利用一阶逻辑规则中的谓词原子构成所述规则权重学习模型的节点;若节点表达的事实为真,则其值为1,否则,其值为0;

若两个谓词原子出现在同一个一阶逻辑规则中,则由所述两个谓词原子构成的两个节点之间形成一条边。

6.如权利要求1所述的基于马尔科夫逻辑网络的数据关联方法,其特征在于,判断两个行政区划在地图上相同或相邻的方法为:根据所述待破案件所属行政区划的编号i和重点人员所属行政区划的编号j查询行政区划邻接矩阵M中的第i行第j列的元素Mij,若所述元素Mij的取值为第一取值,则判定两个行政区划在地图上相同或相邻;若所述元素Mij的取值为第二取值,则判定两个行政区划在地图上既不相同也不相邻;

其中,所述行政区划邻接矩阵M为n阶方阵,其第u行第v列的元素Muv用于标记第u个行政区划与第v个行政区划的邻接关系;若第u个行政区划与第v个行政区划在地图上相同或相邻,则所述元素Muv的取值为第一取值;若第u个行政区划与第v个行政区划在地图上既不相同也不相邻,则所述元素Muv的取值为第二取值;所述第一取值不等于所述第二取值;1≤i,j,u,v≤n,n为行政区划总数。

7.一种基于马尔科夫逻辑网络的数据关联系统,其特征在于,包括:本体模型视图集合构建模块、一阶逻辑规则集合提取模块、谓词原子集合提取模块、马尔科夫逻辑网络模块以及结果分析模块;

所述本体模型视图集合构建模块用于获得由主类型为目标类型且满足预设条件的案件类别构成的案件类别集合s,然后根据所述案件类别集合s从已破案件数据库中随机提取N个案件并构建其中每一个案件的本体模型视图,从而得本体模型视图集合G;

所述一阶逻辑规则集合提取模块用于根据所述本体模型视图集合G,基于关联规则学习得到一阶逻辑规则集合F;

所述谓词原子集合提取模块用于利用所述本体模型视图集合G,提取出一阶谓词逻辑格式的谓词原子,从而得到谓词原子集合p1;所述谓词原子集合提取模块还用于根据待破案件的案件数据以及重点人员数据库中的数据提取出一阶谓词逻辑格式的谓词原子,从而得到谓词原子集合p2;

所述马尔科夫逻辑网络模块用于利用所述一阶逻辑规则集合F和所述谓词原子集合p1构建基于马尔科夫逻辑网络的规则权重学习模型并训练所述规则权重学习模型,从而得到所述一阶逻辑规则集合F中每一条规则的权重,并由此得到由所述一阶逻辑规则集合F中的一阶逻辑规则及对应的规则权重构成的带权规则库;所述马尔科夫逻辑网络模块还用于利用所述带权规则库构建基于马尔科夫逻辑网络的犯案概率获取模型,并以所述谓词原子集合p2为输入,利用所述犯案概率获取模型得到重点人员数据库中每个重点人员犯所述待破案件的概率;

所述结果分析模块用于根据重点人员数据库中每个重点人员犯所述待破案件的概率,筛选出犯所述待破案件的概率最高的前top-K重点人员,将筛选出的重点人员作为目标对象,并从重点人员数据库中获取每一个目标对象的信息,从而实现目标对象与所述待破案件之间的数据关联;

所述谓词原子集合提取模块提取所述谓词原子集合p2时,采用行政区划邻接矩阵方法计算案发地点到重点人员现住址之间的距离作为犯案距离;所述行政区划邻接矩阵方法包括:按照城市行政区划分类,根据所述待破案件的案件数据中对于案发地点的描述和重点人员数据库中对重点人员现住址的描述,分别得到所述待破案件所属的行政区划和重点人员所属的行政区划;

若两个行政区划在地图上相同或相邻,则将犯案距离标记为近;否则,将犯案距离标记为远;

其中,N为正整数,top-K为预设的具体人数或百分数,所述谓词原子为赋值之后的谓词,所述目标类型为所述待破案件的主类型,所述主类型为案件所属的中类类别。

8.一种电子设备,包括:处理器和存储器,其特征在于,所述存储器存储有可执行程序代码;

所述处理器用于调用所述存储器中存储的所述可执行程序代码,执行权利要求1至6任意一项所述的基于马尔科夫逻辑网络的数据关联方法。

说明书 :

基于马尔科夫逻辑网络的数据关联方法、系统及设备

技术领域

[0001] 本发明属于数据挖掘领域,更具体地,涉及一种基于马尔科夫逻辑网络的数据关联方法、系统及设备。

背景技术

[0002] 近年来,公安案件持续高发,严重影响了居民的生活质量和社会治安秩序,由于警力资源有限,传统的人工破案方式已经无法满足当前的破案需求。因此,运用信息技术提高破案率成为一种迫切的需求。通过将一个待破案件中需要重点侦察的目标对象的数据与该待破案件关联在一起,能够有效提高该待破案件的破案效率。
[0003] 概率图模型是一种通用化的不确定性知识的表示和处理方法,可以用于辅助筛选出一个待破案件中需要重点侦察的目标对象。目前常用的概率图模型有马尔科夫网和贝叶斯网络模型。贝叶斯网络只能做有向推理,相比于贝叶斯网络,马尔科夫网更适合领域边缘概率和条件概率的推理,因此获得了更为广泛的应用。马尔科夫逻辑网是马尔科夫网的一种,能够通过规则将领域知识纳入到马尔科夫网模型中,通过最大似然估计学习出规则的权重。马尔科夫逻辑网的联合概率是网络中对应块的势函数相乘、除以所有可能的概率之和。采取简单的对数线性模型表达联合概率,有利于参数的学习,最后通过计算边缘概率实现领域知识推理。
[0004] 马尔科夫逻辑网虽然能够通过纳入领域规则到马尔科夫网中实现推理,但是领域规则的输入需要大量相关领域资深专家的联合参与。一方面,过度依赖人工获得领域规则会导致人力资源的浪费并且效率低下,另一方面,由于领域专家基于经验给出的领域规则可能会包括冗余甚至错误的规则,而且领域规则的全面性往往得不到保证,这会导致所获得结果的准确率不高。

发明内容

[0005] 针对现有技术的缺陷和改进需求,本发明提供了一种基于马尔科夫逻辑网络的数据关联方法、系统及设备,其目的在于,基于关联规则学习直接从已破案件数据中提取领域规则,作为基于马尔科夫逻辑网络的模型获得规则权重的输入,从而降低规则权重的获取对于人工的依赖程度并提高目标对象筛选的准确率,进而准确有效地实现目标对象与待破案件之间的数据关联。
[0006] 为实现上述目的,按照本发明的第一方面,提供了一种基于马尔科夫逻辑网络的数据关联方法,包括:
[0007] (1)对于待破案件,将其主类型作为目标类型,利用与待破案件对应的带权规则库构建基于马尔科夫逻辑网络的犯案概率获取模型,用于得到重点人员数据库中每一个重点人员犯待破案件的概率;带权规则库由一阶逻辑规则及对应的规则权重构成,且其中的每一条一阶逻辑规则均提取自主类型为目标类型的已破案件的案件数据;
[0008] (2)利用待破案件的案件数据以及重点人员数据库中的数据提取出一阶谓词逻辑格式的谓词原子,从而得到谓词原子集合p2;
[0009] (3)以谓词原子集合p2为输入,利用犯案概率获取模型得到重点人员数据库中每一个重点人员犯待破案件的概率,并筛选出犯待破案件的概率最高的前top-K重点人员;将筛选出的重点人员作为目标对象,并从重点人员数据库中获取每一个目标对象的信息,从而实现目标对象与待破案件之间的数据关联;
[0010] 其中,主类型为案件所属的中类类别,谓词原子为赋值之后的谓词,
[0011] top-K为预设的具体人数或百分数。
[0012] 进一步地,步骤(1)中,与待破案件对应的带权规则库的获取方法包括如下步骤:
[0013] (11)获得由主类型为目标类型且满足预设条件的案件类别构成的案件类别集合s,然后根据案件类别集合s从已破案件数据库中随机提取N个案件并构建其中每一个案件的本体模型视图,从而得到本体模型视图集合G;其中满足预设条件的案件类别为当前主类型下发案频率极高、具有破案迫切性、且对社会治安意义比较重大的案件类别,可根据已破案件数据库中的案件数据统计得到;N为正整数,其常用的取值范围为1500~3000,以保证后续构建的规则权重学习模型有较好的训练效果且训练时常不会太长;
[0014] (12)根据本体模型视图集合G,基于关联规则学习得到一阶逻辑规则集合F;
[0015] (13)根据本体模型视图集合G,提取出一阶谓词逻辑格式的谓词原子,从而得到谓词原子集合p1;
[0016] (14)利用一阶逻辑规则集合F和谓词原子集合p1构建基于马尔科夫逻辑网络的规则权重学习模型并训练规则权重学习模型,从而得到一阶逻辑规则集合F中每一条规则的权重,并由此得到由一阶逻辑规则集合F中的一阶逻辑规则及对应的规则权重构成的带权规则库。
[0017] 进一步地,步骤(11)中,对于N个案件中的任意一个案件,其本体模型视图的构建方法包括:
[0018] (111)对于每一个犯案个体,根据案件数据中对该犯案个体的文化程度的描述,对该犯案个体的文化程度进行分类;由于公安领域并没有固定的文化程度字典,案件数据中对于犯案个体的文化程度的描述形式多种多样,为了便于模型训练和分析,根据常识知识对公安文化程度类别进行统一划分;
[0019] (112)对于每一个犯案个体,根据案件数据中对该犯案个体的职业的描述,对该犯案个体的职业进行分类;由于数据库中针对职业的描述多达上百种,为了便于模型训练和分析,根据常识知识对公安职业类别进行统一划分;一类案件仅跟少数几个职业相关,为了提高模型训练的效率和准确性,只需要针对犯该类案件的犯案个体的常见职业类别进行处理,常见职业类别可根据已破案件数据库中的案件数据统计得到;若分类结果不属于主类型为目标类型的案件的常见职业类别,则该犯案个体的数据不参与构建案件的本体模型视图;
[0020] (113)按照城市行政区划分类,根据案件数据中对于案发地点的描述得到该案件所属的行政区划;
[0021] (114)根据案件数据中对于案发地点和犯案个体现住址的描述,分别计算该案件的每一个犯案个体的犯案距离,并将计算结果与预设的临近阈值进行比较,将大于所述临近阈值的犯案距离标记为远,将小于或等于所述临近阈值的犯案距离标记为近;其中,所述犯案距离为案发地点到犯案个体现住址或重点人员现住址的距离,临近阈值的取值范围根据案件特性设定,例如,对于主类型为盗窃案的案件,由于犯案个体在其现住址附近犯案的概率较高,因此其临近阈值的取值范围为6~8公里,且优选为6公里。
[0022] 进一步地,步骤(114)中,犯案距离的计算方法包括:
[0023] 分别将案件数据中对于案发地点和犯案个体现住址的描述转换为点坐标(lngA,latA)和(lngB,latB);
[0024] 按照如下公式计算犯案距离LAB:
[0025]
[0026] 其中,R为地球半径;lngA和latA分别为案发地点的经度和纬度,lngB和latB分别为犯案个体现住址的经度和纬度;
[0027] 在训练阶段,通过点坐标计算犯案距离,能够精确计算出案发地点到犯案个体现住址之间的距离,从而提高规则权重学习的准确度,进而提高目标对象与待破案件之间数据关联的准确度。
[0028] 进一步地,步骤(12)包括:
[0029] (121)从本体模型视图集合G中,提取每一个犯案个体的概念向量,由此得到概念向量集合T;概念向量包括对应的犯案个体的文化程度类别、职业类别、犯案距离以及所犯案件的案件类别和行政区划;
[0030] (122)以概念向量集合T为输入,利用关联规则挖掘算法得到频繁项集F';
[0031] (123)将频繁项集F'中的每一个频繁项都转换为一阶逻辑规则,从而得到一阶逻辑规则集合F;或者,计算频繁项集F'中每一个频繁项的影响度,并过滤掉频繁项集F'中影响度小于预设的影响度阈值的频繁项,从而得到强规则集合F”,然后将强规则集合F”中的每一条规则都转换为一阶逻辑规则,从而得到一阶逻辑规则集合F;通过过滤掉频繁项集F'中影响度较低的频繁项,能够过滤掉无效的频繁项,从而提高数据关联的准确度;影响度阈值的取值范围根据案件特性设定,以保证最终得到的一阶逻辑规则集合适合于模型的训练,若设置过大,则无法有效过滤掉无效的频繁项,若设置过小,则一阶逻辑规则集合将过小,两种情况下,训练模型得到的规则权重的准确性都得不到保证;
[0032] 频繁项集F'中的任意一个频繁项 其影响度 的计算公式如下:
[0033] 若P(Y)<1且P(Y|X)>P(Y),则
[0034] 若P(Y)<1且P(Y|X)<P(Y),则
[0035] 若P(Y)<1且P(Y|X)=P(Y),则
[0036] 若P(Y)=1且P(X)=1,则
[0037] 若P(Y)=1且P(X)<1,则
[0038] 其中,X和Y分别为两个概念频繁项集,P表示概率,P(Y|X)表示频繁项 的置信度。
[0039] 进一步地,步骤(14)中,利用一阶逻辑规则集合F和谓词原子集合p1构建基于马尔科夫逻辑网络的规则权重学习模型,包括:
[0040] 利用一阶逻辑规则中的谓词原子构成规则权重学习模型的节点;若节点表达的事实为真,则其值为1,否则,其值为0;
[0041] 若两个谓词原子出现在同一个一阶逻辑规则中,则由两个谓词原子构成的两个节点之间形成一条边。
[0042] 进一步地,步骤(2)中,提取谓词原子集合p2时,采用行政区划邻接矩阵方法计算犯案距离;行政区划邻接矩阵方法包括:
[0043] 按照城市行政区划分类,根据待破案件的案件数据中对于案发地点的描述和重点人员数据库中对重点人员现住址的描述,分别得到待破案件所属的行政区划和重点人员所属的行政区划;
[0044] 若两个行政区划在地图上相同或相邻,则将犯案距离标记为近;否则,将犯案距离标记为远;
[0045] 其中,犯案距离为案发地点到犯案个体现住址或重点人员现住址的距离;
[0046] 利用基于马尔科夫逻辑网络的犯案概率获取模型得到重点人员数据库中每一个重点人员犯待破案件的概率时,采用行政区划邻接矩阵方法计算犯案距离能够降低计算的时间复杂度,从而提升运算速度,保证目标对象与待破案件之间的数据关联快速有效。
[0047] 进一步地,判断两个行政区划在地图上相同或相邻的方法为:
[0048] 根据待破案件所属行政区划的编号i和重点人员现住址所属行政区划的编号j查询行政区划邻接矩阵M中的第i行第j列的元素Mij,若元素Mij的取值为第一取值,则判定两个行政区划在地图上相同或相邻;若元素Mij的取值为第二取值,则判定两个行政区划在地图上既不相同也不相邻;
[0049] 其中,行政区划邻接矩阵M为n阶方阵,其第u行第v列的元素Muv用于标记第u个行政区划与第v个行政区划的邻接关系;若第u个行政区划与第v个行政区划在地图上相同或相邻,则元素Muv的取值为第一取值;若第u个行政区划与第v个行政区划在地图上既不相同也不相邻,则元素Muv的取值为第二取值;第一取值不等于第二取值;1≤i,j,u,v≤n,n为行政区划总数。
[0050] 按照本发明的第二方面,提供了一种基于马尔科夫逻辑网络的数据关联系统,包括:本体模型视图集合构建模块、一阶逻辑规则集合提取模块、谓词原子集合提取模块、马尔科夫逻辑网络模块以及结果分析模块;
[0051] 本体模型视图集合构建模块用于获得由主类型为目标类型且满足预设条件的案件类别构成的案件类别集合s,然后根据案件类别集合s从已破案件数据库中随机提取N个案件并构建其中每一个案件的本体模型视图,从而得本体模型视图集合G;
[0052] 一阶逻辑规则集合提取模块用于根据本体模型视图集合G,基于关联规则学习得到一阶逻辑规则集合F;
[0053] 谓词原子集合提取模块用于利用本体模型视图集合G,提取出一阶谓词逻辑格式的谓词原子,从而得到谓词原子集合p1;谓词原子集合提取模块还用于根据待破案件的案件数据以及重点人员数据库中的数据提取出一阶谓词逻辑格式的谓词原子,从而得到谓词原子集合p2;
[0054] 马尔科夫逻辑网络模块用于利用一阶逻辑规则集合F和谓词原子集合p1构建基于马尔科夫逻辑网络的规则权重学习模型并训练规则权重学习模型,从而得到一阶逻辑规则集合F中每一条规则的权重,并由此得到由一阶逻辑规则集合F中的一阶逻辑规则及对应的规则权重构成的带权规则库;马尔科夫逻辑网络模块还用于利用带权规则库构建基于马尔科夫逻辑网络的犯案概率获取模型,并以谓词原子集合p2为输入,利用犯案概率获取模型得到重点人员数据库中每个重点人员犯待破案件的概率;
[0055] 结果分析模块用于根据重点人员数据库中每个重点人员犯待破案件的概率,筛选出犯待破案件的概率最高的前top-K重点人员,将筛选出的重点人员作为目标对象,并从重点人员数据库中获取每一个目标对象的信息,从而实现目标对象与待破案件之间的数据关联;
[0056] 其中,N为正整数,top-K为预设的具体人数或百分数,谓词原子为赋值之后的谓词,目标类型为待破案件的主类型,主类型为案件所属的中类类别。
[0057] 按照本发明的第三方面,提供了一种设备,包括:处理器和存储器,其中:
[0058] 存储器存储有可执行程序代码;
[0059] 处理器用于调用存储器中存储的可执行程序代码,执行本发明第一方面所提供的基于马尔科夫逻辑网络的数据关联方法。
[0060] 总体而言,通过本发明所构思的以上技术方案,能够取得以下有益效果:
[0061] (1)本发明所提供的基于马尔科夫逻辑网络的数据关联方法,利用已破案件的数据构建本体模型视图集合后,基于关联规则学习从本体模型视图集合中提取得到一阶逻辑规则集合,并从本体模型视图集合中提取得到谓词原子集合,然后利用提取得到的一阶逻辑规则集合和谓词原子集合构建基于马尔科夫逻辑网络的规则权重学习模型,并通过训练得到规则的权重,用于后续的建模和数据关联。由于规则的获取无需领域专家的参与,减小了对人工的依赖,既能够以较少的规则得到更优的模型,又能够提高目标对象与待破案件之间数据关联的准确率。
[0062] (2)本发明所提供的基于马尔科夫逻辑网络的数据关联方法,在其优选方案中,在基于关联规则学习获得一阶逻辑规则集合时,在利用传统的关联规则算法得到支持度和置信度均大于给定阈值的频繁项集后,会进一步过滤其中影响度小于预设的影响度阈值的频繁项,因此能够实现强规则的二次有效过滤,进一步过滤掉无效的频繁项,从而能够保证用于模型训练的规则的有效性,进而提高目标对象与待破案件之间数据关联的准确率。
[0063] (3)本发明所提供的基于马尔科夫逻辑网络的数据关联方法,在不同的阶段采用不同的方法计算犯案距离,能够提高数据关联的准确度并保证数据关联的有效性。具体地,在构建基于马尔科夫逻辑网络的规则权重学习模型并通过训练获得规则权重时,利用点坐标计算犯案距离,能够精确计算出案发地点到犯案个体现住址之间的距离,从而提高规则权重学习的准确度,进而提高目标对象与待破案件之间数据关联的准确度;在利用基于马尔科夫逻辑网络的犯案概率获取模型得到重点人员数据库中每一个重点人员犯待破案件的概率时,则采用行政区划邻接矩阵方法计算犯案距离,能够降低计算的时间复杂度,从而提升运算速度,保证目标对象与待破案件之间的数据关联快速有效。

附图说明

[0064] 图1为本发明实施例提供的获取带权规则库的方法的流程图;
[0065] 图2为本发明实施例提供的案件主类型为盗窃案的案件本体模型示意图;
[0066] 图3为本发明实施例提供的基于关联规则学习获得一阶逻辑规则集合的流程图。

具体实施方式

[0067] 为了使本发明的目的、技术方案及优点更加清楚明白,以下结合附图及实施例,对本发明进行进一步详细说明。应当理解,此处所描述的具体实施例仅仅用以解释本发明,并不用于限定本发明。此外,下面所描述的本发明各个实施方式中所涉及到的技术特征只要彼此之间未构成冲突就可以相互组合。
[0068] 在公安领域,为便于信息管理与交换,采用案件类别代码表示每一个案件的具体类别。根据《刑事犯罪信息管理代码》的规定,案件类别代码采用六位数字编码,其中第一、二位数字是大类标识,用于表示案件所属的大类类别;第三、四位是中类标识,用于表示案件所属的中类类别;第五、六位数字是小类标识,用于表示案件所属的小类类别;通过上述编码方法,实现了三层分类体系。例如,对于“入室盗窃案”,其案件类别代码为050201,其中,大类标识“05”表示案件所属大类类别为“侵犯财产案”,中类标识“02”表示案件所属中类类别为“盗窃案”,小类标识“01”表示案件所属小类类别为“入室盗窃案”。在本发明中,将案件所属的中类类别作为该案件的主类型,则入室盗窃案的主类型为“盗窃案”。
[0069] 主类型为“盗窃案”的案件,所对应的案件类别包括“入室盗窃案”、“盗窃摩托车案”、“盗窃牲畜案”等二十余种。其中,大部分类别的案件比较罕见且特点鲜明,不需要借助技术手段就可以直接根据经验将嫌疑人缩小到一小部分人。已破案件数据的统计结果显示,主类型为“盗窃案”的案件类别中,“盗窃非机动车案”、“盗窃案”、“入室盗窃案”、“其他盗窃案”、“扒窃案”以及“盗窃摩托车案”这6个案件类别为其中案件发生频率极高,具备破案迫切性且对社会治安意义也比较重大的案件类别,由这些案件类别构成案件类别集合s。为了提高模型训练的效率和准确性,仅利用属于案件类别集合s的案件对模型进行训练。
[0070] 对于一个待破案件,利用技术手段准确有效地从重点人员数据库中筛选出犯案概率最高的一部分重点人员作为目标对象,并完成每一个目标对象与带破案件之间的数据关联,能够有效地提高待破案件的破案效率。每一个重点人员的信息,如文化程度、职业以及现住址等均存储于重点人员数据库中。本发明所说的重点人员,指案发当地需要由公安机关重点管控的人员,可包括涉恐人员、涉稳人员、涉毒人员、在逃人员、重大刑事犯罪前科人员,或其他有危害国家安全和社会治安嫌疑的人员。
[0071] 下面以主类型为“盗窃案”的案件为例对本发明所提供的基于马尔科夫逻辑网络的数据关联方法进行详细说明。
[0072] 具体地,对于主类型为“盗窃案”的待破案件,其数据关联方法包括:
[0073] (1)利用与待破案件对应的带权规则库构建基于马尔科夫逻辑网络的犯案概率获取模型,用于得到重点人员数据库中每一个重点人员犯待破案件的概率;带权规则库由一阶逻辑规则及对应的规则权重构成,且其中的每一条一阶逻辑规则均提取自主类型为“盗窃案”的已破案件的案件数据;
[0074] (2)利用待破案件的案件数据以及重点人员数据库中的数据提取出一阶谓词逻辑格式的谓词原子,从而得到谓词原子集合p2;其中,谓词原子为赋值之后的谓词;例如,谓词Fa表示犯案谓词,一个谓词原子Fa(A,B)表示A犯B案,A表示一个具体的重点人员,B表示一个具体的案件,如果A犯B案这个事实为真,则谓词原子Fa(A,B)取值1;否则谓词原子Fa(A,B)取值0;
[0075] (3)以谓词原子集合p2为输入,利用犯案概率获取模型得到重点人员数据库中每一个重点人员犯待破案件的概率,并筛选出犯待破案件的概率最高的前top-K重点人员;将筛选出的重点人员作为目标对象,并从重点人员数据库中获取每一个目标对象的信息,从而实现目标对象与待破案件之间的数据关联;其中,top-K为预设的具体人数或百分数;例如top-K取值可为10,表示将犯案概率排名前十的重点人员视为最有可能犯待破案件的目标对象,其他重点人员排除;或者top-K取值可为10%,表示将犯案概率排名前10%的重点人员视为最有可能犯待破案件的目标对象,其他重点人员排除;优选地,top-K的取值为30,以保证数据关联的准确性和有效性。
[0076] 如图1所示,在一个可选的实施方式中,上述步骤(1)中,与待破案件对应的带权规则库的获取方法包括如下步骤:
[0077] (11)获得案件类别集合s,然后根据案件类别集合s从已破案件数据库中随机提取N个案件并构建其中每一个案件的本体模型视图,从而得到本体模型视图集合G;N为正整数,其取值范围为1500~3000,以保证后续构建的规则权重学习模型有较好的训练效果且训练时常不会太长;
[0078] (12)根据本体模型视图集合G,基于关联规则学习得到一阶逻辑规则集合F;
[0079] (13)利用本体模型视图集合G,提取出一阶谓词逻辑格式的谓词原子,从而得到谓词原子集合p1;
[0080] (14)利用一阶逻辑规则集合F和谓词原子集合p1构建基于马尔科夫逻辑网络的规则权重学习模型,具体地,利用一阶逻辑规则中的谓词原子构成规则权重学习模型的节点;若节点表达的事实为真,则其值为1,否则,其值为0;若两个谓词原子出现在同一个一阶逻辑规则中,则由这两个谓词原子构成的两个节点之间形成一条边;
[0081] 采用最大似然估计算法训练规则权重学习模型,从而得到一阶逻辑规则集合F中每一条规则的权重,并由此得到由一阶逻辑规则集合F中的一阶逻辑规则及对应的规则权重构成的带权规则库。
[0082] 案件主类型为“盗窃案”的案件本体模型如图2所示,其中给出了案件和犯案个体的核心概念:对于案件,提取了“案件类别”、“案发地点”、“所属行政区划”以及“犯案距离”四大概念,对于犯案个体,提取了“职业”、“前科”、“文化程度”以及“现住址”四大核心概念。基于图2所示的本体模型,在一个可选的实施方式中,上述步骤(11)中,任意一个案件的本体模型视图的构建方法包括:
[0083] (111)对于每一个犯案个体,根据案件数据中对该犯案个体的文化程度的描述,对该犯案个体的文化程度进行分类;对于主类型为“盗窃案”的案件,文化程度的分类包括:文盲、小学、初中、高中和大学;
[0084] 由于公安领域并没有固定的文化程度字典,案件数据中对于犯案个体的文化程度的描述形式多种多样,为了便于模型训练和分析,根据常识知识对公安文化程度类别进行统一划分;在已破案件数据库中,数据表出现的文化程度有以下描述:“”,“上初中”、“专科毕业”、“中专或中技肄业”、“中专毕业”、“中技毕业”、“中等专业学校或中等技术学校”、“初中”、“初中毕业”、“初中肄业”、“大学专科和专科学校”、“大学本科”、“大学毕业”、“学龄前儿童”、“小学”、“小学毕业”、“小学肄业”、“技工学校”、“技工学校毕业”、“文盲或半文盲”、“相当中专或中技毕业”、“相当初中毕业”、“相当小学毕业”、“职业初中毕业”、“职业高中毕业”、“高中”、“高中毕业”、“高中肄业”;根据相关的常识知识,可知上述相关描述所属的文化程度级别,例如“中专”,属于高级中等教育范畴,同高中是同一级别;大专是高等教育的重要组成部分,与大学是同一级别;
[0085] (112)对于每一个犯案个体,根据案件数据中对该犯案个体的职业的描述,对该犯案个体的职业进行分类;由于数据库中针对职业的描述多达上百种,为了便于模型训练和分析,根据常识知识对公安职业类别进行统一划分;
[0086] 一类案件仅跟少数几个职业相关,为了提高模型训练的效率和准确性,只需要针对该类案件的犯案个体的常见职业类别进行处理;已破案件的数据统计结果显示,对于主类型为“盗窃案”的案件,常见职业类别包括:无业、工人、学生、农民、待业;若分类结果不属于上述常见职业类别,则该犯案个体的数据不参与构建案件的本体模型;
[0087] (113)按照城市行政区划分类,根据案件数据中对于案发地点的描述得到该案件所属的行政区划;以武汉市为例,武汉市按照行政区划可以分为"市辖区"、"江岸区"、"江汉区"、"硚口区"等14个行政区划,查询当地的行政区划表,即可知道案件所属的行政区划;
[0088] (114)根据案件数据中对于案发地点和犯案个体现住址的描述,分别计算该案件的每一个犯案个体的犯案距离,并将计算结果与预设的临近阈值进行比较,将大于临近阈值的犯案距离标记为远,将小于或等于临近阈值的犯案距离标记为近;其中,犯案距离为案发地点到犯案个体现住址或重点人员现住址的距离;临近阈值的取值范围根据案件特性设定,对于主类型为“盗窃案”的案件,由于犯案个体在其现住址附近犯案的概率较高,因此临近阈值的取值范围为6~8公里,且优选为6公里;在一个可选的实施方式中,犯案距离的计算方法包括:
[0089] 分别将案件数据中对于案发地点和犯案个体现住址的描述转换为点坐标(lngA,latA)和(lngB,latB);
[0090] 按照如下公式计算犯案距离LAB:
[0091]
[0092] 其中,R为地球半径;lngA和latA分别为案发地点的经度和纬度,lngB和latB分别为犯案个体现住址的经度和纬度;
[0093] 在训练阶段,通过点坐标计算犯案距离,能够精确计算出案发地点到犯案个体现住址之间的距离,从而提高规则权重学习的准确度,进而提高目标对象与待破案件之间数据关联的准确度。
[0094] 在一个可选的实施方式中,上述步骤(12)具体包括:
[0095] (121)从本体模型视图集合G中,提取每一个犯案个体的概念向量,由此得到概念向量集合T;概念向量包括对应的犯案个体的文化程度类别、职业类别、犯案距离以及所犯案件的案件类别和行政区划;
[0096] (122)以概念向量集合T为输入,利用关联规则挖掘算法得到频繁项集F';关联规则算法可为Apriori算法或fpgrowth算法;根据关联规则算法的原理可知,频繁项集F'的支持度和置信度均大于给定阈值;支持度用于表示规则是有价值的,置信度则用于表示规则的强度;给定的支持度阈值和置信度阈值的取值范围均根据案件特性设定,以保证最终得到的一阶逻辑规则集合适合于模型的训练;
[0097] (123)将频繁项集F'中的每一个频繁项都转换为一阶逻辑规则,从而得到一阶逻辑规则集合F。
[0098] 在另一个可选的实施方式中,如图3所示,上述步骤(12)具体包括:
[0099] (121)从本体模型视图集合G中,提取每一个犯案个体的概念向量,由此得到概念向量集合T;概念向量包括对应的犯案个体的文化程度类别、职业类别、犯案距离以及所犯案件的案件类别和行政区划;
[0100] (122)以概念向量集合T为输入,利用关联规则挖掘算法得到频繁项集F';关联规则算法可为Apriori算法或fpgrowth算法;根据关联规则算法的原理可知,频繁项集F'的支持度和置信度均大于给定阈值;支持度用于表示规则是有价值的,置信度则用于表示规则的强度;给定的支持度阈值和置信度阈值的取值范围均根据案件特性设定,以保证最终得到的一阶逻辑规则集合适合于模型的训练;
[0101] (123)计算频繁项集F'中每一个频繁项的影响度,并过滤掉频繁项集F'中影响度小于预设的影响度阈值的频繁项,从而得到强规则集合F”,然后将强规则集合F”中的每一条规则都转换为一阶逻辑规则,从而得到一阶逻辑规则集合F;影响度阈值的取值范围均根据案件特性设定,以保证最终得到的一阶逻辑规则集合适合于模型的训练,若设置过大,则无法有效过滤掉无效的频繁项,若设置过小,一阶逻辑规则集合将过小,两种情况下,训练得到的规则权重的准确性都得不到保证;通过过滤掉频繁项集F'中影响度较低的频繁项,能够过滤掉无效的频繁项,从而提高数据关联的准确度;
[0102] 频繁项集F'中的任意一个频繁项 其支持度 置信度和影响度 的计算公式分别如下:
[0103]
[0104]
[0105] 若P(Y)<1且P(Y|X)>P(Y),则
[0106] 若P(Y)<1且P(Y|X)<P(Y),则
[0107] 若P(Y)<1且P(Y|X)=P(Y),则
[0108] 若P(Y)=1且P(X)=1,则
[0109] 若P(Y)=1且P(X)<1,则
[0110] 其中,X和Y分别为两个概念频繁项集,P表示概率, T.size表示概念向量集T的容量大小,Ti表示概念向量集合T中的第i号元素;
[0111] 一阶逻辑规则的一个转换实例如下:
[0112] 对于强规则集合F”中的一条强规则:[ajlb=paqie]==>[distance=near];
[0113] 该强规则表示扒窃案由案发地点附近重点人员所犯,将其转换为一阶逻辑规则如下:
[0114] Ajlb(c,Paqie)^Nearby(p,c)=>Fa(p,c);
[0115] 其中,c是案件变量,p是人变量,Paqie是指扒窃案,Ajlb是案件类别谓词,Nearby是附近谓词,Fa是犯案谓词,这条一阶逻辑规则的意义是:案件类别为扒窃并且现住址离案发地点近则会犯案。
[0116] 在一个可选的实施方式中,上述步骤(2)中,提取谓词原子集合p2时,采用行政区划邻接矩阵方法计算犯案距离;行政区划邻接矩阵方法包括:
[0117] 按照城市行政区划分类,根据待破案件的案件数据中对于案发地点的描述和重点人员数据库中对重点人员现住址的描述,分别得到待破案件所属的行政区划和重点人员所属的行政区划;
[0118] 若两个行政区划在地图上相同或相邻,则将犯案距离标记为近;否则,将犯案距离标记为远;判断两个行政区划在地图上相同或相邻的方法为:
[0119] 根据待破案件所属行政区划的编号i和重点人员现住址所属行政区划的编号j查询行政区划邻接矩阵M中的第i行第j列的元素Mij,若Mij=1,则判定两个行政区划在地图上相同或相邻;若Mij=0,则判定两个行政区划在地图上既不相同也不相邻;
[0120] 其中,行政区划邻接矩阵M为n阶方阵,其第u行第v列的元素Muv用于标记第u个行政区划与第v个行政区划的邻接关系;若第u个行政区划与第v个行政区划在地图上相同或相邻,则Muv=1;若第u个行政区划与第v个行政区划在地图上既不相同也不相邻,则Muv=0;1≤i,j,u,v≤n,n为行政区划总数;以武汉市为例,将"市辖区"、"江岸区"、"江汉区"、"硚口区"、"汉阳区"、"武昌区"、“青山区”、“洪山区”、“东西湖区”、“汉南区”、“蔡甸区”、“江夏区”、“黄陂区”以及“新洲区”这14个行政区划依次编号为1~14,其行政区划邻接矩阵M如下:
[0121]
[0122] 利用基于马尔科夫逻辑网络的犯案概率获取模型得到重点人员数据库中每一个重点人员犯待破案件的概率时,采用行政区划邻接矩阵方法计算犯案距离能够降低计算的时间复杂度,从而提升运算速度,保证目标对象与待破案件之间的数据关联快速有效。
[0123] 结合上以上述实施例,本发明还提供了一种基于马尔科夫逻辑网络的数据关联系统,包括:本体模型视图集合构建模块、一阶逻辑规则集合提取模块、谓词原子集合提取模块、马尔科夫逻辑网络模块以及结果分析模块;
[0124] 本体模型视图集合构建模块用于获得案件类别集合s,然后根据案件类别集合s从已破案件数据库中随机提取N个案件并构建其中每一个案件的本体模型视图,从而得本体模型视图集合G;
[0125] 一阶逻辑规则集合提取模块用于根据本体模型视图集合G,基于关联规则学习得到一阶逻辑规则集合F;
[0126] 谓词原子集合提取模块用于利用本体模型视图集合G,提取出一阶谓词逻辑格式的谓词原子,从而得到谓词原子集合p1;谓词原子集合提取模块还用于根据待破案件的案件数据以及重点人员数据库中的数据提取出一阶谓词逻辑格式的谓词原子,从而得到谓词原子集合p2;
[0127] 马尔科夫逻辑网络模块用于利用一阶逻辑规则集合F和谓词原子集合p1构建基于马尔科夫逻辑网络的规则权重学习模型并训练规则权重学习模型,从而得到一阶逻辑规则集合F中每一条规则的权重,并由此得到由一阶逻辑规则集合F中的一阶逻辑规则及对应的规则权重构成的带权规则库;马尔科夫逻辑网络模块还用于利用带权规则库构建基于马尔科夫逻辑网络的犯案概率获取模型,并以谓词原子集合p2为输入,利用犯案概率获取模型得到重点人员数据库中每个重点人员犯待破案件的概率;
[0128] 结果分析模块用于根据重点人员数据库中每个重点人员犯待破案件的概率,筛选出犯待破案件的概率最高的前top-K重点人员,将筛选出的重点人员作为目标对象,并从重点人员数据库中获取每一个目标对象的信息,从而实现目标对象与待破案件之间的数据关联;在本发明实施例中,各模块具体实现方式可以参考上述方法实施例中的描述,本实施例将不再复述。
[0129] 本发明还提供了一种设备,包括:处理器和存储器,其中:
[0130] 存储器存储有可执行程序代码;存储器可包括易失性存储器(英文:volatile memory),例如随机存取存储器(英文:random-access memory,RAM);存储器也可以包括非易失性存储器(英文:non-volatile memory),例如只读存储器(英文:read-only memory,缩写:ROM),快闪存储器(英文:flash memory),硬盘(英文:hard disk drive,HDD)或固态硬盘(英文:solid-state drive,SSD);存储器还可以包括上述种类的存储器的组合;
[0131] 处理器用于调用存储器中存储的可执行程序代码,执行本发明所提供的基于马尔科夫逻辑网络的数据关联方法;处理器可包括一个或多个处理单元。
[0132] 本领域的技术人员容易理解,以上所述仅为本发明的较佳实施例而已,并不用以限制本发明,凡在本发明的精神和原则之内所作的任何修改、等同替换和改进等,均应包含在本发明的保护范围之内。