《神经网络与PyTorch实战》——1.2 神经网络与人工智能等概念的关系
1.2 神经网络与人工智能等概念的关系
到目前为止,我们已经初步了解了AlphaGo的核心技术——神经网络。在新闻报道中,AlphaGo更常被称为一种人工智能。另外,我们还常常听到机器学习、深度学习、数据挖掘、模式识别这些名词。本节就来介绍这些名词都是什么意思,以及它们之间有何区别和联系。
1.2.1 人工智能和数据挖掘
人工智能(Artificial Intelligence,AI)是让机器体现出生物的智能,进而完成各种应用。从广义上说,人工智能可以分为强人工智能和弱人工智能。强人工智能能够全面模拟人类智能,有自己的知觉和意识。许多科幻片中出现的机器人(如电影《大都会》(Metropolis,1927)中的机器人)具有强人工智能。虽然学术界对强人工智能有研究,但是短期内不大可能实现强人工智能。弱人工智能专注于某些特定的应用,使机器在该特定应用上表现出解决问题的能力。西周时代的偃师制作的木偶伶人、AlphaGo下围棋都属于弱人工智能。本书涉及的技术内容都是弱人工智能。
人工智能的智能可以体现在以下方面。
* 理解智能:例如机器视觉、语音识别。
* 推理智能和决策智能:例如AlphaGo等棋类程序、自动推理系统、自动规划系统。
* 表现智能:例如文本转语音、演奏乐器。
一个应用可以同时具有以上多种智能。例如语音聊天机器人可以听懂人类说的话,并进行逻辑分析,再用语音做应答。
人工智能的实现方法有以下发展脉络。
* 大脑模拟(brain simulation):综合利用神经学、信息论和控制论,试图用机器精确模仿生物大脑的计算机制。20世纪40年代至50年代,此方法非常热门,但是后来发现实现起来过于困难。
* 逻辑与符号计算(logic and symbolic computation):不使用数值,在符号级别和逻辑进行各种运算,并依此来完成许多应用。20世纪60年代,该方法曾在小型证明程序上模拟高级思考获得较大的成就。著名的A* 算法也属于此类。
* 基于知识的专家系统(knowledge-based expert system):收集外部知识,再利用预定策略对存储的知识做运算得到应答。在20世纪80年代,专家系统在商业上获得了巨大的成功。
* 次符号学习(sub-symbolic learning):不依靠于符号,而依赖于具体的数据。模糊计算、常见的机器学习等都属于此类。目前基于学习的人工智能应用最为热门。
在人工智能发展的上述4个阶段中,人工智能解决问题的范围越来越小,但在特定应用中的表现越来越好。目前人工智能的发展已经进入学习主导的阶段。
以学习为主的人工智能应用主要关注以下任务。
* 聚类(cluster):在不知道数据的分类数、分类方法、分类结果的情况下,试图发现数据的类别及分类方法。例如,通过分析很多蚂蚁的行为,发现蚂蚁存在不同的分工,并且根据分工将蚂蚁分为若干类。聚类还可以进一步细分为硬聚类(hard cluster)和模糊聚类(soft cluster)。硬聚类把每个数据都划分到一个确切的类;模糊聚类可以把数据归属到多个类,并显示数据点和某个类之间的关系有多强。
* 分类(classification):在已经知道数据的分类数和某种结构的情况下,对新的数据推广已知的结构。例如将电子邮件分为“垃圾邮件”和“正常邮件”。异常检测(abnormally detection)旨在识别出不寻常的数据记录。
* 回归(regression):探索变量之间的关系,特别是因变量和自变量之间的关系。例如,有一些变量,其中两两独立,由决定。通过分析数据,了解是如何由决定的,就是回归研究的问题。
* 关联规则学习(associate rule learning):分析事件之间的关联规则。关联规则指的是这样的一种规则:如果某些事件发生了,那么某个事件也会发生。这些事件往往是对等的关系,可以互换位置。例如,通过分析超市中顾客的购买习惯,发现哪些商品常常被一起购买。
* 压缩表示(compressed representation):将比较长的数据压缩表示为比较短的数据,包括汇总(automatic summarization)和降维(dimensionality reduction)。汇总的例子:为一篇文章写摘要、起标题。降维的例子:将高维数据在二维的平面上进行可视化。
* 密度估计(density estimation):估计变量的概率分布。这个变量可能独立存在,也可能受其他因素影响。
数据挖掘(Data Mining,DL)是另外一个从应用效果定义的概念。
数据挖掘并不是希望“挖掘”新的数据或试图得到新的数据,而是希望通过有效管理和分析数据,来发现原本不知道的新知识、新方法。数据挖掘中对数据进行逻辑分析的算法可以发现新知识和新方法,体现出一定的智能,所以数据挖掘应用往往都可以认为是人工智能应用。但是数据挖掘不仅仅只考虑数据处理的算法,还关注数据的有效存储、读取和更新。因此数据库、数据管理等内容也是数据挖掘的主要研究内容。AlphaGo分析大量人类棋谱后发现了某些下棋的新策略,这也算是一种数据挖掘。
当然,并不是所有数据挖掘应用都是人工智能应用。比如,某人通过观察各个股票的走势发现了股票涨跌的某种规律,这个和机器没什么关系,自然不是人工智能应用。
- 点赞
- 收藏
- 关注作者
评论(0)