0
  • 聊天消息
  • 系统消息
  • 评论与回复
登录后你可以
  • 下载海量资料
  • 学习在线课程
  • 观看技术视频
  • 写文章/发帖/加入社区
创作中心

完善资料让更多小伙伴认识你,还能领取20积分哦,立即完善>

3天内不再提示

师法自然 浅谈深度学习的多重角度

mK5P_AItists 来源:电子发烧友网 作者:工程师谭军 2018-07-10 08:46 次阅读

深度学习已经成熟到可以教给高中生了么?

我思考的这个问题,源于不久前我收到的⼀封来自某大公司产品经理的邮件。

我喜欢将私人通讯邮件公开于众,所以我将邮件内容摘在下面:

来自:M.

你好 Ali, ...

你如何训练团队里的年轻成员,使得他们有更好的直觉和预判?我团队里的工程师经常从其他科研员那「借鉴」超参数的值,但他们太担心要自己去调整参数了。...

我对着这封邮件思考了数日,却没有办法找到⼀个有条理的答案。

如果说应该有正确答案的话,我想回复说:也许她的工程师应该要有这种担心。

如果你是个工程师,你拿到了这个神经网络,然后你被要求去改进这个网络在某个数据集上的表现。你也许会假设这每层都是有它自己的作用和功能,但在深度学习领域,我们目前还没有统的语言和词汇去描述这些功效。我们教授深度学习的方法和我们教授其他科学学科的方法很不同。

几年前我迷上了光学。在光学领域,你会堆叠好几层不同的组件以处理输的光源。例如下图,就是相机的镜头:

师法自然 浅谈深度学习的多重角度

要设计这样的系统,你从最简单的组件开始堆叠,这些组件往往以知名的发明者命名。然后通过仿真,你可 以判断你的设计是否符合你的要求,然后再添加不同的组件去修正先前设计的缺陷。

紧接着你会各种数学优化过程去调整这些组件的参数,例如镜面的形状、位置和倾斜角度等等,去最大程度实现你的设计目标。你就重复如此仿真、修改、调优的过程。

这很像我们设计深度网络的过程。

上图里所有的 36 个元素都是故意加⼊这个堆叠的系统,以用于修正某项具体的偏差的。这样的设计需要非常精确的解释模型去描述什么样的元素能够对透过它的光有什么样的效应。这个模型往往是关于这个元素的作用的,例如说折射、反射、衍射、散射和波前校正。

师法自然 浅谈深度学习的多重角度

⼈们不害怕这样的设计过程。每年,美国培养的许多⼯程师都能设计出有的镜头,他们并不为这样的作感到担心害怕。

这并不是因为光学很容易,而是因为我们对光学的模型了然在心。

现代光学是通过抽象出不同层级的知识内容去教授的。

师法自然 浅谈深度学习的多重角度

在最顶级,也是最容易的层级,是几何光学。几何光学是对波光学的抽象,光射线于于表达简单的矢量波光 学的波前矢量。而波光学⼜是对麦克斯韦方程的进⼀步简化。麦克斯韦方程 由能由量子力学推导而出,量子力学则超出了我的理解范围。

每⼀个层级都是通过作出⼀些简化的假定由紧邻的下⼀个层级推导⽽出,所以每⼀个层级能够比上⼀个层级解释更为复杂的现象。

师法自然 浅谈深度学习的多重角度

我花了不少时间在顶四层抽象里设计系统。

这就是当今我们教授光学的方法。但相关理论并非总是如此按层级来组织。在百年前,这些理论还是在⼀个 相互矛盾的状态中共存。实践家们只能依赖于近乎道听途说的光学理论。

但这并没有阻止伽利略打造性能不错的望远镜,而且是在牛顿形式化几何光学前近⼀个世纪的时间点上。因 为伽利略对于如何造出能够放大数⼗倍的望远镜有足够好的解释模型。但他对光学的理解,却不足以让他的望远镜能够修正色差或者获得广视角。

在这些光学理论被抽象总结出来之前,每⼀项理论都需要从光的最基本概念出发。这就牵涉到要作出⼀套涵盖许多也许不切实际的假设。牛顿的几何光学把光假定作⼀束束可以被吸引、排斥的固体粒⼦。惠更斯则⽤ 由「以太」作为介质的纵波去描述光,也就是说用类似声波的方式去构建光。麦克斯韦也假设光经由以太传播。你从麦克斯韦方程的系数的名字也能窥得这种思路的⼀⼆。

愚蠢的模型,确实。但它们可量化且有预测的能力。

这些假设,我们今天听来也许觉得很愚蠢,但它们可量化而且有预测的能力。你可以随意代入数字于其中并得到精准的量化预测。这对于工程师而言极其有用。

