0.《Apollo自动驾驶工程师技能图谱》

【新年礼物】开工第一天,送你一份自动驾驶工程师技能图谱!

布道团队 Apollo开发者社区 1月 2日

AI时代到来,人才的缺乏是阻碍行业大步发展的主要因素之一。Apollo平台发布以来,我们接触到非常多的开发者他们并不是专业自动驾驶领域工程师,他们或是兴趣,或想转行,都对自动驾驶专业知识学习充满渴望。因此,我们做了一个重大的决定——做一份《Apollo自动驾驶工程师技能图谱》,这也是自动驾驶领域的首份技能图谱。

学习自动驾驶的路径是什么?这份技能图谱告诉你

在时下非常受关注的自动驾驶领域,大部分开发者的感受都是只见树木不见森林,不知道如何建立对自动驾驶的宏观认知,不知道自动驾驶涉及的专业技能都有哪些,更不了解自动驾驶的学习路径。

这也是我们推出《Apollo自动驾驶工程师技能图谱》的原因所在——希望通过Apollo在自动驾驶领域的研发实力、技术沉淀、行业洞察,结合Apollo核心能力和技术框架,为希望深入自动驾驶领域的开发者和工程师,呈现一个自动驾驶的技能全景图。

温馨提示:微信压缩图片会导致技能图谱模糊不清,

关注Apollo开发者社区公众号,在输入框回复『技能图谱』,就可获得一份高清电子版。

技能图谱十问十答

为什么这份技能图谱值得你收藏、甚至打印出来挂在办公室里或者书桌前?看完以下问答你就明白啦。

问题1:为什么要规划这样一份技能图谱?

技术发展太快,技术模块涉及繁多,自动驾驶领域需要这样一个技术和技能的梳理,帮助自动驾驶工程师全面了解、快速学习和成长,也给有志于转行自动驾驶的技术人一个指引。

问题2:该技能图谱面向哪些人群?可以帮助学习者达到什么目标?

主要面向两类人群,他们都希望学习自动驾驶,他们或是学生,或是Apollo生态中的合作伙伴。一类就是懂得开发工具和语言开发的开发者和工程师,他们可以从这份技能图谱中补充机器学习和车辆相关的知识;另外一类人群就是机器学习从业者,他们可以通过这份技能图谱,深入了解自动驾驶的各个模块,因为Apollo不同模块之间的差异性大,即使对于百度内部工程师,这个技能图谱也有借鉴意义。

问题3:这份技能图谱包括哪些学习模块?模块设立和划分规则是什么?

这份技能图谱包括两大模块,首先是基础层,就是Apollo开发会用到的共性的语言和编程方式;其次是Apollo层,既包括Apollo开放的感知、决策规划、智能控制、End-to-End等自动驾驶核心能力,也包括硬件,比如GPS、雷达、传感器、车辆相关的知识和技能。

问题4:这份技能图谱是怎么策划出来的?

在策划阶段,按照模型、算法、硬件、车辆相关背景知识四个维度,以问卷、面聊等多种形式,收集百度内部7、8个团队近30位技术专家的专业反馈,再把反馈按照目前的基础层、Apollo层整理分类,经历多次Review,最后与大家见面。

问题5:自动驾驶领域的开发者,哪部分的学习能力需要加强

大部分自动驾驶开发者的『软实力』较强,硬件方面的学习能力相对较弱,尤其基于GPU或者FPGA的芯片编程方面的能力继续增强。

问题6:对于学习Apollo的开发者来说,最大挑战是什么?

最大挑战就是Apollo运行起来,下一步该怎么做?因此Apollo会在2.0版本中开放很多调试、绘图、排查问题的工具;

另外的挑战就是硬件方面了,如果开发者买一个设备进行调试,在没有官方人员支持的情况下是比较困难的,因此Apollo把适配后的硬件设备发到GitHub,让开放设备在GitHub上有现成实例,开发者改过之后就可以用。

问题7:自动驾驶人才需求缺口大吗?

非常大。目前我国汽车从业人员达到360万,但其中技术人才不到50万,占比不到15%。这其中虽然很难明确界定自动驾驶人才有多少,但是可以想见肯定不多。而且从自动驾驶专业人才年薪动辄几百万上千万,就可以知道人才有多紧缺。

问题8:目前Apollo最需要哪方面的人才?

目前会有很多合作伙伴寻求接入Apollo开放平台,为自己的产品注入自动驾驶能力。在接入过程中,车辆、硬件传感器的接入是开发者需要接受的第一关,需要掌握系统集成方面的知识。解决了集成问题后,对自动驾驶的要求就会往感知、决策规划、智能控制等模块方向进行转移。所以,了解整体Apollo结构的开发者,会是Apollo需要的人才;如果对其中某一模块非常熟知,也会是Apollo非常需要的人才。

