自动驾驶中的卷积神经网络(2)|学习笔记

简介: 快速学习自动驾驶中的卷积神经网络(2)

开发者学堂课程【深度学习与自动驾驶:自动驾驶中的卷积神经网络(2)】学习笔记与课程紧密联系,让用户快速学习知识

课程地址https://developer.aliyun.com/learning/course/533/detail/7155


自动驾驶中的卷积神经网络(2)

 

内容介绍

、ConvNets

、How Can Convolutional Neural Networks Help Us Drive?

 

内容简介

一、ConvNets

1、ConvNets: Spatial Arrangement of Output Volume

image.png

使输入和输出有相同高度和宽度。所以这是一个卷积的可视化。

image.png

这与人类视觉的工作方式非常相似这里左边的输入是一个数字的集合:0,1,2,一个过滤器或者有两个过滤器显示为W1-WO和W1。以红色显示的那些过滤器是在这些过滤器中应用的不同权重。而且每个过滤器都有一定的深度输入深度3,每列有三个,所以你沿着图像滑动过滤器保持权重相同,这是权重的共享。所以第一个过滤器选择权重这是一个优化问题用这种方式选择权重,对于有用的特征它会被激活并且不会因没有用的特征而激发。然后还有第二个过滤器会由有用的特征触发,并根据一个正数产生一个输出信号,这意味着该区域有一个明显的特征,如果没有特征就产生一个负数。但过滤器是相同的。这可以大大减少参数,所以你可以处理输入,例如。1000*1000像素的图像或视频。

2、ConvNets: Pooling

 image.png

(1)这有一个非常重要的概念。即权重的空间共享,这意味着在检测的特征具有空间不变性。它允许你从任意图像学习,所以你不必担心要用什么更巧妙的方式预处理图像,你只是给出原始的图像。这还有另外一个操作:池化。例如在这种情况下,这是一种减小图层大小的方法,它是最大池化因为它是输出的集合,选择x1,并总结这些像素的集合。使得池化操作的输出远小于输入。因为不需要高分辨率。分辨哪个像素在图像中是重要的,不需要确切知道哪个像素与猫耳朵或猫脸相关联。只要你知道它就在那一边就行。这也减少了操作的复杂性。

(2)问题:什么时候会造成池化过度。什么时候应该停止池化?

池化是一个非常粗糙的操作需要知道的是它没有任何可以学习的参数。所以不能很好的学习任何关于池化的东西,在这种情况下,只是选择最大池化,选择最大的数字减少了分辨率也失去了很多信息,有人认为只要你没有将整张图片池化为一个单的值就不会丢失太多信息,但是你获得了训练效率减少存储所需空间减小了网络的规模,所以这容易引起争议它是一个参数你可以修改它看看哪些值起作用。

3、Computer Vision: Object Recognition / Classification

结合起来一个卷积神经网络输入是一幅图像通常有一个卷积层然后是一次池化操作接着是另一个卷积层再一次的池化操作以此重复最后如果任务是分类就会得到一堆的卷积层和池化层有几个全连接层,你从空间卷积运算开始把一层中的每一个神经元连接到下一层,这样最终你会拥有一组神经元每个神经元都与一个特定的类相关联,输入图像每张图是一个0到9之一的数字,这里输出是10个神经元经过这些卷积层的处理,在最后,用1或2或3个全连接层生成了10个神经元,每个神经元的工作是,当它看到一个特定的数字时被激活而看到其他的数字的则产生一个低概率,这是在CIFAR-10问题上获得95%的准确率的原因

image.png

这就是mageNet数据集图片包括一只美洲豹或一艘集装箱船,可以产生这张图片是集装箱船的概率或者是美洲豹的概率,同时也显示了邻近神经元的输出及其概率。

4、Computer Vision:Segmentation

image.png

可以通过在最后去掉全连接层来使用相同的运算,与从图像映射到图像中包含的信息的预测相反你从这张图片映射到另一张图片,而且你可以训练使得那张图片成为一张具有激发能力的图片,空间上这意味着它给包含感兴趣的对象的区域一个接近1的数,给不太可能包含图像的区域一个较低数值,所以,可以从左边开始从一张骑着马的女人的原始图片到一张分割轮廓图。

5、Computer Vision:Object Detection

同样的过程可以用来识别物体,所以你可以将场景分割为,一些感兴趣的物体感兴趣的候选对象然后逐个处理这些候选对象,并且进行类似上一步的分类输入图片输出类别。

image.png

通过遍历图片可以找到精确地划分出图片里的一头牛的最好的方法,这就是物体识别。

 

二、How Can Convolutional Neural Networks Help Us Drive?

这些神奇的卷积神经网络是怎样帮助我们驾驶的?

image.png

