什么是数据挖掘?数据挖掘怎么做啊?
Posted
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了什么是数据挖掘?数据挖掘怎么做啊?相关的知识,希望对你有一定的参考价值。
什么是数据挖掘?数据挖掘怎么做啊?
数据挖掘(Data Mining)是指通过大量数据集进行分类的自动化过程,以通过数据分析来识别趋势和模式,建立关系来解决业务问题。换句话说,数据挖掘是从大量的、不完全的、有噪声的、模糊的、随机的数据中提取隐含在其中的、人们事先不知道的、但又是潜在有用的信息和知识的过程。
原则上讲,数据挖掘可以应用于任何类型的信息存储库及瞬态数据(如数据流),如数据库、数据仓库、数据集市、事务数据库、空间数据库(如地图等)、工程设计数据(如建筑设计等)、多媒体数据(文本、图像、视频、音频)、网络、数据流、时间序列数据库等。也正因如此,数据挖掘存在以下特点:
(1)数据集大且不完整
数据挖掘所需要的数据集是很大的,只有数据集越大,得到的规律才能越贴近于正确的实际的规律,结果也才越准确。除此以外,数据往往都是不完整的。
(2)不准确性
数据挖掘存在不准确性,主要是由噪声数据造成的。比如在商业中用户可能会提供假数据;在工厂环境中,正常的数据往往会收到电磁或者是辐射干扰,而出现超出正常值的情况。这些不正常的绝对不可能出现的数据,就叫做噪声,它们会导致数据挖掘存在不准确性。
(3)模糊的和随机的
数据挖掘是模糊的和随机的。这里的模糊可以和不准确性相关联。由于数据不准确导致只能在大体上对数据进行一个整体的观察,或者由于涉及到隐私信息无法获知到具体的一些内容,这个时候如果想要做相关的分析操作,就只能在大体上做一些分析,无法精确进行判断。
而数据的随机性有两个解释,一个是获取的数据随机;我们无法得知用户填写的到底是什么内容。第二个是分析结果随机。数据交给机器进行判断和学习,那么一切的操作都属于是灰箱操作。
“简单地说,数据挖掘是从大量数据中提取或‘挖掘’知识。该术语实际上有点用词不当。数据挖掘应当更正确地命名为‘从数据中挖掘知识’,不幸的是它有点长。许多人把数据挖掘视为另一个常用的术语‘数据库中知识发现’或KDD的同义词。而另一些人只是把数据挖掘视为数据库中知识发现过程的一个基本步骤。” ——《数据挖掘:概念与技术》(J. Han and M. Kamber)
“数据挖掘就是对观测到的数据集(经常是很庞大的)进行分析,目的是发现未知的关系和以数据拥有者可以理解并对其有价值的新颖方式来总结数据。”——《数据挖掘原理》(David Hand, et al)
“运用基于计算机的方法,包括新技术,从而在数据中获得有用知识的整个过程,就叫做数据挖掘。”——《数据挖掘--概念、模型、方法和算法》(Mehmed Kantardzic)
“数据挖掘,简单地说,就是从一个数据库中自动地发现相关模式。”——《构建面向CRM的数据挖掘应用》(Alex Berson, et al)
“数据挖掘(DM)是从大型数据库中将隐藏的预测信息抽取出来的过程。”——《数据挖掘:机遇与挑战》(John Wang)
而作为数据挖掘领域的华人第一人,韩家炜教授在《数据挖掘:概念与技术》的教学幻灯片中,给出一个更清晰的定义:“数据挖掘,就是从大型数据库中抽取有意义的(非平凡的,隐含的,以前未知的并且是有潜在价值的)信息或模式的过程。”
这里我们可以看到数据挖掘具有以下几个特点:
基于大量数据:并非说小数据量上就不可以进行挖掘,实际上大多数数据挖掘的算法都可以在小数据量上运行并得到结果。但是,一方面过小的数据量完全可以通过人工分析来总结规律,另一方面来说,小数据量常常无法反映出真实世界中的普遍特性。
非平凡性:所谓非平凡,指的是挖掘出来的知识应该是不简单的,绝不能是类似某著名体育评论员所说的“经过我的计算,我发现了一个有趣的现象,到本场比赛结束为止,这届世界杯的进球数和失球数是一样的。非常的巧合!”那种知识。这点看起来勿庸赘言,但是很多不懂业务知识的数据挖掘新手却常常犯这种错误。
隐含性:数据挖掘是要发现深藏在数据内部的知识,而不是那些直接浮现在数据表面的信息。常用的BI工具,例如报表和OLAP,完全可以让用户找出这些信息。
新奇性:挖掘出来的知识应该是以前未知的,否则只不过是验证了业务专家的经验而已。只有全新的知识,才可以帮助企业获得进一步的洞察力。
价值性:挖掘的结果必须能给企业带来直接的或间接的效益。有人说数据挖掘只是“屠龙之技”,看起来神乎其神,却什么用处也没有。这只是一种误解,不可否认的是在一些数据挖掘项目中,或者因为缺乏明确的业务目标,或者因为数据质量的不足,或者因为人们对改变业务流程的抵制,或者因为挖掘人员的经验不足,都会导致效果不佳甚至完全没有效果。但大量的成功案例也在证明,数据挖掘的确可以变成提升效益的利器。
“数据挖掘”这个术语是在什么时候被大家普遍接受的,已经难以考证,大约在上世纪90年代开始兴起。其中还有一段趣话。在科研界,最初一直沿用“数据库中的知识发现”(即KDD,Knowledge Discovery in Database)。在第一届KDD国际会议中,委员会曾经展开讨论,是继续沿用KDD,还是改名为Data Mining(数据挖掘)?最后大家决定投票表决,采纳票数多的一方的选择。投票结果颇有戏剧性,一共14名委员,其中7位投票赞成KDD,另7位赞成Data Mining。最后一位元老提出“数据挖掘这个术语过于含糊,做科研应该要有知识”,于是在科研界便继续沿用KDD这个术语。而在商用领域,因为“数据库中的知识发现”显得过于冗长,就普遍采用了更加通俗简单的术语——“数据挖掘”。
严格地说,数据挖掘并不是一个全新的领域,它颇有点“新瓶装旧酒”的意味。组成数据挖掘的三大支柱包括统计学、机器学习和数据库等领域内的研究成果,其它还包含了可视化、信息科学等内容。数据挖掘纳入了统计学中的回归分析、判别分析、聚类分析以及置信区间等技术,机器学习中的决策树、神经网络等技术,数据库中的关联分析、序列分析等技术。 参考技术B 数据挖掘一般是指从大量的数据中自动搜索隐藏于其中的有着特殊关系性(属于Association rule learning)的信息的过程。数据挖掘通常与计算机科学有关,并通过统计、在线分析处理、情报检索、机器学习、专家系统(依靠过去的经验法则)和模式识别等诸多方法来实现上述目标。
数据挖掘的步骤会随不同领域的应用而有所变化,每一种数据挖掘技术也会有各自的特性和使用步骤,针对不同问题和需求所制定的数据挖掘过程也会存在差异。此外,数据的完整程度、专业人员支持的程度等都会对建立数据挖掘过程有所影响。这些因素造成了数据挖掘在各不同领域中的运用、规划,以及流程的差异性,即使同一产业,也会因为分析技术和专业知识的涉入程度不同而不同,因此对于数据挖掘过程的系统化、标准化就显得格外重要。如此一来,不仅可以较容易地跨领域应用,也可以结合不同的专业知识,发挥数据挖掘的真正精神。
想要了解更多关于数据挖掘的信息,推荐咨询CDA数据分析师。CDA数据分析师涉及行业包括互联网、金融、咨询、电信、零售、医疗、旅游等,涉及岗位包括大数据、数据分析、市场、产品、运营、咨询、投资、研发等。该标准符合当今全球数据科学技术潮流,可以为各行业企业和机构提供数据人才参照标准。点击预约免费试听课。 参考技术C
数据挖掘是从大量的、不完全的、有噪声的、模糊的、随机的数据中提取隐含在其中的、人们事先不知道的、但又是潜在有用的信息和知识的过程。
数据挖掘流程:
定义问题:清晰地定义出业务问题,确定数据挖掘的目的。
数据准备:数据准备包括:选择数据–在大型数据库和数据仓库目标中 提取数据挖掘的目标数据集;数据预处理–进行数据再加工,包括检查数据的完整性及数据的一致性、去噪声,填补丢失的域,删除无效数据等。
数据挖掘:根据数据功能的类型和和数据的特点选择相应的算法,在净化和转换过的数据集上进行数据挖掘。
结果分析:对数据挖掘的结果进行解释和评价,转换成为能够最终被用户理解的知识。
2KDD是什么
其实就是一个数据处理的过程,从输入数据开始,进行预处理工作,包括特征选择,维归约规范化和选择数据子集等等,随后进行分析和挖掘,再经过处理,例如模式过滤,可视化,模式表示等,最后形成可用信息的过程。
3数据挖掘要解决什么问题
具体的讲主要是以下几个,首先是数据的可伸缩性,提高或改变数据的可伸缩度。其次是解决数据高维性的问题。处理异种数据和复杂数据。解决数据所有权与分布问题。对非传统的分析进行合理处理。
4数据挖掘的任务
其实主要包括四个大块,可以独立运行,也可以联合操作,分别是聚类分析,预测建模,关联分析,异常检测。
聚类分析实用的技术包括K均值,凝聚层次聚类,dbscan,簇评估等,主要目的是通过基于原型,密度,图等的聚类,发现其间的关系。
预测建模则更多的是一种可视化角度分析方法,利用分类,回归等方法,来建立模型解决问题。
关联分析顾名思义,更多强调数据中的特征强关联,例如说过一万次的啤酒与尿布等。
异常检验则主要是识别不同于其他数据的具有显著特征值的数据。
我要用户PHP和数据库做一个成绩查询系统。请问我应该怎么做啊?不要太复杂
基础都有,就是不知道怎么开始,从哪做起。谁可以给我列出个步骤啊,就是先做什么?这是用来交作业的。万分感谢帮我想过的人!
设计思路么?首先你需要设计数据库,成绩查询需要设计哪些表,最简单的就是这几三张表:学生表,课程表,成绩表,然后设计每个表的字段和关联关系
然后写代码,对数据库进行CURD,这种小系统完全不用考虑架构,数据量等,所以很简单的,数据库+PHP服务端+web前端 最多1天就差不多能做好了 参考技术A 如果有一定的PHP基础就挺好做了,具体你可以参考下面的步骤来做:
1.首先你需要建立一个数据库;
2.然后再在数据库里录入一些示例数据;
3.根据你的需求编写代码;
4.先写前端的html查询页面的代码(如果不知道代码源,可以在网上搜索);
5.根据你的需求编写查询成绩需要的编辑框、下拉选择框等,并将做好的表单提交并设定好xxx.php;
6.接着是撰写后台代码xxx.php,并连接数据库,根据参数设置查询数据,并设置好返回或直接显示结果。
除此之外,也可以通过在线的成绩查询系统生成网站进行制作,更简单~
以上是关于什么是数据挖掘?数据挖掘怎么做啊?的主要内容,如果未能解决你的问题,请参考以下文章
java 将上传文件以二进制流保存在数据库表中的某个字段,怎么做啊?
我要用户PHP和数据库做一个成绩查询系统。请问我应该怎么做啊?不要太复杂