◆黄文秀
数据挖掘技术及应用研究
◆黄文秀
(福建农林大学东方学院 福建 350007)
随着物联网、移动互联网的快速发展,我们已经进入大数据时代,数据挖掘是大数据中最重要也是最关键的工作,本文主要探讨了数据挖掘特点、数据挖掘算算法、数据挖掘过程以及它不同领域中的应用,为进一步研究该课题的人员提供一定的参考价值。
大数据;数据挖掘;算法;应用
近几年,随着信息化社会的不断建设,各种信息处理系统像雨后春笋不断涌现,数据量急剧增长,传统的数据分析方法已不能满足人们的需求。数据挖掘作为一种新兴的数据分析方法,它以实际中的应用需求,综合数据库技术、人工智能、专家系统、统计等多方面技术从海量数据库中发现隐藏的知识[1],广阔的市场和研究利益使得这块领域发展迅速。目前,数据挖掘已在处理大数据量的各个领域中得到广泛应用,大量的数据挖掘成功实例说明了数据挖掘对信息处理确实高效可行[2],它为各类研究人员、商业决策者或者政府企业管理者提供可靠的信息支持,提高了工作效率和经济效益。
数据挖掘(Data Mining),即数据开挖采掘,数据挖掘的数据来源于实际应用,通过对海量数据的高级处理,提取出隐藏的有用的、让人容易理解的知识又运用到实践中去,辅助实际决策。它是一个系统工程,包括数据库数据准备与管理、数据预处理和数据转化、挖掘算法研究分析与应用、挖掘结果验证与展示,这些步骤在挖掘过程中不断地交互循环。它包括浅层次应用,如数据查询及报表功能,数据库联机分析处理等;高层次应用则是从大数据中发现新知识,提高挖掘数据的价值[3]。
数据挖掘技术具有以下特点:
(1)应用性,数据挖掘的数据源于实际应用,知识通过数据挖掘后又要应用到实际系统中,辅助现实决策。
(2)数据量大、结构复杂,数据规模已从先前的GB、TB跃升到PB,数据形式多样,如日志信息、图形图片、视频动画等。
(3)实时性,大数据时代,要求数据挖掘处理速度快,及时反馈结果以随时提供决策支持。
(4)动态性,由于数据库中的数据是随时发生变化的,因此数据挖掘结果只能代表当前状态的知识信息,随着时间的推移,要及时进行更新。
(5)集合性,数据挖掘算法、建模方式很多,如专家系统、人工智能、分析统计、数据库技术等的运用,在一个具体的实例应用中,数据挖掘往往集合多种功能的应用,每种功能都有相关数据模式及挖掘算法的支撑。
(6)价值性,低密度高价值,合理利用看似无价值的数据并对其进行深层次的挖掘分析,将会为商业和社会带来巨大的价值。
(1)关联规则
关联规则最早应用在市场购物篮分析中,反映了同时购买某些商品的可能性,是事物之间相互依赖或关联的知识。如果事件中存在两项及以上属性有关联,则其中一项的属性值可以通过其他多项属性值进行预测[4-6]。较著名的关联规则算法是使用候选项集找频繁项集的Apriori算法和基于划分的FP-树频集算法。
(2)分类
分类实现的是数据挖掘中的预测任务,反映了事物的共同和差异型的特征知识。分类算法主要有基于统计的朴素贝叶斯、基于规则的决策树、基于神经网络的神经网络算法、基于距离的KNN算法等。应用领域包括医疗、零售业、通信和金融等[7]。
(3)聚类
聚类,即把相似的数据集归到一起,它按照某个特定标准将数据集分成几个不同的类,使得同类的数据对象特征尽可能相似,而不同类中的数据特征尽可能的相异。较著名的聚类算法有基于划分的k-means算法,基于层次聚类的BIRCH算法和基于密度的DBSCAN算法[8]。
(4)时间序列预测
时间序列预测是跟时间相关的,它根据时间序列型数据,利用历史数据去预测未来数据,这种与时间相关数据进行分析的处理方法即时间序列模型,该模型可根据时间相关的数据寻到一些隐藏的信息来辅助决策,因此也可认为是跟时间属性有关的关联知识。现在比较常用的时间序列预测方法有经典的神经网络、统计方法和机器学习等[9]。
(5)孤立点分析
在一组数据中存在一些与其他数据不同的不符合一般模型的数据,人们把这些数据称作孤立点。孤立点有可能是人为操作所致,也有可能是数据固有的变异性结果。在某些情况下,孤立点有着重要的应用,如在商业及金融活动中欺诈检测,网络信息安全入侵异常监测等。常用的孤立点分析法有基于统计的孤立点检测、基于距离的孤立点检测、基于偏离的孤立点检测等[10]。
数据挖掘的过程大致可分为以下几个步骤:建立数据挖掘库、分析数据、模型训练、挖掘实施与维护及结果解释与评估[11]。过程如图1所示。
图1 数据挖掘过程
根据业务需求,分析所要挖掘的数据对象,只有准确对目标数据进行定义,才能充分挖掘出有价值的信息。可根据企业现有的数据仓库去创建一个独立的数据挖掘库,主要包括数据源的收集、数据字段描述、正确数据分析、数据字段的选择、数据的合并整合、元数据构建、数据加载及维护等工作[12]。
分析数据就是进行字段处理,包括从现在挖掘库中筛选对挖掘输出影响最大的字段和决定是否增加有用字段。主要包括选择变量、选择记录、创建新变量、转换变量等工作[12]。
数据挖掘常用的模型有:分类模型、预测模型、回归模型、聚类模型等。模型训练是一个不断反复的过程。哪个模型能更好地挖掘出有价值的信息,只有对不同的模型进行详细反复的训练才能得出结论,在这个过程中可能会得到新启发,在这些启发的引导下重新修改变量数据,甚至修改最初对数据对象的理解和定义。在没有行业经验的情况下,最好用不同的参数或算法多建立几个模型进行训练和测试,直至找到最好的。
模型在验证使用后,挖掘结果主要有两种使用方法,一是将挖掘结果提供给决策人员作参考,由决策人员提出行动方案;二是把模型应用到不同的数据集上,然后使用OLAP等工具进一步分析。模型进行数据挖掘后,要不断进行监控,随着使用时间的增加,事物在不断发展,原先创建的模型已不可用,这就需要不断的对模型进行重新测试,直至训练出可用的模型。
需要对数据挖掘的结果进行分析和评估,如果分析结果不能满足挖掘的任务,或者没有能得到有价值的信息,此时就需要反复前面的步骤,包括重新创建数据挖掘库、重新筛选数据字段并进行清洗,转换数据类型,设置新的参数值,研究挖掘算法,使用新模型进行重新训练,结果输出方式的可视化处理等,直至得到有价值、令人满意的挖掘结果。
在大数据时代,各行各业处理的数据量急剧增长,数据处理技术不断提高,数据挖掘作为一种重要的信息处理方式在很多领域都被应用,如教育系统、通信行业、农业生产、财务审计、海量数据的处理等方面都用了数据挖掘技术。
数据挖掘在教育教学系统中的应用又被称为教育数据挖掘(Education Data Ming,EDM),指从教育系统大量的数据中挖掘出有意义的信息供教育管理者、教育者、学习者、教育研究者和教育软件开发者等提供服务。查阅近几年的相关论文,发现主要的研究方向及内容如下:
(1)在教学管理中的应用,运用决策树及关联算法分析大学生质量培养的因素、及这些因素与学生学习课程之间的关系;将关联规则应用到教学评价系统中,处理学生对教师的评价、教师之间互评、学校领导对教师评价等的评价数据,挖掘出教学效果和教师的学历、职称、年龄的关系,分析影响学生评价结果的相关因素,反馈评教结果,有效促进教师进行教学改革和提高教学能力,为教学管理工作提供科学可靠的依据[13]。
(2)在学生成绩管理中的应用,利用数据挖掘中的决策树分类规则挖掘影响成绩的因素,分析学生成绩的好坏跟学生的专业、性别、籍贯、任课教师等的关系,利用关联规则和决策树算法分析考试成绩分布情况,为管理教师改善教学方法、提高教师教学质量提供数据支持。使用关联规则对学生课程成绩进行挖掘分析,得出课程之间的选修后学关系,为管理者安排课程学习提供依据[14]。
(3)在教学评估中的应用,使用关联规则挖掘教师教学质量与教师的年龄、学历、职称及任教时间的关系;使用关联规则挖掘学生毕业论文质量和学生的学习态度、分析解决问题能力、文献检索阅读能力、文字表述能力、创新等因素的关系,为毕业论文指导教师提供指导意见[15]。
(1)在农业专家系统及农业生产决策系统中的应用,利用预测算法实现农作物生长、病虫害发生时间及种类预测;利用孤立点分析法分析农业气象状况,挖掘温度、湿度、日照、风力等因素出现异常点时气候发生的变化,为农户进行防灾、减灾提供及时、准确的气象信息服务[16]。
(2)在农业市场信息中的应用,主要包括使用关联规则发现同时买进相关农产品的信息;利用预测技术预测各种农产品的价格走势;利用聚类分析对农产品进行科学分类;利用孤立点分析技术找出影响农产品价格的突发事件,如灾情、金融、政治、进出口问题等,为农业管理者提供决策支持[16]。
主要是采用聚类算法对客户群进行细分,利用时间序列等预测技术去分析不同客户的盈利能力、客户流失保持、客户信用度及通信流量经营信息,这些挖掘信息能够帮助通信行业中在客户群管理中起到重要的作用[17]。
数据挖掘还在旅游商务系统、音乐分类问题、上网行为的OLAP联机分析及预测、自来水供水系统、金融风险评估、医疗信息系统及电子政务中等领域应用,随着现代信息技术的不断发展,数据挖掘集多方面先进的信息处理技术于一体,也将充分发挥它的的优势,提高全社会的信息化水平[18-23]。
本文总结了数据挖掘的定义、数据挖掘的常用算法、挖掘过程的一般方法及在不同领域的应用,数据挖掘技术的发展十分迅速,在不同领域实现了挖掘技术发展及数据资源共享,获得了巨大的成功,大大提高了人们的工作效率。当今社会处于大数据的信息时代,信息产生价值,信息资源越丰富、越准确,将为企业获得更多财富。充分利用数据挖掘技术实现数据处理,将为数据库应用开辟广阔的前景,为信息社会开辟一个崭新的时代。
[1]李文慧.数据挖掘与推荐系统对媒体受众的影响[J].商业文化,2012.
[2]徐涛, 李强.数据挖掘技术及其应用[J].广西工学院学报,2000.
[3]田艳.数据挖掘技术的应用及发展[J].统计与信息论坛,2004.
[4]张红艳,都娟.关联规则中Apriori算法的应用[J].数字技术与应用,2011.
[5]李彦伟.基于关联规则的数据挖掘方法研究[D].江苏:江南大学,2011.
[6]易黎,胡雅萌,彭艳兵.探索关联规则可视化的结构化关联映射图[J].计算机应用与软件,2017.
[7]李玲俐.数据挖掘中分类算法综述[J].重庆师范大学学报(自然科学版),2011.
[8]方媛,车启凤.数据挖掘之聚类算法综述[J].河西学院学报,2012.
[9]何晓旭.时间序列数据挖掘若干关键问题研究[D].安徽:中国科学技术大学, 2014.
[10]周喜, 曾丽.孤立点数据挖掘技术在审计信息化中的应用研究[J].南华大学学报(社会科学版), 2011.
[11]于飞.基于距离学习的集成KNN分类器的研究[D].辽宁: 大连理工大学, 2009.
[12]郐淑娥.互联网用户的信息行为分析[J].中国管理信息化, 2014.
[13]唐松.基于数据挖掘的高校评教系统设计与实现[D].四川: 电子科技大学, 2010.
[14]岳超,范太华,姬亚利等.数据挖掘在学生成绩数据中的应用研究[J].软件导刊,2013 .
[15]洪江龙.基于数据挖掘的本科专业评估管理信息系统应用研究[D].上海: 上海交通大学,2010.
[16]张文静,卢海霞,冯艳红等.农业生产中数据挖掘的应用[J].农机化研究,2008.
[17]周锦文.数据仓库、数据挖掘在移动业务中的应用[D].湖南:中南大学,2003.
[18]李智文.数据挖掘在音乐分类中的应用[D].湖南:中南大学,2012.
[19]李森.基于数据挖掘的旅游电子商务系统研究与实现[D].四川:电子科技大学,2011.
[20]刘梦超.数据挖掘在上网行为分析中的应用与实现[D]. 湖南:南华大学,2013.
[21]张骏.数据仓库和数据挖掘在马鞍山供水系统中的应用[D].黑龙江:哈尔滨工业大学,2007.
[22]谭燕妮.数据挖掘在信息风险评估中的应用[D].湖南: 长沙理工大学,2013.
[23]左颖.数据挖掘在医学数据分析中的应用[D].湖南:国防科学技术大学,2007.
福建省中青年教师教育科研项目(JAT160682)。