马斯克:我要抢答!
注:内容较长,阅读可能需要毅力,请酌情安排时间。多是个人见解,有不对的大家批评指正。
前言
我把结论先放在前面,以便节约您的时间。这次 AI-Day 都说了哪些内容?
从时间角度:过去部分主要介绍了算法架构、基于向量的融合式算法创新、决策系统算法优化、标注数据和模拟系统这四块内容,未来部分由 Dojo AI 加速芯片及擎天柱“人形特斯拉汽车”两部分构成。
过去部分我个人的感受是:强大的工程能力和基于向量融合算法各个部分的系统整合能力,让我觉得特斯拉技术团队的算法创新可能不如 DeepMind,但工程能力方面,说他们第二可能没几个团队敢称第一。
几乎所有业界流行的模型算法和光线追踪等新技术,在他们手上都变成了可塑性极强的橡皮泥。其次,未来押宝在自研的算法芯片的领先性,以及擎天柱机器人对人类劳动力的替代。前者是内涵的增强,进一步加强核心竞争力和护城河。后者是外延的增强,把算力和自动化控制技术储备、地理空间理解能力等,通过擎天柱机器人输送到更通用的应用领域,即:出行=>所有人类活动的人机协同场景。
无论这种人机协同是实时的,如陪你一起整理房间,还是非实时的,如代替你去客户家进行汽车检修,这种协同能力和用户进行深度耦合后,就赋予了人类如火影忍者版的影分身之术!下面,我们结合观看 AI-Day 保存的截图,依视频的顺序和内容结构,以:内容、观察、思考、启发的结构,分享一下自己的些许愚见。
结构
识别:Linux 的万物皆 Stream 到 特斯拉万物皆 Vector
决策:真实的体验、真实的驾驶、真实的局部最小泥潭
标注:机器识别和人类理解的完美结合
仿真:真实保下限自由突上限
计算加速:夸张的 I/O 垂直供电和散热的模块化硬件加速芯片群
擎天柱:站起来用脚走路还长了手的 Model S
结语:脚踏实地仰望星空
识别
内容:
观察:
2、 物理运动学知识嵌入算法模型;
3、 特征堆栈优化记忆平衡性能;
4、 多模型、多模态融合下空间理解的上帝视角。
思考:
1、虚拟相机融合多相机数据;
之前搞过双目视觉和 PointCloud 3D SLAM,但是,从特斯拉基于摄像头的自动驾驶技术问世,我从没想过把这两个领域结合起来。其实,回头看这两个技术的结合是非常自然的,毕竟 SLAM 源于 ROS 机器人操作系统的兴起,彼时对空间理解的迫切需求,至今仍在扫地机器人、穿越机等领域长盛不衰。
2、物理运动学知识嵌入算法模型;
知识嵌入算法模型近期很火。在不断以 SOTA 攻克自然语言、图像、自动化、化学、医药等领域 AI 高歌猛进的时代,我经历了从皮尔逊相关度和欧几里得距离的协同推荐,到支持向量机、多层感知器、端到端的深度神经网络、QLearn强化学习、DeepQLearn深度强化学习、卷积、循环神经网络、生成神经网络、图神经网络、注意力机制等,再到神经网络架构的静态图计算、动态图计算、量子计算等,AI 领域也在随之发生着微妙的变化。
知识嵌入正是这些变化中,近一段时间出现在顶会论文里较多的。知识嵌入我个人理解最大的好处是在于可解释性、可控性提升。所谓可解释性提升,是指知识嵌入能够将原本由神经网络拟合的各种参数,部分被嵌入的知识所约束,从而将拟合、优化的方向限定在先验知识的约束内。所谓可控性提升,是指知识嵌入对神经网络拟合的约束范围调控,事实上在控制模型的精度。类似知识嵌入的频繁提及和应用,昭示了 AI 的算法模型、框架乃至硬件加速电子电路等,都在朝着更精细化、工程化和实用化的方向悄然变化。
#Google 量子计算框架Cirq示例# https://quantumai.google/cirqimport cirq# Pick a qubit.qubit = cirq.GridQubit(0, 0)# Create a circuitcircuit = cirq.Circuit(cirq.X(qubit)**0.5,# Square root of NOT.cirq.measure(qubit, key=’m’)# Measurement.)print(“Circuit:”)print(circuit)# Simulate the circuit several times.simulator = cirq.Simulator()result = simulator.run(circuit, repetitions=20)print(“Results:”)print(result)
3、特征堆栈优化记忆平衡性能;
堆栈其实没什么,但为什么是27ms压栈一次呢?我相信这背后有大量的测试、验证和优化。其实,如果把自己带入到驾驶场景,记住周围环境并在驾驶中不断调整自己的预测,已经是老司机的下意识反应了。而算法工程师和软件工程师们,常常割裂、技术的定义和解决问题,往往容易忽视这些身边显而易见、朴素的事实。
我认为让模型替代人在驾驶等场景思考,首先要让模型像这些专业人士一样进行专业的思考。比如,我们在 imgcook.com 的 D2C 设计稿生成代码能力研发中,浙江大学的老师和同学并不懂前端,在定义和解决问题的时候往往是从学术和技术的角度孤立视角下解决问题,效果往往不尽如人意。但因为他们是专家,又很难深刻理解我的一些建议。在应用 AI 和机器学习技术的时候,我认为前提是对应用对象领域的深刻思考,这些深刻思考才能定义出真正的、专业的问题,并让算法模型像专家一样思考。
4、多模型、多模态融合下空间理解的上帝视角。
其实,我们已经渐渐变成了超人,当然,不是内裤外穿、披着斗篷、眼睛射激光的那种,而是千里眼、顺风耳、万事通等。只要打开视频通话,我就可以和远在深圳的老婆孩子处于同一个数字空间,彼此能够听见、看见。最近,脸书收购了一家提供触觉仿真的公司,可能不远的将来我还能在数字空间里品评一下老婆买的裙子料子不错。信息从互联网时代开始,在 Web 2.0 繁荣,到如今的过载。可以说,只要你愿意花点儿时间,总是能够获取到万事万物的信息。前阵子在 B 站上,学习了大连理工大学方老师的《现代显微成像技术》,让我知道了:傅里叶变换除了理解信号时域和频域变化外,还能够理解信息在空间里的概率分布,如单光子成像的空间信息分布等。万事万物和我之间已经没有距离,只要我们同在数字空间里,或许这就是世界对元宇宙的期待之根源吧。
我依稀记得当年玩极品飞车,我还是喜欢第三人称视角而不是主视角。主视角带来的是沉浸感,让玩家觉得投入和刺激。第三人称视角则接近于上帝视角,让我能够更好地判断周围的环境,从而提前选择入弯的时机和角度。而我从没想到,特斯拉竟然帮我实现了在现实生活中获得这种超能力的梦想,我的技能树又点上了一个有趣的分支。
启发:
首先,万物皆 Stream 一样用 Vector 把不同的特征、算法模型联系起来,系统化解决问题是对我的启发。虽然,之前对 Ada Net 的 SubNet Search、AutoML、联邦学习等技术有过研究,但特斯拉的做法更实际、更贴近问题和场景,而不仅仅是在纯技术层面考虑问题。
其次,当我把《我是个怪圈》、罗素悖论、哥德尔不完备定理、集合论和自然数论的危机联系在一起,再想想特斯拉的很多做法,让我愈发对“内观俯察”笃定不已。一切都在于“自指向性”带来的强大破坏力和强大创造力。可能因为成长历程坎坷,自幼就习惯于在自己身上找问题、改变自己适应环境以生存下去。但是,观察四周真正理解自指向性、内观俯察的技术人不常有,有则皆是我学习的榜样。就像特斯拉,并没有沉浸在海量数据和 ShadowSystem 带来的巨大成就,而是进一步下沉贴近驾驶者和驾驶场景,去解决驾乘本身和车与环境的问题。我在这方面做得还远远不够,技术惯性和技术偏执还时常如迷雾萦绕。
最后,突破人的惯性思维。今天,不论是内涵还是外延“人”已经不再是简简单单的双足直立行走会使用工具等定义了。但是,不可否认的是作为灵长类动物我与生俱来的优越感和惯性,限制了我的思想。“上帝视角”简单的四个字,其实突破了对人的认知和惯性,上帝、外星人可能就是未来的人类而已,就像无数科幻小说中的构想成为现实,蜥蜴人可能并不是老高说的藏在地底的外星人,而是未来某些人类希望外表更酷做的基因改造或换装、Avatar 而已。因此,这种视角下重新看待手上的业务,我能否用技术让淘宝变成用户手里的阿拉丁神灯,摸一摸就能变出自己想要的东西?虽然是个比喻,但超出用户预期才是真的体验创新,而实现它的技术就是护城河与核心竞争力。下面,来看看特斯拉在路线规划的决策中如何进行体验创新的。
决策
内容:
观察:
1、多目标优化控制的驾驶平滑性;
2、“实用的自动驾驶”实现智能会车;
3、导航能力协同解决局部最小值问题。
思考:
1、多目标优化控制的驾驶平滑性;
安全性、舒适性和转弯便利性多目标优化控制下的平滑驾驶,蕴含了丰富的科技人文思考。加速会带来推背感,爽!加速转弯呢?刹车呢?不爽!可是,在城市拥塞的车流中,错过变道的机会可能会更加不爽吧?当然,安全还是要放到第一,爽着、爽着人没了也不行。
但是,我发现多目标优化控制其实是非常难的。比如,在芯片领域 PPA(Performance性能、Power功耗、Area尺寸)问题、在算法领域精度和泛化能力问题、搜索推荐的精度和重复、探索型匮乏之间的矛盾问题等等,只要稍微留意一下周围,我就能发现众多类似的问题。因为,简单的问题都解决得七七八八,留给我们的都是复杂的、系统性的问题。
说到系统性问题,就不得不提维纳的《控制论》,如何把复杂系统符号化并进行数学分析,理解系统的应用对象、瞬态、稳态、性能参数、稳态误差、PID 控制、根轨迹和劳斯-赫尔维茨公式判据法选取合适开环增益等等。还有现代控制论中:时域综合方法里状态反馈、输出反馈、极点配置、观测器、解耦控制、最优控制等;频域综合方法里调节器超前、滞后、超滞后、Bode图、Nichols图、多项式矩阵综合方法等。
留心细看,我总能在特斯拉的工程实践中找到这些理论和方法的影子,这是在一众国内自动驾驶公司的 PPT 和演讲中看不到的,国内公司看到的更多是跟随、应用、优化,为什么?因为,技术变革初期和中期成功太容易了,真正沉下心“自指向性”的“内观俯察”搞研究的人,往往被认作“不是疯了就是傻了”,大家都捞钱去了。如今,从 Matlab、Sketch、EDA 等软件再到芯片等硬件,被卡脖子的时候,很多大数据、新能源、智慧城市啥的赤裸着身子站在沙滩上茫然无措。反观特斯拉的技术团队,能够从方案的思考和实现细节上寻得的蛛丝马迹,无不透露出其对基础知识和底层原理的重视,以及团队扎实的功底。
2、“实用的自动驾驶”实现智能会车;
其实,看直播中的视频画面会更有体感,我简单用文字描述一下:AutoPilot 先减速观察对面企图通行的轿车,发现轿车停下,立即毫不犹豫地开到其面前的右侧空位让其通过,然后自己并线后驶离。说真的,估计我这个开了十几年车的老司机都没 AutoPilot 这么果敢、流畅。这背后,我的感受是特斯拉对实用主义原则的坚持。不管是特斯拉的自动驾驶、超级工厂、SpaceX 的火箭回收、Boring 的 Hyperloop 还是最新的一体化房屋,无处不透露着实用主义,大部分都在解决资金、人力和时间成本问题。
驾驶领域的基本问题就那么多,上过驾校且经历过笔试、路考的话大抵都门儿清。可做自动驾驶的团队们大多买个激光雷达往车顶一装,车上搞个车机跑个端到端的强化学习模型了事,然后就去忽悠投资人和老板。我很少听自动驾驶技术团队,站在驾驶场景里实实在在讨论驾驶的问题,更多的是在宣传自己的算法多牛逼、准确率召回率有多高云云。
3、导航能力协同解决局部最小值问题。
这块儿没太多好说的,不能只见树木不见森林,全局最优和跨技术栈的协同良好解决了问题。
启发:
马斯克说他眼中的“第一性原理思维模型”是:回溯事物本质,重新思考该怎么做。什么叫回溯事物本质,其实就是要对事物最基本要素进行解构。第一性原理就是建立在这种解构基础上,找到实现目标最优路径的方法。此哲学观点源于亚里士多德:“每个系统中存在一个最基本的命题,他不能被违背或删除。”
马斯克对这个观点的运用,在特斯拉电动车普及上,起到了关键作用。其时,马斯克回溯阻碍电动车普及的问题,发现锂电池价格昂贵影响大众消费意愿,能量密度低影响续航。而这两个实用的“最基本命题”,经过马斯克对电池原材料、制造工艺的解构,自建超级工厂研发制造不仅采购成本下降 30% 还自主可控的迭代能量密度。当然,最新的电动车电机碳纤维套筒也是类似。只要稍微花点儿时间,我发现从发夹电极、定子永磁体封装和排列、降温油管道和位置、碳纤维套筒等等,特斯拉真的是在每个“最基本命题”上把实用主义和第一性原理发挥到极致。
反观自己,十年前 GDB 一行行查汇编指令去抠几十 KB 内存的精神今天已荡然无存,每次开会讨论的都是:能做还是不能做?你做还是我做?排期对不对得上?你改还是我改?哎……虽然我承认有些事情不应该用老眼光看待,或许应用比底层更容易出成绩,但是,Google 在为 C/C++ 推出继任者 Carbon,The V Programming Language 都已经出 Vinix 并且完成了 X.org 的支持,社区已经完成了 Stable Diffusion 对 M1 芯片的支持,在苹果 M1 芯片的笔记本上 15 秒就可以生成图片。(用 M1 的小伙伴儿请看:https://www.toutiao.com/article/7138755607221748264/)在自己的领域内产出一些真正有价值、实用且基本的技术,将是 imgcook.com 的 D2C 需要思考的问题。
标注
内容:
观察:
特斯拉标注的不是数据,是对多特征融合的理解,以此训练的 AutoPilot 在路上“全知全能”。
思考:
前文上帝视角是怎么产生的?创新的数据标注功不可没。比如,时空里一辆车驶过路口,路人或车辆被遮挡后特征和场景的时空关系发生了什么变化?如何理解这种变化对驾驶的影响并将其标注出来?定义问题、用标注数据描述问题、用模型解决问题被放在一起,还解决的很好,强!
启发:
忽的想起小时候,雄心壮志且信誓旦旦的把机械闹钟拆开发誓要修好,数十年后那些齿轮、机簧还在静静躺在抽屉里。我老脸一红,想想特斯拉的天才工程师们,把这么复杂的系统有条不紊的协同在一起,共同的、实用的、深入且细致的解决一个个“基本命题”,不禁有些汗颜。近期在推动设计生产一体化解决业务需求迭代问题,我也想业务和产品能够参与到产品研发中,一体化分析、定义、设计、约束、生成、发布、验证、迭代产品的 UI、交互,让用户获得更优秀且个性化的信息表达从而提升浏览体验。看到特斯拉的工作更加坚定了我的信心,毕竟到了深水区,需要对产品和业务精雕细琢的时候了。
仿真
内容:
观察:
用光线追踪提升模拟的实用性。
思考:
看到特斯拉的演示,回想起之前看过的自动驾驶技术分享,高下立判。撇开摄像头和激光雷达之争不谈,单纯从模拟技术来看就差了一大截。我从没看到那个自动驾驶技术团队分享时强调模拟的精确性,而且,这里精确性是从识别方案的第一性原理出发。如果说摄像头的原理,就是感光元件捕获光线这种特殊的电磁波产生电信号再 ADC 模数转换后产生数字信号,这些数字信号就是我们所谓的图像,因此,光线的真实性直接决定了这些数字信号的信噪比,信噪比决定了模型用这些信号训练的效果。
然而,数字信号包含的信息量巨大,除了电子波频率、电磁波强弱还有很多可分辨的信息,比如前文中说空间中光的信号傅里叶分析等,拥有巨大的改进空间。而激光雷达的原理是什么?发出激光根据发射角度和反射回来的时延和角度来计算一个点的位置,从而得到精确位置信息,能够直接采集点云 PointCloud 而不用视觉方案里复杂的校准和计算,多简单?但是,应用的简单背后其实是简陋,很多人其实误解了视觉方案的含金量。这就像拿 Kindle 的屏幕和 iPhone 的屏幕对比,高下立判、云泥之别。
启发:
在实现设计稿生成代码的时候,模型训练中并没有模拟能力。输入的是设计稿,怎么能够生成接近真实却又能够难到模型、启发算法的设计稿?应该是个不错的思路。其实,再稍微延展一下,日常的自动化测试亦如此,怎么模拟用户真实的环境?真实的操作?如何才能真实?如何将模拟的设计和软件设计、程序设计、接口设计等联系起来?才是真正有趣的事儿。
计算加速
内容:
观察:
1、OP 的电子电路化是 NPU 大趋势;
2、夸张的带宽和创新的垂直供电冷却系统;
3、易用性夸张到框架后端设置一下即可;
4、任意缩放。
思考:
自从旷视科技和商汤让摄像头可以磨皮开始,AI 对消费电子的渗透就已经势不可挡。从个人电脑的显卡加速运算到ARM 的 Neon 指令集,再叠加云计算和最近的元宇宙,让整个世界变成了算力黑洞。大体看两大阵营:通用硬件加速和专用硬件加速,世界的奇妙轮回把 GPU 从 CPU 分化的路又走了一遍,只是,这次是在 Nvidia 在 Cuda 和 AMD 跟进的 ROCM 为始,慢慢从 GPU 里分化出来。
通用硬件加速的好处就是应用广泛,但势必在性能上比专用硬件加速差,甚至在一些情况下可能还不如 DSP,这也是为何 Apple 的芯片保留 DSP 和一众专用芯片的原因:更低功耗、更快速度。但是,在大多数情况下图计算需要的硬件加速能力差异被上层机器学习框架所屏蔽了,因此才会有 JAX 和 TVM 等技术,这也是标准的力量。特斯拉的 Dojo 受益于这些红利,设计研发了自己的通用硬件加速芯片,料堆满、带宽拉满、模块化缩放,怎么看都像极了 Apple 的 M 系列自研处理器,M1、M1 Pro、M1 Max、M1 Ultra。从 iPad、MacBook Air、MacBook Pro 到 Mac Studio,特斯拉也是从擎天柱机器人、特斯拉汽车到超算中心,一套方案缩放应用到不同场景。
启发:
首先,D2C 现在主要解决的是前台业务问题,未来,是否可以模仿特斯拉芯片的一套方案缩放应用到不同场景?比如在源码页面、搭建页面、中后台页面、承接页等,缩放 D2C 技术体系的能力,而不需要重新设计研发。
其次,在广州 UC 的时候就经常和身边的小伙伴儿们一起 YY,如何用光计算替代现有的电子电路。说白了从电子管到晶体管之后,湿法光刻和极紫外光也基本到头了,这两天看新闻上各芯片制造企业都在探索光计算领域。如果未来有机会做芯片的话,我一定会尝试一下物理计算,把我对计算本质的理解和对物理的理解融合起来做点儿有意思的事情。喜欢下图的小伙伴儿可以私信聊聊,:)。
擎天柱
内容:
观察:
那么,当劳动力不短缺时会发生什么?当程序员不加班时会发生什么?当业务不再半夜汇报方案会发生什么?当然是去玩儿啦!不然呢?小扎把脸书公司名字都改了,难道大家都疯了?美国经济脱虚向虚难道那么多名校、智库和学者都是傻子?一定有什么我不理解的东西存在,嗯!我估计是精神层面消费的崛起。
思考:
从 ROS 开始就对机器人技术很感兴趣,之前做双目视觉和 SLAM 就是从编译 ROS 开始的。实时操作系统无论是设计还是实现上,都和我们所熟悉的操作系统有巨大差异,叠加上特斯拉汽车会穿梭于城市的安全性要求,可以想见特斯拉在实时操作系统领域的强大实力。而 AutoPilot 又赋予了实时操作系统以实时智能化能力,这就让自动驾驶成为现实。而 AutoPilot 驾驶汽车还是驾驶一具人形机器,解决的“基本命题”是一致的。
同时,用人形机器人替代人从事一些劳动,实用场景比扫地机器人、擦玻璃机器人等可广泛太多了,很实用。全球劳动力人口约 34.5亿(数据来源世界银行:https://data.worldbank.org.cn/indicator/SL.TLF.TOTL.IN),马斯克很可能借助擎天柱成为全球最大的劳务公司,用擎天柱进行劳务输出。
如果工厂里用的是擎天柱机器人会怎么样?7×24 不眠不休、不会罢工、成本大幅降低等等。哪怕工作内容复杂,像美军远程操作无人机一样,雇个人在家里远程操作擎天柱完成劳动生产,也会大幅度降低成本且改善工作环境,比如远程挖煤、远程保洁等。当然,家庭环境端茶倒水、收拾房子、买菜做饭等,也能够大幅度提升生活质量。
估计,未来可能会有公司买一些擎天柱去给人当做饭阿姨,现在雇个阿姨每天做两顿饭需要 5k 一个月,擎天柱 2k 一个月还是很有吸引力的。就像特斯拉股价大跌的 2016 年初我跟静静说我看好特斯拉一样,如果擎天柱这事儿能像汽车一样一步一个脚印,特斯拉的未来会更猛。除了行业机会,最重要的是特斯拉这群实用主义和第一性原理奉为神祇的工程师。当然,马斯克作为一个专业的老板,也很重要。这次 AI-Day 上马斯克一如既往地抢答,但专业的回答无不透着他对技术细节的理解和解构能力。
启发:
如果地雷是最简单的机器人,擎天柱是智能人形机器人,imgcook.com 就是设计稿生成代码机器人。我觉得机器人只是个概念,就像客服机器人一样,智能化软件本质上就是个数字机器人。那么,擎天柱是马斯克在特斯拉之外找到的延伸领域,imgcook 设计稿生成代码机器人的底层能力是否能找到一个全新的延伸领域?我打算好好琢磨琢磨。
其实,我觉得擎天柱也是第一性原理的产物。如果把特斯拉解构一下,电机、驱动、电池、电控、实时操作系统、智能体,这些都是特斯拉长期沉淀的能力,如果把他们放在人形机器人上,几乎是可以不做任何修改平移的。因此,马斯克和这群优秀的工程师或许就是这样得到灵感的吧?
结语:脚踏实地仰望星空
首先,脚踏实地容易理解,字里行间到处都透着实用主义。毕竟是工程师不是科研人员,做工程不同于学术研究,实用是基本要求。不论是基于特征向量构建的复杂智能体,还是在决策智能的安全、体验和效果多目标优化,以及在标注、仿真等方面的务实创新,再到硬件加速芯片的垂直供电制冷和缩放,以及复用现有能力延伸到全新赛道替代人劳动。处处是创新,但处处都是在解决“基本命题”。
其次,仰望星空。推广清洁能源保护地球,探索宇宙殖民火星给人类创造兜底方案,用机器人替代人做低价值的劳动,每一件事都描绘了一幅宏伟的蓝图。为什么特斯拉有这么多优秀的工程师?因为,他们真的在践行这些蓝图,这份赤子之心能够感染、吸引和凝聚世界最顶尖的人才。
最后,小小的我也有大大的梦想,虽然我不能像乔布斯、马斯克和特斯拉工程师们一样优秀,但是,我希望在自己的技术工程领域和业务场景中,效仿他们用实用主义和第一性原理,坚定的、务实的去做点儿有价值的事情。给自己加油!