首页
学习
活动
专区
工具
TVP
发布
精选内容/技术社群/优惠产品,尽在小程序
立即前往

人工智能、机器学习、模式识别、数据挖掘关系

一直有人问我,关于人工智能、机器学习、模式识别、数据挖掘关系的问题,一句话来说:“剪不断,理还乱”。这个描述非常非常重要,因为它们之间交叉得太严重,而又相互支撑。这里,我努力尝试解释一下,供大家讨论。

1.人工智能:起源于上世纪50年代,说白了,就是希望计算机具有人类一样的智能。其实,最高级的应该是“机器智能”,就是让机器除了具备人类的理解和认知能力,还可以超越人类,并认知人类理解不了的问题,这个特别难。也就是,暂时实现不了机器智能,就先来个人工智能。目前,所说的人工智能(artificial intelligence)是一种弱人工智能,可以说是一个狭义的概念,局限于算法。因为,artificial不是real simulate人脑的思考过程。这种,只是人类通过编程(即算法实现),将能用计算机语言描述且能被计算机理解的工作让计算机“像人一样”完成,具有一定程度的智能化。

既然想要计算机像人一样的智能,那么就要让计算机具备人的认知过程,就涉及到了普通心理学。

认知过程:认知过程指人脑通过感觉、知觉、记忆、思维、想象等形式反映客观对象的性质及对象间关系的过程。人类认知有3种基本过程:

(1)问题解决:采用启发式、手段-目的分析和计划过程法。

(2)模式识别能力:人要建立事物的模式,就必须认识各元素之间的关系。如等同关系、连续关系等。根据元素之间的关系,就可构成模式。

(3)学习:学习就是获取信息并将其贮存起来,便于以后使用。学习有不同的形式,如辨别学习、阅读、理解、范例学习等。

了解了这两个概念后,我们再说说模式识别和机器学习,因为与以上过程相关。

2.模式识别:产生于上世纪70、80年代,人们在观察事物或现象的时候,常常要寻找它与其他事物或现象的不同之处,并根据一定的目的把各个相似的但又不完全相同的事物或现象组成一类,它强调的是如何让一个计算机程序去做一些看起来很“智能”的事情。

结合时间轴和认知过程,人类认知过程中,最容易让计算机实现的就是模式识别,比如识别数字8和字母B,而模式识别更多的是一种“匹配”或“分类”(可以是二分类、三分类、无穷分类即回归)问题,所以该领域研究的重点在于特征提取,也不一定要有大量的数据。所以,传统算法中,当数据量不够大的时候,往往需要尽可能将所有特征提取出来以提高准确率,这就是为啥前些年研究都集中于特征提取和数据降维,就是因为特征维度太高!举例:识别男女,而数据样本就两个,1男1女,那需要提取多少特征啊?!当时的计算能力还有限,云计算技术还没出现,怎能不降维啊?!当然,现在的模式识别用了很多机器学习的方法,且成为主流,后面再说。

3.机器学习:其定义是在上世纪90年代,专门研究计算机怎样模拟或实现人类的学习行为,以获取新的知识或技能,重新组织已有的知识结构使之不断改善自身的性能。简单说就是,从样本中学习的智能程序,所以其研究重点在于算法(模型)。

还是结合时间轴和认知过程:一方面,认知过程由模式识别发展到学习;另一方面,90年代开始,随着互联网技术和计算机信息化的高速发展,信息量(数据量)越来越大,拥有的数据越来越多(即样本量越来越多)。还是以识别男女为例,此时算法不用提取全部特征,只要提取最重要的一部分特征就好了,特征不足由谁来弥补?当然是样本量了!计算机模拟人的学习过程,根据主要特征,一遍一遍学习,一遍一遍认识,样本量越多,见识越广,自然就认知了。所以,除了提取重要特征,机器学习的重点是训练样本和研究算法模型!机器学习算法根据样本是否标注以及标注的样本量多少,分为非监督学习、监督学习和半监督学习,还可根据目的分为聚类算法、分类算法、回归算法等等!那么,这些算法中的很大部分都可以用于模式识别,当然不局限于模式识别,比如排序算法、推荐算法、决策支持等。

因此:

(1)从另外一个角度也可以理解为:模式识别是目的,机器学习是方法。

(2)模式识别和机器学习都是为了实现某方面的弱人工智能的方法(算法)。

(3)模式识别、机器学习和深度学习不是万能的,因为智能的很多方面不是通过大量的样本学习得来的,比如:一个不认识的难吃的食物,吃进去立马吐出来,从此认定这个东西不好吃,这就出现了其他非基于样本和特征的方法(比如:强化学习)。当然,还有很多智能也是用学习实现不来的,所以才叫做“狭义的人工智能”!