这是汽车道路前进,它来自于特斯拉车辆收集的数据但是先来看驾驶。

1、Driving: The Numbers

(in United States, in 2014)

(1)Miles

① All drivers: 10,658 miles(29.2 miles per day)

② Rural drivers: 12,264 miles

③ Urban drivers: 9, 709 miles

(2)Fatalities

① Fatal crashes: 29, ,989

② All fatalities: 32,675

③ Car occupants: 12,507

④ SUV occupants: 8,320

⑤ Pedestrians: 4 884

⑥ Motorcycle: 4,295

⑦ Bicyclists: 720

⑧ Large trucks: 587

来看一般的驾驶任务从人的角度一名美国司机平均每年驾驶10,000英里。在乡村这个距离会多一点在城市里会少一点,每年大约有30000起重大车祸,多达32000甚至38000人丧生,这些人包括车内乘员行人骑自行车的人以及骑摩托车的人。

image.png

这可能是一个令人惊讶的事实但是在自动驾驶的课堂上我们应该记住

image.png

除了被归类为“其他”的59.9%在美国最受欢迎的车是皮卡包括福特F-1系列,以发雪佛兰Silverado和Ram重要的一点是想要有掌控权看到的这些有趣的车中的一辆,上课用的数据集就是来自特斯拉的汽车,它是一辆介福特F-150与小巧的谷歌无人车之间的车型,它很快,它让你体验到驾驭的感觉,但是如果需要,它也可以在高速路上自动驾驶几百英里。

2Human at the Center of Automation:The Way to Full Autonomy Includes the Human

(1)Emergency

