你一定听过“机器学习”和“深度学习”这两个词,它们究竟指什么?有何区别?如何在无人驾驶领域发光发热?
汽车人参考用白话语言,预计四篇文章,一起探讨机器学习和深度学习在无人驾驶领域的应用,本文为第二篇文章,主要介绍深度学习。
第一篇为机器学习篇(文章链接),第三篇为深度学习与机器学习比较;第四篇为应用篇,请关注汽车人参考(auto_refer)后续更新。
深度学习,英文名称为Deep Learning,又称为深层神经网络(Deep Neural Networks),深度学习是机器学习的一个分支。
机器学习的本质是用计算机来模拟人类学习活动,那么相比于机器学习,深度学习的“深”究竟深在什么地方?
人脑神经网络:神经元
深度学习最早来源于对人脑神经网络的研究。
人的大脑是由数以千亿个神经元组成,神经元是人脑神经系统的基本单位。
神经元主要包括细胞体和突起两个部分,神经元通过突触相互连接着,形成了人类大脑的神经网络。
神经元的突起包括一条长而分支少的称为轴突,数条短而呈树状分支称为树突,人的视觉、听觉、思考等行为通过树突刺激神经元,神经元受刺激后能产生兴奋,再通过轴突把兴奋传导到其他神经元,如图一。
(图一:人脑神经元结构)
兴奋的传导方向:树突→细胞体→轴突。
感知机 = 神经元
而深度学习的基础,感知机(英文Perceptron),其灵感就来自于人脑的神经元结果。
感知机是深度学习最简单的决策机器,就好比一个神经元,也有树突和轴突,如下图二。
树突负责数据输入,轴突根据输入,是否超过一定的阀值,决定传不传递兴奋,放不放电。
上图为一个简单的神经网络的逻辑结构,分成输入层,隐藏层,和输出层。
输入层负责接收信号,隐藏层负责对数据进行处理,处理的结果被整合到输出层。
每层中的一个圆代表一个神经元,也叫做节点,若干个神经元组成了一个层,若干个层再组成了一个网络,就组成了"神经网络"。
而深度学习,就是基于神经网络模型,它的“深”,就体现在模型的层数以及每一层节点数量的多少。
深度学习的基本原理
学习目的是为了训练出一个成熟的模型,模型是否成熟评判的标准简单来说是输入值和目标值是否一致。
深度学习,会在神经网络每一层,找到权重值,使得该层网络将输入与目标对应。
(图三:深度学习原理)
最初的权重是随机赋值的,因此,输出值和目标值相去甚远,通过损失函数算出的损失值也很高。
将损失值进行反向传播(Back propagation),利用优化器对权重不断进行调整,目标是让损失值降低。
随着神经网络处理的输入示例越来越多,当循环足够多时,得到的权重值可以使损失函数最小,这个时候便完成了深度学习的训练。
这就是深度学习的基本原理。
根据生物学研究,一个成年人的大脑拥有1000亿多个神经元,而目前最先进的人工神经网络只包含10多亿个神经元。
目前,深度学习已经广泛应用于无人驾驶领域,如环境感知,用来识别周围环境,也可以用于路径规划,作出决策等等。
已完成
数据加载中