首页 > 编程笔记 > Python笔记 阅读:238

机器学习、数据挖掘及人工智能的关系(非常详细)

目前人工智能很热门,但是很多人容易将人工智能与机器学习混淆。此外,数据挖掘、人工智能和机器学习之间的关系也容易被混淆。

从本质上看,数据科学的目标是通过处理各种数据促进人们的决策,机器学习的主要任务是使机器模仿人类的学习,从而获得知识。而人工智能借助机器学习和推理最终是形成具体的智能行为。机器学习与其他领域之间的关系如下图(此处是简图,文末还有详图)所示。

机器学习、数据挖掘及人工智能三者间的关系(简图)
简图:机器学习、数据挖掘及人工智能三者间的关系

什么是人工智能?

人工智能是让机器的行为看起来像人所表现出的智能行为一样,这是由麻省理工学院的约翰·麦卡锡在 1956 年的达特茅斯会议上提出的,字面上的意思是为机器赋予人的智能。人工智能的先驱们希望机器具有与人类似的能力:感知、语言、思考、学习、行动等。

最近几年人工智能风靡全球的主要原因就是,随着机器学习的发展,人们发现机器具有了一定的感知(图像识别)和学习等方面的能力,很容易认为目前已经达到了人工智能发展过程中的奇点。实际上,人工智能包括计算智能、感知智能和认知智能等层次,目前人工智能还介于前两者之间。

由于目前人工智能与人类智能相比较,二者实现的原理并不相同,特别是人脑对于信息的存储和加工过程尚未被研究清楚,与目前主流的深度学习理论存在较大的基础差异。因此,目前人工智能所处的阶段还在“弱人工智能”(Narrow AI)阶段,距离“强人工智能”(General AI)阶段还有较长的路要走。

例如,目前人类对于知识的获取和推理并不需要大量的数据进行反复迭代学习,只需要看一眼自行车的照片就能大致区分出各式各样的自行车。因此,要达到强人工智能的阶段可能要在计算机基础理论方面进行创新,实现类人脑的结构设计。

通常来说,人工智能是使机器具备类似人类的智能性,人工智能的典型系统包括以下几个方面:

什么是数据挖掘?

数据挖掘使用机器学习、统计学和数据库等方法在相对大量的数据集中发现模式和知识,它涉及数据预处理、模型与推断、可视化等。数据挖掘包括以下几类常见任务。

1. 异常检测

异常检测(anomaly detection)是对不符合预期模式的样本、事件进行识别。异常也被称为离群值、偏差和例外等。异常检测常用于入侵检测、银行欺诈、疾病检测、故障检测等。

2. 关联分析

关联规则学习(Association rule learning)是在数据库中发现变量之间的关系(强规则)。例如,在购物篮分析中,发现规则{面包,牛奶}→{酸奶},表明如果顾客同时购买了面包和牛奶,很有可能也会买酸奶,利用这些规则可以进行营销。

3. 聚类

聚类是一种探索性分析,在未知数据结构的情况下,根据相似性把样本分为不同的簇或子集,不同簇的样本具有很大的差异性,从而发现数据的类别与结构。

4. 分类

分类是根据已知样本的某些特征,判断一个新样本属于哪种类别。通过特征选择和学习,建立判别函数以对样本进行分类。

5. 回归

回归是一种统计分析方法,用于了解两个或多个变量之间的相关关系,回归的目标是找出误差最小的拟合函数作为模型,用特定的自变量来预测因变量的值。

数据挖掘在大数据相关技术的支持下,随着数据存储(非关系型NoSQL数据库)、分布式数据计算(Hadoop/Spark等)、数据可视化等技术的发展,数据挖掘对事务的理解能力越来越强,如此多的数据堆积在一起,增加了对算法的要求,所以数据挖掘一方面要尽可能获取更多、更有价值、更全面的数据,并从这些数据中提取价值。

数据挖掘在商务智能方面的应用较多,特别是在决策辅助、流程优化、精准营销等方面,例如:

机器学习、人工智能与数据挖掘的关系

机器学习是人工智能的一个分支,作为人工智能的核心技术和实现手段,通过机器学习的方法解决人工智能面对的问题。机器学习是通过一些让计算机可以自动“学习”的算法,从数据中分析获得规律,然后利用规律对新样本进行预测。

机器学习是人工智能的重要支撑技术,其中深度学习就是一个典型例子。深度学习的典型应用是选择数据训练模型,然后用模型做出预测。例如,博弈游戏系统(Deep Blue)重于探索和优化未来的解空间(Solution Space),而深度学习则是在博弈游戏算法(例如Alpha Go)的开发上付诸努力,取得了世人瞩目的成就。

下面以自动驾驶汽车研发为例,说明机器学习和人工智能的关系。

要实现自动驾驶,就需要对交通标志进行识别。首先,应用机器学习算法对交通标志进行学习,数据集中包括数百万张交通标志图片,使用卷积神经网络进行训练并生成模型。然后,自动驾驶系统使用摄像头,让模型实时识别交通标志,并不断进行验证、测试和调优,最终达到较高的识别精度。

当汽车识别出交通标志时,针对不同的标志进行不同的操作。例如,遇到停车标志时,自动驾驶系统需要综合车速和车距来决定何时刹车,过早或过晚都会危及行车安全。除此之外,人工智能技术还需要应用控制理论处理不同的道路状况下刹车策略,通过综合这些机器学习模型来产生自动化的行为。

数据挖掘和机器学习的关系越来越密切。例如,通过分析企业的经营数据,发现某一类客户在消费行为上与其他用户存在明显区别,并通过可视化图表显示,这是数据挖掘和机器学习的工作,它输出的是某种信息和知识。企业决策人员可根据这些输出人为改变经营策略,而人工智能是用机器自动决策来代替人工行为,从而实现机器智能。

数据挖掘是从大量的业务数据中挖掘隐藏的、有用的、正确的知识,促进决策的执行。数据挖掘的很多算法都来自机器学习和统计学,其中统计学关注理论研究并用于数据分析实践形成独立的学科,机器学习中有些算法借鉴了统计学理论,并在实际应用中进行优化,实现数据挖掘目标。

机器学习的演化计算深度学习等方法近年来也逐渐跳出实验室,从实际的数据中学习模式,解决实际问题。数据挖掘和机器学习的交集越来越大,机器学习成为数据挖掘的重要支撑技术。

总结:机器学习为人工智能和数据挖掘提供了底层的技术支撑。反过来说,机器学习也需要大量的有效数据进行训练,所以机器学习和数据挖掘是相互促进的。

最后给出一张机器学习、数据挖掘和人工智能三者关系的详细图片:

机器学习、数据挖掘及人工智能三者间的关系(详图)
详图:机器学习、数据挖掘及人工智能三者间的关系

Python交流群:960331733(我们会不定期在群内分享Python知识,上传Python资料)

编程帮,一个分享编程知识的公众号。跟着站长一起学习,每天都有进步。

通俗易懂,深入浅出,一篇文章只讲一个知识点。

文章不深奥,不需要钻研,在公交、在地铁、在厕所都可以阅读,随时随地涨姿势。

文章不涉及代码,不烧脑细胞,人人都可以学习。

当你决定关注「编程帮」,你已然超越了90%的程序员!

编程帮二维码
微信扫描二维码关注

所有教程

优秀文章