APP下载

基于Apriori算法的高校教务管理系统设计与实现

2020-07-23刘璎川

现代电子技术 2020年14期
关键词:Apriori算法系统设计数据挖掘

刘璎川

(唐山师范学院, 河北 唐山  064100)

摘  要: 为进一步改善高校的管理效率,文中设计一种执行效率较高的教务管理系统。通过分析传统Apriori算法,指出数据挖掘算法所存在的缺陷。针对以上缺陷,利用散列、事务压缩、划分和抽样等技术,对Apriori算法进行改进,提高该算法的执行效率与可靠性,从而有效提高教务管理系统的管理效率。相关测试结果表明,该系统能够挖掘学生成绩数据之间的关联与规则,可为教务管理者的决策提供支撑。

关键词: 教务管理系统; 系统设计; Apriori算法; 算法改进; 数据挖掘; 系统测试

中图分类号: TN911?34; TP311.13               文献标识码: A                      文章编号: 1004?373X(2020)14?0052?03

Design and implementation of university educational administration

system based on Apriori algorithms

LIU Yingchuan

(Tangshan Normal University, Tangshan 064100, China)

Abstract: In order to further improve the management efficiency of colleges and universities, an educational administration system with high efficiency is designed. The shortcomings existing in the data mining algorithm are pointed out by analyzing the traditional Apriori algorithm. The Apriori algorithm is improved by means of hashing, transaction compression, partitioning and sampling technology to overcome the above defects and enhance the execution efficiency and reliability, so as to improve the management efficiency of the educational management system. The related testing results show that this system can mine the relation and rule among the student mark data, and provide support for the decision?making of the educational administration management people.

Keywords: educational administration system; system design; Apriori algorithm; algorithm improvement; data mining; system testing

0  引  言

随着社會与经济的发展,我国高等教育的招生规模不断增加,高校的教学资源也逐渐成为稀缺资源。如何快速分析与处理高校学生的教学信息,提高高校教务的管理效率,显得尤为重要。针对此问题的研究,主要集中在如何利用数据挖掘技术,设计与实现具有普适性的高校教务管理系统。此外,这一方向的研究主要依赖于数据挖掘技术的发展。

目前,较多国外学者致力于数据挖掘技术的研究。其中,Kochetov总结近年来数据挖掘技术的最新进展,具有重要意义[1];Marozzo等利用云平台技术,提出一种改进的数据挖掘和分析技术[2],促进此研究方向的发展;此外,国内较多学者也逐渐将数据挖掘技术应用于高校的教务管理系统[3?8]。但是,其实用性较高,但理论性较低。例如:邱文教等将DM技术应用于教务管理系统,朱艳鹏等将Apriori算法应用于教务管理的研究中[9?10],但并未得到功能完善的高校教务管理系统。

为了解决此问题,本文利用Hash、划分和抽样等技术,改进传统的Apriori算法,并将其用于具体的教务管理系统,从而提高采集、筛选和分析数据的效率。

1  算法思想

数据挖掘也被称为数据采矿,即从随机性数据中提取有效数据的操作,具体的技术结构如图1所示。

根据技术结构可知,与传统数据库技术相比,数据挖掘所处理数据的规模较大,可以发现较多的潜在有效规则,且执行速度更快。该技术具备上述优点,为其应用于关联规则领域提供了理论基础。关联规则是指从某一维度上讲,世界上的任何两件事情均存在某种相关性,这一特征在数据之间表现得尤为明显。数据关联是海量数据中存在的某种重要的规律,按照其关系类型,数据关联可分为简单关联、时序关联和因果关联。

Apriori算法是关联规则挖掘的经典算法。该算法包括两个步骤:

1) 挖掘大量数据中的频繁项集;

2) 利用已知的频繁项集,归纳潜在的关联规则。

通常由于Apriori算法的结构和推导较为简单,所以其效率、准确度较高。然而,此算法较难挖掘低支持度、多頻繁模式和复杂结构的对象,主要因为:

1) Apriori算法在处理候选集时,若频繁1?项集的数据量较大,则算法处理候选2?项集的难度会增加,导致算法的效率急剧下降;