4.数据挖掘:数据挖掘(英语:Data mining),又译为数据采矿。它是数据库知识发现(英语:Knowledge-Discovery in Databases,简称:KDD)中的一个步骤。数据挖掘一般是指从大量的数据中通过算法搜索隐藏于其中信息的过程。所以,数据挖掘的重点在于挖掘数据和数据处理!这也就是为什么,数据挖掘书籍与机器学习书籍内容相比,数据挖掘前半部分都是讲解如何对数据采集、数据清洗、数据集成、数据入库等等!都是更好地为后续数据分析准备!所以,数据挖掘和机器学习重点不一样。

胡祥恩教授的一句话,给了我很大启发“数据挖掘就是要挖掘不知道的东西!”

所以:

(1)我认为数据挖掘和人工智能是一个层面的概念,而机器学习和模式识别属于再具体的一个层面,不从属于数据挖掘和人工智能,但是又为它们提供很大支撑,或者提供方法。

(2)数据挖掘是为了获取未知的知识,所以常常用机器学习中的非监督的聚类算法,通过结果来看发现了什么信息、获得了什么知识。当然,海量数据环境下(我理解:数据量大才需要挖掘),并且有目的的挖掘也可以用分类算法(比如,就是为了挖金子,不是挖煤)。

随着,互联网和移动计算的进一步发展,形成了海量数据,也就产生了大数据(跟多的是非结构化的)。数据库和数据仓库技术帮助存储海量数据,而要用机器学习和模式识别的方法分析这些数据。而之前,海量数据这个概念产生了很久却没有太多实质性进展是因为:没有好的技术对数据处理和分析做支撑!云计算技术(包含:分布式、虚拟化、体系结构等)的产生、发展为大数据处理和分析提供了技术手段。

再来说说近几年火热的深度学习。

5.深度学习:真正的深度学习实现于2006年,是机器学习研究中的一个新的领域,其动机在于建立、模拟人脑进行分析学习的神经网络,它模仿人脑的机制来解释数据,例如图像,声音和文本。

再次结合时间轴和认知过程:一方面,相比于传统的机器学习算法,基于神经网络的深度学习算法更接近于对人脑的模拟(此时,还是人工智能,而非机器智能);另一方面,前面提及过的是,机器学习和样本量增加的情况促使算法可以不需要特别多的特征维度,而大数据又带来了更多的样本量和数据维度。在这种情况下,因为有了云计算技术和GPU(英伟达公司很给力!)的支撑,所以我理解,研究人员此时可以更加大胆地尝试采用大量数据样本+大量特征维度的方式,利用深度学习技术进行实现。而深度学习本身更像是一种技术。所以,我认为深度学习是机器学习的一个分支!

深度学习的广泛落地问题,就会涉及对偶学习和迁移学习。

6.对偶学习和迁移学习: 深度学习的出现,使得部分领域的应用实现很好滴落地,其中以人脸识别和语音识别为代表,而其他领域还没有实现更好的落地的根本原因是:数据标注问题!因为,人脸识别和语音识别都从属于模式识别范畴,所以在很多年前就有很多研究者在从事该方面的研究,尤其标注了大量的样本数据!深度学习很好,但是其他领域没有足够的已标注样本,因此为了解决这个问题就出现了对偶学习和迁移学习等。

(1)对偶学习(微软,2016): 很多人工智能的应用涉及两个互为对偶的任务,例如机器翻译中从中文到英文翻译和从英文到中文的翻译互为对偶、语音处理中语音识别和语音合成互为对偶、图像理解中基于图像生成文本和基于文本生成图像互为对偶、问答系统中回答问题和生成问题互为对偶。对偶学习的最关键一点在于,给定一个原始任务模型,其对偶任务的模型可以给其提供反馈;同样的,给定一个对偶任务的模型,其原始任务的模型也可以给该对偶任务的模型提供反馈;从而这两个互为对偶的任务可以相互提供反馈,相互学习、相互提高。

(2)迁移学习:学习迁移是指一种学习对另一种学习的影响,或习得的经验对完成其他活动的影响。例如:通过已有的用户对橘子的喜好程度的标注数据,可以学习到某个人不喜欢橘子的原因是因为不喜欢酸的。而接下来要研究用户对酸枣的喜好,但是酸枣喜好的用户数据没有标注,那么可以将对橘子的学习迁移到酸枣上,就可知道这个人同样不喜欢酸枣,因为他不喜欢酸的(注:例子不一定完全恰当)。

但是,并不是深度学习就是最好,因为考虑性能和开销等因素,很多问题(如:样本量少的情况)用传统方法比深度学习还要好。

  • 发表于:
  • 原文链接http://kuaibao.qq.com/s/20180404A0VA2G00?refer=cp_1026
  • 腾讯「腾讯云开发者社区」是腾讯内容开放平台帐号(企鹅号)传播渠道之一,根据《腾讯内容开放平台服务协议》转载发布内容。
  • 如有侵权,请联系 cloudcommunity@tencent.com 删除。

扫码

添加站长 进交流群

领取专属 10元无门槛券

私享最新 技术干货

扫码加入开发者社群
领券