深度学习和普通机器学习之间有何区别?

简介: 文章标题是个很有趣的问题,深度学习作为机器学习的子集,它和普通机器学习之间到底有什么区别呢?作者使用了一种很普通的方式来回答这个问题。

本质上,深度学习提供了一套技术和算法,这些技术和算法可以帮助我们对深层神经网络结构进行参数化——人工神经网络有很多隐含层数和参数。深度学习背后的一个关键思想是从给定的数据集中提取高层次的特征。因此,深度学习的目标是克服单调乏味的特征工程任务的挑战,并帮助将传统的神经网络进行参数化。

现在,为了引入深度学习,让我们来看看一个更具体的例子,这个例子涉及多层感知器(MLP)。

MLP中,“感知器”这个词可能有点让人困惑,因为我们并不想只在我们的网络中使用线性神经元。利用MLP,我们可以学习复杂的函数来解决非线性问题。因此,我们的网络通常由连接输入和输出层的一个或多个“隐藏”层组成。这些隐藏的层通常有某种S型的激活函数(logs-s形或双曲正切等)。例如,在我们的网络中,一个逻辑回归单元,返回0-1范围内的连续值。一个简单的MLP看起来就像这样

9263b7284bb17d493e53a1c389491ae5012e4137

其中y是最终的类标签,我们返回的是基于输入x的预测“a”是我们激活的神经元,而“w”是权重系数。现在,如果我们向这个MLP添加多个隐藏层,我们也会把网络称为“深度”。这种“深度”网络的问题在于,为这个网络学习“好”的权重变得越来越难。当我们开始训练我们的网络时,我们通常会将随机值赋值为初始权重,这与我们想要找到的“最优”解决方案很不一样。在训练过程中,我们使用流行的反向传播算法(将其视为反向模式自动微分)来传播从右到左的“错误”,并计算每一个权重的偏导数,从而向成本(或“错误”)梯度的相反方向迈进。现在,深度神经网络的问题是所谓的“消失梯度”——我们添加的层越多,就越难“更新”我们的权重,因为信号变得越来越弱。由于我们的网络的权重在开始时可能非常糟糕(随机初始化),因此几乎不可能用反向传播来参数化一个具有“深度”的神经网络。

这就是深度学习发挥作用的地方。粗略地说,我们可以把深度学习看作是一种“聪明”的技巧或算法,可以帮助我们训练这种“深度”神经网络结构。有许多不同的神经网络结构,但是为了继续以MLP为例,让我来介绍卷积神经网络(CNN)的概念。我们可以把看作是我们的MLP的“附加组件”,它可以帮助我们检测到我们的MLP“好”输入。

在一般机器学习的应用中,通常有一个重点放在特征工程部分;算法学习的模型只能是和输入数据一样好。当然,我们的数据集必须要有足够多的、具有辨别能力的信息,然而,当信息被淹没在无意义的特征中,机器学习算法的性能就会受到严重影响。深度学习的目的是从杂乱的数据中自动学习;这是一种算法,它为我们提供了具有意义的深层神经网络结构,使其能够更有效地学习。我们可以把深度学习看作是自动学习特征工程”的算法,或者我们可以简单地称它们为特征探测器”,它可以帮助我们克服一系列挑战,并促进神经网络的学习。

让我们在图像分类的背景下考虑一个卷积神经网络。在这里,我们使用所谓的“接收域”(将它们想象成“窗口”),它们会经过我们的图像。然后,我们将这些“接受域”(例如5x5像素的大小)和下一层的1个单元连接起来,这就是所谓的“特征图”。在这个映射之后,我们构建了一个所谓的卷积层。注意,我们的特征检测器基本上是相互复制的——它们共享相同的权重。它的想法是,如果一个特征检测器在图像的某个部分很有用,它很可能在其他地方也有用,与此同时,它还允许用不同的方式表示图像的各个部分。

69214be7d07aa0a9ab05053bdf249a6c37414671

接下来,我们有一个“池”层,在这个层中,我们将我们的特征映射中的相邻特征减少为单个单元(例如,通过获取最大特征,或者对其进行平均化)。我们在很多测试中都这样做,最终得出了我们的图像的几乎不不变的表示形式(确切的说法是“等变量”)。这是非常强大的,因为无论它们位于什么位置我们可以在图像中检测到对象

