序列模式挖掘在培训学校管理系统中的应用

时间:2022-03-23 02:39:05

序列模式挖掘在培训学校管理系统中的应用

摘要:该文针对培训学校管理系统的学员课程选择事务中存在的序列特征,提出一种通过进行序列模式挖掘来发现学员选课模式和规律的分析方法,并将其应用于培训管理系统中。实践表明,通过序列模式挖掘得到的分析结果,可以帮助培训机构去发掘潜在客户,实施培训课程的定向推广。

关键词:序列模式挖掘;培训学校管理系统;学员选课模式

中图分类号:TP311 文献标识码:A 文章编号:1009-3044(2013)30-6698-02

序列模式挖掘是数据挖掘的一个重要分支,如今已被广泛地应用于很多领域的数据分析、预测和知识提取中。一个序列模式的例子是“两年前购买了惠普笔记本电脑的用户很可能在今年添购内存条”。由于很多商业交易数据都是时间序列数据,在针对目标市场、客户吸引等的数据分析中,序列模式挖掘有着重要的用途。

1 序列模式挖掘相关概念

序列S的支持数是数据库中支持S的用户数,记为support(S)。S的支持度等于支持数与数据库中的用户总数之比。支持阈值表示项集或序列在统计意义上的最低重要性,如果系统数据库的用户数是固定的,可以用最小支持数minsup_count来代替支持阈值。序列S的支持数如果不小于支持度,即support(S)≥minsup_count,并且S不是其他任何序列的子序列,那么序列S就称作是在序列数据库中的序列模式。序列模式挖掘就是找出所有的频繁子序列,即该子序列在序列集中的出现频率不低于给定的最小支持度阈值。

2 学员选课序列模式挖掘过程

学员选课序列模式挖掘的过程可以分为选课事务集的提取、调用相关算法进行序列模式挖掘和学员选课模式分析三个阶段。其中,选课事务数据的提取是结果分析和序列模式挖掘的基础,它的主要任务是提取培训学校管理系统中的学员信息、课程信息和选课关系数据,并在此基础上生成供数据挖掘使用的选课事务集;选择合适的序列模式挖掘算法从选课事务集中发现频繁序列模式是序列模式挖掘阶段的主要任务;在挖掘结果的基础上,进行学员选课模式分析的主要任务是找出学员选择课程的实用模式和一般规律,指导培训机构针对潜在客户推广培训课程。

2.1 数据准备

数据准备工作是保证数据挖掘成功的先决条件,主要完成收集原始数据,并对其进行预处理从而得到序列数据库的工作。在学员选课序列模式分析中,所有课程对象的集合记为I={i1, i2, …, in},集合I中的项目ij(1≤j≤n)为培训学校开设的课程名称。设T为学员选课事务,记为,其中,Tid是事务标识,Uid是学员标识,s是某个时间学员所选择的培训课程集合,称为事务集,date指事务的时间,即开课时间。这里把每个学员按时间顺序参加的所有培训课程作为一个序列。具体操作方法是通过对学员选课的原始事务数据进行转换,把具有相同学员标识的选课事务按时间进行排序,就可得到事务集序列,进而得到一个序列数据库,在这个序列数据库上便可以进行序列模式挖掘。例如,序列S=为学员选课事务集序列,那么,S中的所有事务必然具有相同的Uid,并且si(1≤i≤k)是按时间顺序排列的。学员选课序列模式挖掘的任务,就是从选课事务序列S中,找出学员选课一般规律的频繁序列模式。

培训管理系统中包括了学员信息、合同信息和合同课程信息等。存储这些信息的数据库表字段比较多,数据量比较庞大,很多属性与序列模式挖掘无关,我们只需抽取与挖掘事务集S相关的属性,主要包括学员id、学员所选课程和开课时间。由此,我们首先根据学员id从合同信息表中查询该学员签署的合同id,然后再由合同id从合同课程信息表中查询出该合同所包含的课程信息,也即是当前学员的选课信息。可以在数据库中新建一张“学生选课信息表”,将上述操作得到的查询结果存储在该表中。接下来,将“学生选课信息表”转换生成序列数据库S,序列数据库S中的记录将作为序列模式挖掘的输入。表1即为在“学员所选课程”属性层次上生成的序列数据库。

