无人驾驶实战-第十二课(强化学习自动驾驶系统)(完)

在七月算法上报了《无人驾驶实战》课程,老师讲的真好。好记性不如烂笔头,记录一下学习内容。 课程入口,感兴趣的也可以跟着学一下。

—————————————————————————————————————————

强化学习:通过和环境交互学习到如何在相应环境中采取最优策略的行为。特点是不需要标注,具有鲁棒性,对行为(Action)的学习更友好。
Environment:整体任务的工作环境 
Reward:激励、奖励,对行为好坏的一个评价,Value Function,不同环境可以有不同的奖励, 奖励的设计对RL来说至关重要。
Agent:智能体,一般是RL的作用对象 
Action:智能体可以采取的所有可能的行动 
Sensors:环境返回的当前情况 
MDP模型:马尔科夫决策过程
逆强化学习:能够找到一种能够高效可靠的Reward的方法,专家在完成某项任务时,其决策往往是最优或接近最优的。当所有的策略所产生的累积回报期望都不比专家策略所产生的累积回报期望大时, 对应的回报函数就是根据示例学到的回报函数。
常用的逆强化学习方法:学徒学习方法、最大边际规划算法MMP、基于最大熵的逆向强化学习
模仿学习: 从专家提供的范例中学习,一般提供人类专家的决策数据, 每个决策包含状态和动作序列, 把状态作为特征,动作作为标记进行分类或回归的学习从而得到最优策略模型。目标是使模型生成的状态-动作轨迹分布和输入的轨迹分布相匹配,算是一种监督学习方法( 行为克隆 )。特点是泛化性很差,依赖于大量数据 数据增广
深度学习:感知能力,缺乏一定的决策能力
强化学习:决策能力,非常适合做无人车决策规划 
强化学习中的一些分类:On-Policy vs Off-Policy、Model Based vs Model Free、Q-Learning vs SARSA、
DQN(Deep Q Network) 端到端的学习方式、 深度卷积神经网络和Q学习、 经验回放技术; 
DDPG(Deep Deterministic Policy Gradient ) actor-critic 算法、 深度神经网络作为逼近器;
强化学习主要方法的对比
无人车如何使用强化学习(模仿学习)
传感器感知(输入):Radar、Lidar、GPS、Camera … ,从原始数据抽取高阶特征,机器学习将特征转化成知识,知识处理后进行推理;做出合理的动作决策。
Q-Learning
Q-Table为每一个 state 上进行的每一个 action 计算出最大的未来 reward 的期望,每个状态允许四种可能的操作:左移、右移、上移、下移, Table 里的参数式给定最佳策略的状态下采取相应动作获得的最大未来奖励期望  
如何计算 Q-table 中每个元素的值? 
Q-Learning、学习动作值函数(Q值)、Bellman 方程
更新Q值的策略
选取一个动作:在基于当前的 Q 值估计得出的状态 state 下选择一个动作 action。采用动作 action 并且观察输出的状态 s' 和奖励 reward。
DQN
4个Action:上下左右,每走一步有reward,Maximum 未来的 Reward总和
Q-Learning: 使用最佳策略使得最大化未来的Reward值(Q值),Off-policy,持续迭代更新每步(s, a) 。
Exploration vs Exploitation(探索和使用): 局部最优(贪心),初始的时候对信息一无所知
持续更新(S, A) 是Q-Learning的最大问题,因为低效,泛化能力差,对复杂问题维数爆炸,所以后面使用Deep Learning代替Q-Table
DeepMind在这方面发表了文章在Nature上
如何训练DQN?
1.给定状态转移方式 ;2.在状态s用前向推理计算所有Action的预测Q值;3.前向推理下一步s’及其最大Q’值;4.并用Loss function进行梯度更新 
经验回放:提高数据利用率,遗忘数据流顺序(加入随机性)
课程总结
自动驾驶工程师技能图谱

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.hqwc.cn/news/60591.html

如若内容造成侵权/违法违规/事实不符,请联系编程知识网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

Vite 创建 Vue项目之后,eslint 错误提示的处理

使用 npm create vuelatest创建 vue 项目(TS)之后,出现了一些 eslint 错误提示,显然,不是代码真实的错误,而是提示搞错了。 vuejs/create-vue: 🛠️ The recommended way to start a Vite-pow…

