论文部分内容阅读
摘要:目前大数据分析行业刚刚起步,職场上对数据分析师的岗位缺口很大,高校在此背景下开设数据挖掘技术课程,培养学生的数据意识、数据分析思维,对学生具有深远的影响。本文针对应用型本科学生的接受能力和培养目标,探讨了数据挖掘技术理论教学内容安排和实践课程开发工具建议,以期为广大开设该课程的教师提供参考。
关键词:数据挖掘技术;实验课程设计;应用型本科
目前,数据已经渗透到当今每一个行业和业务职能领域,成为重要的生产因素。各行各业的决策正在从“业务驱动”转变为“数据驱动”,人们对海量数据的挖掘和运用,将创造出巨大的经济和社会价值。目前,我国高度重视大数据的发展。2015年8月31日,国务院印发《促进大数据发展行动纲要》,系统部署大数据发展工作。通过对大数据进行挖掘和分析,可以使企业清晰地了解自身现状、竞争环境、风险评判与决策支持。在对大数据进行充分挖掘与展现后,呈现给企业决策者的将是一份清晰、准确且有数据支撑的报告。所以,大数据分析师是参与企业决策发展制定的核心人物,因而被认为是未来十年最有前景的工作岗位。
目前大数据分析行业刚刚起步,职场上对数据分析师的岗位缺口很大,高校在此背景下开设数据挖掘技术课程,培养学生的数据意识、数据分析思维,无论学生将来是否从事数据分析相关的工作,都会对学生有深远的影响。
数据挖掘课程的教学目的是让学生掌握数据挖掘的相关知识,能分析并运用成熟的技术和方法。由于数据挖掘课程涉及多种学科,理论性和实践性都很强,所以在教学中存在诸多问题和挑战。本科生初次接触数据挖掘技术这门课程,普遍感觉困难,主要在于该课程对数学要求比较高,而本科生的前期数学积累知识基础不够。针对应用型本科生的特点,本文从理论教学内容和实验教学环节来探讨这门课程应讲授的知识点。
一、理论教学内容探讨
数据挖掘技术融合了相当多的内容,由综合统计分析、机器学习、人工智能、数据库等诸多方面的研究成果综合而成;与专家系统、知识管理等研究方向不同的是,数据挖掘更侧重于应用的层面。让学生通过一个学期的学习就全面了解所有的细节是一件几乎就不可能完成的任务,因此在一个学期的教学中,必须有所侧重。数据挖掘技术包含分类、聚类、预测、关联分析、孤立点分析等环节。学生的学习目标是明白这些技术是用来干什么的,典型的算法大致是怎样的,以及在什么情况下应该选用什么样的技术和算法。下面给出了教学内容及重点难点。
1.数据挖掘技术概述
通过讲解案例,学生可以了解数据挖掘都能做哪些事情以及数据挖掘技术的价值。典型的案例有沃尔玛“啤酒喝尿布”的故事、百度用数据挖掘方法预测世界杯的结果、华尔街利用数据挖掘技术进行舆情分析预测股票价格、谷哥采用大数据分析技术预测流感趋势的案例等。通过讲授这些案例,让学生对数据挖掘技术这门课程产生浓厚的学习兴趣,同时让学生去阅读数据挖掘的综述文章,组织讨论彼此的综述成果。
2.数据预处理方法
数据是数据挖掘的前提和核心,数据挖掘成败往往取决于高质量的数据。教师首先要让学生了解什么是数据、数据中心及数据离散度的表示方法等,然后讲授数据中可能存在的问题及相应的预处理方法。本章重要的数据预处理方法有数据离散化方法和数据规范化方法;关于距离的知识是讲授的重点。因此,教师要让学生了解什么是距离,为什么要有这么多距离函数,什么情况下应该选取什么样的距离函数。
3.分类和回归
数据挖掘的绝大多数问题都可以理解成分类和回归问题,因而本章是整个课程教学的核心任务,分配的学时较多。由于在本课程之前,学生从未接触过机器学习知识,所以本章首先要学生理解分类和回归的概念,让学生能够区分哪些问题可以用分类算法解决,哪些问题可以用回归算法解决。对于本章的理论教学内容,建议讲授决策树和贝叶斯两种分类器及逻辑回归算法。决策树的构建思想说明数据有好多属性,这些属性的价值是有差异的;贝叶斯方法表明数据具有一定的统计规律,当数据足够多时,这种统计规律可以近似的定量描述。这两种方法都是重点内容。
逻辑回归是最常见、最经典的回归分析算法,可以用作预测某种风险,其中损失函数是讲授的重点,也是难点。
4.聚类问题
聚类问题是机器学习三大类问题之一,是非监督学习的一种。在现实生活中充斥着太多的无标签数据,聚类分析可以在杂乱无章的数据中找到数据的本质所在。最简单、最经典的聚类算法是kmeans聚类算法,其易于理解和实现,但是基于距离的思想计算相似性,无法解决数据中存在不规则密度体的问题,因此需要讲授另一种基于密度的聚類方法DBScan算法。本章重点是基于密度和距离的距离算法。
5.关联分析
关联分析并不是机器学习方法,是数据挖掘特有的技术。“啤酒尿布”问题就是关联分析的一个典型应用。对于本章的教学,建议从事务之间的简单关联、单个事务之间的时序关联两个角度来讲述关联分析。同时要强调辛普森悖论,让学生明白,数据预处理方法不恰当,可能导致错误的分析结果。本章重点内容是相关概念、Apriori算法。
6.离群点检测
离群点检测本质上是一个分类问题,即类别不平衡的分类问题,因为离群点往往被认为是数据中的小概率事件。离群点检测问题不仅需要确定哪些数据是离群点,还需要确定数据的离群程度。建议讲授基于概率的模型和基于密度的模型,重点在于对概率分析、数据密度等概念的理解。
7.案例分析
结合实际项目,介绍不同数据挖掘算法的应用、结果分析、性能等,让学生有切实的感受。
二、实践内容教学探讨
数据挖掘技术是一门理论性、应用性均较强的课程。学生学习理论知识的目的是解决实践问题,因此数据挖掘实践课程设计尤其重要。在本科数据挖掘技术课程的教学过程中,教学学时一般在48学时或64学时,以48学时居多。然而课程的理论内容教学就要占到32学时甚至更多,因此,要想让学生在16个学时左右就能利用所学理论解决实际问题,实验环境和实验内容的选择尤其重要。 以笔者近年给本科生指导实验课为例,共35个学生,仅一个贝叶斯算法,用C++语言来实现,占用了8个学时,且只有2个学生能正确完成任务,其余的学生在数据读取阶段就花费了近4个学时,有三分之一左右的学生甚至无从下手。而采用Matlab完成该实验,在学生以前没有接触过Matlab的情况下,时间减少了三分之一,当学生掌握Matlab基本语法之后,有2个学生2个小时就完成了该任务,而80%以上的学生在使用了Matlab之后,基本上能实现贝叶斯算法。下面给出了我校大三35名本科生采用不同工具完成数据挖掘实验课程的结果,如表1所示。
从表1可以看出,在有限的实验课时内,数据挖掘实验不宜采用C、C++、Java之类的编程语言;采用Matlab、Python、R之类的编程语言,可以使实验任务完成时间更短。但是由于本科学生普遍没有接触过Matlab、Python、R等语言,因此需要4~6学时的编程语言教学,才能让学生能掌握基本编程规则。即便如此,仍有相当一部分本科生无法完成实验任务。
Clementine是一款数据挖掘软件包,功能强大,简单易用。学生在完全没基础的情况下,用2个学时几乎都能掌握该使用方法,而实验任务基本可以在半个小时之内完成。
数据挖掘技术的实验课程,主要目的是让学生利用所学的专业知识解决实际问题。因此,建议本科的数据挖掘实验课程以Clementine工具为主,多设计一些数据挖掘案例,让学生学会用工具软件进行数据分析。同时,为了让优秀的学生能够自己编写自己的数据挖掘程序,建议以开放实验的形式,让学生自愿参与,采用Matlab、Python、R语言来实现。
三、结论
本文从理论教学内容和实验教学工具两个方面探讨了本科数据挖掘技术课程的教学,说明了各部分的教学重点和难点,分析了实践教学的语言应用与工具软件的优缺点,希望能为从事该课程教学的教师,提供一些參考。
参考文献:
[1]詹少强.大数据背景下的数据挖掘课程教学新探[J].长春教育学院学报,2014(22):81-82.
[2]张艳.大数据背景下的数据挖掘课程教学新思考[J].计算机时代,2014(4):59-61.
[3]李春江.大數据环境下的数据挖掘课程教学探索[J].黑龙江教育(理论与实践),2016(4):54-55.
[4]李忠,李姗姗.应用型本科院校IT专业数据挖掘课程建设[J].计算机时代,2014(11):65-69.
[5]徐琴.应用型本科数据挖掘技术课程教学探讨与实践[J].电脑知识与技术,2016(22):148-149.
[6]张增平,乔晓华.针对应用型本科生数据挖掘课程的教学实践[J].内蒙古财经大学学报,2015(4).
[7]江丽丽.基于数据挖掘技术的教学内容双向评价系统的设计与实现[J].科技信息,2010(27).
关键词:数据挖掘技术;实验课程设计;应用型本科
目前,数据已经渗透到当今每一个行业和业务职能领域,成为重要的生产因素。各行各业的决策正在从“业务驱动”转变为“数据驱动”,人们对海量数据的挖掘和运用,将创造出巨大的经济和社会价值。目前,我国高度重视大数据的发展。2015年8月31日,国务院印发《促进大数据发展行动纲要》,系统部署大数据发展工作。通过对大数据进行挖掘和分析,可以使企业清晰地了解自身现状、竞争环境、风险评判与决策支持。在对大数据进行充分挖掘与展现后,呈现给企业决策者的将是一份清晰、准确且有数据支撑的报告。所以,大数据分析师是参与企业决策发展制定的核心人物,因而被认为是未来十年最有前景的工作岗位。
目前大数据分析行业刚刚起步,职场上对数据分析师的岗位缺口很大,高校在此背景下开设数据挖掘技术课程,培养学生的数据意识、数据分析思维,无论学生将来是否从事数据分析相关的工作,都会对学生有深远的影响。
数据挖掘课程的教学目的是让学生掌握数据挖掘的相关知识,能分析并运用成熟的技术和方法。由于数据挖掘课程涉及多种学科,理论性和实践性都很强,所以在教学中存在诸多问题和挑战。本科生初次接触数据挖掘技术这门课程,普遍感觉困难,主要在于该课程对数学要求比较高,而本科生的前期数学积累知识基础不够。针对应用型本科生的特点,本文从理论教学内容和实验教学环节来探讨这门课程应讲授的知识点。
一、理论教学内容探讨
数据挖掘技术融合了相当多的内容,由综合统计分析、机器学习、人工智能、数据库等诸多方面的研究成果综合而成;与专家系统、知识管理等研究方向不同的是,数据挖掘更侧重于应用的层面。让学生通过一个学期的学习就全面了解所有的细节是一件几乎就不可能完成的任务,因此在一个学期的教学中,必须有所侧重。数据挖掘技术包含分类、聚类、预测、关联分析、孤立点分析等环节。学生的学习目标是明白这些技术是用来干什么的,典型的算法大致是怎样的,以及在什么情况下应该选用什么样的技术和算法。下面给出了教学内容及重点难点。
1.数据挖掘技术概述
通过讲解案例,学生可以了解数据挖掘都能做哪些事情以及数据挖掘技术的价值。典型的案例有沃尔玛“啤酒喝尿布”的故事、百度用数据挖掘方法预测世界杯的结果、华尔街利用数据挖掘技术进行舆情分析预测股票价格、谷哥采用大数据分析技术预测流感趋势的案例等。通过讲授这些案例,让学生对数据挖掘技术这门课程产生浓厚的学习兴趣,同时让学生去阅读数据挖掘的综述文章,组织讨论彼此的综述成果。
2.数据预处理方法
数据是数据挖掘的前提和核心,数据挖掘成败往往取决于高质量的数据。教师首先要让学生了解什么是数据、数据中心及数据离散度的表示方法等,然后讲授数据中可能存在的问题及相应的预处理方法。本章重要的数据预处理方法有数据离散化方法和数据规范化方法;关于距离的知识是讲授的重点。因此,教师要让学生了解什么是距离,为什么要有这么多距离函数,什么情况下应该选取什么样的距离函数。
3.分类和回归
数据挖掘的绝大多数问题都可以理解成分类和回归问题,因而本章是整个课程教学的核心任务,分配的学时较多。由于在本课程之前,学生从未接触过机器学习知识,所以本章首先要学生理解分类和回归的概念,让学生能够区分哪些问题可以用分类算法解决,哪些问题可以用回归算法解决。对于本章的理论教学内容,建议讲授决策树和贝叶斯两种分类器及逻辑回归算法。决策树的构建思想说明数据有好多属性,这些属性的价值是有差异的;贝叶斯方法表明数据具有一定的统计规律,当数据足够多时,这种统计规律可以近似的定量描述。这两种方法都是重点内容。
逻辑回归是最常见、最经典的回归分析算法,可以用作预测某种风险,其中损失函数是讲授的重点,也是难点。
4.聚类问题
聚类问题是机器学习三大类问题之一,是非监督学习的一种。在现实生活中充斥着太多的无标签数据,聚类分析可以在杂乱无章的数据中找到数据的本质所在。最简单、最经典的聚类算法是kmeans聚类算法,其易于理解和实现,但是基于距离的思想计算相似性,无法解决数据中存在不规则密度体的问题,因此需要讲授另一种基于密度的聚類方法DBScan算法。本章重点是基于密度和距离的距离算法。
5.关联分析
关联分析并不是机器学习方法,是数据挖掘特有的技术。“啤酒尿布”问题就是关联分析的一个典型应用。对于本章的教学,建议从事务之间的简单关联、单个事务之间的时序关联两个角度来讲述关联分析。同时要强调辛普森悖论,让学生明白,数据预处理方法不恰当,可能导致错误的分析结果。本章重点内容是相关概念、Apriori算法。
6.离群点检测
离群点检测本质上是一个分类问题,即类别不平衡的分类问题,因为离群点往往被认为是数据中的小概率事件。离群点检测问题不仅需要确定哪些数据是离群点,还需要确定数据的离群程度。建议讲授基于概率的模型和基于密度的模型,重点在于对概率分析、数据密度等概念的理解。
7.案例分析
结合实际项目,介绍不同数据挖掘算法的应用、结果分析、性能等,让学生有切实的感受。
二、实践内容教学探讨
数据挖掘技术是一门理论性、应用性均较强的课程。学生学习理论知识的目的是解决实践问题,因此数据挖掘实践课程设计尤其重要。在本科数据挖掘技术课程的教学过程中,教学学时一般在48学时或64学时,以48学时居多。然而课程的理论内容教学就要占到32学时甚至更多,因此,要想让学生在16个学时左右就能利用所学理论解决实际问题,实验环境和实验内容的选择尤其重要。 以笔者近年给本科生指导实验课为例,共35个学生,仅一个贝叶斯算法,用C++语言来实现,占用了8个学时,且只有2个学生能正确完成任务,其余的学生在数据读取阶段就花费了近4个学时,有三分之一左右的学生甚至无从下手。而采用Matlab完成该实验,在学生以前没有接触过Matlab的情况下,时间减少了三分之一,当学生掌握Matlab基本语法之后,有2个学生2个小时就完成了该任务,而80%以上的学生在使用了Matlab之后,基本上能实现贝叶斯算法。下面给出了我校大三35名本科生采用不同工具完成数据挖掘实验课程的结果,如表1所示。
从表1可以看出,在有限的实验课时内,数据挖掘实验不宜采用C、C++、Java之类的编程语言;采用Matlab、Python、R之类的编程语言,可以使实验任务完成时间更短。但是由于本科学生普遍没有接触过Matlab、Python、R等语言,因此需要4~6学时的编程语言教学,才能让学生能掌握基本编程规则。即便如此,仍有相当一部分本科生无法完成实验任务。
Clementine是一款数据挖掘软件包,功能强大,简单易用。学生在完全没基础的情况下,用2个学时几乎都能掌握该使用方法,而实验任务基本可以在半个小时之内完成。
数据挖掘技术的实验课程,主要目的是让学生利用所学的专业知识解决实际问题。因此,建议本科的数据挖掘实验课程以Clementine工具为主,多设计一些数据挖掘案例,让学生学会用工具软件进行数据分析。同时,为了让优秀的学生能够自己编写自己的数据挖掘程序,建议以开放实验的形式,让学生自愿参与,采用Matlab、Python、R语言来实现。
三、结论
本文从理论教学内容和实验教学工具两个方面探讨了本科数据挖掘技术课程的教学,说明了各部分的教学重点和难点,分析了实践教学的语言应用与工具软件的优缺点,希望能为从事该课程教学的教师,提供一些參考。
参考文献:
[1]詹少强.大数据背景下的数据挖掘课程教学新探[J].长春教育学院学报,2014(22):81-82.
[2]张艳.大数据背景下的数据挖掘课程教学新思考[J].计算机时代,2014(4):59-61.
[3]李春江.大數据环境下的数据挖掘课程教学探索[J].黑龙江教育(理论与实践),2016(4):54-55.
[4]李忠,李姗姗.应用型本科院校IT专业数据挖掘课程建设[J].计算机时代,2014(11):65-69.
[5]徐琴.应用型本科数据挖掘技术课程教学探讨与实践[J].电脑知识与技术,2016(22):148-149.
[6]张增平,乔晓华.针对应用型本科生数据挖掘课程的教学实践[J].内蒙古财经大学学报,2015(4).
[7]江丽丽.基于数据挖掘技术的教学内容双向评价系统的设计与实现[J].科技信息,2010(27).