美文网首页
简说:5分钟说清“深度学习”

简说:5分钟说清“深度学习”

作者: 简明PRO | 来源:发表于2019-02-15 17:31 被阅读0次

    0. 核心概念概览

    • “深度学习”技术是近年来“人工智能”再次风靡的主要推动力。
    • 早期的“人工智能”技术,依靠程序员总结输入“明确的规则”。
    • 生物的大脑都是高度专业化的,是为特定功能进化出来的。
    • 大脑是一个强大的模式识别器。
    • 大脑不管练习还是使用识别能力,都不是按照各种逻辑和规则进行的。
    • 大脑是由神经元组成的。
    • 大脑的识别功能可以通过训练提高。
    • 神经元用自己的参数处理输入值,若输出值大于某个阈值,神经元就被“激发”。
    • 神经元的内部参数,包括权重和偏移值都是可调的。
    • 用数据训练神经网络的过程,就是调整更新各个神经元的内部参数的过程。
    • 神经网络的结构在训练中不变,是其中神经元的参数决定了神经网络的功能。

    1. 深度学习有什么用?

    人工智能-->深度学习|神经网络|卷积神经网络--> 图形识别、语音识别、汽车导航...

    段子1: 识别一只猫的能力

    猫 AND 狗
    • 人很容易就能从一张照片里找到一只猫,可是在以前,Google动用了无比强大的计算力量、花了很多年研究都做不到这一点。
    • 以前的计算机无法胜任,因为以前的程序员不能总结出计算机能理解的明确规则。
    • 但是2012年开始,“深度学习”让计算机识别图形的能力突然变得无比强大,目前已经超越了人类。

    2. 人脑并不依赖规则

    男性 OR 女性
    • 上图是两张人脸的照片,你是怎么判断Ta是男是女的呢?
    • 你可能会说女性长得比较秀气一些(眉毛比较细吗?轮廓比较小吗?)
    • 体会一下,这是一个非常奇怪的感觉,你明明知道猫长什么样,一眼就能区分男性女性,可是说不清是怎么看出来的。
    • 一个法官说,什么叫色情作品?我没办法给一个明文规定,但如果我看见了,就能识别出来。
    • 初级的计算机图形识别,必须说清一些明确的规则,让计算机根据规则判断。
    • 显然,人脑并不是根据规则做的判断。

    段子2: 苍蝇 VS 超级计算机

    苍蝇 VS 超级计算机
    • 问:这只苍蝇大脑只有10万个神经元,能耗那么低,但是它能看、能飞、能寻找食物、还能繁殖。价值上亿的超级计算机,消耗极大的能量,有庞大的体积,可是它的功能为什么还不如一只苍蝇?
    • 答:苍蝇大脑是高度专业化的,进化使得苍蝇的大脑只具备这些特定的功能,而我们的计算机是通用的,你可以对它进行各种编程,它理论上可以干任何事情。

    3. 人脑的识别能力

    关键在于,大脑的识别能力,不是靠临时弄一些规则临时编程。大脑的每一个功能都是专门的神经网络长出来的。
    大脑给计算机科学家的四个暗示:

    1. 大脑是一个强大的模式识别器。

    人脑非常善于在一个混乱的场景里识别出想要找的东西。比如从满大街的人中,一眼就认出你熟悉的人。

    2. 大脑不管练习还是使用识别能力,都不是按照各种逻辑和规则进行的。

    我们识别一个人脸,并不是和一些抽象的规则进行比对。我们不是通过测量两眼之间的距离来识别这个人。我们一眼看过去,就知道他是谁了。

    3. 大脑是由神经元组成的。

    人脑由数百亿个神经元组成,不是基于明确规则,而是基于神经元的计算。

    4. 大脑的识别功能可以通过训练提高。

    一个人从小到大,不断成长,大脑识别能力也是在不断提高。

    4. 什么是“深度学习”?

    简单的神经网络

    从左到右分为三层

    • 第一层:输入层(Input)输入的数据
    • 第二层:隐藏层(Hidden)由神经元组成,主要处理过程,可以有很多层
    • 第三层:输出层(Output)由神经元组成,负责作出判断

    深度学习就是中间有不止一层隐藏层神经元的神经网络计算,深度的意思就是层次比较深。神经网络底层单元是神经元。

    简单神经网络 vs 深度学习神经网络

    5. 用交通灯模型理解神经元

    交通信号灯--前进判断

    上图表现了一个根据交通信号灯判断要不要前进的神经元。
    理解神经元的基本原理,它由三部分组成:

    1. 输入
    红、黄、绿灯那个灯亮了,可以用1表示亮,0表示灭。

    2. 内部参数(权重weight+偏移值bias)

    • 对每一个输入值都给一个权重,比如给红灯-1,黄灯0,绿灯1。
    • 偏移值是用来修正的,图中为-0.5。
    • 神经元做的计算:把输入的三个数字分别乘以各自的权重,相加,然后加上偏移值。比如现在是红灯,那么输入的三个值就是1、0、0,权重是-1、0、1,所以计算结果就是:1x(-1) + 0x0 + 0x1 - 0.5 = -1.5
    • 真实的神经元会加入非线性函数处理,并且确保输出值都在0和1之间。

    3. 输出

    • 输出是根据模型规则做出判断
    • X>0 : 前进
    • X<=0 : 停止

    神经元激发模型:
    神经元做的事情就是按照自己的权重参数把输入值相加,再加入偏移值,形成一个输出值。如果输出值大于某个阈值,我们就说这个神经元被“激发”了。

    深度学习过程:
    神经元的内部参数,包括权重和偏移值都是可调的。用数据训练神经网络的过程,就是调整更新各个神经元的内部参数的过程。神经网络的结构在训练中不变,是其中神经元的参数决定了神经网络的功能。

    相关文章

      网友评论

          本文标题:简说:5分钟说清“深度学习”

          本文链接:https://www.haomeiwen.com/subject/etnpeqtx.html