2) Apriori算法必须不停地扫描数据库,耗费大量的计算资源,从而降低算法的模式匹配效率。

2  算法设计

Apriori算法由项目、关联规则、事务、频度和支持度等因素组成。其中,事务是指系统的某一次活动;项目是事务的最小整体,也被简称为项;关联规则是指项目之间的相关性;频度是指项目在事务中出现的次数;项目的支持度是指其频度与其在所有事务中出现的总数比值。

为回避Apriori算法的缺陷,本文将散列、事务压缩、划分和抽样等技术融入到算法的流程中。其具体说明如下:

1) 散列技术

当算法在扫描事务的过程中,属于候选项目集[C1]中的候选1?项集产生频繁1?项集[L1]。此时,利用散列技术可将这两个项集均映射到散列表的不同桶中,增加桶的数量。因此,散列表中的桶计数低于候选2?项集,可直接删除候选项集,达到压缩候选2?项集的目的。

2) 事务压缩技术

根据Apriori算法本身的特性,若一个事务不包括任何频繁[k]?项集,则其也不包含任何频繁[k+1]?项集。因此,当生成频繁[j]?项集([j>k])时,则算法不再需要扫描数据库。从而降低算法扫描数据库的次数,改善算法的执行速度。

3) 划分技术

当划分技术被应用时,算法扫描数据库的次数可直接降到2。第一次扫描时,算法把事务集划分为多个逻辑子集,对每个子集寻找其局部频繁项集;第二次扫描时,计算所有局部候选项集的支持度,通过划分数据库来确定全局频繁项集。

4) 抽样技术

当抽样技术被应用时,算法需选择数据库[D]中的随机样本[S],直接在[S]中搜索频繁项集。此算法只需扫描一次[S]中的事务,而并非扫描整个数据库[D]。此外,抽样技术通过降低算法的准确度,提高执行效率。

利用以上技术,本文改进Apriori算法,从而提高该算法的执行效率。改进之后的算法流程如图2所示。

按照图2所示的流程,本文还给出了改进Apriori算法的伪代码,其具体描述如下:

Input: 数据库[D],最小支持度阈值min_sup;

Output: 频繁项集[L];

步骤1:get items();                             //扫描数据库项目

second scan();                        //扫描构建0?1矩阵

getL1();                                             //获取L1

getC2();                              //获取候选项目集2

getL2();                                            //获取L2

步骤2:[for(k=2;Lk-1≠?;k++)]

{

[LC=cutbefore(Lk)];                          //连接前剪枝               [Ck+1=conitemsLC];                      //获取候选项集

[Lk+1=cutafter(Ck+1)];                         //连接后剪枝

}

3  系统实现

在完成改进Apriori算法的设计后,本文还需将此算法应用于教务管理系统中。通常教务管理系统主要包括采集、整理、处理和修正等模块,而改进Apriori算法则应用于数据处理模块。其应用结构设计见图3。

根据图3所示的结构,本文可实现系统的各大主要功能模块,具体介绍如下:

1) 采集预处理。系统的采集预处理模块主要由数据采集与预处理组成。其中,数据采集的对象为数据库的各种数据。本系统使用SQL Server数据库,而实际应用中的数据库也可能是其他的。例如,Oracle,MySQL或其他类型数据库。为避免多种数据库造成的不匹配现象,本系统使用ODBC多种数据库互通的方式,实现不同数据库的访问。

2) 数据整理。在提取数据后,系统需要对数据进行筛选,删除冗余数据及特征不明显的数据。同时,将筛选结果存储到系统的中间数据库中。在此过程中,系统还需对有效数据进行分类,即清洗数据。

3) 数据分析。数据分析模块是教务管理系统的核心模块。其主要利用改进Apriori算法,分析、处理中间数据库的有效数据,并获取这些数据之间潜在的关联规则,从而为系统使用者决策提供依据。

4) 数据修正。由于系统无法预测数据分析的最终结果,所以用户无法确定其分析结果的实际意义。为避免结果无实际意义或意义模糊的情况,系统需要设立数据修正模块,对数据分析的结果进行修正、分析,判断其最终结果是否存在实际意义。