表中的“学员标识(Uid)”字段是学员的编号标识,字段“学员选课序列”给出了按开课时间顺序生成的学员选课序列,序列中的项目集是对应于某个合同id的课程选择内容。例如,项目集(数学,语文,英语)是id号为0256的学员签署的某个合同中所包含的课程集合,项目集中每个项目的排列顺序跟“学生选课信息表”中的原始数据相同。

2.2 序列模式挖掘算法

在培训管理系统中,我们采用PrefixSpan(Prefix-Projected Sequential Pattern Mining)算法进行序列模式的挖掘。PrefixSpan算法可以发现数据库中用户序列支持的所有频繁序列,并且能极大地减小在生成候选序列时的系统开销;更重要的是,该算法利用投影将原数据库进行分割的方式,使得挖掘数据库序列模式的效率得以显著提高。因此,PrefixSpan算法以其在性能及效率等方面的优势通常作为对大型序列数据库进行序列模式挖掘的首选算法。

现将PrefixSpan算法中用到的一些概念描述如下。

PrefixSpan算法是一个基于模式增长的算法,与那些基于优先级的传统序列模式挖掘算法不同,该算法没有产生任何无用的序列,而只是记录下了原始数据库1-项集的频率。当最小支持度减小的时候,频繁的序列就会呈指数级的增长,而基于最优化的算法会花费大量呈指数增长的时间去处理一个较小的数据库。PrefixSpan算法从较短的连续项中产生序列模式的增长很少,在投影数据库中,它不用生成候选序列,也不用判断是否有候选序列的存在,并且投影数据库比原始数据库规模更小,原因在于只有那些有着连续前缀的后缀子序列才能投影到投影数据库。

3 实验结果分析

本次实验收集了培训学校管理系统中3208名学员在2010年7月到2013年7月的选课信息。将表1中对原始数据进行预处理得到的序列数据库S作为输入数据,并选定最小支持度min_sup为50%,执行PrefixSpan算法得到的序列模式有、、等。对以上序列模式进行分析,可以得出下面的三条结论:参加二年级同步班数学、语文课程的学员,大部分在暑假选报了奥数和英语的提高班;参加二年级同步班数学、语文课程的学员,多半在暑假选择了书法和美术兴趣班;参加三年级同步班数学、英语班的学员,大部分在暑假选报了作文提高班。

由上面的实验结果,采用序列模式挖掘从培训学校学员选课信息中挖掘出学员在学习过程中选择课程的规律,对于培训学校来说,其应用价值主要体现在:一方面,通过挖掘出在校学生某个学习阶段的选课序列规律,可以对他们的学习过程起到指导作用。在老师的正确引导下,使学生了解到本阶段应该掌握哪些方面的具体知识,先后学习哪些相关课程,以及提前学习哪些课程能够帮助他们进行预习,从而更好地为新学期即将开设的课程做好准备;另一方面,培训学校参考挖掘得到的大多数学员的选课序列模式,可以开展一系列的营销活动。例如,将序列模式中的课程打成课程包进行促销;针对二年级参加同步班的学员,采用宣传或短信推送等方式推广提高班、兴趣班课程等。

4 结束语

本文介绍了采用序列模式挖掘算法用以发现培训学校管理系统的学员课程选择事务中隐含的选课模式和规律的具体思路。实践证明,通过序列模式挖掘得到的学员选课序列,可以作为指导学生学习过程和内容的有效参考,培训学校的管理者也可以根据选课序列针对特定的用户进行培训课程的营销。

参考文献:

[1] Agrawal R, Srikant R. Mining Sequential Patterns:Generalizations and Performance Improvments [C] // Proc, 5th Int, Conf, Extending Database Technology(EDBT), Avignon,France, March.1996:3-17.

[2] Pang-Ning Tan, SteinBach M, Kumar V. 数据挖掘导论[M].范明,范宏建,译.北京:人民邮电出版社,2007.

[3] 陈春颖,熊拥军. 基于序列模式挖掘的读者借阅行为分析[J]. 情报、信息与共享, 2011(4):92-96.

上一篇:改进PSO在软件缺陷预测模型中的研究 下一篇:基于.Net多层架构的学生素质教育课程管理系统...