王军 赵颖珺
摘 要: 随着大数据时代来临,数据挖掘技术成为全球研究的热点,在数据挖掘过程中,经常会用到统计学方面的知识、理论和统计思想。与此同时,对数据挖掘技术的研究也促进着统计学的研究和发展。因此,培养具有统计思维的程序设计人才正是培养应用型人才的客观要求。本文分析了数据挖掘与统计思想之间的关联,并提出在培养程序设计人才过程中渗透统计思维的三个具体方法,从而加强程序设计人才统计思维的培养,提高人才培养的质量。
关键词: 数据挖掘; 统计思维; 应用型人才; 分析方法
中图分类号:TP311 文献标志码:A 文章编号:1006-8228(2018)09-96-03
Abstract: With the coming of big data era, data mining has become a hot research topic in the global. During the data mining, the knowledge, theory and thought of statistics are often used. At the same time, the research of data mining also stimulates the research and development of statistics. Therefore, it is the objective requirement of cultivating application-oriented talents to train the programming talents with statistical thinking. In this paper, the relationship between the data mining and the statistical thinking is analyzed, and three specific methods to infiltrate the statistics thinking in the training of programming talents are put forward, so as to strengthen the training of the statistical thinking of program design talents and improve the quality of personnel training.
Key words: data mining; statistical thinking; application-oriented talent; analysis method
0 引言
随着智能终端、云计算、移动互联网日新月异的发展,数据正以惊人的速度产生,尤其是大企业如电信运营商、电子商务、互联网公司、金融、股市等生产并掌握着PB或ZB级数据,大数据正在改变着人们的思维、拥有无限价值的潜能。如今,衡量企业的核心资产能力和价值能力都是以其管理大数据的能力为依据[1]。如何從大规模数据中挖掘出有价值的数据,现在成为全球研究的热点。
1 相关技术介绍
1.1 统计思维
文献[2]胡敏认为,统计思维是学生获得统计基础和基本技能,形成数据分析观念和随机思想的思维模式和解决问题的方法,具体包括,具有收集和整理数据的意识,学会分析和解释数据的方法,并根据数据处理结果做出合理的推断和决策;体会数据的随机性和不确定性,统计思维的具体表现是数据的收集、整理、描述、分析和解释等方面的能力。
1.2 数据挖掘
数据挖掘是指,从存放在数据库、数据仓库、互联网或其他信息库中大量的、含有噪声的、未知的和对决策有潜在价值的数据发现有价值知识的过程[3],或者是指,从大量的数据中通过算法搜索隐藏于其中有价值信息的过程,通过统计、在线分析处理、情报检索、机器学习、专家系统和模式识别等诸多方法来发现知识。研究的目的主要是发现知识、使数据可视化、纠正数据、预测趋势走向,获取可用的新颖的数据展现方式,帮助数据所有者理解并开发其使用价值。
数据挖掘的过程就是对观测到的数据集进行分析,比如回归分析、预测分析、可视化分析,发现未知的关系和总结。在这个过程中,我们会利用不同的分析方法和分析工具,在海量数据处理过程中进行数学建模和关系发现,这些模型和关系可以辅助决策和预测。
1.3 数据挖掘与统计思维的关系
文献[4]中详细介绍了数据挖掘的各个阶段的数据挖掘算法所用到的统计学理论和统计分析方法;文献[5,7]中介绍了在线流数据聚类挖掘算法和并行化加权近邻传播聚类挖掘算法;文献[6]提出了一种基于部分约束信息的大规模数据集EM概率聚类算法等大量运用了概率和数理统计方法。十大经典算法中的K-means算法,介绍了先选择k个对象,每一个对象初始地代表一簇平均值中心对剩余的对象根据与其各个簇中心的距离,将它赋给最近的簇,然后重新计算每个簇的平均值。这个过程不断的迭代,直到准则函数收敛。准则函数定义为:
其中,E是准则函数,表示数据集中所有数据点的平均误差总和,x是空间中的点,表示所给定的数据点,是簇Ci的平均值,准则函数E使得生成的结果簇尽可能地独立和紧凑。
十大经典算法中的EM算法,介绍把数据的每一个聚类看作是一个高斯分布,这个多维的高斯分布的概率密度函数为:
其中,μh为高斯分布中心,Σh,h=1,2,…,k为协方差,若X为d维列向量,则为d维的列中心向量,Σh为d×d的协方差,密度函数为每一个多维高斯分布设置一个权重系数wh,于是对无标签数据聚类的过程转变为估计适合的参数,使得原始待聚类数据的拟然最大,都是用统计学知识和统计分析方法进行数据挖掘。还有更多的数据挖掘算法表明,统计学方法作为数据挖掘的工具在数据挖掘中发挥着不可忽视的作用。数据挖掘过程中无时无刻不是在对数据进行收集、归类、分析、整理且反复进行。统计思维始终贯穿在数据挖掘的全过程中,数据挖掘过程就是对统计思维的培训和强化训练、获取思维能力的过程,也是统计思维得到应用和创新过程,同时统计思维也指导或引导数据挖掘时思维指向,集中思考采用什么样的统计方法或统计分析方法才能达到数据挖掘的目的。数据挖掘的过程与统计思维的训练是相辅相承的,同时还要在统计学或数理统计的学习过程中强化统计思维的训练,使之不断地在应用中为数据挖掘提供新的指导思想
2 程序设计人才培养方式的转变
程序设计是给出解决特定问题程序的过程。程序设计是以某种程序设计语言为工具、以算法为基础对数据进行处理的过程;程序设计的过程包括分析、设计、编码、测试和排错等几个环节。
人才培养是对人才进行教育、培训的过程。目标是培养具有良好人文、科学素质和社会责任感,学科基础扎实,具有自我学习能力、创新精神和创新能力的人才。具体包含以下几个方面:得到基础研究和应用研究的训练,具有扎实的基础理论知识和实验技能,动手能力强、综合素质好;掌握科学的思维方法,具备较强的获取知识能力,具有探索精神、创新能力和优秀的科学品质。结合时代背景与自己多年教学经验,本文提出了3个培养具有统计思维的程序设计人才具体思路与方法。
2.1 从纯形式的程序设计向概率思维的转变
日常的程序设计教学过程中,程序设计的学习或教学主要是学习基本的语法规则,程序设计的基本方法和语言的表达能力。实验或实训中所给出的问题主要是一些常规性的计算、实际问题的计算机表示、算法的空间复杂度和时间复杂分析、数据在计算机中组织方式和数据输入、输出形式等能力进行训练。在大数据时代,传统的教学模式不太适应社会或行业或企业对程序设计人员的客观需求,程序设计人员的培养必须加强统计学或数理统计或统计方法的学习。统计学是数据分析、处理的一门学科。随机事件、概率分析、统计分析等基础理论来源于统计学或数理统计。因此在实验或实训中加强随机事件、概率统计方面的问题设计,设计贴近实际、贴近生活的案例。比如:某高速路的流量分析、某交通要道交通阻塞时间段分析、交通事故调查、城市绿化树苗的成活率等。所以,设计人员必须深入实践、随机抽样、大量实践,反复验证,最后通过统计分析有可能提供有价值的方案。坚持在程序设计中以概率事件的问题来驱动和引导程序设计的实训、训练,训练概率思维的思维能力和统计思维的思维能力,调整程序设计人才的思维方式和训练方法,为数据挖掘培养合格的人才,即大数据时代所需要的人才。
2.2 从常规的确定性研究向随机性研究的转变
当前程序设计人员的培养或程序设计教学主要是研究某一特定的软件架构和实现方法。主要真对数据库中有结构化的数据进行应用研究。大数据时代产生的数据呈现无结构化或半结构化,且无结构或半结构化数据量与日聚增,这些无结构或半结构化的数据中隐藏着极具价值的知识,这就要求程序设计人员的培养或程序设计教学尽快转变为对云计算、云存储、分布存储、人工智能、机器学习等方面知识进行学习、训练、研究,从超大量的随机事件中发现更多隐藏价值的知识。使这知识能为企业、交通、国防、科技、农业等各行各业服务,培养更多数据挖掘人才。
2.3 从演绎归纳向统计思维模式的转变
数据挖掘过程中,利用统计分析方法对数据挖掘算法进行演绎归纳。从事的主要工作还是进行方法论研究,是在寻找普遍性规律。当然有很多算法应用在实际中,如机器学习算法、神经网络算法、模式识别算法等。但是数据中存在非常多的数据是无规律可循的,这就要求数据分析人员、数据分析师、程序设计人员及程序研究人员,对产生的数据进行各种各样大规模实际或实时的统计,当全局数据中的某一类数据统计量达到一定程度后有可能从统计的数据中发现规律或发现隐藏的知识,这种思维是纯形式的统计思维,这种统计思维避开了数据挖掘完全依赖统计分析方法的绝对性,即:当找不到统计分析方法时,机械地对全局大数据中的各类数据进行不停的统计和分析,最终也有可能发现更多有价值的规律和隐藏的知识。比如,对全国流通量比较大的一百条高速公路的某路段的轿车的车型、车牌进行几乎无漏的100天统计,统计结果可能提高用户对某种轿车的认可程度,特定车辆在某路段出现的频度、属地车辆出现的频度等分析结果,有可能对轿车生产厂家或交通管理或对车辆的追逃提供有价值的线索。
也就是说,传统的统计方法也有可能对数据挖掘带来意想不到的结果。从演绎归纳到纯形式的统计思维的训练,当量变达到一定程度时对数据挖掘的研究可能提供很有价值的线索。
3 结束语
客观世界是充满概率的,而不是确定的,客观世界的事物之间是存在某种关联关系而不是存在某种因果关系的。大数据时代的数据挖掘的价值是寻找数据之间的关联关系,这种关联关系能够帮助决策者正确决策,制定科学的办法,创造更的价值,推动事物之间能够协调发展。教学的目的是为社会输送符合社会需要的人才,大数据时代程序设计人才的培养,不仅要懂得计算机相关的知识,掌握程序设计的基本理论、方法,有设计能力,更主要的是懂得寻找多学科交叉的知识背景,能够利用统计,分析方法去发现交叉学科的关联关系,交叉学科间的关联关系存在着更多的科学价值和应用前景。
数据之间的关联关系本质上就是事物之间的关联关系,这种关联关系是驱动社会发展的原动力。大数据时代对程序设计人才的培养坚持从单纯的程序设计向概率思维转变、从研究问题的确定性向随机性转变、从演绎归纳向统计思维转变。在创新驱动发展的大背景下,培养具有统计思维的程序设计人才,是计算机教育、软件教育工作者必须承担的历史重任和历史使命。
参考文献(References):
[1] 陈一昕.大数据的思维革命及算法挑战[J].信息通信技术,2013.6.
[2] 胡敏.五年級学生统计思维水平的调查研究[D].苏州大学硕士学位论文,2016.
[3] 范明.孟小峰等.数据挖掘概念与技术[M].机械工业出版社,2006.
[4] 崔广风.数据挖掘中的统计方法[D].西南石油大学硕士学位论文,2014.
[5] 李维.面向大数据的聚类数据挖掘算法[D].南京邮电大学硕士学位论文,2014
[6] 王玉雷.面向大数据的聚类挖掘算法研究[D].南京邮电大学硕士学位论文,2015.
[7] 孙吉贵.刘杰.赵连宇.聚类算法研究[J].软件学报,2009.20(5):1337-1348
[8] 李金昌.统计思维研究[M].中国统计出版社,2009.
[9] 李金昌.应用抽样技术[M].科学出版社,2010.
[10] 张建锋.陈钢译.程序员数学之概率统计[M].人民出版社,2013.