5) 呈现结果。数据挖掘的结果需呈交给系统用户,所以系统在保持分析结果准确度的前提下,还应尽量提高分析结果的可读性。这也使得该模块一般使用图表的形式,展示系统的分析结果。

4  系统测试

为了验证系统的执行效率与可靠性,本文利用处理器为Intel[?] CoreTM i7?4790 CPU @ 3.60 GHz、内存为4 GB、操作系统为Windows 7的电脑。在Matlab软件环境下,实现该教务管理系统。需说明的是,测试数据来自于某高校的840位同学的多门课程成绩。部分测试数据截图如图4所示。

在具体的测试过程中,算法执行一步,则更新相应的候选项目集,并计算、比较其最小支持度,从而整理得到最大项目集。当系统的算法全部执行完毕,本文得到的执行结果如图5所示。

由图5可知,该教务管理系统在执行数据挖掘的操作后,虽然得到的部分结论没有实际意义,但同时也获取了较多有重要价值的结果。例如,其中结论为CN>=60=>HWD>=60[support=49%,confidence=91.5%],这里

的“CN”代表《计算机网络》,“HWD”代表《计算机硬件课程设计》。支持度与可信度的数据表明,这两门课程的成绩具有相关性,即当某学生的《计算机网络》课程成绩达到60分后,则其《计算机硬件课程设计》的成绩大于60分的概率较高。其他测试也可分析得到类似的结果,即本文的教务管理系统基本达到设计要求,具有一定的参考价值。

5  结  论

基于改进的Apriori算法,文中主要研究高校教务管理系统的设计与实现。其中,本文主要使用散列、事务压缩、划分和抽样等技术改进Apriori算法,提高算法的执行效率与可靠性,从而提升教务管理系统的效率。然而,该算法依然存在部分优化空间。例如,当支持度、可信度等数据均较高时,系统挖掘的结果并不一定是具有实际意义的关联规则。也许降低支持度阈值可以解决这一问题,而这也将是下一步的研究方向。

参考文献

[1] VADIM Kochetov. Overview of different approaches to solving problems of data mining [J]. Computer science, 2018, 123: 234?239.

[2] MAROZZO F, TALIA D, TRUNFIO P. A workflow management system for scalable data mining on clouds [J]. IEEE transactions on services computing, 2018, 11(3): 480?492.

[3] 邱文教,潘晓卉.数据挖掘技术在教务管理中的应用[J].安徽工业大学学报(社会科学版),2005,22(3):133?134.

[4] 曹丹阳.数据挖掘在教务系统中的应用研究[D].北京:北方工业大学,2006.

[5] 陈小莉.基于大数据的计算机数据挖掘技术在档案管理系统中的研究应用[J].激光杂志,2017,38(2):142?145.

[6] 张艳丽.数据挖掘技術在数字化校园的教务系统中的应用[D].沈阳:东北大学,2005.

[7] 许敏.基于数据挖掘的综合教务管理系统研究与实现[D].长沙:湖南大学,2014.

[8] 崔贯勋,李梁,王柯柯,等.关联规则挖掘中Apriori算法的研究与改进[J].计算机应用,2010,30(11):2952?2955.

[9] 朱艳鹏,王晓权.基于Apriori算法的数据关联规则在教务管理中研究[J].中国管理信息化,2015(17):244?246.

[10] 王华,梁华银.改进的Apriori算法在高校教学管理系统中的应用[J].科技信息:学术研究,2008(34):226?227.

猜你喜欢

Apriori算法系统设计数据挖掘
探讨人工智能与数据挖掘发展趋势
基于并行计算的大数据挖掘在电网中的应用
基于Hadoop平台的并行DHP数据分析方法
基于Apriori算法的高校学生成绩数据关联规则挖掘分析
基于云平台MapReduce的Apriori算法研究
一种基于SATA硬盘阵列的数据存储与控制系统设计研究
关联规则挖掘Apriori算法的一种改进
目标特性测量雷达平台建设构想
一种基于Hadoop的大数据挖掘云服务及应用
基于GPGPU的离散数据挖掘研究