搜索 | 会员  
人工智能、机器学习和深度学习的区别
来源: 知乎   作者:网友  日期:2018-3-19  类别:大数据  主题:机器学习  编辑:隐身守候
人工智能并不是一个新的术语,它已经有几十年的历史了,大约从80年代初开始,计算机科学家们开始设计可以学习和模仿人类行为的算法。

人工智能并不是一个新的术语,它已经有几十年的历史了,大约从80年代初开始,计算机科学家们开始设计可以学习和模仿人类行为的算法。

在算法方面,最重要的算法是神经网络,由于过拟合而不是很成功(模型太强大,但数据不足)。尽管如此,在一些更具体的任务中,使用数据来适应功能的想法已经取得了显着的成功,并且这也构成了当今机器学习的基础。

在模仿方面,人工智能专注于图像识别,语音识别和自然语言处理。人工智能专家们花费了大量的时间来创建诸如边缘检测,颜色配置文件,N-gram,语法树等。不过,这些进步还不足以达到我们的需求。

传统的机器学习:

机器学习(ML)技术在预测中发挥了重要的作用,ML经历了多代的发展,形成了具有丰富的模型结构,例如:

1.线性回归。

2.逻辑回归。

3.决策树。

4.支持向量机。

5.贝叶斯模型。

6.正则化模型。

7.模型集成(ensemble)。

8.神经网络。

这些预测模型中的每一个都基于特定的算法结构,参数都是可调的。训练预测模型涉及以下步骤:

1.  选择一个模型结构(例如逻辑回归,随机森林等)。

2.  用训练数据(输入和输出)输入模型

3.  学习算法将输出最优模型(即具有使训练错误最小化的特定参数的模型)。

每种模式都有自己的特点,在一些任务中表现不错,但在其他方面表现不佳。但总的来说,我们可以把它们分成低功耗(简单)模型和高功耗(复杂)模型。选择不同的模型是一个非常棘手的问题。

由于以下原因,使用低功率/简单模型是优于使用高功率/复杂模型:

  • 在我们拥有强大的处理能力之前,训练高功率模型将需要很长的时间。

  • 在我们拥有大量数据之前,训练高功率模型会导致过度拟合问题(因为高功率模型具有丰富的参数并且可以适应广泛的数据形状,所以我们最终可能训练一个适合于特定到当前的训练数据,而不是推广到足以对未来的数据做好预测)。