问题9:自动驾驶开发者还有什么其他的学习路径?

开发者可以从搭建一个Apollo的Demo环境开始,学习Apollo相关模块的技能知识。在Apollo的代码注释中,百度工程师列出了模型对应的参考资料,包括参考书或者论文,这也算是一个学习的捷径。如Apollo2.0新增控制器MPC,对应的源文件包含对该控制模型相关的资料推荐:https://github.com/ApolloAuto/apollo/blob/master/modules/control/controller/mpc_controller.h:
 

/**
* @class MPCController
*
* @brief LQR-Based lateral controller, to compute steering target.
* For more details, please refer to "Vehicle dynamics and control."
* Rajamani, Rajesh. Springer Science & Business Media, 2011.
*/

问题10:已经拿到技能图谱的同学,他们看过之后希望2.0版本有哪些改进?

1.能有各分支更细化的知识和技能表,包括推荐一些好的学习资源;

2.期望后续版本可以极大降低无人车成本,实现量产;

3.希望提供能力进阶地图;

4.希望细化知识点,把软硬件、算法的接口信息定义出来。

首批用户对技能图谱评价

  • 上个月底,我们在Hello,Apollo自动驾驶公开课-深圳站首发了此份技能图谱,收到现场开发者们的反馈,他们说:
  • 我对Open Modules最感兴趣,因为我相信开源的力量是非常强大的,在使用开源代码的时候不仅能够促进百度的技术进程,开源还让我思考——我可以利用这些开源项目来做些什么,这是一个多赢的发展方向。
  • 从1.0版本技能图谱可以看出,Apollo对于自动驾驶现有问题都能给出成熟的解决方案,已经极尽现有经验和想象。
  • 这份技能图谱让我对自动驾驶所涉及的技术领域有一个清晰认识,便于让我结合自身能力进行相关学习。
  • 我对这份技能图谱感知规划部分非常感兴趣。知识技术都是相通的,可以灵活迁移,该部分对本人现在从事的机器人自主视觉导航具有很大的借鉴意义。

2018,送出这份技能图谱,希望能够帮助开发者们,新的启程,我们携手共进!

图片

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

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

相关文章

【POJ - 2337】Catenyms(欧拉图相关,欧拉通路输出路径,tricks)

题干: A catenym is a pair of words separated by a period such that the last letter of the first word is the same as the last letter of the second. For example, the following are catenyms: dog.gophergopher.ratrat.tigeraloha.alohaarachnid.dog A…

12.Cross-Validation

本教程是ML系列的一部分。 在此步骤中,您将学习如何使用交叉验证来更好地衡量模型性能。 What is Cross Validation 机器学习是一个迭代过程。 您将面临关于要使用的预测变量,要使用的模型类型,提供这些模型的参数等的选择。我们通过测量各…

服务器不显示u盘,服务器不读u盘启动

服务器不读u盘启动 内容精选换一换介绍使用Atlas 200 DK前需要准备的配件及开发服务器。Atlas 200 DK使用需要用户提前自购如表1所示配件。准备一个操作系统为Ubuntu X86架构的服务器,用途如下:为Atlas 200 DK制作SD卡启动盘。读卡器或者Atlas 200 DK会通…

Leetcode刷题实战(1):Two Sum

Leetcode不需要过多介绍了,今天一边开始刷题一边开始总结: 官网链接如下:https://leetcode.com/problemset/all/ 题1描述: 1Two Sum38.80%Easy Given an array of integers, return indices of the two numbers such that they…

信息服务器为什么选择在贵州,为啥云服务器在贵州

为啥云服务器在贵州 内容精选换一换当用户已在ECS服务购买GPU加速型云服务器,并且想在该云服务器上运行应用时,可以通过纳管的方式将该云服务器纳入VR云渲游平台管理。登录控制台,在服务列表中选择“计算 > VR云渲游平台”。在左侧导航栏&…

LeetCode刷题实战(2):Add Two Numbers

题2描述: 2Add Two Numbers29.10%Medium You are given two non-empty linked lists representing two non-negative integers. The digits are stored in reverse order and each of their nodes contain a single digit. Add the two numbers and return it as a…

《TCP/IP详解》学习笔记(四):ICMP 协议、ping 和 Traceroute

ICMP 协议介绍 前面讲到了,IP 协议并不是一个可靠的协议,它不保证数据被成功送达,那么自然的,保证数据送达的工作应该由其他的模块来完 成。其中一个重要的模块就是 ICMP(网络控制报文)协议。 当传送 IP 数据包发生错误--比如主机…