Automatic emergency breaking (AEB

(2)Warnings

Lane departure warning (LDW)

Forward collision warning (FCW)

Blind spot detection

(4)Longitudinal

Adaptive cruise control (ACC)

(5)Lateral

Lane keep assist (LKA)

Automatic steering

(6)Control and Planning

Automatic lane change

Automatic parking

你仅按一个键就可以切换到自动驾驶,这种切换是一种令人着迷的权衡将操控从人转移到汽车,这是一种对信任的转变,而且当人与时速超过60英里的汽车联系在一起时,这是研究人类心理的一个机会。

3、Distracted Humans

(1)What is distracted driving?

① Texting

② Using a smartphone

③ Eating and drinking

④ Talking to passengers

⑤ Grooming

⑥ Reading, including maps

⑦ Using a navigation system

⑧ Watching a video

⑨ Adjusting a radio

(2)Injuries and fatalities

3,179 people were killed and 431,000 were injured in motor vehicle crashes involving distracted drivers

(in 2014)

(3)Texts:

169.3 billion text messages were sent in the US every month.

(as of December 2014)

(4)Eye off road:

5 seconds is the average time your eyes are off the road while texting. When traveling at 55mph, that's enough time to cover the length of a football field blindfolded.

这里有一些让人类分心的事,比如,使用智能手机打字,看视频,梳妆打扮与乘客交谈,吃东西喝东西发短信,2014年,在美国每月有1690亿条短信被发送,平均来说,当发短信时视线会离开道路5秒钟,这就是自动化驾驶的机遇。

4、4 D's of Being Human: Drunk, Drugged, Distracted, Drowsy

(1) Drunk Driving: In 2014, 31 percent of traffic fatalities

involved a drunk driver,

(2) Drugged Driving: 23% of night-time drivers tested positive for illegal, prescription or over-the-counter medications.

(3) Distracted Driving: In 2014, 3,179 people (10 percent of

overall traffic fatalities) were killed in crashes involving distracted drivers.

(4) Drowsy Driving: In 2014, nearly three percent of all traffic fatalities involved a drowsy driver, and at least 846 people were killed in crashes involving a drowsy driver.

NHTSA将其称为4个D:醉酒、吸毒、走神、疲劳,这4个中的每一个都是引进自动驾驶的机遇。对醉酒驾车的改善也许最大。

5、In Context: Traffic Fatalities

(1)Total miles driven in U.S. in 2014:

3,000,000,000,000 (3 million million)

Fatalities: 32,675(1 in 90 million)

(2)Tesla Autopilot miles driven since October 2015:

300,000,000 (300 million)

(as of December 2016)

Fatalities: 1

然后是里程,数据上面,每年有3万亿英里的驾驶,再看TESLA的自动驾驶仪,这门课的研究实例,全自动驾驶模式开启,截至2016年十二月,共驾驶了3亿英里,由人控制的车辆造成的车祸死亡比例为1:90,000,000,每年有大于3万车祸死亡的人,而目前TESLA自动驾驶的汽车仅有一例车祸死亡的事件有许多的方法可以来统计目前,也许自动化可以使得驾驶更加安全。问题是:并不理解自动化,因为没有数据,没有汽车驾驶时前方道路的录像,也没有驾驶员的数据,自动驾驶上路的车还不够。因此需要许多的数据,收集了大量数据用于MIT研究,关于车辆自动驾驶的数据这些收集到的数据有助于去理解它。

6、The Data

这些数据,它们将用于训练算法这是TESLAModelS和ModelX,检测了17组数据收集到的这些数据超过了5000小时、70,000英里

image.png

关于放在里头的摄像机。收集前方道路的录像。这是一个人驾驶着TESLA从Boston到Florida的行程。蓝色部分所展示的是自动驾驶仪工作的时间,目前是0分钟并且之后会一直增长,对于一个持续了很久的上百英里的路程,人们使用自动驾驶仪,TESLA总行驶里程数13亿英里,3亿英里是靠自动驾驶仪占其中的25%,收集前方道路以及驾驶员的数据,有两个用来观察驾驶员的摄像头

7、Camera and Lens Selection

 image.png

用来记录的摄像机是常规的网络摄像机,计算机视觉领域的常用设备C920,在它上面还有一些特殊的镜头,那么这些网络摄像机的特殊之处在哪里呢没有什么东西只卖$70还像它那么好,他们的特殊之处在于,他们可以压缩数据,因此可以收集大量的数据,他们可以使用合理的存储空间来储存数据并训练算法。

8、Semi-Autonomous Vehicle Components

(1)External

① Radar

② Visible-light camera

③ LIDAR

④ Infrared camera

⑤ Stereo vision

⑥ GPS/IMU

⑦ CAN

⑧ Audio

(2)Internal

① Visible-light camera

② Infrared camera

③ Audio

在自动驾驶方面需要做什么呢如何一辆自动驾驶的汽车呢?需要雷达传感器、激光雷达传感器、视觉传感器、声音信号传感器,朝向外部,帮助检测外部环境的物体定位等等,还有面向内部的传感器:可见光相机、声音信号传感器、红外摄像机。

9、Self-Driving Car Tasks

(1)Localization and Mapping:

Where am l?

(2)Scene Understanding:

Where is everyone else?

(3)Movement Planning:

How do I get from A to B?

(4)Driver State:

What's the driver up to?

可以分解自动驾驶汽车的任务为4个步骤:定位、回答我在哪里、场景理解、以及,使用场景周边的信息结构来解释场景内的不同对象的身份,以及他们的语意和动作,还有路线计划,一旦搞清楚所有事情,找到所有的行人和其他的车辆,如何在迷宫里进行导航呢,如何安全且合法的穿过这些话七八糟的物品,这是关于驾驶员的状态,如何检测使用的录像以及其它的信息呢?驾驶员的录像检测了他们的情绪状态的信息以及分心的程度。

这就是激光雷达的实时数字,激光雷达是为你提供3D点云的传感器,因此激光雷达是一种科技,大多数自动驾驶汽车都用激光雷达来为人们提供强大的地面实况,这可能是拥有的最好的传感器,通过它获得外部环境噪声最小的3D信息。

image.png

自动驾驶仪总是在改变,最棒的事情之一就是只用更新软件,可自动驾驶时间的越来越少,但是在这里,在这个早期的版本,他展示了第二行是黄色的,展示了自动驾驶仪什么时候是可用的但是并没有开启,因此总的驾驶时间是10小时,自动驾驶仪有7个小时是可用的并且有一个小时处在工作状态,这个人是一个负责任的驾驶员或者说他是个细心的驾驶员,因为目前正在下雨,自动驾驶仪仍然处于可用的状态

不能以死亡的人数作为安全性的标志,因为驾驶员仅仅当它是安全的时候才会去使用这个系统它是完全开放的,关于这个数字仍存在着很多争议,关键是否认为它是个不好的事物,因此可能会相信人类和它的互动,不管是 YouTube 视频还是媒体天花乱坠的宣传,你仍然是一个人类,驾驶着每小时移动60英里的金属盒子,你的生命都寄托在上面,除非你知道它是完全安全的或者你十分信任这个系统,不然你不会使用它,这还并不是全部你还能看到一个人在后座开始睡觉或者下棋事实是只要在车里,你的生命就悬系于车上而你要为此负责,不管是在什么样的车上

提问你需要看到什么或者感知到什么才能安全驾驶是看到划线还是什么在定位和导航的时候依据什么

这取决传感器,加州运行的谷歌无人车,使用高分辨率激光雷达为周围环境制作地图,激光雷达有个弱点,虽然不确切知道原因,就是在雨中和雪中表现不佳,在环境改变时表现不佳,环境的视觉反光特征改变的时候,人类仍然可以辨别,但是依靠激光雷达定位的车辆就没办法,因为地标的长相变了,计算机视觉帮助识别交通标志线,或跟随一辆车,规则是跟随前方的车辆,以及保持在两条线之间,道路是为人眼设计的,这很好,可以用计算机视觉去做同样的事,同时有雷达,很原始,但是,是距离信息的可靠来源,使你不至于撞上金属物体,一切取决于你依赖什么获取信息,但当你进入真实世界会发生各种情况,这些方法是否依然靠谱,回到定位问题,深度学习的作用。

相关文章
|
4天前
|
网络协议 网络架构 数据格式
计算机网络学习笔记(一)
OSI七层网络模型旨在支持异构网络互联,从下到上分别为物理层(传输比特流)、数据链路层(帧传输,如交换机)、网络层(IP数据包路由,如路由器)、传输层(TCP/UDP,端到端通信)、会话层(管理会话)、表示层(数据格式转换)和应用层(用户接口,如FTP, SMTP)。每一层负责不同的通信功能,并通过协议如PPP, IP, TCP等协同工作。
|
4天前
|
缓存 网络协议 开发者
计算机网络学习笔记(三)
TCP的异常终止使用reset报文,用于强制关闭连接,不等待正常四次挥手。RST标志位设置时,发送方直接丢弃缓存,接收方无需确认。常见情况包括:尝试连接服务器未开放的端口、一方异常崩溃、收到不属于现有连接的报文、超时未收到确认报文或应用开发者优化效率。reset报文帮助释放资源,防止连接挂起。
|
4天前
|
安全 数据安全/隐私保护
计算机网络学习笔记(四)
HTTPS流程涉及服务器的公钥/私钥和客户端随机密钥。首先,客户端向服务器443端口发起请求,服务器发送公钥给客户端。客户端验证公钥后生成随机密钥(client key),用公钥加密后发送回服务器。服务器用私钥解密获取client key,然后用它加密数据成密文传回客户端。客户端用client key解密完成安全传输。
|
5天前
|
机器学习/深度学习 PyTorch 算法框架/工具
使用Python实现卷积神经网络(CNN)
使用Python实现卷积神经网络(CNN)的博客教程
31 1
|
10天前
|
机器学习/深度学习 并行计算 测试技术
BiTCN:基于卷积网络的多元时间序列预测
该文探讨了时间序列预测中模型架构的选择,指出尽管MLP和Transformer模型常见,但CNN在预测领域的应用较少。BiTCN是一种利用两个时间卷积网络来编码历史和未来协变量的模型,提出于《Parameter-efficient deep probabilistic forecasting》(2023年3月)。它包含多个由扩张卷积、GELU激活函数、dropout和全连接层组成的临时块,有效地处理序列数据。实验表明,BiTCN在具有外生特征的预测任务中表现优于N-HiTS和PatchTST。BiTCN的效率和性能展示了CNN在时间序列预测中的潜力。
21 1
|
11天前
|
机器学习/深度学习 人工智能 算法
【AI 初识】什么是卷积神经网络 (CNN)?
【5月更文挑战第2天】【AI 初识】什么是卷积神经网络 (CNN)?
|
12天前
|
机器学习/深度学习 自然语言处理 搜索推荐
|
13天前
|
机器学习/深度学习 自动驾驶 安全
基于深度学习的图像识别技术在自动驾驶系统中的应用网络安全与信息安全:防御前线的关键技术与意识
【4月更文挑战第30天】随着人工智能技术的飞速发展,深度学习已成为推动多个技术领域革新的核心力量。特别是在图像识别领域,深度学习模型已展现出超越传统算法的性能。在自动驾驶系统中,准确的图像识别是确保行车安全和高效导航的基础。本文将探讨深度学习在自动驾驶中图像识别的应用,分析关键技术挑战,并提出未来的发展方向。
|
13天前
|
机器学习/深度学习 PyTorch TensorFlow
【Python机器学习专栏】卷积神经网络(CNN)的原理与应用
【4月更文挑战第30天】本文介绍了卷积神经网络(CNN)的基本原理和结构组成,包括卷积层、激活函数、池化层和全连接层。CNN在图像识别等领域表现出色,其层次结构能逐步提取特征。在Python中,可利用TensorFlow或PyTorch构建CNN模型,示例代码展示了使用TensorFlow Keras API创建简单CNN的过程。CNN作为强大深度学习模型,未来仍有广阔发展空间。
|
15天前
|
机器学习/深度学习 算法 TensorFlow
TensorFlow 2keras开发深度学习模型实例:多层感知器(MLP),卷积神经网络(CNN)和递归神经网络(RNN)
TensorFlow 2keras开发深度学习模型实例:多层感知器(MLP),卷积神经网络(CNN)和递归神经网络(RNN)