经管类专业数据挖掘课程的教学方法初探
2018-02-27刘亮亮柳青
刘亮亮 柳青
摘要:大数据时代对经管类专业的学生提出了新的挑战和更高的要求,在经管类专业中引入数据挖掘课程是一个有益的尝试,从内容重组、算法重现、案例教学、实践教学等四个方面阐述了这门课程的教学方法。通过数据挖掘课程的学习学生的专业素养得到了提高,竞争力得以加强。
关键词:大数据;数据挖掘;Python;教学方法;人才培养
中图分类号:G642 文献标识码:A 文章编号:1009-3044(2018)35-0136-02
Abstract:In the era of big data, new challenges and higher requirements have been put forward for students majoring in economics and management. Introducing data mining into economics and management is a beneficial attempt. This paper expounds the teaching methods of this course from four aspects: content reorganization, algorithm reappearance, case teaching and practice teaching.Through the course of data mining, students' professional quality has been improved and their competitiveness has been strengthened.
Key words: big data; data mining; Python; teaching method; personnel training
1 概述
我們所处的时代,各行各业的海量数据集不断出现,新知识、新技术层出不穷,云计算、物联网、数据挖掘、机器学习、深度学习的技术应用到各行各业中。2015年9月,国务院印发《促进大数据发展行动纲要》,系统部署大数据发展工作;2016年3月17日,《中华人民共和国国民经济和社会发展第十三个五年规划纲要》发布,在第六篇拓展网络经济空间中的第二十七章“实施国家大数据战略”提出:把大数据作为基础性战略资源,全面实施促进大数据发展行动。麦肯锡全球研究所的报告[1]也指出有效地捕捉、分析、可视化、应用大数据来洞察、实现业务目标,将能够帮助企业从激烈的竞争中脱颖而出。时代的发展,数据管理方式的变化必将带来人才培养方式的革命性改变。以往计算机及相近专业的专业课程逐渐在经管类专业开设,数据挖掘就是其中的一门。由于数据挖掘课程在理工类专业开设较多,所以教学方法的讨论也集中在计算机及相近专业。文献[2]以构建课程核心知识体系为主题,采用案例教学法,改革传统的教学评价方式,理论结合实践对作为计算机应用专业的研究生核心课程数据挖掘进行了教学创新尝试;文献[3]也是对作为计算机科学与技术专业的核心课程数据挖掘提出以项目式学习为导向,案例辅助教学的教学方法,结合翻转课堂教学模式,从课前学习、课中讨论和课后应用三个环节开展教学活动,提倡研究生自主学习;文献[4]详细分析了数据挖掘课程产生的背景,确立数据挖掘课程在计算机及相关专业的定位,梳理了数据挖掘课程的理论方法与内容体系,强调注重理论与实际应用项目的结合。在经管类专业中开设数据挖掘课程,与在理工类专业开设既有相似的地方,又有很多不同点。基于此,我们有必要探讨在大数据背景下经管类专业开设数据挖掘课程如何设计教学内容,如何采用行之有效的教学方法提高学生数据分析数据挖掘的能力,以便能够在大数据时代提高自己的竞争力。
2 经管类专业开设数据挖掘课程面临的问题
数据挖掘课程是理论和实践紧密结合的一门课程,理论要求较高,涉及数据与信息的存储理论、知识发现、决策支持、预测和决策等多个方面;数据挖掘课程又是一门交叉学科,学生知识结构不完整,可能存在某些缺陷;工具的选择也很多,Matlab、SPSS、SAS、Python等都是很好的数据挖掘工具,虽然不太可能要求学生每种工具都熟练掌握,但是要用到这些工具做数据挖掘必须掌握基本的语法结构和程序设计的方法,有的学生并不具备这方面的技能。
3 采用的教学方法
我们采用的教学方法是“理论——案例——实践”贯穿于整个教学过程中。
3.1 教材的选择以及内容的重组
数据挖掘的经典教材是由范明、范宏建等译的《数据挖掘导论》,这本书的好处是考虑到学习这门课程的学生背景不同,他们可能并不具备广博的统计学和数据库知识,将统计学、线性代数和机器学习的必要基础知识或融入正文,或包含在附录中[5]。这样的安排非常适合我们学校经管类的学生,他们并不具备非常完备的统计学、数学、计算机的知识,但又不是完全不懂,略知一二,具备学习数据挖掘的基本条件,他们的共同目标是尽快地将数据挖掘的知识应用到各自的领域。我们主要讲解分类、聚类、回归等算法,同时融合李航教授的《统计学习方法》[6]相关内容;对于算法这本书给出的均是算法框架,需要用一门高级语言真正来实现,为了更好地理解其中各项参数的意义,我们又参考了《集体智慧编程》[7]、《智能Web算法》[8]等有关编程的书籍;另外,利用网络资源如Coursera上的 Machine Learning 公开课,讲了很多经典算法,还提供了用Python写的Demo。我们将这些内容融合在一起,组成具有经管特色的数据挖掘课程的内容。
3.2 要求学生理解并编写算法,真正弄懂算法的内涵
数据挖掘课程中有很多经典算法,理解这些经典算法就要弄懂其中的关键步骤和涉及的函数。比如在单变量线性回归问题中,着重要理解损失函数,理解了损失函数继而能够讲解梯度下降算法。梯度下降算法主要有三种变种:批量梯度下降、随机梯度下降、小批量梯度下降,主要区别在于使用多少数据来计算目标函数的梯度,不同方法主要在准确性和优化速度间做权衡。继而我们要求学生从创建数据集、定义模型、定义损失函数、初始化模型到训练、绘制拟合曲线图、绘制训练误差图,训练完成以后,比较学得的参数和真实参数,用Python代码一步一步地实现,并且尝试用不同的学习率查看误差下降速度(收敛率)。同样在多变量线性回归问题中,算法原理讲解完成以后,也是类似地用Python代码一步一步实现。这样类似的算法还有很多,如对手写数字进行识别要利用分类算法,分类算法有K-近邻、朴素贝叶斯、支持向量机、AdaBoost算法等;群组发现或短文本聚类要用到聚类算法(K-means算法等)。这样学生既熟悉了语言,又对算法有全方位的理解,真正弄懂算法的內涵。
3.3 案例教学:用机器学习库解决问题
弄清楚解决问题的算法后,我们就要用到机器学习库解决问题。对同一个问题可以使用不同的方法来解决。比如预测房价是一个回归问题,sklearn机器学习包中已经自带了该数据集,可以直接引用。先对房价数据集进行简单的数据可视化,了解其中的数据情况。接着做线性回归,划分数据集为训练集和测试集,然后导入线性回归模型,随后对训练集进行训练操作,预测结果,最后评估模型的性能。接着我们可以使用多项式回归与曲线拟合、使用基于树的算法进行回归(决策树回归、随机森林回归),比较不同模型的性能。
3.4 实践教学:利用所学完成实践项目
学生了解算法再经过案例教学后,就可以利用所学完成实践项目了。我们将学生分成小组,3~5个人一组,共同完成实践项目。比如可以从中国国家统计局官网上下载有关房价的数据,分析房屋均价,并选取与其有关的如国内生产总值、全国居民消费水平等变量进行多元回归分析。学生完成项目以后,学生自评、教师点评,既肯定做得到位的地方,也指出不足之处,以便学生能更好地提高和发展。同时这一届做得好的项目可以当作下一届的案例。
4 结束语
数据挖掘是一门重要的专业基础课程,必须具备多学科、多领域的理论知识,并结合实践应用提升学生的学习效果和专业水平[4]。在大学里,设置一门课程,不能只关注这门课程所含的内容,更要考虑教育培养学生基本专业能力、可持续发展能力等本质性的问题[2]。我们对在经管类专业中引入数据挖掘课程进行了有益的尝试。实践证明,通过这门课程的学习,学生运用数据挖掘的知识解决专业问题的水平显著提高,懂得了团队合作的重要性,增强了竞争力。同时,教师在教授这门课程的过程中完善了自身的知识结构,教学水平也得到了不断地提高。
参考文献:
[1] http://cdn.oreillystatic.com/en/assets/1/event/71/Big%20Data_%20The%20Next%20Frontier% 20Presentation.pdf.
[2] 张艳.大数据背景下的数据挖掘课程教学的新思考[J].计算机时代,2014(1):59-61.
[3] 陈晶,吕佳.高校数据挖掘课程教学模式探究[J].电脑知识与技术, 2018,14(1):45-46.
[4] 陈燕. 数据挖掘课程教学方法初探[J].教育教学论坛,2018,3(13):146-148.
[5] [美]Pang-Ning Tan,Michael Steinbach,Vipin Kumar.数据挖掘导论:完整版[M].2版.范明,范宏建,等,译.北京:人民邮电出版社,2011.1.
[6] 李航.统计学习方法[M]. 北京:清华大学出版社,2012.3
[7] [美]Toby Segaran.集体智慧编程[M]. 莫映,王开福, 译.北京:电子工业出版社,2015.3.
[8] [英]Douglas G.Mcll wraith [美]HaralambosMarmains,DmitryBabenko.智能Web算法(第2版)[M]. 陈运文等,译. 北京:电子工业出版社,2017.6.
[通联编辑:王力]