0. 核心概念概览
- “深度学习”技术是近年来“人工智能”再次风靡的主要推动力。
- 早期的“人工智能”技术,依靠程序员总结输入“明确的规则”。
- 生物的大脑都是高度专业化的,是为特定功能进化出来的。
- 大脑是一个强大的模式识别器。
- 大脑不管练习还是使用识别能力,都不是按照各种逻辑和规则进行的。
- 大脑是由神经元组成的。
- 大脑的识别功能可以通过训练提高。
- 神经元用自己的参数处理输入值,若输出值大于某个阈值,神经元就被“激发”。
- 神经元的内部参数,包括权重和偏移值都是可调的。
- 用数据训练神经网络的过程,就是调整更新各个神经元的内部参数的过程。
- 神经网络的结构在训练中不变,是其中神经元的参数决定了神经网络的功能。
1. 深度学习有什么用?
人工智能-->深度学习|神经网络|卷积神经网络--> 图形识别、语音识别、汽车导航...
段子1: 识别一只猫的能力
![](https://img.haomeiwen.com/i7846421/b362491f31a8f234.png)
- 人很容易就能从一张照片里找到一只猫,可是在以前,Google动用了无比强大的计算力量、花了很多年研究都做不到这一点。
- 以前的计算机无法胜任,因为以前的程序员不能总结出计算机能理解的明确规则。
- 但是2012年开始,“深度学习”让计算机识别图形的能力突然变得无比强大,目前已经超越了人类。
2. 人脑并不依赖规则
![](https://img.haomeiwen.com/i7846421/4aa51692a07d0ad5.png)
- 上图是两张人脸的照片,你是怎么判断Ta是男是女的呢?
- 你可能会说女性长得比较秀气一些(眉毛比较细吗?轮廓比较小吗?)
- 体会一下,这是一个非常奇怪的感觉,你明明知道猫长什么样,一眼就能区分男性女性,可是说不清是怎么看出来的。
- 一个法官说,什么叫色情作品?我没办法给一个明文规定,但如果我看见了,就能识别出来。
- 初级的计算机图形识别,必须说清一些明确的规则,让计算机根据规则判断。
- 显然,人脑并不是根据规则做的判断。
段子2: 苍蝇 VS 超级计算机
![](https://img.haomeiwen.com/i7846421/867788e6897fec31.png)
- 问:这只苍蝇大脑只有10万个神经元,能耗那么低,但是它能看、能飞、能寻找食物、还能繁殖。价值上亿的超级计算机,消耗极大的能量,有庞大的体积,可是它的功能为什么还不如一只苍蝇?
- 答:苍蝇大脑是高度专业化的,进化使得苍蝇的大脑只具备这些特定的功能,而我们的计算机是通用的,你可以对它进行各种编程,它理论上可以干任何事情。
3. 人脑的识别能力
关键在于,大脑的识别能力,不是靠临时弄一些规则临时编程。大脑的每一个功能都是专门的神经网络长出来的。
大脑给计算机科学家的四个暗示:
1. 大脑是一个强大的模式识别器。
人脑非常善于在一个混乱的场景里识别出想要找的东西。比如从满大街的人中,一眼就认出你熟悉的人。
2. 大脑不管练习还是使用识别能力,都不是按照各种逻辑和规则进行的。
我们识别一个人脸,并不是和一些抽象的规则进行比对。我们不是通过测量两眼之间的距离来识别这个人。我们一眼看过去,就知道他是谁了。
3. 大脑是由神经元组成的。
人脑由数百亿个神经元组成,不是基于明确规则,而是基于神经元的计算。
4. 大脑的识别功能可以通过训练提高。
一个人从小到大,不断成长,大脑识别能力也是在不断提高。
4. 什么是“深度学习”?
![](https://img.haomeiwen.com/i7846421/65dd0b1f9078a6d1.png)
从左到右分为三层
- 第一层:输入层(Input)输入的数据
- 第二层:隐藏层(Hidden)由神经元组成,主要处理过程,可以有很多层
- 第三层:输出层(Output)由神经元组成,负责作出判断
深度学习就是中间有不止一层隐藏层神经元的神经网络计算,深度的意思就是层次比较深。神经网络底层单元是神经元。
![](https://img.haomeiwen.com/i7846421/d8c63fd12a87bad4.png)
5. 用交通灯模型理解神经元
![](https://img.haomeiwen.com/i7846421/6701ed31754ef891.png)
上图表现了一个根据交通信号灯判断要不要前进的神经元。
理解神经元的基本原理,它由三部分组成:
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 : 停止
神经元激发模型:
神经元做的事情就是按照自己的权重参数把输入值相加,再加入偏移值,形成一个输出值。如果输出值大于某个阈值,我们就说这个神经元被“激发”了。
深度学习过程:
神经元的内部参数,包括权重和偏移值都是可调的。用数据训练神经网络的过程,就是调整更新各个神经元的内部参数的过程。神经网络的结构在训练中不变,是其中神经元的参数决定了神经网络的功能。
网友评论