system: [SYSTEM]

user: 4. 基于Minitab、贝叶斯与决策树的犯罪数据挖掘应用研究 根据上节所述的大数据挖掘相关方法，为简化计算，采用随机抽样的方法，从我们收集的某民族地区的犯罪数据中抽样选取如表1的数据作为分析研究的样本数据。 4.1. 基于Minitab对犯罪数据的挖掘 Minitab软件是由1972年成立于美国宾夕法尼亚大学的Minitab Inc.公司开发的。目前从新兴企业到全球500强公司大都选择Minitab作为改善流程、提高质量的首选软件，它是现代质量管理统计的领先者，是六西格玛管理中必需的统计分析软件，更是持续质量改进的良好工具软件，它的核心功能就是进行数据分析、图形分析以及趋势预测。本文使用Minitab 16.0版作为分析辅助工具，主要使用里面的回归分析模块。 Table 1 Sample data of a national police crime analysi 年龄 经济状况 文化程度 正当职业 犯罪记录 特长 常驻人口 犯罪程度 20~30 中等 初中 无 无 有 是 较轻 >40 差 小学 无 有 有 是 严重 30~40 差 初中 无 有 有 是 严重 20~30 中等 高中 有 无 无 是 较轻 >40 差 小学 有 有 无 否 严重 30~40 差 初中 有 有 无 是 较轻 20~30 中等 初中 无 有 有 否 较轻 20~30 差 高中 无 无 有 否 严重 30~40 中等 高中 有 无 无 是 较轻 20~30 中等 初中 有 有 无 是 严重 20~30 差 高中 无 有 有 否 严重 >40 差 初中 无 无 无 是 较轻 20~30 差 高中 有 无 无 否 较轻 20~30 差 高中 有 无 无 否 较轻 20~30 中等 高中 有 有 无 是 较轻 表1. 某民族公安犯罪行为分析样本数据 基于单因素试验设计，对优化工艺条件进行了一系列的试验，在最陡爬坡试验的基础上，根据Box-Benhnken的中心组合试验设计原理。利用Design-Expert8.0.6进行响应面法优化。影响某民族地区犯罪行为的7个主要因素：年龄(x 1 )，经济状况(x 2 )，文化程度(x 3 )，正当职业(x 4 )，犯罪记录(x 5 )，特长(x 6 )，常驻人口(x 7 )，考察目标为犯罪程度(y)，试验因素水平安排以及根据以上水平编码设计试验表格并检测响应值结果见表2。 Table 2 Crime data coding table for a certain ethnic are 年龄 经济状况 文化程度 职业 犯罪记录 特长 常驻 犯罪程度 x 1 x 2 x 3 x 4 x 5 x 6 x 7 y 3 2 1 1 1 2 2 2 2 2 2 1 1 2 1 1 1 1 2 2 1 1 2 1 1 2 3 2 2 1 2 2 2 1 3 1 2 2 1 1 1 1 2 1 1 2 1 2 1 2 3 2 1 1 2 2 2 2 2 2 2 2 1 1 1 2 3 1 2 2 2 1 表2. 某民族地区犯罪数据编码表 对表2数据进行二次多元回归拟合，可求出影响因素的一次效应、二次效应以及交互效应的关联方程并可绘制出响应面图。该模型通过二阶经验模型对变量的响应行为进行表征，即： Y = β 0 + ∑ i = 1 7 β i x i + ∑ i = 1 7 β i i x i 2 + ∑ i = 1 2 ∑ j = 1 7 β i j x i x j (2) 式中：y代表响应值； β 0 、 β i 、 β i i 表示偏移项、线性偏移和二阶偏移系数； β i j 是交互效应系数； x i ——各因素的编码值。以x 1 ，x 2 ，x 3 ，x 4 ，x 5 ，x 6 ，x 7 为自变量，y为响应值，利用Minitab 16.0进行响应曲面回归分析得如表3：y的回归系数和表4：y的方差分析： Table 3 Estimated regression coefficients for 项 系数 系数标准误 T P 常量 6.50000 0.000000 * * x 1 0.50000 0.000000 * * x 2 −1.00000 0.000000 * * x 3 −1.00000 0.000000 * * x 4 −3.00000 0.000000 * * x 5 −0.00000 0.000000 * * x 6 0.00000 0.000000 * * x 7 −0.50000 0.000000 * * x 1 * x 1 0.00000 0.000000 * * x 1 * x 2 −1.00000 0.000000 * * x 1 * x 4 −0.00000 0.000000 * * x 1 * x 7 0.50000 0.000000 * * x 2 * x 4 2.00000 0.000000 * * 表3. y的估计回归系数 S = 0 ， PRESS = * R − S q = 100.00 % ， R − S q ( 预 测 ) = * % R − S q ( 调 整 ) = 100.00 % Table 4 Analysis of variance of 来源 自由度 Seq SS Adj SS Adj MS F P 回归 12 3.60000 3.60000 0.300000 * * 线性 7 1.64712 2.12073 0.302961 * * x 1 1 0.20417 0.01481 0.014815 * * x 2 1 0.35986 0.01538 0.015385 * * x 3 1 0.52484 0.50000 0.500000 * * x 4 1 0.07723 0.40909 0.409091 * * x 5 1 0.14417 0.00000 0.000000 * * x 6 1 0.33619 0.00000 0.000000 * * x 7 1 0.00065 0.02128 0.021277 * * 平方 1 0.17982 0.00000 0.000000 * * x 1 * x 1 1 0.17982 0.00000 0.000000 * * 交互作用 4 1.77306 1.77306 0.443265 * * x 1 * x 2 1 0.18865 0.06452 0.064516 * * x 1 * x 4 1 0.21153 0.00000 0.000000 * * x 1 * x 7 1 0.57288 0.06667 0.066667 * * x 2 * x 4 1 0.80000 0.80000 0.800000 * * 残差误差 2 0.00000 0.00000 0.000000 纯误差 2 0.00000 0.00000 0.000000 合计 14 3.60000 表4. y的方差分析 从而，得响应面方程得： (3) 最后，由(3)，利用Minitab工具得出的模型，采用C#设计实现了如下可视化界面(图1，图2)。 图1. 基于Minitab的犯罪预测 图2. 基于贝叶斯的犯罪预测 4.2. 基于贝叶斯方法的犯罪数据挖掘应用 由上表可知，将对犯罪程度进行分类的过程归结为典型的两类问题，根据以上的分类规则则可判定任意一个犯罪行为，是较轻，还是严重。 其中：C 1 表示，犯罪行为的犯罪程度较轻，C 2 表示犯罪行为的犯罪程度较重。选取上表中的10个数据构成的表5作为训练数据，另外的数据作为测试数据。 由表5得到： P ( C 1 = 较 轻 ) = 0.6 ， P ( C 2 = 严 重 ) = 0.4 ； 对未知样本X = (年龄为20~30，经济状况 = 中等，文化程度 = 初中，正当职业 = 无，犯罪记录 =无，特长 = 有，常驻人口 = 是)，进行分类； P (年龄 = 20~30|犯罪程度 = 较轻) = 0.5；P (年龄 = 20~30|犯罪程度 = 较重) = 0.74； P (经济状况 = 中等|犯罪程度 = 较轻) = 0.333；P (经济状况 = 中等|犯罪程度 = 较重) = 0.25； P (文化程度 = 初中|犯罪程度 = 较轻) = 0.501；P (文化程度 = 初中|犯罪程度 = 较重) = 0.25； P (正当职业 = 无|犯罪程度 = 较轻) = 0.333；P (正当职业 = 无|犯罪程度 = 较重) = 0.5； P (犯罪记录 = 无|犯罪程度 = 较轻) = 0.667；P (犯罪记录 = 无|犯罪程度 = 较重) = 0.25； P (特长 = 有|犯罪程度 = 较轻) = 0.167；P (特长 = 有|犯罪程度 = 较重) = 0.5； P (常驻人口 = 是|犯罪程度 = 较轻) = 0.5；P (常驻人口 = 是|犯罪程度 = 较重) = 0.25； 利用以上结果，根据公式(1)分母相同，可以不用计算，只比较分子即可， 记 S = ∑ j = 1 n P ( X | C j ) P ( C j ) (4) 可得； P ( C 1 | X ) = P ( X | C 1 ) P ( C 1 ) ∑ j = 1 n P ( X | C j ) P ( C j ) = P ( X | C 1 ) P ( C 1 ) / S (5) Table 5 Analysis of criminal behavior in a certain ethnic are 年龄 经济状况 文化程度 正当职业 犯罪记录 特长 常驻人口 犯罪程度 >40 差 小学 有 有 无 否 严重 30~40 差 初中 有 有 无 是 较轻 20~30 中等 初中 无 有 有 否 较轻 20~30 差 高中 无 无 有 否 严重 30~40 中等 高中 有 无 无 是 较轻 20~30 中等 初中 有 有 无 是 严重 20~30 差 高中 无 有 有 否 严重 >40 差 初中 无 无 无 是 较轻 20~30 差 高中 有 无 无 否 较轻 表5. 某民族地区犯罪行为分析表 所以， P ( C 1 | X ) = 0.5 × 0.333 × 0.5 × 0.333 × 0.667 × 0.167 × 0.5 × 0.6 = 0.000992639 P ( C 2 | X ) = 0. 75 × 0. 25 × 0. 25 × 0. 5 × 0. 25 × 0. 5 × 0. 25 × 0. 4 = 0.000 292968 分类结果为C 1 ，犯罪程度较轻，对照表，是吻合的。 为了方便使用，我们在基于表5的情况下，计算出了各条件概率如表6。最后，利用贝叶斯理论，采用C#语言程序设计实现了如图2所示的界面。 Table 6 Criminal behavior analysis sample data conditional probability tabl 犯罪程度 年龄 经济状况 文化程度 20~30 30~40 >40 中等 差 小学 初中 高中 较轻 0.5 0.333 0.167 0.333 0.667 0.001 0.501 0.498 较重 0.74 0.01 0.25 0.25 0.75 0.25 0.25 0.5 犯罪程度 正当职业 犯罪记录 特长 常驻人口 有 无 有 无 有 无 是 否 较轻 0.333 0.667 0.333 0.67 0.167 0.833 0.5 0.5 较重 0.5 0.5 0.75 0.25 0.5 0.5 0.25 0.75 表6. 犯罪行为分析样本数据条件概率表 4.3. 基于决策树算法的犯罪数据挖掘应用 4.3.1. 选取挖掘目标和采集数据 笔者选择某犯罪行为过程分析数据，希望通过数据挖掘，从中分析出：影响犯罪程度的因素，并得出犯罪程度较轻和犯罪程度严重的分类规则。即，挖掘出犯罪程度。从而为社会治安综合治理以及人员的管控提供决策依据。 4.3.2. 决策树算法的数据挖掘过程 1) 决策树模型的分类原理 a) 决策树的枝干和叶节点是如何生成的？ b) 节点的选取 i) 划分节点时，模型所需的信息量最小 ii) 能生成一个相对简洁的树 c) 基于信息熵的原理 熵是自信息量的数学期望，它是一种信息的度量，属性变化越多，熵越大。 2) 类别熵 根据熵的定义，把类别看作随机变量，并给出相应的计算熵的公式(6)： H ( C ) = − ∑ i = 1 k P c i I c i = − ∑ i = 1 k P c i log 2 P c i (6) 由本文的数据集，C 1 ：较轻；C 2 ：较重； ， H ( C ) = H ( C 1 ) + H ( C 2 ) = ( − 0.6 log 2 0.6 ) + ( − 0.4 log 2 0.4 ) = 0.306495 + 0.366516 = 0.670311 3) 条件熵 根据条件熵的定义，及如下公式(7)，可得出第一个变量X 1 ：年龄的条件熵。 H ( C | X 1 ) = − ∑ i = 1 k P X 1 i H ( C | X i 1 ) (7) 由数据表可知， P ( X 11 ) = P (年龄为20~30) = 0.5， P ( X 12 ) = P (年龄为30~40) = 0.3， P ( X 13 ) = P (年龄40) = 0.2； 所以， H ( C | X 11 ) = ( − 0.8 log 2 0.8 ) + ( − 0.2 log 2 0.2 ) = 0.328876 + 0.178515 = 0.507391 H ( C | X 12 ) = ( − 0.667 log 0 0.667 ) + ( − 0.333 log 2 0.333 ) = 0.270112 + 0.366171 = 0.636283 H ( C | X 13 ) = 0 因而， H ( C | 年 龄 ) = ∑ i = 1 3 P X 1 i H ( C | X 1 i ) = 0.5 × 0.507391 + 0.3 × 0.636383 + 0.2 × 0 = 0.44458 4) 信息增益 由类别熵减去条件熵，得到该属性的信息增益。最后根据所有属性的信息增益来确定根节点和其他枝干节点。信息增益由下面的公式(8)给出： (8) 于是，对于上面的年龄属性的信息增益，可计算得： Gain ( 年 龄 ) = H ( C ) − H ( C | 年 龄 ) = 0.670311 − 0.44458 = 0.225102 同理，可根据条件熵，得出其他属性的信息增益为： Gain ( 年 龄 ) = H ( C ) − H ( C | 年 龄 ) = 0.670311 − 0.44458 = 0.225102 Gain ( 经 济 状 况 ) = H ( C ) − H ( C | 经 济 状 况 ) = 0. 67 0 311 − 0. 253696 = 0. 416615 Gain ( 文 化 程 度 ) = H ( C ) − H ( C | 文 化 程 度 ) = 0. 67 0 311 − 0. 4498688 = 0. 22 0 4422 Gain ( 正 当 职 业 ) = H ( C ) − H ( C | 正 当 职 业 ) = 0. 67 0 311 − 0. 588851 = 0.0 8146 Gain ( 犯 罪 记 录 ) = H ( C ) − H ( C | 犯 罪 记 录 ) = 0. 67 0 311 − 0. 64 0 8226 = 0.0 294884 Gain ( 特 长 ) = H ( C ) − H ( C | 特 长 ) = 0. 67 0 311 − 0. 588851 = 0.0 8146 Gain ( 常 住 人 口 ) = H ( C ) − H ( C | 常 住 人 口 ) = 0. 67 0 311 − 0. 6 0 98566 = 0.0 6 0 4544 5) 决策树的生成 通过上面计算的信息增益，可得如下的信息增益表7。 Table 7 Information gain table with economic statu 属性 年龄 经济状况 文化程度 正当职业 犯罪记录 特长 常驻人口 增益值 0.225102 0.416615 0.220442 0.08146 0.0294884 0.08146 0.0609544 表7. 含经济状况的信息增益表 其中，信息增益值最大的属性为经济状况，于是，决策树的根节点，就是经济状况。 去掉经济状况属性，用上面的方法，得到信息增益表为表8。 Table 8 Information gain table without economic statu 属性 年龄 文化程度 正当职业 犯罪记录 特长 常驻人口 增益值 0.230135 0.230135 0.230135 0.0575222 0.230135 0.3633674 表8. 不含经济状况的信息增益表 其中，信息增益值最大的属性为常驻人口，于是，决策树子树的根节点，就是常驻人口。 重复此步骤，可生成决策树，如图3。 4.3.3. 决策树挖掘规则应用 根据犯罪数据挖掘决策树，可以直接提取出犯罪预测分类规则： 1) IF经济状况 = 中等，THEN犯罪程度 = 较轻； 2) IF经济状况 = 差and常驻人口 = 否，THEN犯罪程度 = 严重； 3) IF经济状况 = 差and常驻人口 = 是and正当职业 = 有，THEN犯罪程度 = 较轻； 4) IF经济状况 = 差and常驻人口 = 是and正当职业 = 无，THEN犯罪程度 = 严重； 利用决策树方法挖掘犯罪防控的有用信息，根据分类规则找出与研究对象有关联的信息，方便警务工作者科学决策，并作出相应的警务模式改革。 图3. 犯罪预测决策树 4.4. 三种犯罪数据挖掘方法的分析比较 本节，我们采用Minitab、贝叶斯和决策树三种方法对犯罪数据进行挖掘。Minitab方法在进行编码的情况下，由软件工具自动计算生成犯罪预测模型，方法直观，计算量小。贝叶斯方法由于要计算先验概率、条件概率及后验概率，使得计算量比Minitab大一些。而决策树方法由于要计算总熵、条件熵、信息增益，全部属性的信息增益算完后，再比较大小，才产生决策树的根节点，依次类推，直到生成一棵决策树。通过对三种方法进行预测准确性的测试，得出预测准确性见表9。 Table 9 Comparison of crime data mining in three method 复杂性 难易性 计算速度 编程实现难度 预测准确性 Minitab 简单 易 快 低 79.7% 贝叶斯 中 中 中 中 86.3% 决策树 复杂 难 慢 高 82.9% 表9. 三种方法的犯罪数据挖掘比较情况表