时间:2024-05-04
赵 楠,王 昕,李英娜,吴 晟
(1. 昆明理工大学 信息工程与自动化学院,云南 昆明 650500;2. 云南电网公司电力科学研究院工作站,云南 昆明 650217)
校园欺凌是指同学间欺负弱小的行为,校园欺凌多发生在中小学,由于很多国家实行多是九年制的义务教育制度,受害者会长期受到欺凌。欺凌过程,蕴藏着一个复杂的互动状态,欺负同学会对同学构成心理问题,影响健康,甚至影响人格发展。在世界的各个国家,每天都会发生校园欺凌的事件,并不时有校园学生欺凌暴力案件的报道,其中还有一些性质相当严重的恶性案件。案件中那些心灵被扭曲的孩子们作案手段之残忍,令人触目惊心。在中国,校园暴力一般要到非常严重,甚至已经触犯刑法的程度,才会受到社会注意。
近年来,我国发生的多起校园霸凌事件在媒体的报道下引发了许多国人的关注。所谓校园霸凌实际上是指孩子们之间权力不平等的欺凌与压迫,表现为同侪间肢体与言语的攻击、人际互动中的抗拒及排挤等有意图的攻击性行为。霸凌事件对学生身体和精神上的影响是极为严重而长远的,因此对这些情况我们应该给予高度的重视。面对科学技术的快速发展和互联网的普及,给青少年带来的不仅仅是积极的影响。网络霸凌的暴力行为的传播速度之快与范围之广对受害者极易造成很大程度的伤害。考虑到驱使青少年施加暴力行为的主要诱因还是年龄,因此我们设计了一次针对不同年龄段青少年的心理状况的问卷调查,调查分为5个年龄段,涉及生命教育、生活方式、娱乐三个领域,分别包括正向、负向两个框架,根据自变量和因变量的选择,如附件一中调查结果所示,按照选择的答案计算相应的得分,试图以此模型来判断青少年存在一些潜在心理问题的可能性。
(1)通过统计分析,请判断各个年龄段的心理状况是否有显著的差异。
(2)请建立合理的数学模型,分析不同框架的主要影响因素。
问题中包含了两个小问,在问题(1)中要判断各个年龄段的心理状况是否有显著差异。从实际出发,青少年在成长的阶段,随着对世界新事物的接触及人际交往的复杂,不同年龄段的心理状态应该有显著差异。但我们要根据调查所得的数据通过分析来确定差异性变化;调查所得数据是基于正向反向两个框架而得,所以问题(2)是在问题(1)的基础上,要具体分析不同框架的主要影响因素。
(1)假设问卷调查的数据真实可靠;
(2)假设调查问卷的对象中男女生人数差异不大,即性别是个年龄段心理状况的无关影响因素;
A:正向程度深(冲动性强)
B:负向程度深(冲动性弱)
风险偏好:A1-A18
认知需要:B1、B10、B15、B20、B25
理智型:C2、C8、C11、C18、C23
直觉性:D3、D7、D12、D17、D22
依赖性:E4、E6、E13、E16、E21
回避型:F5、F9、F14、F24
i:表示年龄段的参数 ,取值i=1,2,3,4,5,对应题中年龄段9~10,11~12,13~14,15~16,17~18时
j:表示男女的参数,取值 j=1,0对应题中男性和女性
对于问题(1)在我们采用SPSS分析软件,基于调查得到的数据,通过选择自变量与因变量,得到了以下数表:
由上图可知,对于5个不同的年龄段的综合分析,可知学生心理状况在年龄上有显著差异,近似成正态分布。
什么样的数据才是频繁项集呢?也许你会说,这还不简单,肉眼一扫,一起出现次数多的数据集就是频繁项集吗!的确,这也没有说错,但是有两个问题,第一是当数据量非常大的时候,我们没法直接肉眼发现频繁项集,这催生了关联规则挖掘的算法,比如Apriori, PrefixSpan, CBA。第二是我们缺乏一个频繁项集的标准。比如10条记录,里面A和B同时出现了三次,那么我们能不能说A和B一起构成频繁项集呢?因此我们需要一个评估频繁项集的标准。
常用的频繁项集的评估标准有支持度,置信度和提升度三个。支持度就是几个关联的数据在数据集中出现的次数占总数据集的比重。或者说几个数据关联出现的概率。如果我们有两个想分析关联性的数据X和Y,则对应的支持度为:
以此类推,如果我们有三个想分析关联性的数据X,Y和Z,则对应的支持度为:
一般来说,支持度高的数据不一定构成频繁项集,但是支持度太低的数据肯定不构成频繁项集。置信度体现了一个数据出现后,另一个数据出现的概率,或者说数据的条件概率。如果我们有两个想分析关联性的数据X和Y,X对Y的置信度为
Confidence(X⇐Y)=P(X|Y)=P(XY)/P(Y)
也可以以此类推到多个数据的关联置信度,比如对于三个数据X,Y,Z,则X对于Y和Z的置信度为:
Confidence(X⇐YZ)=P(X|YZ)=P(XYZ)/P(YZ)
举个例子,在购物数据中,纸巾对应鸡爪的置信度为40%,支持度为1%。则意味着在购物数据中,总共有1%的用户既买鸡爪又买纸巾;同时买鸡爪的用户中有40%的用户购买纸巾。提升度表示含有Y的条件下,同时含有X的概率,与X总体发生的概率之比,即:
Lift(X⇐Y)=P(X|Y)/P(X)=Confidence(X⇐Y)/P(X)
提升度体先了X和Y之间的关联关系,提升度大于1则X⇐Y是有效的强关联规则,提升度小于等于1则X⇐Y是无效的强关联规则。一个特殊的情况,如果X和Y独立,则有Lift(X⇐Y)=1,因为此时P(X|Y)=P(X)。
一般来说,要选择一个数据集合中的频繁数据集,则需要自定义评估标准。最常用的评估标准是用自定义的支持度,或者是自定义支持度和置信度的一个组合。
设A是一个项集,事务T包含A当且仅当A T。犯罪模式中的合作关联规则,是形如 A B的蕴涵式,其中A I,B I,并且A∩B=。规则A B在事务集D中成立,具有支持度s,其中s是D中事务包含A B的百分比,它是概率P(A B)。规则A B在事务集D中具有置信度c,如果D中包含A的事务同时也包含B的百分比是c,这是条件概率P(B|A)。即是:
support A B =P(A B) confidence A B =P(B|A)
同时满足min_sup和min_conf的规则称作强规则。如果包含k项的项集在事务集D中的出现频率大于设定的最小支持度min_sup与事务集中记录总数的成绩,则该项集满足最小支持度阈值,称该项集为频繁k - 项集。
冲动模式中,青少年的关联规则的挖掘是一个两步的过程,首先要找出所有的频繁项集,然后再由频繁项集产生强关联规则。下面根据上述步骤进行关联规则的挖掘。
对于 Apriori算法,我们使用支持度来作为我们判断频繁项集的标准。Apriori算法的目标是找到最大的K项频繁集。这里有两层意思,首先,我们要找到符合支持度标准的频繁集。但是这样的频繁集可能有很多。第二层意思就是我们要找到最大个数的频繁集。比如我们找到符合支持度的频繁集AB和ABE,那么我们会抛弃AB,只保留ABE,因为AB是2项频繁集,而ABE是3项频繁集。那么具体的,Apriori算法是如何做到挖掘K项频繁集的呢?
Apriori算法采用了迭代的方法,先搜索出候选1项集及对应的支持度,剪枝去掉低于支持度的 1项集,得到频繁1项集。然后对剩下的频繁1项集进行连接,得到候选的频繁2项集,筛选去掉低于支持度的候选频繁 2项集,得到真正的频繁二项集,以此类推,迭代下去,直到无法找到频繁k+1项集为止,对应的频繁k项集的集合即为算法的输出结果。
可见这个算法还是很简洁的,第i次的迭代过程包括扫描计算候选频繁 i项集的支持度,剪枝得到真正频繁i项集和连接生成候选频繁i+1项集三步。
我们的数据集D有4条记录,分别是134,235,1235和25。现在我们用 Apriori算法来寻找频繁k
项集,最小支持度设置为50%。首先我们生成候选频繁1项集,包括我们所有的5个数据并计算5个数据的支持度,计算完毕后我们进行剪枝,数据 4由于支持度只有25%被剪掉。我们最终的频繁1项集为1235,现在我们链接生成候选频繁2项集,包括12,13,15,23,25,35共6组。此时我们的第一轮迭代结束。
图1 算法迭代图Fig.1 Algorithm iteration diagram
进入第二轮迭代,我们扫描数据集计算候选频繁2项集的支持度,接着进行剪枝,由于12和15的支持度只有25%而被筛除,得到真正的频繁2项集,包括13,23,25,35。现在我们链接生成候选频繁3项集,123,125,135和235共4组,这部分图中没有画出。通过计算候选频繁3项集的支持度,我们发现123,125和135的支持度均为25%,因此接着被剪枝,最终得到的真正频繁3项集为235一组。由于此时我们无法再进行数据连接,进而得到候选频繁4项集,最终的结果即为频繁3三项集235。
下面我们对Aprior算法流程做一个总结。
输入:数据集合D,支持度阈值α
输出:最大的频繁k项集
(1)扫描整个数据集,得到所有出现过的数据,作为候选频繁1项集。k=1,频繁0项集为空集。
(2)挖掘频繁k项集
(a)扫描数据计算候选频繁k项集的支持度
(b)去除候选频繁 k项集中支持度低于阈值的数据集,得到频繁 k项集。如果得到的频繁 k项集为空,则直接返回频繁k-1项集的集合作为算法结果,算法结束。如果得到的频繁k项集只有一项,则直接返回频繁k项集的集合作为算法结果,算法结束。
(c)基于频繁k项集,连接生成候选频繁k+1项集。
(3)令k=k+1,转入步骤2。
从算法的步骤可以看出,Aprior算法每轮迭代都要扫描数据集,因此在数据集很大,数据种类很多的时候,算法效率很低。
(1)找出所有频繁项集(利用Apriori算法)。
Apriori算法是一种最有影响的挖掘布尔关联规则频繁项集的算法。 根据Apriori算法的性质,频繁项集的所有非空子集都必须也是频繁的。Apriori性质基于如下观察:根据定义,如果项集 I不满足最小支持度min_sup,则I不是频繁的,即P(A)
(2)由频繁项集产生强关联规则。 置信度由下式表示:
support_count(A B)
confidenceA B=PBA= 其中,support_count(A B)是包含项集 A B的事务数,support_count(A)是包含项集A的事务数。根据该式,关联规则可以产生如下:
(1)对于每个频繁项集 l,产生 l的所有非空子集;(2)对于l的每个非空子集s,如果:
support_count(l)
≥min_conf
则输出规则“s (l s)”。其中,min_conf是最小置信度阈值。
根据上述分析,设定min_sup为10%,min_conf为80%,对附件1中提供的数据进行关联分析的结果如表1。
本文首先根据数据挖掘的关联分析技术,通过Apriori算法分析青少年性格的观察数据,得到了可能的发生暴力的模式集合。进一步通过决策树分析,得到了结合青少年间的犯罪模式,并通过模式对比得到各种犯罪模式的正确率,与观测数据吻合非常好。
决策树(Decision tree)是一类二叉树,其中每个内部节点表示在一个属性上的测试,每个分枝代表一个测试输出,而每个树叶节点代表类或类分布。树的最顶层节点是根节点。开发预测决策树的过程是:首先考虑训练数据集 X,然后根据自变量的值和最佳的划分选择将X分为两个或更多子集的所有可能分枝,从而生成预测决策树。
在本题中,可以将事务T中的布尔变量作为二叉分枝。根据图2,建立决策树如下。
根据上图所示的决策树,得出犯罪模式组合如表2所示。
从该决策树中,可以得出一些预测知识。当然,由于样本数量和项目还不够多,分析程度和分类知识的获取还不够理想,可信度也还相对不够,还只能称作一个简单的粗层次的分类分析模型,但其精度已经满足需要。
表1 关联分析表Tab.1 Association analysis table
表2 犯罪模式表Tab.2 Crime pattern table
根据上述分析,只需找到特定的犯罪模式,就可以根据预测决策树来计算相应模式的危害度。根据预测决策树计算出各个模式的危害度为:
表3 犯罪模式危害度表Tab.3 Crime mode hazard table
给出平均绝对误差和平均相对误差:
平均绝对误差=0.008平均相对误差=1.6%
该误差可以作为对可信度的评价,本文将下式作为可信度的置信度的评价式:
置信度=1平均相对误差=98.4%
图8示例叶节点所在位置示意图
所选择节点为节点13,该节点的信息如下:
表4 节点表Tab.4 Node table
X5 = 1 and X1 = 0 and X2 = 0 and X4 = 0的所有规则,均为发生变化的规则。
(1)模型的优点
(a)模型利用数据挖掘中的关联分析和决策树的概念,完成了针对题目所给的 数据的分析,并给出了数据的组合模式,模型能够排除小部分异常数据对模式分析的干扰。
(b)模型具有一定的普遍使用性,不仅仅可以在犯罪模式识别领域,在解决其 他海量数据的关联分析和决策方面,也具有一定的适用性。
(2)模型的缺点
(a)Apriori算法需要产生巨大的候选集并且多次扫描数据集,在处理大规模数 据时,可能会遇到性能瓶颈。
(b)模型不能针对所给数据,给出确定的,具体的犯罪模式组合,仅可以对犯 罪模式组合的可能性进行分析。
(3)模型的改进
(a)将Apriori算法改进为基于FP-tree的频繁集查找算法,提高运行效率,由于时间所限,本文不再赘述。
[1] 黄弋石, 梁艳. 手写识别建模数学方法研究[J]. 软件,2013, 34(8): 13-15.
[2] 章亮, 刘斌, 陆民燕等. 嵌入式软件测试开发环境的框架设计[J]. 北京航空航天大学学报, 2005, 31(3): 336-34.Zhang Liang, Liu Bin, Lu Minyan. Framework design of embedded soft-ware testing development environment[J].Journal of Beijing University of Aerounautics And Astronautics, 2005, 31(3): 336-340.
[3] 李伟. 软件产品测试系统的设计与功能实现[D]. 中国海洋大学, 2004. Li Wei.Design and implementation of test system software products [D]. Ocean University of China, 2004.
[4] 林晓欲, 石磊. 嵌入式软件系统测试模型的研究与实现[J].科学技术与工程, 2009, 9(24): 75157520.Lin Xiaoyu, Shi Lei. The Research and Realization of System Testing Model for Embedded Software[J]. SCIENCE TECHNOLOGY AND ENGINEERING, 2009, 9(24): 75157520.
[5] 赵蒙, 宋俊德, 鄂海红. 一种社会化标签系统的用户兴趣建模方法[J]. 软件, 2013, 34(12): 136-138.
[6] 叶新, 潘清, 董正宏. 多领域建模仿真方法综述[J]. 软件,2014, 35(3): 233-236.
[7] 浦慧忠. 基于Web挖掘的用户兴趣建模方法的研究[J]. 软件, 2014, 35(7): 126-128.
[8] 张雅媛. 3D MIMO信道建模及性能分析[J]. 软件, 2014,35(9): 115-119.
[9] 卢超, 黄蔚, 胡国超. 基于图形数据结构的复杂对象建模设计[J]. 软件, 2015, 36(12): 220-223.
[10] 贾一琦. 校园网络安全问题的分析与对策探讨[J]. 软件,2014, 35(3): 161-162.
[11] 胡健, 王理江. 数据挖掘在选课推荐中的研究[J]. 软件,2016, 37(4): 119-121.
[12] 王尚广, 孙其博, 杨放春. 基于云模型的不确定性QoS感知的Skyline服务选择.软件学报, 2012, 23(6): 1397-1412.
[13] 陈妍. 计算机软件开发的规范化探析[J]. 软件, 2313, 34(7):33-34.
[14] 雷文育. 关于如何创新和完善计算机软件工程管理的探讨[J]. 软件, 2013, 34(10): 46.
[15] 李伟. 基于工作过程的计算机软件学习策略探究[J]. 软件,2014, 35(1): 146.
我们致力于保护作者版权,注重分享,被刊用文章因无法核实真实出处,未能及时与作者取得联系,或有版权异议的,请联系管理员,我们会立即处理! 部分文章是来自各大过期杂志,内容仅供学习参考,不准确地方联系删除处理!