Spring Boot集成EasyExcel实现excel导入导出操作

文章目录 Spring Boot集成EasyExcel实现excel导入导出操作0 简要说明简单使用读操作excel源文件实体类监听器业务代码 写操作*实体类*excel示例业务代码根据参数指定列导出指定哪几列导出复杂头导出 关于数值型,日期型,浮点型数据解决方案实体类接收字符…

【计算机视觉】关于图像处理的一些基本操作

目录 图像平滑滤波处理均值滤波计算过程python实现 高斯滤波计算过程python实现 中值滤波计算过程python实现 图像的边缘检测Robert算子计算过程python实现 图像处理腐蚀算子计算过程python实现 Hog(梯度方向直方图)特征计算流程:Hog的特征维…

ArcGIS、ENVI、InVEST、FRAGSTATS技术教程

专题一 空间数据获取与制图 1.1 软件安装与应用讲解 1.2 空间数据介绍 1.3海量空间数据下载 1.4 ArcGIS软件快速入门 1.5 Geodatabase地理数据库 专题二 ArcGIS专题地图制作 2.1专题地图制作规范 2.2 空间数据的准备与处理 2.3 空间数据可视化:地图符号与注…

计算机基础知识一

1、计算机系统组成 1.1 硬件 CPU:中央处理器、计算机核心部件、负责计算任务 内存:记忆功能、存储二进制数,内存是一个字节一个地址。 内存大小换算: 8 bits 1 Byte 1024 Bytes Bytes 1 KB , 1024 KB KB 1 …

【安装部署】Mysql下载及其安装的详细步骤

1.下载压缩包 官网地址:www.mysql.com 2.环境配置 1.先解压压缩包 2.配置环境变量 添加环境变量:我的电脑--->属性-->高级-->环境变量-->系统变量-->path 3.在mysql安装目录下新建my.ini文件并,编辑my.ini文件 编辑内容如…

nodejs实现解析chm文件列表,无需转换为PDF文件格式,在线预览chm文件以及目录,不依赖任何网页端插件

特性: 1、支持任意深度的chm文件解析 2、解析后内容结构转换为tree数据呈现 3、点击树节点可以在html实时查看数据 4、不依赖任何浏览器端插件,兼容性较好 nodejs端核心代码 const $g = global.SG.$g, fs = global.SG.fs, router = global.SG.router, xlsx = global.SG.xl…

关于丢失安卓秘钥的撞sha-1值的办法

实验得知,安卓sha-1和keytool生成秘钥签名文件的时间有关。 前提条件是,开发者必须知道生成秘钥的所有细节参数 以下是撞文件代码(重复生成) import time import osidx 0while True:cmdkeytool -keyalg RSA -genkeypair -alia…

FFmpeg安装和使用

sudo apt install ffmpeg sudo apt-get install libavfilter-devcmakelist模板 CMakeLists.txt cmake_minimum_required(VERSION 3.16) project(ffmpeg_demo)# 设置ffmpeg依赖库及头文件所在目录,并存进指定变量 set(ffmpeg_libs_DIR /usr/lib/x86_64-linux-gnu) …

C++的六大“天选之子“拷贝构造与与运算符重载

🎈个人主页:🎈 :✨✨✨初阶牛✨✨✨ 🐻推荐专栏1: 🍔🍟🌯C语言初阶 🐻推荐专栏2: 🍔🍟🌯C语言进阶 🔑个人信条: 🌵知行合一 &#x1f…

Vue 中使用 WebWorker

目录 安装 loader 应用场景 打包时错误处理 安装 loader npm install worker-loader -D 如果直接把worker.js放到public目录下,则不需要安装loader vue.config.js const { defineConfig } require(vue/cli-service)module.exports defineConfig({transpileDe…

Von Maur, Inc EDI 需求分析

Von Maur, Inc 是一家历史悠久的卖场,成立于19世纪,总部位于美国。作为一家知名的零售商,Von Maur 主要经营高端时装、家居用品和美妆产品。其使命是为顾客提供优质的产品和无与伦比的购物体验。多年来,Von Maur 凭借其卓越的服务…