前言:中文期刊网精心挑选了数据挖掘课程范文供你参考和学习,希望我们的参考范文能激发你的文章创作灵感,欢迎阅读。
数据挖掘课程范文1
关键词:数据挖掘;成绩分析;决策树算法
一、引言
成绩作为考试的结果,不仅是对学生学业和教师教学效果的检查和评定,进而激励学生学习及教师工作;更是一种信息,具有反馈于教学活动、服务于教学决策、为教育科研提供资料等作用。为充分发挥考试的效能,综合评价命题质量,及时反馈教学效果,沟通教学信息,教学部门对考试成绩进行统计分析和总结是非常必要的。
二、问题提出
我们以软件技术系软件开发专业为例进行分析。在众多专业课程中,很多科目之间是相互联系相互影响的,例如《Java初级程序设计》是《Java高级程序设计》的前置课程,《J2EE企业级应用开发》则是《Java高级程序设计》的后续课程,《网页制作―HTML、CSS》的学习效果将会影响《网页制作―JavaScript》,而这些课程之间又是相互渗透相互联系的。有时候有的教师在上一门课时会抱怨这个班的基础不好,后续课程很难上,那么究竟是什么哪些前置课程对后续课程造成了影响呢?这里我们以软件开发专业核心课程《J2EE企业级应用开发》为例,分析研究影响这门课成绩的前置课程对其的影响。
三、数据预处理
07级软件开发专业一共9个班,前4个学期一共开设23门课程,在教学管理的数据库中保存着大量属性繁多,定义复杂,冗余多,不完整的数据。我们首先要从大量的数据中筛选出适合分析的数据。
在课程的选择中,我们选取《计算机基础》、《计算机网络基础》、《计算机数学基础》、《Java程序设计基础》、《数据结构》、《数据库原理与SQL Server》、《Java高级程序设计》、《网页制作技术》以及《J2EE企业级应用开发》这几门有关联的课程进行分析。并且在分析之前把《计算机基础》、《计算机网络基础》、《计算机数学基础》这3门基础课取平均值合并成一个《计算机基础》。
这是在软件技术专业9个班400多人中随机抽样选取91个学生的记录作为样本集。
表1 采样成绩表
经统计,91个学生记录中,各门课程及格和不及格人数如表5.2所示。
表2 样本集中各门课及格不及格人数统计
四、建立模型
1. 决策树方法介绍
决策树是一个类似流程图的树型结构,其中树的每个内部结点代表对一个属性(取值)的测试,其分支就代表了测试的每个结果;而树的每个叶结点就代表一个类别,可以根据决策树的结构对数据集中的属性值进行测试,从决策树的根结点到叶结点的一条路径就形成了对相应对象的类别预测。
2. ID3算法的基本思想及原理
ID3算法是R.Quinlan于1986年提出的,其前身是CLS。CLS的工作过程为:首先找出最有判别力的因素,把数据分成多个子集,每个子集又选择最有判别力的因素进行划分,一直进行到所有子集仅包含同一类型的数据为止,最后得到一棵决策树,可以用它来对新的样例进行分类。
3. 构建决策树
成绩结果分为正例和反例两类:及格(P)和不及格(N)。
下面用ID3算法,建立决策树,对课程成绩分类。
具体计算过程如下:
首先计算J2EE课程所含有的信息量。J2EE及格人数P=81,不及格人数N=10,则可得到:
0.4493
然后计算当J2EE及格和不及格时,其他课程所包含的总信息量。经统计,其他6门课程和J2EE有如表3所示的统计数据:
计算机基础:
0.4421
从而得到计算机基础的信息增益度为:
Gain(计算机基础)=0.4493-0.4421=0.0072
同样的方式,得到其他课程的信息增益度,结果如表4所示:
表4 各门课程的信息增益度
可以看出所有课程当中JAVA高级程序设计是最能区别训练集中决定J2EE成绩与否的课程。根据各个课程的信息增益度,应该选择JAVA高级程序设计作为所建决策树的根结点。由于JAVA高级的属性值只有两个:1(及格)和0(不及格),所以在JAVA高级下可以建立两个分支。此时,将训练实例集分为二个子集,生成包含二个叶结点的决策树。如图1所示。
图1 根节点分类决策树
经统计,JAVA高级程序设计及格且J2EE也及格的人数为73,其准确率为73/79=92.4%。因此对JAVA高级程序设计及格这个分支(结点一)停止分割。经统计,JAVA高级程序设计不及格的12人中有5人J2EE及格,7人J2EE不及格,所以对高级程序设计不及格这个分支(结点二)进行再次分割。
对图1中的叶结点二进行分类。经过计算,此刻正例为4,反例为8,所以此时的熵值为:
0.9799
采用上面同样的方法计算各门课程的信息熵,得到
计算机基础:
0.9799
得到Gain(计算机基础)= 0.9799-0.9799=0.0000
同理,得到:
Gain(JAVA基础)= 0.9799-0.9371=0.0482
Gain(数据结构)= 0.9799-0.8669=0.1130
Gain(数据库)= 0.9799-0.9799=0.0000
Gain(网页设计)= 0.9799-0.9371=0.0482
选择数据结构为分裂点,将结点二分为两个子集。JAVA高级不及格且数据结构及格的人数为1人,该结点停止分割,JAVA高级不及格且数据结构不及格的11人中有4人J2EE及格,7人不及格,因此对该节点需要再次分割。
采用上述同样的方式划分,最后得到如图2所示的最终决策树。
图2最终决策树
五、结果分析
分析图2所示的决策树,我们可以得到:对于软件专业后期的核心课程《J2EE企业级应用开发》来说,《Java高级程序设计》的学习程度直接影响其学习效果,《数据结构》和《JAVA初级程序设计》也会对《J2EE企业级应用开发》的成绩带来影响,如果学生《JAVA高级程序设计》学习一般但是《数据结构》和《JAVA初级程序设计》基础较好的话,依然能够在学习《J2EE企业级应用开发》时取得好的成绩。这比较符合专业课程学习过程的实际情况。决策树得出的结果反映了实际情况,这也充分说明了数据挖掘是一个强有力的辅助决策工具。
六、结束语
回顾一下这个案例,验证数据挖掘技术解决这个问题的效果。在分析过程中,我们利用相关的数据,通过横向比较《计算机基础》、《Java程序设计基础》、《数据结构》、《数据库原理与SQL Server》、《Java高级程序设计》、《网页制作技术》以及《J2EE企业级应用开发》等课程成绩,经过数据收集、数据选择、数据清理、数据归纳、数据转换等过程,运用决策树中的ID3算法课程之间知识结构相互支撑的模型,发现专业核心课程之间的内在联系。辅助教学管理人员根据该模型对现有教学计划做出调整,对师资资源合理利用,将优质师资用在主干课程上。
参考文献:
1.李小映,数据挖掘在高职院校学校综合信息中的应用,计算技术与自动化,2006.12
2.陈松、卢继萍,教学管理系统中的数据挖掘技术的应用研究,中国教育技术装备,2007.12
3.李雪真、陈燕国 ,基于数据挖掘的高校课程设置评价方法,科技资讯,2008.8
数据挖掘课程范文2
课程相关性分析数据挖掘相关分析典型相关分析关联规则一、引言
课程是实现教学内容传递的集中体现,是学校教育的目的性、计划性和组织性的集中体现。课程设置规定着课程类型、课程性质、课程排序和学时分配,还规定各类各科课程的学习目标、学习内容和学习要求等,其合理与否将直接影响到所培养人才的质量,关系到学生知识面的宽度、深度、动手实践和研究能力的高低,同时也已经成为了影响大学生就业的主要因素之一。因此,课程结构和课程内容的合理设置尤为重要。
课程相关性分析可定量描述课程之间的相关性,可根据相关系数值的大小确定课程间关系的紧密程度,然后从顺序性、整体性、关联性和连续性四个方面为优化课程设置提供参考信息,优化课程结构和课程内容。近年来,国内外教育工作研究人员开展了大量的课程相关性方面的研究,国内外多所著名高校已将课程相关性研究成果作为课程设置的基本依据。
目前课程相关性分析研究所采用的方法均基于数据分析,其方法主要包括传统数据分析法和数据挖掘分析法两种,而两者又有着本质的区别。在探索数据关系时,传统的分析方法一般是基于验证的方法,即用户首先对数据之间的关系做出一定的假设,然后通过数据分析来验证假设是否正确来得出相应结论,其分析过程是基于假设驱动的演绎型分析;数据挖掘不是用于验证某个假定的模式(模型)的正确性,而是在数据库中自己寻找模型,数据挖掘在本质上是一个完全基于发现驱动的归纳型分析过程。
本文对课程相关性分析中的数据挖掘过程及基于数据挖掘技术的课程相关分析方法进行介绍,以期为我国高校课程的优化设置研究提供理论指导和方法借鉴。
二、数据挖掘技术
数据挖掘(Data Mining,DM)又称数据库中的知识发现,是从大量的、不完全的、有噪声的、模糊的、随机的实际应用数据中,通过使用成熟的数据挖掘模型,提取出隐含在其中的、人们事先不知道的、但又是潜在有用的信息和知识,得到数据中反映出来的数据内在的关系,从而进一步应用到具体的数据分析研究中去。数据挖掘得到的信息具有先前未知、有效和实用三个特征。
目前,数据挖掘技术的已被应用于关联分析(Association Analysis)、概念/类别描述(Concept/Class Description)、分类与估值(Classification and Estimation)、聚类分析(Clustering Analysis)、时间序列分析(Time-Series Analysis)、偏差分析(Deviation Analysis)、孤立点分析(Outlier Analysis)等方面,随着数据挖掘技术的发展,可能还会继续出现新的数据挖掘功能。课程相关性分析为其关联分析功能中的一部分,所采用的分析方法主要有相关分析法、典型相关分析法和关联规则分析法等。
数据挖掘分析过程各步骤之间互相影响、反复调整,形成一种螺旋式上升过程,具体分析流程见图1所示。目前已建立的数据挖掘模型有CRISP-DM模型(Cross Industry Standard Process for Data Mining)、ODDM模型(OLE DB for Data Mining)、Oracle9i数据挖掘模型等多种,对于课程相关性分析来说,具有直观、简单和可靠等特点的CRISP-DM模型最为适用,其模型见图2所示。
三、基于数据挖掘的课程相关性分析方法
基于数据挖掘的课程相关性分析方法主要有相关分析法、典型相关分析法和关联规则分析法,三种方法各具优缺点,互不可取代。
1.相关分析法
相关分析法又称单因子相关分析法,主要用于研究两个变量因子间的相关关系。作为教育信息多元统计分析方法的一种,相关分析法主要用于测定现象之间相关关系的规律性,据此进行预测和控制。将其用于课程相关性的探讨研究,可直接量化两门课程间的相关性,分析过程简单、快捷,显示方式直观,数据可信度高。
相关分析法在课程相关性分析研究中应用,主要有以下几个步骤:
数据挖掘课程范文3
关键词:数据挖掘技术;应用型本科;理论教学;实验教学
中图分类号:G642 文献标识码:A 文章编号:1009-3044(2016)22-0148-02
1 引言
数据挖掘总是让人觉得就是“高大上”、“深不可测”,而该领域当前主要是博士生、硕士生所研究的,另外,也只在一些研究生或重点大学的高年级的本科生中开设数据挖掘课程,在应用型本科院校中很少开设 [1]。
数据挖掘技术应用很广,应用较好的领域、行业有:金融保险业、电信、市场营销分析、医学、体育、生物信息学(Bioinformatics)等方面[2]。在商业领域中,主要应用如:客户细分、客户获得、公司风险管理、企业危机管理、欺诈行为检测和异常模式的发现等;在计算机领域中,主要应用如:信息安全(入侵检测,垃圾邮件的过滤)、互联网信息挖掘、自动问答系统、网络游戏(网络游戏外挂检测、免费用户到付费用户的转化)等[3]。这一技术的广泛应用,必然在相关的企业中迫切需求掌握这一技术的人才。所以,开设数据挖掘技术课程对于应用型本科来说是很有必要的。
但对于应用型本科来说,若是像重点本科院校或研究生课程那样,在教学中以研究型为主,会导致学生的培养要求与教学内容的深度和广度不适应,学生会感觉到学习得很吃力,而且他们今后工作中的需求与所学到的知识相差也较大。对于应用型本科的数据挖掘技术课程的内容的安排,不仅要反映出数据挖掘技术的特点及前沿,还应该结合学生的学习能力及兴趣,也还需要综合考虑本校该课程的学时分配、教学条件等,要具针对性,突出应用这一重点,目的是使学生能够“学以致用”。
本文从应用型本科的实际出发,讨论了数据挖掘课程的理论教学内容及方法、实验教学内容及方法,使学生能够掌握和应用所学的知识。
2 先导课程及课程的基本要求
先导课程有:程序设计语言、数据结构、数据库技术、Web技术、概率论等[4]。必须深入学习一门程序设计语言,从计算机发展和应用角度,推荐学习C/C++和Java;对于“数据结构”课程,掌握树的知识,数据挖掘中的很多算法都涉及树的应用;对于“数据库技术”课程,掌握数据库操作和应用,因为数据挖掘的主要对象是数据库中的数据;对于“Web技术”,因为Web已经存在于我们生活方方面面,对于Web挖掘相当重要,而且还具有巨大的应用价值;对于“概率统计”课程,要能够熟练掌握其中的思维方式、条件概率以及各种分布,在数据挖掘中的关联规则、分类预测等,都会涉及概率统计中的思维和方法。
课程的基本要求:①了解数据挖掘的重要性,了解国内外的发展的状况及未来发展的方向;②掌握数据挖掘中的一些基本概念、经典算法及相关技术;③对于实际应用问题,能熟练地运用数据挖掘技术及工具解决;④为以后进一步深造或进行高级应用开发打下基础。[5,6]
3 理论教学及方法
对于应用型本科生数据挖掘技术课程的教学,本人认为重要的是普及经典算法,若有多余时间,可以补充一些较难的算法。对于经典算法原理的讲解,采取的是一步步地对小数据集案例进行算法演练,以具体化比较抽象的算法,对于算法的优缺点,采取课堂讨论的方式,可以加深学生对算法的理解和吸收。本校的数据挖掘技术课程的理论教学是32个学时,课程的理论教学内容主要包括:
(1)绪论(4学时):①先举几个数据挖掘中有意思的例子。第一个:超市货架的组织―“啤酒与尿布”;第二个:基于拐点变化的股票趋势预测;第三个:网上购物―“定向营销”;第四个:农夫山泉用大数据卖矿泉水;第五个:阿迪达斯的“黄金罗盘”;第六个:网易的“花田”―定制爱情。通过例子让学生对数据挖掘有一个大致的认识,可以提起学生对学习本课程的兴趣,也让学生了解到目前的数据挖掘已经发展到何种程度。②讲解KDD与数据挖掘相关概念。③数据挖掘对象:关系数据库、数据仓库、事务数据库、空间数据库、时态和时间序列数据库、文本数据、万维网数据、流数据等等。④数据挖掘的方法与相关领域:分类预测型和描述型,通过例子简单介绍聚类、关联规则、分类算法的概念、应用领域等,使学生对要学习的算法有大致的认识。⑤数据挖掘软件与应用系统:介绍数据挖掘软件:IBM Intelligent Miner、SPSS Clementine、Microsoft SQL Server 2008 Data Mining、Weka;数据挖掘应用系统:介绍在商业领域和计算机领域的应用。
(2)数据预处理(2学时):先对数据进行概述,包括:数据集的三个特性:维度、稀疏性和分辨率,它们对数据挖掘技术具有重要影响;数据挖掘中一些很常见的数据集的类型:记录数据、基于图形的数据和有序的数据。然后分别详细介绍数据预处理的主要任务:①数据清理;②数据集成;③数据变换;④数据归约;⑤数据概念分层与离散化。每一项任务举例讲解。
(3)关联规则(6学时):主要介绍关联规则的相关概念、关联规则的经典算法Apriori及它的改进算法FP_Tree、规则的产生,简单介绍多级关联规则和多维关联规则、非二元属性的关联规则、关联规则的评估(提升度(lift) /兴趣因子的计算)等。
(4)聚类(6学时):主要介绍聚类的概念及距离的计算(欧氏距离、曼哈顿距离、明可夫斯基距离)、基于划分的聚类算法(基本K-means聚类算法及其拓展、PAM算法)、层次聚类算法(凝聚的层次聚类算法AGNES、分裂的层次聚类算法DIANA)、基于密度的聚类算法(DBSCAN);简单介绍层次聚类方法的改进―BIRCH算法、CURE算法以及聚类算法评价。
(5)分类和预测(10学时):①决策树(4学时):主要讲解决策树的概念、信息论、ID3算法和C4.5算法。②贝叶斯分类(2学时):主要讲解贝叶斯定理及朴素贝叶斯分类算法。③人工神经网络(4学时):主要介绍人工神经网络的概念及单感知器模型,简单介绍BP神经网络。
(6)数据挖掘模型的评估(2学时):简单介绍模型的过拟合、没有天生优越的分类器、模型选择和模型评估、评估分类器或预测器的准确率――简单划分和交叉验证、数据挖掘模型评估的错误观念。
对于9个需主要介绍的经典算法的讲解,如Apriori算法,先介绍算法的流程,然后通过超市购物篮的一个小数据集一步步地进行算法的演练,得出频繁项集,如下图所示:
又如决策树算法和朴素贝叶斯分类算法,通过如下所示的关于动物的数据集,一步步地进行相关算法的演练,通过建立决策树或计算概率问题,判断一个未知的动物X={1,0,0,1,?}是否会生蛋。
对于算法的优缺点,在讲解完算法的过程之后,采取课堂讨论的方式,与学生共同分析总结算法好在哪里,不足又在哪里,学生通过参与,可以加深对算法的理解与掌握。
4 实验教学及方法
对于应用型本科的学生来说,采用Weka进行算法编写是不切实际的,实验教学工具建议采用目前一些主流的数据挖掘软件,如 SPSS Clementine或 Microsoft SQL Server 2008 Data Mining等[7]。这些软件都具有必需的数据预处理工具及预设的挖掘算法,学生可以把注意力放在要挖掘的数据及要相关需求上,设定挖掘的主题,然后采用这些软件完成相关主题的数据挖掘过程,这样也可以积累一定的处理实际挖掘问题的实战经验,今后碰到项目时也可知道从何处下手。
本校的数据挖掘技术课程的实验教学是8个学时,共两次上机,采用Microsoft SQL Server 2008 Data Mining对Adventure Works DW 2008R2 示例数据库进行数据挖掘。课程的实验教学内容主要包括:
实验一:SQL Server 2008 数据多维分析环境的建立;
实验二:关联规则挖掘方法;
实验三:决策树挖掘方法;
实验四:聚类挖掘方法。
为了让学生更好地进行实践动手,在教学中分两步:第一步,具体的操作步骤的讲解,由老师进行;第二步,学生上机并详细的分析挖掘结果,要求学生熟悉使用Microsoft SQL Server 2008进行数据挖掘的步骤,以及几种常用的算法的挖掘过程:包括创建数据源、创建数据源视图、创建挖掘结构(主要参数的设置)、处理和浏览挖掘模型。如关联规则,要求学生分析挖掘的模型,找出有价值的规则出来。
5 结论
为迎接大数据时代带来的互联网经济机遇,很有必要同时也是时代迫使在应用型本科中开设数据挖掘课程。对这一类学校的教学也是一个挑战,需要老师们在教学过程中不断摸索和改进。在教学过程中,需要针对应用型本科生的学习能力、知识结构,设计好教学内容并采用适当的教学方法,从而使学生对学习的内容感兴趣,改进课堂教学效果,以提高学生实际动手能力,使学生对数据挖掘课程的整体结构、基本概念、经典算法有较深入理解和掌握,最终达到教学目的。
参考文献:
[1] 徐金宝.对应用型本科生开设数据挖掘课程的尝试[J].计算机教育,2007(14):27-29,57.
[2] 李姗姗,李忠. 就业需求驱动下的本科院校数据挖掘课程内容体系探讨[J].计算机时代,2015(1):60-61,64.
[3] 张艳.大数据背景下的数据挖掘课程教学新思考[J].计算机时代,2014(4):59-61.
[4] 李忠,李姗姗. 应用型本科院校IT专业数据挖掘课程建设[J].计算机时代,2014(11):65-69.
[5] 张增平,乔晓华. 针对应用型本科生数据挖掘课程的教学实践[J].内蒙古财经大学学报,2015,13(4):132-137.
数据挖掘课程范文4
Abstract: By using classification and regression, this article constructs an attribute which can express the trend of Customer Loyalty, and validates the practicability of this method by the customer relation data.
关键词: 数据挖掘;分类;回归;客户忠诚度
Key words: Data Mining;classification;regression;Customer Loyalty
中图分类号:F83 文献标识码:A 文章编号:1006-4311(2013)06-0140-04
0 引言
上世纪八十年代来,随着市场竞争的日趋激烈,企业在市场营销上面临着新的挑战,传统的4P理论越来越不适应市场发展变化的需求。如今的市场营销无论是理论还是实践都已经实现了向4C的转变。在4C营销理论中,首先强调的就是客户(Customer),它居于这一理论的核心地位。所以这种营销理论又被视为一种“以客户为中心”的营销战略。而这一营销战略的核心思想就是追求“客户忠诚”的目标。对于“客户忠诚”,至今还没有一个准确的定义,但是在一些理论阐述和实践应用中,这一概念被普遍理解为是某个企业的客户对该产品或服务有愿意继续购买的倾向。虽然这种解释并非正式的,但是从一些衡量客户忠诚度的指标上可以得到证实,比如客户对其所认可的产品进行长期、频繁、大量的购买,或者与企业建立某种长期的合作关系等。
随着市场营销实践的不断发展,客户的忠诚度以及变化趋势进行研究引起了业内的广泛关注。本文针对这一趋势,设计了一套客户忠诚度预测系统,通过数据挖掘技术的引入,对客户数据进行科学分析,帮助决策者做出正确决策。
1 系统功能简介
到目前为止,国内外已经有许多成熟的CRM产品,它们已广泛应用于零售业、制造业、金融业等,这些产品也用到了数据挖掘技术,如聚类分析算法或孤立点算法等。但是它们更多的是将目标放在对客户分类或找出最忠诚的或是最不忠诚的客户上,其功能受到了一定局限,无法对客户忠诚度的变化趋势进行可靠预测。例如,银行业中的客户忠诚度分析只是找出存款多的重点客户,或者是找出那些行为异常的有欺诈行为的客户。本文针对这一问题进行研究,结合实际应用,既构造出了能够反映趋势变化的属性,又把不能用于分类分析的连续属性离散化,然后再利用所构造出的属性和其他的相关属性,进行分类分析,最终得到客户忠诚度的变化趋势。该系统的主要功能如下:
1.1 数据预处理 能够对已有数据集中的数据进行缺值填充、数据转换、数据离散化、数据规范化等功能。
1.2 发掘重点客户 忠诚度高的客户和忠诚度低的客户都属于重点客户的范畴。而客户关系管理理论中的2/8原则告诉我们:80%利润来自20%客户,因此不仅要紧紧抓住老客户、继续保持老客户的忠诚度,而且还要积极促成那些非忠诚客户转变为忠诚客户。为了达到这一目的,该系统通过利用数据挖掘中的孤立点分析技术,使得这些客户可以从庞大的数据集中被有效识别出来。
1.3 客户忠诚程度预测 从客户关系数据库中提取相关客户信息,在充分考虑到各种主客观因素的前提下,采用回归分析和分类分析等方法预测客户忠诚度变化的趋势,为决策者提供市场分析参考,以便于采取有针对性的措施,留住更多的客户。
统机构如图1。
2 客户忠诚度预测模块的实现
该模块的主要作用是通过分析研究客户关系数据集中客户信息,实现对客户忠诚度变化趋势的预测。在技术运用上,主要采用了数据挖掘中的分类和回归技术。在分类预测算法的运用中,需要通过训练集建立分类模型,然后用该模型进行预测并得出结果。
下面我们以某一客户关系数据来详细介绍客户忠诚度预测模块的实现过程。
我们从客户编码表、客户订单提报表、订单商流确认表和订单销售发票表等与客户有关的资料中,选取了两项——客户编码表和客户订单提报表作为分析的数据源。这两项数据资料不仅反映了客户的相关信息,而且也反映出了客户的购买意图,对于客户忠诚度的分析有很大作用。下面将从数据预处理和客户忠诚度预测等方面对上述两项数据资料进行分析。
2.1 数据的选取 客户订单提报表内容包括:订单号、订单类型、工贸、客户编码、存货类型、产品编码、会计期、会计周、市场经理编码、型号经理编码、提报数量、订货数量、减库存数量、提报日期、要货日期、状态、唯一标识、产地、类别、单价等20个属性。为了从中得出有效的客户信息,需要通过查询每位客户的所有订单,计算得出其订货次数、订货金额的数据信息。
订货次数(order count):指在某一时间段内,客户所下订单的数目。考虑到订货次数在10次以下的客户以一次性客户居多,针对这一群体讨论客户忠诚的意义不大,因此我们在这里只将订货次数大于等于10次的客户纳入到研究范围中来。
订货金额(order product count):指在某一时间段内客户每一次订货的金额,其计算方式为:订货数量×单价。
客户编码表内容包含:Email,客户编码,传真,地址,电话,客户级别,简称,建档日期,开户行,客户类别,客户全称,客户状态,联系部门,联系人,市场级别,税号,所属客户,所属区域,网址,信用额度,信用期限,信用商场,邮编,账号,主管业务员,特殊标识,网点性质,审核,部门编码,销售能力等30个属性。
从客户编码表中,我们可以得出客户建档日期的信息。建档时间(make date)可以告诉我们客户与企业的合作时间,通过对这一数据进行分析,我们可以得出某一客户的忠诚度信息。让Datediff(date1,date2)表示date1与date2之间的天数,建档时间可表示为:
Datediff(min(make date),max(make date))
接下来就可以得到订货周期的信息,并对其进行规范化处理。计算方式为:订货周期=建档时间÷订货次数。
除此之外,在客户编码表中,我们还可以得到客户编码,客户级别,市场级别,信用额度,销售能力等信息。
客户级别:通过聚类分析模块或有经验业务员的划分,我们可以判断客户的级别,即对方是大客户还是小客户。
市场级别:调研人员对客户所在地区进行市场调查所得出的该地区商品的饱和度。
信用额度:代表客户的信誉度。
销售能力:客户每个月的销售金额。
2.2 数据的处理 选定属性后,按照具体分类分析的规则进行数据处理。基于预测客户忠诚度的功能要求,因此需要参照现有属性来构造一个新的属性,以期将客户购买能力变化趋势客观的反映出来。基于上述原因,设计人员还需要全面分析订货金额等信息。笔者取一个客户的购买情况作为典型案例,来具体阐明客户购买能力变化趋势属性的构造,经过数次循环也能够获取其余客户的购买能力的属性。
在选定的属性分析案例中,基于客户级别、销售能力和市场级别对客户订货金额的影响,所以采用三元线性回归建立模型:yi=?茁0+?茁1xi1+?茁2xi2+?茁3xi3,i=1,2,…,n。 (1)
其中:yi代表客户每一次的订货金额,
xi1,xi2,xi3分别代表客户每一次订货时的当时的售货能力、市场级别和客户级别。
?茁0、?茁1、?茁2、?茁3为回归系数。
n为客户的订货次数。
为了求得回归系数?茁0、?茁1、?茁2、?茁3,我们建立以下方程组
l11?茁1+l12?茁2+l13?茁3=l1yl21?茁1+l22?茁2+l23?茁3=l2yl31?茁1+l32?茁2+l33?茁3=l3y(2)
首先求出各个因子的均值:
■■=■∑xi1,■2=■∑xi2,■3=■∑xi3,■=■∑yi
然后求出各乘积和∑xiuxiv,∑xiuyi,∑y■■之值,并由此进一步求出各luv,luy,lyy:
l11=∑x■■-n■■■,l22=∑x■■-n■■■,l33=∑x■■-n■■■
l21=l12=∑xi1xi2-n■■■■,
l31=l13=∑xi1xi3-n■■■■,
l32=l23=∑xi2xi3-n■■■■,
l1y=∑xi1yi-n■■■,l2y=∑xi2yi-n■■■,l3y=∑xi3yi-n■3■
lyy=∑y■■-n■■,
代入(2),然后解方程组得:?茁1、?茁2、?茁3。
再由?茁0=■-?茁1■1-?茁2■2-?茁3■3求得?茁0。
把回归系数?茁0、?茁1、?茁2、?茁3代入(1)得出回归方程。再合理套用回归方程来分析某一客户数据,就可以分析出该客户购买能力的变化趋势。按照惯例,客户购买能力具体表现为增、减、无变化三种变化趋势,据此便能够得出反映客户购买能力变化趋势的属性。图2为通过回归分析得到的一个客户的购买能力变化趋势。
上图2反映了某一客户25个月以内购买能力的变化趋势。图中,“客户实际购买能力(即订货金额)”为蓝色曲线,客户的购买能力变化趋势为红色曲线。通过该图表的分析得知,该客户的购买能力变化趋势属性呈增加趋势,基于此,我们构造了该客户购买能力的变化趋势属性,再将属性分析循环套用到所有客户数据中,绘制出一个变化趋势图,由此得到一个反映每个客户购买能力的变化趋势(详见图3)。
图3中,第二列就是构造出的客户购买能力变化趋势属性。其中,0表示趋势是不变的,1表示趋势是增加的,2表示减少。
2.3 训练集的选取 首先预测客户类别,找出与预测模型相符的训练数据,我们可以按照下列方法来选定合适的训练集:①根据试验数据选定相应类别的训练集。可以从客户数据库内选定一部分数据进行试验,将产品资料发送给这些客户,并将做出回应的客户名单收集起来,基于推销回应记录建立一个模型,客观反映出对所推销产品感兴趣的客户类型,再以该模型数据为依据对所有客户类型进行分析;②若无法通过试验确定数据类别,则先通过数据聚类,并对数据进行人工筛选最终确定合适的训练集。我们无法通过试验来判定客户忠诚度,唯一的办法就是借助人力来分析判定,因此,先采用客户忠诚度分析系统的聚类分析,再选定所聚簇中的数据组成训练集。
所谓聚类分析,实际是前期设计组建的模型。训练集为客户数据中的5000条记录,我们通过聚类分析得出以下结论:第一个簇中数据对象为3101个,这是数据集中包含最多的模式,说明客户忠诚度未发生增减的变化;第二个簇的数据对象为50个,客户购买能力呈增加的变化趋势,而且大都在初期建档,订货周期也短,因此客户忠诚度较高;第三个簇的数据对象为1264个,该簇中的数据对象情况大致等同于第二个簇,客户购买能力呈增加趋势。与第二个簇相比,第三个簇的建档时间和订货周期都不及第二个簇,客户忠诚度增加的趋势不明显,但都属于客户忠诚度增加的范畴;第四个簇的数据对象为585个,客户购买能力变化呈递减的趋势,而且相比于第二个簇和第三个簇,它的数据对象的订货周期较长,大部分在后期建档,因此客户忠诚度呈显著下降的趋势。
2.4 客户忠诚度预测 预测客户忠诚度的技术是基于客户忠诚度分析系统中的预测分析功能,通过分类分析中CART分类器来预测客户忠诚度。
先将记录集作为一个根结点,按照杂度削减最大的设计要求把根节点分割成左节点和右节点两个部分,再参照上文所述的方法步骤进行递归处理,当节点变成纯洁点,或者当节点记录数低于额定值,抑或将所有属性分割完毕,才视为建树完毕。
输入:决策树根节点
输出:建立的决策树
算法:
建立根节点的ID链表和属性表,置所有属性为可用的
将root节点压入栈stack1中;
While (stack1不空)
while (stack1的栈顶节点不满足结束条件)
对stack1的栈顶节点进行分裂,并建立该节点的左子树并压入stack1;
同时将分裂信息压入stack2;
标记stack1的栈顶节点为叶结点,并将其从栈中弹出;
if (stack1和stack2不空)
将stack1和stack2的栈顶节点弹出;
利用从stack2中弹出的节点信息建立从stack1中弹出节点的右子树,同时压入stack1;
在噪音数据的干扰下,大部分由建树阶段生成的决策树都存在过度拟合的现象,也就是说这个决策树具有准确分类处理给定训练集的相关记录的能力,但是如果有新数据引入,就无法保证其数据处理的精准度,需要在建树完成以后作进一步修剪:
输入:决策树,代价矩阵和样本记录
输出:修剪后的决策树T1
算法:
while (修剪还可以进行)
将root节点压入栈中;
while (栈不空)
while (栈顶节点不为叶节点)
if (栈顶节点的代价与其左右子节点的代价相等)
调用freetreemem释放其左右子树所占的内存,并置为叶节点;
break;
else 将栈顶节点的左子树压入栈中
if (栈不空&&栈顶节点为叶节点) 将栈顶节点弹出;
if (栈不空) 将栈顶节点弹出并将其右子树压栈;
修剪时,应该将最小代价的节点(一般为多个)一次性剪去,将节点以数组t的形式存在于prune中。可能有一部分节点是另一部分节点的父节点,如果将父节点的子树一并剪掉,那么子节点的子树也会被剪掉。所以修剪前,我们应该仔细判定一个节点是不是另一个节点的父节点的函数IsAncestor,同时用flag数组来指明需要修剪掉的节点,flag[i]=1表明该节点为某节点的子节点,在剪枝时,只需剪掉flag[i]=0的节点。
运行结果如图4。
在图4中,“1”、“2”、“0”分别表示忠诚度增加、忠诚度减少和忠诚度不变三种变化趋势,在“忠诚度变化趋势”的数列中,“0”出现的次数较多,说明客户忠诚度比较稳定;出现“1”的变化趋势,说明客户忠诚度有所增加,这是基于未来发展潜力来说的;出现“2”的变化趋势说明客户忠诚度呈下降的趋势,其原因有两点,一是客户本身购买意向的转变,二是行业竞争激烈,可能客户选择了更为优惠的政策。
3 总结与展望
文章从客户忠诚度的概念入手,深入探究了客户忠诚度变化趋势及其重要意义,并对系统功能进行了详细的说明;同时,取某一客户忠诚度作为案例进行分析,对客户忠诚度分析数据的选定及处理进行了具体说明,以此来准确预测客户忠诚度的变化趋势。笔者通过聚类分析的方式将所调查的客户数据进行了归类分析,再由各类数据中选定数据对象组成训练集,以此来证明客户忠诚度分析系统的实用性。
目前,客户忠诚度分析系统的某些功能还有待完善:①采用回归分析构造客户购买能力变化趋势时,只能够使用线性回归,而对于有些成非线性趋势的属性还不能处理,如对数回归等;②客户忠诚度分析数据的选取问题。针对不同的客户数据,辨明客户关系数据。客户忠诚度分析数据的选定及处理的方法流程对最终客户忠诚度分析结果至关重要,目前这方面的技术研究尚待完善。
参考文献:
[1]魏宗舒等,概率论与数理统计,高等教育出版社,1983.
数据挖掘课程范文5
关键词:数据挖掘; 延期毕业
中图分类号:TP311.13 文献标识码:A 文章编号:1006-3315(2012)04-135-001
一、数据挖掘技术
数据挖掘就是从海量的、不完全的、有噪声的、模糊的、随机的数据中,提取隐藏在其中人们事先不知道的但又有潜在有用的信息和知识的过程。数据挖掘技术要完成不仅是面向一般数据库的简单查询工作,而且要对这些数据进行统计、分析、综合和推理,得到有用的信息,以指导实际问题的求解.发现事件间的相互关联。甚至利用已有的数据对未来的活动进行预测。数据挖掘是一门交叉学科,涉及数据库、数理统计、人工智能、可视化、并行计算等方面的技术。数据挖掘技术从产生以来,已经被应用于多种领域,并得到了充分的验证,显示了其重要的经济价值,同时在应用过程中得到不断的完善和进步。
二、数据挖掘在电大学员数据中的应用
1.数据仓库的建立
1.1数据仓库主题的分析。建立数据仓库和进行数据预处理是进行数据挖掘的数据准备.它的任务是为数据挖掘提供合适的数据。经过分析,我们可以发现要学员延期毕业有以下几个方面原因:专业的因素;课程的因素;考试的因素。数据仓库所要实现的系统功能包括:数据仓库可以帮助制定招生策略:还可以对学员平时的学习提供一些有效的建议,提高毕业率。
1.2数据仓库模型设计。对“学员延期毕业”主题进行模式划分。采用星型架构设计出下面的事实表和各维表:
1.2.1事实表设计:事实表名称、学员成绩事实表
索引字段:学号、课程代码、班代码、专业代码、学年学期号
度量值:成绩、学分
1.2.2维度表设计:
1.2.2.1学员维度表名称:学员信息
学员维度表结构:学号、姓名、班代码、单位代码、性别、年级、身份证号、籍贯、学籍状态、专业代码、职业
1.2.2.2班级维度表名称:班级信息
班级维度表结构:班代码、班级名称、专业代码、毕业学分、补专学分、年限、必修学分、限选学分、选修学分
1.2.2.3专业维度表名称:专业信息
专业维度表结构:专业代码、专业名称、本专科
1.2.2.4课程维度表名称:课程信息
课程维度表结构:课程代码、课程名称、学分、学时、开设学期、性质
1.2.2.5时间维度设计:时问维度表名称、学年学期时间维度表结构:学年学期号、学年、学期
1.2.2.6考试考勤维度设计:考试考勤维度表名称、考勤信息
考勤维度表结构:学号、课程代码、考勤时间、考勤结果
2.系统的实现
首先,将源数据(学员、班级、专业、课程等相关数据)经过抽取、转换、加载存储到SQL Server数据库中,SQL Server的DTS工具可以完成大部分数据的转换和清理工作,这样不同源数据就可以统一有序地存储在服务器端的SQL Server数据库中,为数据挖掘做好数据准备。其次,利用某种高级语言实现数据挖掘算法,编制相应的外挂数据挖掘模块。最后与服务器上的数据库进行数据交互。在这种利用外挂模块实现数据挖掘的方案中,不同的数据库的访问技术有所不同,微软公司主要的数据访问方法是ADO,它是一个简单的对象模型,在应用程序中使用该模型可以方便地与SQL Server数据库进行数据交互。
3.数据挖掘试验结果分析
本文随机选取了20名学员的数据作为样本数据,对数据进行离散化等一系列处理以后得到最终决策树。
从决策树中,可以方便地得出以下规则以供决策参考:
3.1若课程不及格比例
3.2若考勤为差则会延期毕业;
3.3若课程不及格比例>50%且考勤为一般且年龄在20~30的公司职员则不会延期毕业。
3.4若课程不及格比例≥50%且考勤为一般且年龄在30~40的干部,则会延期。
从上述规则中,可以很直接地看到在延期毕业这个问题上考试考勤是一个非常值得关注的原因,一般考试不能正常来的学员都会延期毕业;平时考勤好且课程不及格比例小于50%的,一般都会如期毕业;而课程不及格超过50%的学员,虽然考勤为良,但是由于年龄和工作的关系,也会延期。
三、结束语
把数据仓库和数据挖掘技术应用于电大开放教育,通过需求分析确立主题,利用电大开放教育数据库中已有的数据进行整合建立电大开放教育数据仓库,并利用粗糙集挖掘出一定的规则,生成对开放教育有效的决策规则,并对规则进行分析,最后利用一组随机数据验证了决策规则的有效性。
参考文献:
数据挖掘课程范文6
关键词:数据挖掘;关联规则;教务管理
中图分类号:TP311文献标识码:A文章编号:1009-3044(2009)33-9452-02
随着信息技术、计算机技术和数据库技术的飞速发展以及高等教育的大众化,很多高等院校的教学和管理工作中都产生和积累了大量的数据。但是由于缺乏信息意识和技术,对于数据的处理还只是简单的备份、查询与统计,并没有对于大量的数据进行深入的分析,加以捕捉有利于教学工作的信息,从而导致隐藏在这些数据中的信息未能得到有效的利用。因此如何快速而准确地从浩瀚的数据仓库中提取出所需要的信息,就需要一种新的数据分析技术加以处理,而数据挖掘技术正是解决这个问题的可行而有效的方法。利用数据挖掘技术,针对已有的海量的教务信息进行有效的知识发现,是提高学校竞争力,帮助管理者进行决策的一种有效的方法。
1 数据挖掘技术概述
1.1 数据挖掘的概念
数据挖掘(Data Mining,简称DM)就是从大量的、不完全的、有噪声的、模糊的、随即的数据中,提取隐含在其中的、人们事先不知道的、但又有潜在的有用信息和知识的过程,是数据库中知识发现(Knowledge Discovery in Databases,简称KDD)的核心。数据挖掘是一个基于多学科的交叉研究领域,它融合了数据库技术、人工智能、机器学习、统计学、知识工程、面向对象方法等最新技术的研究成果。通过该技术,使信息系统的功能得到了最大程度的利用。
1.2 数据挖掘的对象
根据信息存储格式,数据挖掘的对象有关系数据库、面向对象数据库、数据仓库、文本数据源、多媒体数据库、空间数据库、时态数据库、异质数据库以及Internet等。
1.3 数据挖掘的常用方法
数据挖掘常用方法主要包括关联分析、分类、预测、时序模式和偏差分析等
1) 关联分析:关联规则挖掘是由Rakesh Apwal等人首先提出的。两个或两个以上变量的取值之间存在某种规律性,就称为关联。数据关联是数据库中一类重要的、可被发现的知识。关联分为简单关联、时序关联和因果关联。
2) 聚类分析: 聚类是把数据按照相似性归纳成若干类别,同一类中的数据彼此相似,不同类中的数据相异。
3) 分类:分类就是找出一个类别的概念描述,它代表了这类数据的整体信息,即该类的内涵描述,并用这种描述来构造模型,一般用规则或决策树模式表示。
4) 预测:预测是利用历史数据找出变化规律,建立模型,并由此模型对未来数据的种类及特征进行预测。
5) 时序模式:时序模式是指通过时间序列搜索出重复发生概率较高的模式。它是用己知的数据预测未来的值,但这些数据的区别是变量所处时间的不同。
6) 偏差分析:在偏差中包括很多有用的知识,偏差分析的基本方法就是寻找观察结果与参照之间的差别,从而得到数据库中数据存在的异常情况。
2.4 数据挖掘的过程
1) 确定挖掘对象:定义出问题,确定数据挖掘的目的。2) 数据准备:①选择数据:在大型数据库和数据仓库中提取数据挖掘的目标数据集;②数据预处理:进行数据再加工,包括检查数据的完整性及数据的一致性、去噪声,填补丢失的域,删除无效数据等。3) 数据挖掘:根据数据功能的类型和数据的特点选择相应的算法,在预处理过的数据集上进行数据挖掘。4) 结果分析:对数据挖掘的结果进行解释和评价,转换成为能够最终被用户理解的知识。5) 知识的运用:将分析所得到的知识应用于业务信息系统的组织结构中去。
3 数据挖掘在高校教务管理中的应用
3.1 课堂教学评价
评价教师的教学质量,往往会从多方面的因素考虑,其中最主要的是从学生的角度出发对教师的课堂教学质量给予评价。课堂教学评价是学校教学管理重要的组成部分,是评价教学工作成绩的主要手段。对教学起着激励、改进、鉴定和研究作用。课堂教学的主要要素是教师、学生和教学信息,教师和学生通过教学信息发生相互作用。现在绝大部分学校每学期都要搞课堂教学评价调查,积累了大量的教学信息数据。而目前对教学的评价主要基于数值计算,将学生的评价简单的归纳总结后,将结果通报给任课教师,并不做深入的思考。利用数据挖掘技术,从教学评价数据中进行数据挖掘,将关联规则应用与课堂教学评价系统中,探讨教学效果的好坏与教师的教龄、职称、学历、教学对象、教师整体素质以及教学方法之间的联系。合理配备每个班级的上课教师,使学生能够较好的保持良好的学习态度,从而为教学部门提供了决策支持信息,促使更好地开展教学工作,提高教学质量。
3.2 合理选课
为适应社会发展我国高校的教育体制都进行了改革,高校教育体制的改革使学分制在各高校相继出现,在学分制下学生不仅可以自主制定自己的学习计划,还可以根据自己的实际情况随时来调整学习计划,同时还可以通过选课来完善自己的知识。因此选课便成为高校运行体制的核心之一。选课对于高年级的学生来说可能具有一定的针对性,但对于低年级的学生来说他们刚刚跨入大学的校门,对于一些专业不是很了解,如果在刚开始就让他们制定自己的学习计划,并选择适合自己的专业课程,势必会造成一定的盲目性,因此教务部门应该在选课之前制定出有效的指导学生选课的方针对学生进行选课指导,使学生选课的盲目性降到最低限度,而数据挖掘中的关联规则就是寻找指导方针的有效方法。通过使用数据挖掘技术从学年制教学体制下积累的大量数据中发现潜在的知识与规律,可以有效的指导学生选课减少学生在选课中的盲目性。
3.3 课程设置
课程设置,通常是指各年级各类学校或其他机构关于课程安排的方案,包括要开设那些课程,在哪一学期可设以及开设相关课程的先后次序等。在学校学生课程安排是循序渐进的,而且课程之间有一定的关联与前后顺序关系,在学习某一门课程之前必须先修一些课程作为它的基础,如果先开设的课程没有学好,势必会影响后续课程的学习。随着教学规模的不断扩大,教务管理人员及任课教师很难再像以前那样直接根据学生的成绩数据分布找出诸如前期课程与后继课程的关系,并据此进行教学进程的决策。在这种情况下,我们利用数据挖掘技术,挖掘教务管理系统中积累的有用信息,可以使学校的相关院系调节相关课程的设置,调整热门课程和冷门课程的人数,通过选课率及相关信息鼓励和引导学生选择互补的课程,这样可以提高学生的整体素质,也有利于教学资源的合理分配,为决策提供必要和准确的理论支持。
3.4 教师教学方法评价
在教学过程中,教师可以采用多种方法来完成自己的教学任务,例如讲授法、讨论法、计算机辅助教学法、参观法、调查法、实习法等。在通常的情况下,一般可以采用一种或几种方法进行。因此可以用数据挖掘的方法来挖掘数据库中的数据,判定下一步应采用什么样的教学方法,以满足教学的需要,更有利于学生对知识的吸收。从每个学生对教学方法的评价以及不同的教学方法得出的教学成绩来进行分析,运用回归线性分析、关联规则的方法判定此种教学方法适合哪一类学生或哪几门课程,使得分层次教学能够得到更进一步的实施。
3.5 试卷分析评价
考试是检验教与学效果的一种手段,而学生成绩的高低与许多因素有关,其中试卷质量与学生成绩有着最为密切的关系。例如试卷的难易度p知识覆盖面p试卷考查形式的合理分配等。将关联规则应用于试卷分析数据库中,根据得分情况分析出每道题的难易度p区分度p相关度等指标,教师根据所得的几种指标就能够对试卷的质量做出比较准确的评价,进而可以用来检查自己的教学情况及学生的掌握情况为今后的教学提供指导。
4 结束语
数据挖掘是深层次的数据信息分析,可以帮助决策者寻找规律,发现被忽略的要素,预测趋势,进行决策。数据挖掘技术被广泛的应用于市场营销、医药业、电信业、金融业、互联网等方面。将数据挖掘技术引入到教育领域中,挖掘出高校教务管理系统海量数据中潜在的信息可以提高教育管理的科学性,同时增强了教育数字化建设的实效性。
参考文献:
[1] 刘晓霞.数据挖掘技术在高校教学中的应用[J].现代计算机,2008(6):115-116.
[2] 贾璐洁,张靖.数据挖掘技术在高校教务管理中的应用[J].中国科技信息,2007(12):225-226.
[3] 孟跃红.数据仓库技术在高校教育管理中的应用[J].徐州师范大学学报,2003(6):78-80.