9a395e601a2897fae211bffc619b5b4941cf3d78

本质上,CNN这个附加组件在我们的MLP中充当了特征提取器或过滤器。通过卷积层,我们可以从图像中提取有用的特征,通过池层,我们可以使这些特征在缩放和转换方面有一定的不同。


以上为译文

文章原标题《What is the difference between deep learning and usual machine learning译者:黄小凡,审校:袁虎。

文章为简译,更为详细的内容,请查看原文

目录
打赏
0
0
0
0
1807
分享
相关文章
深度学习中模型训练的过拟合与欠拟合问题
在机器学习和深度学习中,过拟合和欠拟合是影响模型泛化能力的两大常见问题。过拟合指模型在训练数据上表现优异但在新数据上表现差,通常由模型复杂度过高、数据不足或质量差引起;欠拟合则指模型未能充分学习数据中的模式,导致训练和测试数据上的表现都不佳。解决这些问题需要通过调整模型结构、优化算法及数据处理方法来找到平衡点,如使用正则化、Dropout、早停法、数据增强等技术防止过拟合,增加模型复杂度和特征选择以避免欠拟合,从而提升模型的泛化性能。
探索机器学习:从线性回归到深度学习
本文将带领读者从基础的线性回归模型开始,逐步深入到复杂的深度学习网络。我们将通过代码示例,展示如何实现这些算法,并解释其背后的数学原理。无论你是初学者还是有经验的开发者,这篇文章都将为你提供有价值的见解和知识。让我们一起踏上这段激动人心的旅程吧!
基于TensorFlow的深度学习模型训练与优化实战
基于TensorFlow的深度学习模型训练与优化实战
225 3
机器学习与深度学习:差异解析
机器学习与深度学习作为两大核心技术,各自拥有独特的魅力和应用价值。尽管它们紧密相连,但两者之间存在着显著的区别。本文将从定义、技术、数据需求、应用领域、模型复杂度以及计算资源等多个维度,对机器学习与深度学习进行深入对比,帮助您更好地理解它们之间的差异。
【手写数字识别】Python+深度学习+机器学习+人工智能+TensorFlow+算法模型
手写数字识别系统,使用Python作为主要开发语言,基于深度学习TensorFlow框架,搭建卷积神经网络算法。并通过对数据集进行训练,最后得到一个识别精度较高的模型。并基于Flask框架,开发网页端操作平台,实现用户上传一张图片识别其名称。
237 0
【手写数字识别】Python+深度学习+机器学习+人工智能+TensorFlow+算法模型
【重磅发布】AllData数据中台核心功能:机器学习算法平台
杭州奥零数据科技有限公司成立于2023年,专注于数据中台业务,维护开源项目AllData并提供商业版解决方案。AllData提供数据集成、存储、开发、治理及BI展示等一站式服务,支持AI大模型应用,助力企业高效利用数据价值。
K-means聚类算法是机器学习中常用的一种聚类方法,通过将数据集划分为K个簇来简化数据结构
K-means聚类算法是机器学习中常用的一种聚类方法,通过将数据集划分为K个簇来简化数据结构。本文介绍了K-means算法的基本原理,包括初始化、数据点分配与簇中心更新等步骤,以及如何在Python中实现该算法,最后讨论了其优缺点及应用场景。
273 6
AI训练师入行指南(三):机器学习算法和模型架构选择
从淘金到雕琢,将原始数据炼成智能珠宝!本文带您走进数字珠宝工坊,用算法工具打磨数据金砂。从基础的经典算法到精密的深度学习模型,结合电商、医疗、金融等场景实战,手把手教您选择合适工具,打造价值连城的智能应用。掌握AutoML改装套件与模型蒸馏术,让复杂问题迎刃而解。握紧算法刻刀,为数字世界雕刻文明!
50 6
基于机器学习的人脸识别算法matlab仿真,对比GRNN,PNN,DNN以及BP四种网络
本项目展示了人脸识别算法的运行效果(无水印),基于MATLAB2022A开发。核心程序包含详细中文注释及操作视频。理论部分介绍了广义回归神经网络(GRNN)、概率神经网络(PNN)、深度神经网络(DNN)和反向传播(BP)神经网络在人脸识别中的应用,涵盖各算法的结构特点与性能比较。

热门文章

最新文章

AI助理

你好,我是AI助理

可以解答问题、推荐解决方案等