机器学习从入门到入职:用sklearn与keras搭建人工智能模型
上QQ阅读APP看本书,新人免费读10天
设备和账号都新为新人

1.1 什么是机器学习

首先需要了解什么是人工智能。人工智能是计算机科学的一个分支,它企图了解智能的实质,并生产一种新的能以人类智能相似的方式做出反应的智能机器,该领域的研究包括机器人、语言识别、图像识别、自然语言处理和专家系统等。

人工智能所包含的类目很多,其中包括但不限于诸如计划调度、专家系统、推荐系统等学科,其中机器学习就是人工智能中比较重要的学科之一(见图1-1)。

图1-1 人工智能与机器学习的关系

机器学习,使用算法解析数据并从中学习,然后对真实世界中的事件做出决策和预测。与传统的用于解决特定任务、硬编码的软件程序不同,机器学习用大量的数据“训练”,并通过各种算法从数据中学习如何完成任务。如图1-1所示,之前所提到的监督学习、深度学习、强化学习等内容,实际上都属于机器学习的一个子类目,它们之间的算法并不是相互独立、相互排斥的,而是多门学科的交汇,都是基于特定的场景、任务及实现途径划分的。

机器学习来源于早期的人工智能领域,传统的算法包括决策树(Decision Tree)、聚类、分类、支持向量机(Support Vector Machine,SVM)、集成学习(Ensemble Learning)等。关于这些算法的详细内容会在第5章至第7章详细介绍。

根据学习数据源性质,机器学习算法可以分为监督学习(如分类问题)、无监督学习(如聚类问题)、半监督学习,它们之间的区别在于样本是否被标记(存在标签)。如果学习样本存在明确的类目或者对应的数值,则该学习为监督学习;如果样本不存在标签,则为无监督学习;半监督学习则介于两者之间,学习样本的标签不完整。

深度学习(Deep Learning)专门用于指定深度神经网络,是利用深度神经网络解决特征表达的一种学习过程。深度神经网络本身并不是一个全新的概念,可大致理解为包含多个隐含层的神经网络结构。为了提高深度神经网络的训练效果,人们对神经元的连接方法和激活函数(Activation Function)等方面做出相应的调整。

而深度学习在大多数场景中存在于监督学习。当然,随着深度神经网络模型的发展,也出现了无监督模型。2012年6月,由谷歌人工智能专家吴恩达主导的“猫实验”项目就是对无监督学习的一次探索。在该项目中,谷歌大脑(Google Brain)开发的一个大规模神经网络,通过学习1000万张未标记动物图片,最终能够分辨出猫。深度学习的详细内容将在第8章至第13章进行介绍。

强化学习(Reinforcement Learning)同样是机器学习的一个分支,其主要任务不仅在于认知识别,还是强调如何基于环境而行动,以取得最大化的预期奖励。强化学习通常包括状态(Status)、奖励(Rewards)及行为(Action),其运行机制如图1-2所示。

图1-2 强化学习的运行机制

具体过程大致如下:①代理通过识别环境,判断当前状态;②根据经验触发相应的行为;③每个行为触发相应的奖励,并改变相应的状态。上述步骤重复循环,直到完成既定目标。

关于强化学习的内容,本书暂不做介绍。