Apollo自动驾驶入门课程第①讲—无人驾驶概览

目录 1. 全面了解自动驾驶主要模块 2. 了解无人车的运作方式 3. 开放式软件栈 4. 本节其他重点 本文转自微信公众号:Apollo开发者社区 原创: 阿波君 Apollo开发者社区 8月1日 在Apollo 3.0发布的同时,我们面向更多对自动驾驶感兴趣的开发…

《TCP/IP详解》学习笔记(五):IP选路、动态选路

静态 IP 选路 1一个简单的路由表 选路是 IP 层最重要的功能之一。前面的部分已经简单的讲过路由器是如何根据 IP 数据包的 IP 地址来选择路由的。 这里就不重复了。首先来看看一个简单的系统路由表: 对于一个给定的路由器,可以打印出五种不同的 flag: …

LeetCode刷题实战(43):Multiply Strings

题目描述: 43Multiply Strings28.7%Medium Given two non-negative integers num1 and num2 represented as strings, return the product of num1 and num2, also represented as a string. Example 1: Input: num1 "2", num2 "3" Output…

13.Data Leakage

本教程是ML系列的一部分。在此步骤中,你将学习什么是data leakage及如何预防它。 What is Data Leakage 数据泄漏是数据科学家需要理解的最重要问题之一。 如果您不知道如何防止它,则会频繁出现泄漏,并且会以最微妙和危险的方式破坏您的模…

Apollo自动驾驶入门课程第②讲 — 高精地图

目录 1. 高精地图与传统地图 2. 高精地图与定位、感知规划的关系 2.1 高精地图用于定位 2.2 高精地图用于感知 2.3 高精地图用于规划 3. Apollo高精度地图与构建 3.1 Apollo高精地图 3.2 Apollo高精地图的构建 本文转自微信公众号: Apollo开发者社区 原创&a…

项目总结2:ionic3开发跨平台App如何设置和替换应用图标及启动图

前言: 和原生开发一样,ionic官方提供的设置方式也很简单,只不过多了一个步骤:基于ionic命令的方式自动修改全局的配置文件config.xml。 设置或替换应用图标和应用启动图: 把UI提供的图标拿过来改成特定的名称"i…

LeetCode刷题实战(13):Roman to Integer

题目描述: 13 Roman to Integer 49.5%Easy Roman numerals are represented by seven different symbols: I, V, X, L, C, D and M. Symbol Value I 1 V 5 X 10 L 50 C 100 D …

1.Intro to Deep Learning and Computer Vision

Intro 这是Kaggle深度学习教育课程的第一课。 在本课程结束后,您将了解卷积。 卷积是计算机视觉(以及许多其他应用程序)中深度学习模型的基本构建块。 之后,我们将很快开始使用世界一流的深度学习模型。 Lesson [1] from IPy…

SpringMVC常用的视图接口分类及实现类

SpringMVC中常用的视图接口分类及对应的实现类: URL资源视图:InternalResourceView、JstlView 文档视图:AbstractExcelView、AbstractPdfView 报表视图:ConfigurableJsperReportsView等JasperReports报表技术的视图 JSON视图&…

Apollo自动驾驶入门课程第③讲 — 定位

目录 1. 定位的概述 2. 定位方法介绍 2.1 GNSS RTK 2.2 惯性导航 2.3 激光雷达定位 2.4 视觉定位 2.5 Apollo定位 本文转自微信公众号:Apollo开发者社区 原创: 阿波君 Apollo开发者社区 8月17日 上周我们发布了 Apollo入门课堂第②讲—高精地图&…

Linux与Bash 编程——Linux文件处理命令-L1

目录: linux系统与shell环境准备 Linux系统简介操作系统简史Linux的发行版:Linux与Windows比较:Linux安装安装包下载Linux的访问方式远程登录方式远程登录软件:mobaxterm的使用:使用电脑命令行连接:sshd的…

网络编程懒人入门(一):快速理解网络通信协议(上篇)

转自即时通讯网:http://www.52im.net/ 原作者:阮一峰(ruanyifeng.com),本文由即时通讯网重新整理发布,感谢原作者的无私分享。 1、写在前面 论坛和群里常会有技术同行打算自已开发IM或者消息推送系统,很…

PCA算法中样本方差和协方差的无偏估计与n-1的由来

原文出处: http://blog.sina.com.cn/s/blog_c96053d60101n24f.html 在PCA算法中的方差协方差计算公式中除数为什么是n-1? 假设X为独立同分布的一组随机变量,总体为M,随机抽取N个随机变量构成一个样本,和是总体的均值和方差, 是常…