寻找用于描述每层深度学习网络作用的模块化语言

如果我们能够像讨论光纤穿越每⼀层镜头元素的作用那样去讨论神经网络每⼀层的作用,那么设计神经网络将会变得更容易。

我们说卷积层就像在输⼊上滑动相应滤波器,然后说池化是处理了对应的非线性。但这只是非常低层次的描述,就像用麦克斯韦方程去解释镜头的作用。

也许我们应该依赖于更高级抽象描述,具体表达某个量被神经网络的层级如何改变了,好比我们用镜头的具 体作用去解释它如何弯曲光线那样。

如果这种抽象也能够量化,使得你只需要代⼊具体数值到某个公式里,它就能告诉你⼀个大概的量化分析,这样你就能更好地设计你的网络了。

我们离这样的语言还很远。我们先从简单点的开始

上⾯也许只是我被自己的幻想带跑了。

我们从简单点的开始。我们对深度学习的运作方式有很多解释模型。下⾯我会罗列⼀系列值得解释的现象,然后我们看看⼀些现有的模型对这些现象解释的能力有多强。

在开始之前,我得承认这种努力也许最后是徒劳的。光学花了 300 年在打磨自己的模型之上,而我只花了⼀ 个周六下午,所以这只能算是博客上的⼀些个⼈观点和想法。

现象:随机梯度下降 (SGD) 的随机初始化足够好了。但细微的数字错误或者步长会使 SGD 失效。

很多⼈在实践中发现,对于如何累积梯度的细微调整,可以导致对整个测试集表现的巨大变化。例如说你只用GPU而不是 CPU 去训练,结果可能会截然不同。

现象:浅的局部最优值意味着比深的局部最优值更好的泛化能力。

这种说法很时髦。有些⼈认为它是真的。有些⼈则用实际数据反驳。另外也有⼈给出了这个现象的变种 。众说纷纭,争议目前不断。

这个现象也许有争议性,但我还是先放在这里。

现象:批标准化层 (Batch Norm) 可以给 SGD 提速。

这个基本无争议,我只能提供⼀个小例外。

现象:即使有很多局部最优和鞍点,SGD 也表现卓越。

这个说法也包含了几个小的点。经常有人声称深度学习的损失表面充斥着鞍点和局部最优。也有不同的 说法,要不就认为梯度下降可以遍历这些区域,要不就认为梯度下降可以不遍历这些区域,但都能给出泛化能力不错的答案。也有说损失表面其实也没那么不堪。

现象:Dropout 胜于其他随机化策略。

我不知道如何正确分类类似 Dropout 的做法,所以我就称之为「随机化策略」了。

现象:深度网络能够记忆随机标签,但它们能泛化。

证据很直白,我的朋友们亲自见证并主张这种说法。

对这些现象的解释

对应上面列举的这些现象,我在下面列举我觉得最能解释这些现象的理论,这些理论均来自我上面引用的论文。

师法自然 浅谈深度学习的多重角度

先别激动,原因如下:

1. 我们尝试解释的这些现象部分有争议。

2. 我没办法把这些解释按照抽象层级组织好。光学好教学的特性也没办法在这⾥重现。

3. 我怀疑部分我引用的理论不正确。

我想说的是

有很多人正在加⼊这个领域,然而我们能够给他们传授的不过是近乎道听途说的经验和⼀些预训练好的深度网络,然后就叫他们去继续创新。我们甚⾄都不能认同我们要解释的这些现象。所以我认为我们离能够在高中教授这些内容还有很远的距离。

那我们如何才能离这⼀步近点?

最好的不过是我们能够就每⼀层深度网络的功能作用,按照不同层级的抽象,给出对应的解释模型。例如 说,神经网络里的折射、散射和衍射会是怎么样的?也许你早就用具体的功能去思考神经网络,但我们就这些概念还没有统⼀的语言。

我们应该把⼀系列确认的现象组织起来,然后才来进行理论上的解释。例如说神经网络里的牛顿环、磁光克 尔效应和法拉第现象会是怎样的?

我和一小批同事已经开始了⼀项重大的实践工作,尝试去分类构建适合我们领域的解释模型,去形式化它 们,并且用实验去验证它们。这项工作是巨大的,我认为第⼀步应该是构建⼀个分层级的深度学习解释模 型,以用于高中的教学。

声明:本文内容及配图由入驻作者撰写或者入驻合作网站授权转载。文章观点仅代表作者本人,不代表电子发烧友网立场。文章及其配图仅供工程师学习之用,如有内容侵权或者其他违规问题,请联系本站处理。 举报投诉
  • 神经网络
    +关注

    关注

    42

    文章

    4575

    浏览量

    98795
  • 牛顿
    +关注

    关注

    0

    文章

    6

    浏览量

    6303
  • 深度学习
    +关注

    关注

    73

    文章

    5240

    浏览量

    119936