然而,选择一个低功率的模型会遇到所谓的“欠拟合”的问题,模型结构太简单,如果它复杂,就无法适应训练数据。(想象一下,基础数据有一个二次方关系:y = 5 * x ^ 2;你无法适应线性回归:y = a * x + b,不管我们选择什么样的a和b。

为了缓解“不适合的问题”,数据科学家通常会运用他们的“领域知识”来提出“输入特征”,这与输出关系更为直接。(例如,返回二次关系y = 5 * square(x),如果创建了一个特征z = x ^ 2,则可以拟合线性回归:y = a * z + b,通过选择a = 5和b = 0)。

机器学习的主要障碍是特征工程这个步骤,这需要领域专家在进入训练过程之前就要找到非常重要的特征。特征工程步骤是要靠手动完成的,而且需要大量领域专业知识,因此它成为当今大多数机器学习任务的主要瓶颈。

换句话说,如果我们没有足够的处理能力和足够的数据,那么我们必须使用低功耗/更简单的模型,这就需要我们花费大量的时间和精力来创建合适的输入特征。这是大多数数据科学家今天花时间去做的地方。

神经网络的回归:

在大数据时代,云计算和大规模并行处理基础架构的共同发展,使得机器处理能力在二十一世纪初得到了极大的提升。我们不再局限于低功耗/简单的模型。例如,当今最流行的两种主流机器学习模型是随机森林和梯度提升树。尽管如此,两者都非常强大,并且提供了非线性模型拟合的训练数据,但数据科学家仍然需要仔细地创建特征以获得良好的性能。

与此同时,计算机科学家重新使用神经网络的许多层来完成这些人类模仿的任务。这给DNN(深度神经网络)带来了新的生机,并在图像分类和语音识别任务方面提供了重大突破。DNN的主要区别在于,你可以将原始信号(例如RGB像素值)直接输入DNN,而不需要创建任何域特定的输入功能。通过多层神经元(这就是为什么它被称为“深度”神经网络),DNN可以“自动”通过每一层产生适当的特征,最后提供一个非常好的预测。这极大地消除了寻找“特征工程”的麻烦,这是数据科学家们最喜欢看到的。

DNN也演变成许多不同的网络拓扑结构,所以有CNN(卷积神经网络),RNN(递归神经网络),LSTM(长期短期记忆),GAN(生成敌对网络),转移学习,注意模型(attention model)所有的这些被统称为深度学习(Deep Learning),它正在引起整个机器学习界的关注。

强化学习:

另一个关键组成部分是关于如何模仿一个人(或动物)的学习,设想感知/行为/奖励循环的非常自然的动物行为。一个人或者一个动物首先会通过感知他或者她所处的状态来了解环境。在此基础上,他或者她会选择一个“动作”,将他或者她带到另一个“状态”。那么他或她将获得“奖励”,循环重复,直到他或她消失。这种学习方式(称为强化学习)与传统监督机器学习的曲线拟合方法有很大不同。尤其是,强化学习学习得非常快,因为每一个新的反馈(例如执行一个行动并获得奖励)都被立即发送到影响随后的决定。

强化学习也提供了预测和优化的平滑整合,因为它在采取不同的行动时保持当前状态的信念和可能的转换概率,然后做出决定哪些行动可以导致最佳结果。

深度学习+强化学习= AI

与经典的ML技术相比,DL提供了一个更强大的预测模型,通常可以产生良好的预测结果。与经典优化模型相比,强化学习提供了更快的学习机制,并且更适应环境的变化。

机器学习 vs 深度学习

在深度探讨machine learning和data science的联系之前,这里简要地讨论一下machine learning 和deep learning。machine learning是一套算法,来训练数据集做预测或者采取行动以使得系统最优化。举例来说,supervised classification algorithms被用来根据历史数据将想要贷款的客户分成预期好的和预期差的(good or bad prospects)。对于给定的任务(比如监督聚类),需要的技术多种多样:naive Bayes、SVM、neural nets、ensembles、association rules、decision trees、logistic regression,或者是很多技术的组合。所有这些都是数据科学的子集。当这些算法自动化后,比如无人驾驶飞机或者无人驾驶汽车,这就叫AI了,或者说的具体一点,deep learning。如果采集的数据来自传感器并且通过互联网传播,那么这就是机器学习或数据科学或深度学习应用于物联网了。

有些人对深度学习有不同的定义,他们认为深度学习是更深层次的神经网络(一种机器学习的技术)。AI(Artificial Intelligence)是创建于20世纪60年代的计算机科学的一个子领域,是关于解决那些对人类来讲非常容易但是对计算机而言很难的任务。值得一提的是,所谓的strong AI可能可以做所有人类可以做的事情(可能除了纯粹的物理问题)。这是相当广泛的,包括各种各样的事情,比如做计划,在世界上到处溜达,识别物体和声音,说话,翻译,社交或者商业交易,还有创造性工作(比如写诗画画)等等。

NLP(Natural language processing)只是AI要处理的语言部分,尤其是写。

Machine learning是这样的一种情况:给出一些可以被以离散形式描述的AI问题(比如从一系列动作中选出对的那个),然后给定一堆外部世界的信息,在不需要程序员手动写程序的情况下选出那个“正确的”行为。通常情况需要借助外界的一些过程来判断这个动作对不对。在数学上,这就是函数:你给一些输入,然后你想要他处理一下得到正确的输出,所以整个问题就简化为用一些自动的方式建立这种数学函数模型。和AI区分一下:如果我写了一段特别机智的程序有着人类的行为,那这就可以是AI,但是除非它的参量都是自动从数据中学会的,否则就不是机器学习。

Deep learning是当下非常流行的机器学习的一种。它包含一种特殊的数学模型,可以想成是一种特定类型的简单块的组合(或者说是块的功能的组合),这些块可以进行调整来更好的预测最终结果。


德仔网尊重行业规范,每篇文章都注明有明确的作者和来源;德仔网的原创文章,请转载时务必注明文章作者和来源:德仔网;
头条那些事
大家在关注
我们的推荐
也许感兴趣的
干货