论文部分内容阅读
摘要:数据挖掘是计算机专业的一门重要的专业课。首先介绍了ACM SIGKDD制定的数据挖掘课程教学大纲,然后以实际的铝电解生产多维分析系统和铝电解生产数据挖掘系统为主线,重新组织了项目驱动的数据挖掘课堂教学内容和实践教学内容。
关键词:数据挖掘;SIGKDD;项目驱动;教学大纲
作者简介:宋威(1980-),男,辽宁抚顺人,北方工业大学信息工程学院,副教授;李晋宏(1965-),男,山西太原人,北方工业大学信息工程学院,教授。(北京 100144)
基金项目:本文系北京市优秀人才培养资助项目(2009D005002000009)、北方工业大学教育教学改革和课程建设基金项目的研究成果。
中图分类号:G642 文献标识码:A 文章编号:1007-0079(2011)27-0176-02
近年来,随着数据获取和数据存储技术的快速发展,各种数据库、数据集市和数据仓库中存储的数据量飞速增长。数据挖掘[1]的出现,为人们提供了一条解决“数据丰富而知识贫乏”困境的有效途径。
目前,国内外众多知名高校都开设了“数据挖掘”课程,如:美国斯坦福大学、英国爱丁堡大学、中国科学院研究生院、北京大学、清华大学等。课程基础理论部分一般包括数据预处理、分类、聚类、关联规则、最新进展等内容,实践教学及案例分析部分一般包括数据挖掘软件介绍、案例分析等。经过反复调研发现,目前“数据挖掘”课程主要存在两方面的问题:一是内容较为分散,缺乏明确的主线,没有较好地体现数据挖掘研究应用驱动的本质;[2]二是所演示的实例一般规模较小,没能较好地体现挖掘对象的海量性特性。
本文探讨了项目驱动[3]的数据挖掘教学模式。一方面,授课内容严格选自国际权威的教学大纲;另一方面,按照实际的多维分析与数据挖掘项目重新组织授课内容、安排实践环节,从而明确了课程的主线,并对引导学生学以致用起到了积极的作用。
一、SIGKDD教学大纲
2006年,美国计算机学会数据挖掘专门兴趣小组(ACM SIGKDD)组织专家,从数据库、数据预处理、统计推理、评价标准、算法复杂度、挖掘结果的后处理、可视化与可理解性、模型的维护与更新8个方面,制定了一份数据挖掘的教学大纲。[4]大纲建议将数据挖掘的教学内容分为基础和高级专题两部分,其中基础部分是数据挖掘课程需要覆盖的内容,而高级专题部分则供有条件的学校选择性的开设。
1.数据挖掘课程的基础部分
基础部分分为导论、数据预处理、数据仓库与OLAP、关联规则与频繁模式挖掘、分类、聚类与孤立点分析、时间序列与序列模式、文本与Web挖掘、数据挖掘的可视化、数据挖掘应用10章,共计46节内容。
基础部分的讲授重点在于明确数据挖掘的研究动机,梳理数据挖掘与数据库、机器学习及统计学之间的关系,介绍数据挖掘的基本概念、基本算法、主要的评价参数及典型的应用。通过学习,学生应具备一定的应用数据挖掘方法解决实际问题的能力,并为从事专门的科学研究奠定基础。
2.数据挖掘课程的高级专题
高级专题部分分为15章,共计70节。其中:数据预处理,数据仓库与OLAP,关联规则与频繁模式挖掘,分类,聚类分析,时间序列与序列模式,文本挖掘,超文本与Web挖掘,数据挖掘应用这9章内容与基础部分重叠,不同之处在于通过引入了更为复杂的算法及最新的典型应用,对基础部分内容进行了扩展;数据流挖掘,时空与多媒体数据挖掘,生物数据挖掘这3章内容体现了数据类型的不断丰富;而数据挖掘语言、标准及系统架构,数据挖掘与社会,数据挖掘的最新进展这3章内容则讨论了数据挖掘研究的本质问题,并随时跟踪前沿热点问题。
高级专题部分的讲授重点在于介绍各种方法的优缺点,并将各种挖掘方法的对象由结构化数据向复杂类型数据拓展,引领学生达到数据挖掘研究的入门及以上水平。
3.数据挖掘课程的实践教学
按照由浅入深的顺序,数据挖掘课程的主要实践教学内容包括:
学会使用常用的数据挖掘软件,如:Microsoft SQLServer Analysis Services、Oracle ODM、IBM Intelligent-Miner等。
通过参考开源数据挖掘软件(如Weka),实现常用的数据挖掘算法。
在KDD CUP、UCI Machine Learning/KDD Repository、DBLP等基准数据库上比较各种算法的性能。
二、SIGKDD大纲具体应用的探讨
SIGKDD数据挖掘教学大纲的颁布为讲授数据挖掘课程提供了蓝本,通过在北方工业大学3年来的实践,我们认为在实际应用中,有如下3个问题值得探讨。
SIGKDD教学大纲的内容充分体现了数据挖掘多学科交叉的特点,如数据仓库与OLAP部分源自数据库,回归分析、Bayes分类等内容与统计学有重叠,决策树、支持向量机及聚类等在机器学习中也会涉及,文本挖掘部分的基础知识来自于自然语言处理,生物数据挖掘的研究需要生物学领域知识等。因此,对于初学者来说,内容较为繁杂、缺乏系统性、没有一条明确的主线。
SIGKDD教学大纲中的应用部分主要以商业问题为背景,这类数据较为规范、质量高。而实际上近年来数据挖掘在工业生产中也有应用,[5]相对商业数据而言,工业生产数据的质量不高,普遍存在噪声。因此介绍数据挖掘方法在工业生产数据中的应用,对学生深入理解数据预处理方法和数据挖掘方法的健壮性方面会起到较好的效果。
SIGKDD教学大纲中的内容以方法介绍为主,但有相当数量的同学更关注方法的适用性和实用性。因此,如能将挖掘方法与实际的项目背景结合起来,以解决实际问题为主线来介绍数据挖掘方法,对提高学生学习兴趣、改善教学质量具有重要的意义。
三、项目驱动的数据挖掘教学内容设计
北方工业大学知识工程研究所开发的铝电解生产数据多维分析系统[6]和铝电解生产数据挖掘系统[7]已广泛应用于中电投宁夏青铜峡能源铝业集团有限公司、中铝连城铝业、中铝河南分公司等国内十多家大型电解铝厂,取得了巨大的经济效益。我们以这两个软件为主线,重新组织了数据挖掘课程的课堂教学内容和实践教学内容,取得了较好的效果。
1.围绕多维分析系统组织的教学内容
围绕该铝电解生产数据多维分析系统,我们组织了数据预处理、数据仓库和多维分析3章内容。
(1)数据预处理。1)介绍铝电解日报数据中各个属性的含义及取值范围。2)介绍软件中使用的均值法、中位数法、众数法等数据清洗方法,引导学生实现基于分箱和回归的噪声平滑方法。3)讲授软件中使用的基于领域知识的数据离散化方法,引导学生实现基于3-4-5规则的离散化方法。
(2)数据仓库。1)讲授铝电解数据仓库中的维表、事实表和度量标准,并给出铝电解生产常用的分析主题,引导学生针对这些主题设计数据集市。2)讲授ETL模块的设计,数据集成中的模式集成、数据冲突的消解、冗余的删除,介绍国内电解铝厂常用的槽控机中使用的数据结构,引导学生实现槽控机中所采集数据的集成方法。
(3)多维分析。1)维的概念。介绍电解铝厂的一般生产流程,讲授软件中时间维的设计,引导学生自行设计组织维。2)多维分析操作。讲授上滚和下钻两种多维分析操作,引导学生设计切片和旋转操作。3)各种统计图表的生成。讲授软件中移动平均和指数平均、基于方差的单因素统计分析、基于相关系数的双因素统计分析、效应图等曲线和图的绘制方法。引导学生实现曲线平滑及曲线回归,基于偏差的单因素统计分析、基于众数的单因素统计分析、基于中位数的单因素统计分析,基于协方差的双因素统计分析,散点图、帕雷托图以及箱线图等曲线和图的绘制方法。
2.围绕数据挖掘系统组织的教学内容
围绕铝电解生产数据挖掘系统,我们组织了特征选择、聚类、分类和关联规则挖掘4章内容。
(1)特征选择。1)讲授无监督的筛选器方法,介绍铝电解生产参数之间的定性关系,如“分子比降低,则初晶温度降低”等,引导学生据此设计并实现筛选器进行特征选择。2)讲授有监督的封装器方法,讲解面向出铝量进行分类时的封装器方法,并引导学生实现基于电压稳定性进行分类的封装器方法。
(2)聚类。1)讲授基于划分的聚类方法K-平均法和K-中心点法,分别介绍数值型数据和类别型数据的相似性度量标准,引导学生在特征选择的基础上实现一种基于划分的聚类方法,并对铝电解槽进行聚类。2)讲授凝聚层次聚类法和分裂层次聚类法,介绍铝电解生产单位的组织机构,演示基于实际产量层层汇总的凝聚层次聚类法,引导学生实现基于生产任务层层下达的分裂层次聚类法。
(3)分类。由于铝电解日报数据以数值型数据为主,所以在介绍分类基础知识和决策树之后,重点讲授面向数值型数据的预测方法。1)以出铝量的预测为例,讲授基于神经网络的预测方法。2)以电压的控制为例,讲授基于支持向量机的预测方法。3)讲授多分类器集成的方法,引导学生实现基于多分类器集成的出铝量及电压控制的预测系统。
(4)关联规则挖掘。1)讲授关联规则挖掘的Apriori算法。2)讲授关联规则挖掘的各种评价方法。3)引导学生实现数值型关联规则挖掘算法,并基于各种参数对挖掘结果进行评价。
3.数据挖掘课程的实践教学
(1)作业内容。每5名同学一组,根据兴趣实现一个铝电解数据多维分析系统或铝电解数据挖掘系统,完成课堂学习内容,并鼓励同学根据自己对铝电解数据的理解,自学并实现课堂上没有涉及的内容。每个小组采用PPT和系统演示相结合的方式进行汇报,由教师进行点评。
(2)评价标准。1)对实现铝电解多维分析系统的小组,重点考察:数据预处理的质量;维定义的合理性;响应复杂查询的效率;各种图表功能是否齐全。2)对实现铝电解数据挖掘系统的小组,重点考察:特征选择、聚类、分类和关联规则挖掘的功能是否齐全;各种功能的实现是否正确;使用各种客观评价参数对所实现功能进行评价;实现各种功能的效率。
四、结论
在认真总结ACM SIGKDD数据挖掘教学大纲的基础上,针对数据挖掘课程内容多学科交叉、主线不清晰的特点,以在国内铝厂广泛应用的铝电解生产数据多维分析系统及铝电解生产数据挖掘系统为授课内容主线,重新梳理了数据挖掘课程的教学内容。在北方工业大学计算机系3年的实践表明,学生运用数据挖掘方法解决实际问题的能力显著增强。
参考文献:
[1]徐金宝.对应用型本科生开设数据挖掘课程的尝试[J].计算机教育,2007,(7x):27-29.
[2]Wu X,Yu P S,Piatetsky-Shapiro G,et al.Data mining:how research meets
practical development[J].Knowledge and Information Systems,2003,5(2):248-261.
[3]白忠喜,鲁越青,梁伟,等.校政企共建基地开展基于项目驱动的实践教学改革[J].中国大学教学,2011,(2):75-76.
[4]Data Mining Curriculum:A Proposal.http://www.sigkdd.org/curriculum/index.html.
[5]焦国华,黄健柏,黄晖.数据挖掘技术在钢铁行业的应用[J].系统工程.2010,28(2):112-116.
[6]曹丹阳,杨炳儒,李晋宏,等.多维分析技术在铝电解生产中的应用研究[J].冶金自动化,2010,34(1):17-21.
[7]李晋宏,曹丹阳,林满山,等.铝电解槽生产智能系统研究[J].冶金自动化,2008,32(5):1-6.
(责任编辑:刘丽娜)
关键词:数据挖掘;SIGKDD;项目驱动;教学大纲
作者简介:宋威(1980-),男,辽宁抚顺人,北方工业大学信息工程学院,副教授;李晋宏(1965-),男,山西太原人,北方工业大学信息工程学院,教授。(北京 100144)
基金项目:本文系北京市优秀人才培养资助项目(2009D005002000009)、北方工业大学教育教学改革和课程建设基金项目的研究成果。
中图分类号:G642 文献标识码:A 文章编号:1007-0079(2011)27-0176-02
近年来,随着数据获取和数据存储技术的快速发展,各种数据库、数据集市和数据仓库中存储的数据量飞速增长。数据挖掘[1]的出现,为人们提供了一条解决“数据丰富而知识贫乏”困境的有效途径。
目前,国内外众多知名高校都开设了“数据挖掘”课程,如:美国斯坦福大学、英国爱丁堡大学、中国科学院研究生院、北京大学、清华大学等。课程基础理论部分一般包括数据预处理、分类、聚类、关联规则、最新进展等内容,实践教学及案例分析部分一般包括数据挖掘软件介绍、案例分析等。经过反复调研发现,目前“数据挖掘”课程主要存在两方面的问题:一是内容较为分散,缺乏明确的主线,没有较好地体现数据挖掘研究应用驱动的本质;[2]二是所演示的实例一般规模较小,没能较好地体现挖掘对象的海量性特性。
本文探讨了项目驱动[3]的数据挖掘教学模式。一方面,授课内容严格选自国际权威的教学大纲;另一方面,按照实际的多维分析与数据挖掘项目重新组织授课内容、安排实践环节,从而明确了课程的主线,并对引导学生学以致用起到了积极的作用。
一、SIGKDD教学大纲
2006年,美国计算机学会数据挖掘专门兴趣小组(ACM SIGKDD)组织专家,从数据库、数据预处理、统计推理、评价标准、算法复杂度、挖掘结果的后处理、可视化与可理解性、模型的维护与更新8个方面,制定了一份数据挖掘的教学大纲。[4]大纲建议将数据挖掘的教学内容分为基础和高级专题两部分,其中基础部分是数据挖掘课程需要覆盖的内容,而高级专题部分则供有条件的学校选择性的开设。
1.数据挖掘课程的基础部分
基础部分分为导论、数据预处理、数据仓库与OLAP、关联规则与频繁模式挖掘、分类、聚类与孤立点分析、时间序列与序列模式、文本与Web挖掘、数据挖掘的可视化、数据挖掘应用10章,共计46节内容。
基础部分的讲授重点在于明确数据挖掘的研究动机,梳理数据挖掘与数据库、机器学习及统计学之间的关系,介绍数据挖掘的基本概念、基本算法、主要的评价参数及典型的应用。通过学习,学生应具备一定的应用数据挖掘方法解决实际问题的能力,并为从事专门的科学研究奠定基础。
2.数据挖掘课程的高级专题
高级专题部分分为15章,共计70节。其中:数据预处理,数据仓库与OLAP,关联规则与频繁模式挖掘,分类,聚类分析,时间序列与序列模式,文本挖掘,超文本与Web挖掘,数据挖掘应用这9章内容与基础部分重叠,不同之处在于通过引入了更为复杂的算法及最新的典型应用,对基础部分内容进行了扩展;数据流挖掘,时空与多媒体数据挖掘,生物数据挖掘这3章内容体现了数据类型的不断丰富;而数据挖掘语言、标准及系统架构,数据挖掘与社会,数据挖掘的最新进展这3章内容则讨论了数据挖掘研究的本质问题,并随时跟踪前沿热点问题。
高级专题部分的讲授重点在于介绍各种方法的优缺点,并将各种挖掘方法的对象由结构化数据向复杂类型数据拓展,引领学生达到数据挖掘研究的入门及以上水平。
3.数据挖掘课程的实践教学
按照由浅入深的顺序,数据挖掘课程的主要实践教学内容包括:
学会使用常用的数据挖掘软件,如:Microsoft SQLServer Analysis Services、Oracle ODM、IBM Intelligent-Miner等。
通过参考开源数据挖掘软件(如Weka),实现常用的数据挖掘算法。
在KDD CUP、UCI Machine Learning/KDD Repository、DBLP等基准数据库上比较各种算法的性能。
二、SIGKDD大纲具体应用的探讨
SIGKDD数据挖掘教学大纲的颁布为讲授数据挖掘课程提供了蓝本,通过在北方工业大学3年来的实践,我们认为在实际应用中,有如下3个问题值得探讨。
SIGKDD教学大纲的内容充分体现了数据挖掘多学科交叉的特点,如数据仓库与OLAP部分源自数据库,回归分析、Bayes分类等内容与统计学有重叠,决策树、支持向量机及聚类等在机器学习中也会涉及,文本挖掘部分的基础知识来自于自然语言处理,生物数据挖掘的研究需要生物学领域知识等。因此,对于初学者来说,内容较为繁杂、缺乏系统性、没有一条明确的主线。
SIGKDD教学大纲中的应用部分主要以商业问题为背景,这类数据较为规范、质量高。而实际上近年来数据挖掘在工业生产中也有应用,[5]相对商业数据而言,工业生产数据的质量不高,普遍存在噪声。因此介绍数据挖掘方法在工业生产数据中的应用,对学生深入理解数据预处理方法和数据挖掘方法的健壮性方面会起到较好的效果。
SIGKDD教学大纲中的内容以方法介绍为主,但有相当数量的同学更关注方法的适用性和实用性。因此,如能将挖掘方法与实际的项目背景结合起来,以解决实际问题为主线来介绍数据挖掘方法,对提高学生学习兴趣、改善教学质量具有重要的意义。
三、项目驱动的数据挖掘教学内容设计
北方工业大学知识工程研究所开发的铝电解生产数据多维分析系统[6]和铝电解生产数据挖掘系统[7]已广泛应用于中电投宁夏青铜峡能源铝业集团有限公司、中铝连城铝业、中铝河南分公司等国内十多家大型电解铝厂,取得了巨大的经济效益。我们以这两个软件为主线,重新组织了数据挖掘课程的课堂教学内容和实践教学内容,取得了较好的效果。
1.围绕多维分析系统组织的教学内容
围绕该铝电解生产数据多维分析系统,我们组织了数据预处理、数据仓库和多维分析3章内容。
(1)数据预处理。1)介绍铝电解日报数据中各个属性的含义及取值范围。2)介绍软件中使用的均值法、中位数法、众数法等数据清洗方法,引导学生实现基于分箱和回归的噪声平滑方法。3)讲授软件中使用的基于领域知识的数据离散化方法,引导学生实现基于3-4-5规则的离散化方法。
(2)数据仓库。1)讲授铝电解数据仓库中的维表、事实表和度量标准,并给出铝电解生产常用的分析主题,引导学生针对这些主题设计数据集市。2)讲授ETL模块的设计,数据集成中的模式集成、数据冲突的消解、冗余的删除,介绍国内电解铝厂常用的槽控机中使用的数据结构,引导学生实现槽控机中所采集数据的集成方法。
(3)多维分析。1)维的概念。介绍电解铝厂的一般生产流程,讲授软件中时间维的设计,引导学生自行设计组织维。2)多维分析操作。讲授上滚和下钻两种多维分析操作,引导学生设计切片和旋转操作。3)各种统计图表的生成。讲授软件中移动平均和指数平均、基于方差的单因素统计分析、基于相关系数的双因素统计分析、效应图等曲线和图的绘制方法。引导学生实现曲线平滑及曲线回归,基于偏差的单因素统计分析、基于众数的单因素统计分析、基于中位数的单因素统计分析,基于协方差的双因素统计分析,散点图、帕雷托图以及箱线图等曲线和图的绘制方法。
2.围绕数据挖掘系统组织的教学内容
围绕铝电解生产数据挖掘系统,我们组织了特征选择、聚类、分类和关联规则挖掘4章内容。
(1)特征选择。1)讲授无监督的筛选器方法,介绍铝电解生产参数之间的定性关系,如“分子比降低,则初晶温度降低”等,引导学生据此设计并实现筛选器进行特征选择。2)讲授有监督的封装器方法,讲解面向出铝量进行分类时的封装器方法,并引导学生实现基于电压稳定性进行分类的封装器方法。
(2)聚类。1)讲授基于划分的聚类方法K-平均法和K-中心点法,分别介绍数值型数据和类别型数据的相似性度量标准,引导学生在特征选择的基础上实现一种基于划分的聚类方法,并对铝电解槽进行聚类。2)讲授凝聚层次聚类法和分裂层次聚类法,介绍铝电解生产单位的组织机构,演示基于实际产量层层汇总的凝聚层次聚类法,引导学生实现基于生产任务层层下达的分裂层次聚类法。
(3)分类。由于铝电解日报数据以数值型数据为主,所以在介绍分类基础知识和决策树之后,重点讲授面向数值型数据的预测方法。1)以出铝量的预测为例,讲授基于神经网络的预测方法。2)以电压的控制为例,讲授基于支持向量机的预测方法。3)讲授多分类器集成的方法,引导学生实现基于多分类器集成的出铝量及电压控制的预测系统。
(4)关联规则挖掘。1)讲授关联规则挖掘的Apriori算法。2)讲授关联规则挖掘的各种评价方法。3)引导学生实现数值型关联规则挖掘算法,并基于各种参数对挖掘结果进行评价。
3.数据挖掘课程的实践教学
(1)作业内容。每5名同学一组,根据兴趣实现一个铝电解数据多维分析系统或铝电解数据挖掘系统,完成课堂学习内容,并鼓励同学根据自己对铝电解数据的理解,自学并实现课堂上没有涉及的内容。每个小组采用PPT和系统演示相结合的方式进行汇报,由教师进行点评。
(2)评价标准。1)对实现铝电解多维分析系统的小组,重点考察:数据预处理的质量;维定义的合理性;响应复杂查询的效率;各种图表功能是否齐全。2)对实现铝电解数据挖掘系统的小组,重点考察:特征选择、聚类、分类和关联规则挖掘的功能是否齐全;各种功能的实现是否正确;使用各种客观评价参数对所实现功能进行评价;实现各种功能的效率。
四、结论
在认真总结ACM SIGKDD数据挖掘教学大纲的基础上,针对数据挖掘课程内容多学科交叉、主线不清晰的特点,以在国内铝厂广泛应用的铝电解生产数据多维分析系统及铝电解生产数据挖掘系统为授课内容主线,重新梳理了数据挖掘课程的教学内容。在北方工业大学计算机系3年的实践表明,学生运用数据挖掘方法解决实际问题的能力显著增强。
参考文献:
[1]徐金宝.对应用型本科生开设数据挖掘课程的尝试[J].计算机教育,2007,(7x):27-29.
[2]Wu X,Yu P S,Piatetsky-Shapiro G,et al.Data mining:how research meets
practical development[J].Knowledge and Information Systems,2003,5(2):248-261.
[3]白忠喜,鲁越青,梁伟,等.校政企共建基地开展基于项目驱动的实践教学改革[J].中国大学教学,2011,(2):75-76.
[4]Data Mining Curriculum:A Proposal.http://www.sigkdd.org/curriculum/index.html.
[5]焦国华,黄健柏,黄晖.数据挖掘技术在钢铁行业的应用[J].系统工程.2010,28(2):112-116.
[6]曹丹阳,杨炳儒,李晋宏,等.多维分析技术在铝电解生产中的应用研究[J].冶金自动化,2010,34(1):17-21.
[7]李晋宏,曹丹阳,林满山,等.铝电解槽生产智能系统研究[J].冶金自动化,2008,32(5):1-6.
(责任编辑:刘丽娜)