原文标题:解释深度学习的新角度,来自光学的启发

文章出处:【微信号:AItists,微信公众号:人工智能学家】欢迎添加关注!文章转载请注明出处。

收藏 人收藏

    评论

    相关推荐

    为什么深度学习的效果更好?

    导读深度学习是机器学习的一个子集,已成为人工智能领域的一项变革性技术,在从计算机视觉、自然语言处理到自动驾驶汽车等广泛的应用中取得了显著的成功。深度
    的头像 发表于 03-09 08:26 156次阅读
    为什么<b class='flag-5'>深度</b><b class='flag-5'>学习</b>的效果更好?

    深度学习的由来 深度学习的经典算法有哪些

    深度学习作为机器学习的一个分支,其学习方法可以分为监督学习和无监督学习。两种方法都具有其独特的
    发表于 10-09 10:23 365次阅读
    <b class='flag-5'>深度</b><b class='flag-5'>学习</b>的由来 <b class='flag-5'>深度</b><b class='flag-5'>学习</b>的经典算法有哪些

    深度学习的定义和特点 深度学习典型模型介绍

    深度学习(Deep Learning)是一种基于人工神经网络的机器学习算法,其主要特点是模型由多个隐层组成,可以自动地学习特征,并进行预测或分类。该算法在计算机视觉、语音识别、
    发表于 08-21 18:22 1295次阅读

    深度学习服务器怎么做 深度学习服务器diy 深度学习服务器主板用什么

    深度学习服务器怎么做 深度学习服务器diy 深度学习服务器主板用什么  随着人工智能的飞速发展,
    的头像 发表于 08-17 16:11 551次阅读

    深度学习框架和深度学习算法教程

    深度学习框架和深度学习算法教程 深度学习是机器学习
    的头像 发表于 08-17 16:11 727次阅读

    深度学习算法库框架学习

    深度学习算法库框架学习 深度学习是一种非常强大的机器学习方法,它可以用于许多不同的应用程序,例如
    的头像 发表于 08-17 16:11 441次阅读

    深度学习算法的选择建议

    深度学习算法的选择建议 随着深度学习技术的普及,越来越多的开发者将它应用于各种领域,包括图像识别、自然语言处理、声音识别等等。对于刚开始
    的头像 发表于 08-17 16:11 388次阅读

    深度学习框架tensorflow介绍

    。TensorFlow可以用于各种不同的任务,包括图像和语音识别、自然语言处理和推荐系统等。 TensorFlow提供了一个灵活和强大的平台,可以用于构建和训练各种深度学习模型。TensorFlow的核心
    的头像 发表于 08-17 16:11 1483次阅读

    深度学习框架的作用是什么

    深度学习框架的作用是什么 深度学习是一种计算机技术,它利用人工神经网络来模拟人类的学习过程。由于其高度的精确性和精度,
    的头像 发表于 08-17 16:10 1175次阅读

    深度学习框架是什么?深度学习框架有哪些?

    深度学习框架是什么?深度学习框架有哪些?  深度学习框架是一种软件工具,它可以帮助开发者轻松快速
    的头像 发表于 08-17 16:03 1787次阅读

    什么是深度学习算法?深度学习算法的应用

    什么是深度学习算法?深度学习算法的应用 深度学习算法被认为是人工智能的核心,它是一种模仿人类大脑
    的头像 发表于 08-17 16:03 1490次阅读

    深度学习是什么领域

    深度学习是什么领域  深度学习是机器学习的一种子集,由多层神经网络组成。它是一种自动学习技术,可
    的头像 发表于 08-17 16:02 1223次阅读

    深度学习算法简介 深度学习算法是什么 深度学习算法有哪些

    深度学习算法作为其中的重要组成部分,不仅可以为诸如人工智能、图像识别以及自然语言处理等领域提供支持,同时也受到了越来越多的关注和研究。在本文中,我们将着重介绍深度
    的头像 发表于 08-17 16:02 6847次阅读

    深度学习的七种策略

    深度学习的七种策略 深度学习已经成为了人工智能领域的热门话题,它能够帮助人们更好地理解和处理自然语言、图形图像、语音等各种数据。然而,要想获
    的头像 发表于 08-17 16:02 1319次阅读

    智造之眼丨深度学习应用

    智造之眼®科学设计深度学习各应用流程,在尽量简化前期准备工作的基础上为客户提供稳定且准确的深度学习解决方案。
    的头像 发表于 05-04 16:55 478次阅读
    智造之眼丨<b class='flag-5'>深度</b><b class='flag-5'>学习</b>应用