杨晓杏 苏建敏 梅逢城
收稿日期:2023-09-15
基金项目:深圳技术大学校级教学改革研究项目(20231056010014)
DOI:10.19850/j.cnki.2096-4706.2024.07.037
摘 要:作为一个多学科交叉的新兴学科,数据挖掘在各领域得到了广泛应用,成为学术界与工业界的研究热点和焦点,数据挖掘专业人才在大数据行业日益发展的环境下显得供不应求,因此各高校高度重视数据挖掘人才的培养,开设“数据挖掘导论”相关课程。然而,传统教学偏重理论,无法满足应用型人才的培养要求。针对当前课程教学中存在的问题,分析面向应用型本科的“数据挖掘导论”课程建设,探索课程的教学内容及考核方式。
关键词:数据挖掘导论;课程建设;教学模式
中图分类号:G642.0 文献标识码:A 文章编号:2096-4706(2024)07-0189-05
Research on“Introduction to Data Mining”Course Construction for
Application-oriented Undergraduate Programs
YANG Xiaoxing1, SU Jianmin2, MEI Fengcheng1
(1.Shenzhen Technology University, Shenzhen 518118, China; 2.Wuyi University, Jiangmen 529020, China)
Abstract: As an emerging discipline of multidisciplinary intersection, data mining has been widely used in various fields, and has become a research hotspot and focus in academia and industry field, and data mining professionals appear to be in short supply in the environment of the growing development of the Big Data industry. So colleges and universities have attached great importance to the cultivation of data mining talents, and have opened the“Introduction to Data Mining”related courses. However, traditional teaching favors theory and cannot meet the training requirements of application-oriented talents. We analyze the construction of the“Introductory to Data Mining”course for application-oriented undergraduates and explore the teaching content and assessment methods of the course in view of the problems existing in the teaching of the current course.
Keywords: Introduction to Data Mining; course construction; teaching mode
0 引 言
大数据已经渗透到各个行业,如何从海量数据中发现潜在有价值的规律与知识,并应用于经济生产、行业管理和社会服务等,是一个重要的课题。作为一个多学科交叉的新兴学科,数据挖掘在各领域得到了越来越多的应用,已经成为学术界与工业界的研究热点和焦点,数据挖掘专业人才在大数据行业日益发展的环境显得供不应求,因此各高校高度重视数据挖掘人才的培养,开设“数据挖掘导论”相关课程。如何通过“数据挖掘导论”课程的建设培养具有数据思维能力的应用型人才是值得探索的重要教学问题。
应用型本科院校的培养目标是培养高素质应用型人才,提高学生的创新、创业能力,服务于地方经济的发展,为社会各行业发展提供充足的人才支撑和保障[1]。应用型人才培养目标的实现,必须落实在课程教学设计和设置中。在应用型本科教育中的“数据挖掘导论”课程,应该更加注重培养学生的实践能力。通过实际案例、项目和实验,使学生能够亲自动手处理真实世界的数据,运用数据挖掘算法解决实际问题。
1 课程现状
“数据挖掘导论”课程是一门多学科交叉的课程,学生需了解数值计算方法与优化、概率论与数理统计、数据库及编程语言等基本知识[2]。其涉及的理论较为复杂,各种数据挖掘任务往往可以形式化为不同性质的数学问题,研究求解这些数学问题的算法或理解相关数学问题都需要不同领域的复杂数学理论[3]。
传统教学偏重理论,无法满足应用型人才的培养要求。针对传统教学的问题,已有一些学者提出不同的教学模式。如卫志华等[4]对新工科背景下数据挖掘课程综合性实验进行了设计,刘彤等[5]提出数据挖掘翻转课堂混合式教学模式,对线上+线下的混合式教学模式进行补充,提出“四模块三阶段二层面”教学方法等。
也有学者针对不同专业对数据挖掘课程教学方式进行了深入探索,王伟[6]通过对网络课程学员在线学习路径的挖掘,识别管理类数据挖掘人才的市场需求,提出了课程改革的建议。通过引入先进的教学理念,对数据挖掘课程进行改革,黄发良等[7]基于CDIO理念,设计以数据思维能力培养为核心的教学目标,提出了面向理论创新的教学内容与项目驱动的实验教学方法。林华灵等[8]提出基于CDIO和OBE融合教育理念的课程教学改革思路。按照“以学生为中心,以成果为导向”和工程教育理念对教学目标、教学内容、教学手段、授课形式和考核方式等教学过程进行重构。周长敏[9]等提出“问题引导+案例分析”的理论实验贯穿式教学方法,围绕案例对教学内容和教学过程进行设计,让学生通过解决问题获得成就感和学习内驱力。赵晓凡[10]对公安高等院校开设数据挖掘课程提出了改革措施。
教学实践表明这些方法在一定程度上有效地激发了学生的学习热情,提高了教学质量。因此,通过学习、引进、组合这些先进的教学理念,分析面向应用型本科的“数据挖掘导论”课程建设,开展教学内容和考核方式等探索,尤为重要。
2 教学内容
“数据挖掘导论”课程的内容涵盖了数据预处理、特征选择、分类与回归、聚类分析、关联规则挖掘等基本概念和方法。
作为面向应用型本科的“数据挖掘导论”课程,既要考虑数据挖掘涉及的理论基础,也要考虑数据挖掘的具体应用,因此,共安排了54个学时,其中36学时为理论课,18学时为实验课,此外,布置一次课外实践,进一步加强学生使用理论知识解决实际问题的能力。
经过探索,教学内容设置如图1所示。
2.1 理论课程内容设计
“数据挖掘导论”课程涉及的知识较为广泛,让学生掌握数据挖掘的理论、常用算法以及应用场景等相关知识尤为重要。考虑到学生相关知识储备、课时安排以及实际应用的需求,安排理论课程内容如下。
2.1.1 数据挖掘的基本概念
通过讲述数据挖掘的基本概念、基本任务、发展历史、最新进展以及发展趋势等内容,使得学生对数据挖掘有基本的概念。
2.1.2 数据的相关概念
通过讲述数据类型、数据质量、相似性和相异性的度量等相关内容,使学生了解数据的相关概念以及数据的重要性,此外,通过讲述基本的数据预处理技术,使得学生掌握相关技术,能够对数据进行相关处理。
2.1.3 分类的概念及算法
分类任务是数据挖掘的基本任务之一,是研究热点,应用十分广泛,因此作为“数据挖掘导论”课程的重点内容。首先讲述解决分类问题的一般方法,然后介绍经典的分类算法,包括决策树、基于规则的分类器、最近邻分类器、贝叶斯分类器、人工神经网络、支持向量机、组合方法,最后讲述分类模型的过分拟合问题、分类器的评价指标、比较分类器的统计方法、不平衡分类问题、多类分类问题等内容。
2.1.4 关联分析的概念及算法
关联分析也是数据挖掘的基本任务之一,首先讲述关联规则问题的定义,讲述关联规则的概念:项集、k-项集、空集、支持度计数、支持度、置信度、关联规则发现、候选集、频繁项集等。然后,通过讲述候选项集的暴力破解法、先验算法Apriori,Fk-1*Fk-1方法等,引导学生掌握频繁项集的产生。通过介绍生成候选规则的暴力破解法、基于Apriori的候选规则产生方法,引导学生掌握规则的产生。通过介绍最大频繁项集以及FP增长算法,引导学生了解频繁项集的紧凑表示以及FP增长算法。最后通过介绍主观兴趣度量和客观兴趣度量等,拿到学生掌握关联规则模式评估的相关方法。
2.1.5 聚类的概念及算法
聚类是数据挖掘中的一种无监督学习方法,用于将数据对象根据它们的相似性进行分组或聚集。聚类的目标是在不需要先验知识的情况下,发现数据中隐藏的模式和结构。几种常见的聚类算法包括:K-means算法、层次聚类算法、密度聚类算法、基于概率模型的聚类算法、基于网格的聚类算法。每种算法都有其独特的优缺点和适用场景。在实际应用中,选择适合具体问题需求和数据特征的聚类算法非常重要。
2.2 实验课程内容设计
从上述的理论课程内容可以看到,“数据挖掘导论”课程的知识点庞杂,如果只讲述理论,学生难以消化,虽然通过设计案例能提高学生的理解能力,但是还需要实验课程,使得学生学以致用。实验课程旨在让学生使用数据挖掘的理论、常用算法解决实际问题,加强理论与实践的联系。“数据挖掘导论”实验课程为18个课时,通过设计合适的实验,可以帮助学生巩固理论知识、掌握数据挖掘技术,并培养实践能力。
目前,随着技术的迭代,出现了越来越多的数据挖掘工具,可以进行数据分析与挖掘。常用的三种方案包括:1)使用R语言进行数据挖掘;2)使用Python语言进行数据挖掘;3)使用WEKA(Waikato Environment for Knowledge Analysis)进行数据挖掘。WEKA是基于Java环境下开源的机器学习以及数据挖掘软件,具有图形用户界面,易于操作,并且自带示例数据集。鉴于部分同学没有接触过R语言、Python语言以及Java语言,实验教学中采用开源的数据挖掘工具WEKA作为示例,使得每位同学都能较容易地完成实验。然而,实验教学中,虽然使用WEKA作为示例,但是允许学生自由选择具体的工具实现实验课程内容,如直接使用Python语言实现等。实验课程内容主要包括以下部分:数据、分类算法的应用、关联分析算法的应用、聚类算法的应用。
2.2.1 数据
这部分实验内容主要是让学生熟悉WEKA的使用。WEKA汇集了多种机器学习算法、数据预处理方法以及数据可视化图形用户界面。WEKA可以读取arff、csv等格式的数据文件。其中arff是一种WEKA专用文件格式。这部分实验内容以weather.nominal.arff为例子,让学生了解如何载入数据,如何观察数据的特征以及标签,如何删除或者增加特征等操作。
2.2.2 分类算法的应用
这部分实验内容主要是让学生掌握分类器的构造,以及分类问题的一般解决过程。
首先,以iris.arff为例子,让学生掌握如何选取不同的分类算法,设置不同的参数,以及采用不同的测试方法,让学生学会观察结果,如图2所示。
其次,布置一个分类问题,让学生使用不同的分类算法解决,比较分析结果,并完成实验报告。
2.2.3 关联分析算法的应用
这部分实验内容主要是让学生掌握关联规则挖掘及其具体应用,掌握关联规则模式评估的相关方法。
首先,以supermarket.arff为例子,让学生掌握如何选取不同的关联分析算法,设置不同的参数,让学生学会观察结果,如图3所示。
其次,布置一个关联分析问题,让学生使用不同的算法,比较分析运行结果并完成实验报告。
2.2.4 聚类算法的应用
这部分实验内容主要是让学生掌握使用聚类算法进行聚类,掌握聚类模型的评估方法。先以glass.arff为例子做示范,然后布置一个聚类任务,让学生使用不同聚类算法,比较分析结果并完成实验报告。
2.3 实践内容设计
在课程实践部分,学生将面临一个具体的实际应用问题,例如推荐系统、舆情分析等。学生需要收集相关数据,并运用所学的数据挖掘技术来解决问题。这个实验可以让学生将所学的知识应用到实际场景中,培养解决实际问题的能力。
实践内容选自Kaggle的案例。为了让学生更好地根据自身的情况进行课外实践,学生可以从Kaggle上自选案例,既可以使用不同的算法在参赛训练集上做分析,也可以直接参与比赛,看比赛的排名及分数。
3 课程考核
课程考核是检验教学效果、培养人才的重要环节。传统的数据挖掘考核方式单一,主要以卷面成绩(期末考试),或者以教师主观对课程论文的打分来衡量学生对本课程的掌握情况。而应用型人才不仅要求学生掌握理论知识,还需要学生具备较强的实践操作能力。为了综合评估,课程考核应该使用多元化考核,并且应该覆盖课程开始到课程结束的全过程。经过探索,我们整理出具体的考核评价指标,如表1所示。
其中,课堂小测是在学期中进行,主要考察学习过程中理论知识的掌握程度。实验以及实践是以小组为单位的,实验报告主要考察学生使用WEKA进行相关实验、整理报告的能力(也可以使用其他工具),实践及展示主要是考察学生的应用能力,即直接使用所学解决实际问题的能力,以及学生展示成果的能力。二者均反应团队合作能力。期末论文则以个人为单位,可以进一步考察学生解决问题的实践能力,包括对于问题的理解、思路、实验、结果整理以及论文编写的综合能力。每个人都进行答辩,答辩过程,教师和学生都能提问和讨论,以激发学生的创造力。
4 课程成效
在2022—2023年第一学期,2019级物联网专业共有90余名学生选修“数据挖掘导论”课程。经过一个学期的实施,主要取得以下成效:
1)学生掌握了经典的算法。通过课堂小测以及课堂讨论,学生掌握了经典算法的原理,并且能够以例子说明算法的求解过程。
2)学生掌握了使用WEKA进行数据分析,可以进行分类器的构建、聚类分析以及关联分析。
实验报告反应,学生能够使用WEKA进行数据分析(包括特征增减等),能够使用WEKA应用多种分类算法、聚类算法、关联分析方法于相关的数据集并且进行相关分析。部分同学能使用Python语言进行相关的建模及分析。
3)学生完成了实践内容,并较好地展示结果。学生以小组的形式进行实践内容,所有小组注册了Kaggle账号并提交了分析结果,部分小组提交的成绩在前30%,部分小组则进行了算法对比分析。各小组针对所选的问题,进行问题分析、数据预处理、特征选择、构建模型、结果分析、结果展示,体验了数据挖掘基本流程,也反映了团队合作能力。
4)学生高质量完成期末论文并且进行相关答辩汇报。学生自选课题,进行了检索文献、撰写论文到答辩汇报,从结果看来,学生对问题分析、解决的能力都得到了提升,有部分同学以期末论文为依托,进行了毕业设计。
5 结 论
综上所述,数据挖掘是一门实用性很强的学科,注重将理论知识与实际应用相结合。在笔者的教学设计中,学生通过掌握理论、上机实验、再到针对实际问题进行实践,逐步递进的掌握数据挖掘的基本原理和方法。同时,数据挖掘往往需要多个领域的专业知识和技能的协同,笔者鼓励学生进行团队合作,模拟真实工作环境中的跨领域团队合作,通过与其他专业学生的合作,学生可以从不同角度思考问题,提高解决问题的能力和团队合作的技巧。
在“新工科”背景下,为了培养同时具有扎实理论基础、综合实践能力以及良好创新能力的应用型人才,笔者对“数据挖掘导论”课程的理论教学内容、实验教学内容、实践内容和考核方式进行了探索和改革,力求能发挥课程对学生专业学习的启蒙作用。在未来的教学实践中,将继续累积经验,不断完善课程教学,提高教学成效,确保达成应用型人才培养的目标。
参考文献:
[1] 潘懋元,周群英.从高校分类的视角看应用型本科课程建设 [J].中国大学教学,2009(3):4-7.
[2] 唐培培,吴明晖.基于Kaggle竞赛数据的“数据挖掘技术”课程建设探索与实践研究 [J].工业和信息化教育,2021(3):85-88.
[3] 黄发良,钟世华,何万莉.基于CDIO理念的数据挖掘课程教学探索 [J].南宁师范大学学报:自然科学版,2021,38(2):191-196.
[4] 卫志华,孔思尹,丁志军,等.新工科背景下数据挖掘课程综合性实验设计 [J].计算机教育,2020(3):127-135.
[5] 刘彤,马梦冉,倪维健.数据挖掘翻转课堂混合式教学模式研究 [J].软件导刊,2021,20(8):200-204.
[6] 王伟.融合学习路径的管理类数据挖掘课程教学改革 [J].福建电脑,2021,37(2):33-36.
[7] 黄发良,钟世华,何万莉.基于CDIO理念的数据挖掘课程教学探索 [J].南宁师范大学学报:自然科学版,2021,38(2):191-196.
[8] 林华灵,丁杰,卓琳,等.关于应用型本科“数据挖掘”课程改革的探索与思考 [J].福建金融管理干部学院学报,2020(4):58-62.
[9] 周长敏,佘佐明,杨光临.应用型本科数据挖掘技术课程教学方法的探索 [J].凯里学院学报,2022,40(3):104-108.
[10] 赵晓凡.公安高等院校数据挖掘课程教改研究 [J].计算机教育,2018(1):39-42.
作者简介:杨晓杏(1984—),女,汉族,广东云浮人,助理教授,博士,研究方向:软件缺陷预测、数据挖掘;苏建敏(1982—),男,汉族,湖北仙桃人,讲师,博士,研究方向:多传感器数据融合;梅逢城(1990—),男,汉族,江西南昌人,实验师,硕士,研究方向:物联网应用设计。