乔治·霍兹:破解模拟世界与用神经网络学习驾驶
George Hotz: Hacking the Simulation & Learning to Drive with Neural Nets
探讨现实是否为模拟、能否入侵它,以及用神经网络实现自动驾驶的技术路线与现实挑战。
乔治·霍兹对费米悖论有一个自己的答案:宇宙里确实存在过其他智能文明,一个都没剩下,因为它们都把自己炸掉了。这个答案听上去像玩笑,但他接着补了一句更冷的话:毁灭世界的智商门槛,每年下降一点。
这位被称作 geohot 的人,十几岁破解 iPhone,二十岁破解 PlayStation 3,后来创办了 Comma AI,卖一台一千美元的设备,装在你家现有的车上,让车自己保持在车道里。他同时也是那种会在餐厅坐下来,花几个小时帮陌生人重写编译器的人。这期播客聊了宇宙、模拟、加密货币、自动驾驶、编程语言和爱情,跨度大到几乎不像一场对话,但贯穿其中的是一条线:他只对能给他带来真实力量的东西感兴趣。
只有一种活下来的可能
霍兹的判断很干脆。银河系七万光年。任何能造出冯·诺依曼探测器(von Neumann probe)的文明,这个距离都不算什么。一艘以亚光速飞行的自复制探测器,几百万年就能铺满整个银河系。几百万年在宇宙尺度上是一瞬间。
这件事显然没有发生。所以有什么东西拦住了它。
他给出的解释是:智能文明活不长。文明发展到某个阶段,摧毁自己的能力变得廉价而普及,然后就没了。他引用了一个说法,毁灭世界所需的智商门槛每年下降一分。技术在做的事情,就是把毁灭世界这件事民主化。
密码学是一个防御占优的世界,核武器正好相反。造一枚能分裂成一百枚的弹头,比造一个能拦截一百枚小弹头的东西容易太多了。进攻方在那边有优势。所以也许我们的未来在密码学里。(乔治·霍兹)
这个类比值得停一下。他在说,不同的技术领域有完全不同的攻防结构。密码学里防守方赢,因为验证一个签名比伪造它容易。核武器里进攻方赢,因为火箭的轨道计算比中段拦截简单。人类文明能不能活下来,取决于我们把更多精力放在了哪一类技术上。
至于怎么发现那些已经消失的文明,他的思路是废热。文明扩张就要消耗更多能量,热力学不允许你消灭废热。所以应该能在红外波段看到异常。前提是他们的物理和我们一样。他承认这个前提可能错,但银河系另一头的物理定律不会差太多,这是他愿意下的赌注。
关于 UFO,所有新闻都是心理战
聊到五角大楼公布的那几段不明飞行物视频,聊到海军飞行员戴维·弗拉沃(David Fravor)的描述,聊到那些被叫做"嘀嗒糖"的物体如何做出违反直觉的机动,霍兹的回应只有一句:
我觉得所有那些新闻都是心理战。(乔治·霍兹)
他提到自己听鲍勃·拉扎(Bob Lazar)在乔·罗根节目上的讲述,说"我信他说的每一个字",然后立刻补上一句:那大概率是某种 MKUltra 式的东西。他们造了个奇怪的东西,管它叫外星飞船,也许目的就是刺激年轻物理学家的脑子,看看他们能从中想出什么。
这套逻辑很有意思。他不否认那些现象的存在,他质疑的是这些信息被放出来的动机。一个情报机构主动泄露的东西,本身就构成一个信号,而这个信号的内容未必是它表面上说的那件事。
顺着这个话题,他讲了一个更狠的观点。阴谋论这件事本身,可能就是一种武器。
我听过一个阴谋论,说阴谋论是 CIA 在六十年代发明的,用来给真事泼脏水。你去看看那些荒诞的阴谋论,地平说、披萨门,它们的作用是稀释。中国封锁了发现病毒的医生,这是真的。货币以前由黄金背书,现在由空气背书,这是真的。但当满地被插上旗子的时候,你就找不到那面真的旗子了。(乔治·霍兹)
他讲的这个寓言是:妖精告诉你田里埋着金子,你让它发誓不拔掉标记的旗子,回头拿铲子来,发现满田都是旗子。这是隐私保护的原型。要保护一段对话,就生成一百万段假对话,没人知道哪段是真的。他把这个思路平移到了信息控制上:过去靠审查,现在靠淹没。
"破解模拟"那场演讲到底想说什么
2019 年他在西南偏南(SXSW)做了一场演讲,标题里带"破解模拟世界",之后被大量转发和误读。他这次把话讲清楚了。
那场演讲的重点不在字面上真的去黑掉模拟。那是理论物理,你想要大统一理论,那就先造一个大统一理论出来给我看看。我的希望更多是:你们认真的吗?你们花时间想的都是些什么?你明白自己有多小吗?你真的只是上帝电脑里的几个字节。(乔治·霍兹)
他真正想说的,是人类给自己造的那些游戏不值得玩。他举的例子从推特热搜到卡戴珊,但他真正指向的是经济。
我是资本主义的忠实粉丝。我不觉得我们现在玩的是那个游戏。我们在玩另一个规则被做了手脚的游戏。(乔治·霍兹)
他的区分是这样的:人类造的游戏分两种,一种和自然规则对齐,一种不对齐。自然这个游戏是真的,规则不是人写的,所以赢它有意义。而自然这个游戏看起来极其残酷:大东西吃掉小东西,生物的全部目的就是长大到能吓住另一个大东西,好和它交配。没有艺术,没有音乐,也没有 Comma。
他不接受这个描述。他认为自然提供的是一个开放世界 MMO,你想玩哪种都行。这话从他嘴里说出来有点意外,因为整场对话里他一直在强调赢和力量。但他对开放世界的坚持是认真的。他甚至用《暗黑破坏神》里刷奶牛关举例,说玩家们找到了最有效率的经验值路线,然后所有人都同意了刷经验值这件事值得投入几百个小时。他在大学里就这么干过。
他真正批评的,是把手段当成了目的。
永生的目标函数
他说他想要永生。他要的永生,核心是自己选择死亡的时间。他不接受自然替他做这个决定。
这里出现了一段这场对话里最有意思的交锋。莱克斯提出一个反驳:你对知识的渴望,可能正是生命有限性的副产品。如果时间无限,好奇心会像晨雾一样消散,那永生还有什么意义?
霍兹的回答很工程师:
那我就改掉脑子里那个提醒我生命有限的东西。也许让它告诉我下周就死。我可以接受一定程度的自我操纵。如果问题是我会失去好奇心,那我留几份自己的备份,偶尔和它们对一下,确认它们还在正确的轨迹上,需要的话让它们覆盖我。(乔治·霍兹)
莱克斯接着提了一个更尖锐的类比:电子游戏里的作弊码。一旦你用了作弊码,游戏就被毁了,而且这个过程不可逆。
霍兹承认这个感觉他懂,但他的结论是:那只能说明我们的脑操纵技术还不够好,把那段代码从脑子里删掉就行。
这套回答有一种奇特的自信,也暴露了它的边界。他自己也承认,自我修改的系统会带来一堆棘手的复杂性,他没法现在就保证自己将来一定能做对,只能尽量把安全结构放进去。
关于我们是否生活在模拟里,他的态度是:我不怀疑我们在,但这件事不重要。他只对能给他力量的理论感兴趣。模拟理论如果无法证伪,那就没人该关心。
那什么样的证据才算数?他给出的答案是内存泄漏(memory leak)。能读到你不该读到的内存,就说明存在一个可以越界的地方,那就是捷径。但他立刻补了一句:读还不是最可怕的,写才是。哪怕只是写入随机噪声,那也是最恐怖的事。
在餐厅里三小时写出的 300 行代码
2020 年中的一件事在技术圈传开了。霍兹在纽约一家餐厅遇到一群做以太坊扩容的工程师,公司叫 Optimism,从 Plasma 分出来的团队,做以太坊的二层方案。他们卡在一个技术死线上,和 Solidity 到 OVM 的编译器有关。
要理解这个问题,得先理解以太坊的扩容困境。以太坊上每一笔交易,网络里的每一台计算机都要跑一遍。这带来极强的安全性,也带来极差的速度。二层方案(L2)的思路是:把计算挪到链下,只把结果写回链上。问题在于,链下算出来的结果可能是假的,所以需要一套争议解决机制,比如提交者质押一万美金,谁证明他算错了就能拿走这笔钱。
具体到工程实现,二层方案需要一个沙盒,让以太坊合约在里面跑。合约里那些会读写的调用,比如写状态到链上,都要被替换成对管理程序的请求,由外层判断放行还是拒绝。这跟 Chrome 的渲染进程不能直接读文件是一个道理,得先向浏览器主进程申请句柄。
Optimism 的做法是写了一个叫 Transpiler 的东西,把编译好的字节码反解、改写、再拼回去。这段代码三千行,很难维护,因为你在字节码层面做逆向工程。
霍兹听完的第一反应是:为什么要改字节码,直接在编译的第一步改不就行了。
他问了对方愿意付多少钱,然后写了一个三百行的编译器补丁。C++。
别人问他怎么做到的,他的原话是"你就想一想,然后做出来"。这话听起来像废话,他自己也承认没什么意义。但拆开看,里面有一个真实的判断:当所有人都在下游修补时,往上走一层看看问题是不是本来就不该出现在那里。
律师是收一千美元一小时的烂解释器
聊加密货币时,他把最能说明问题的一段留给了智能合约。
如果合同出争议,就由律师来解释。律师就是一群很烂的、收费过高的解释器。Python 我付每小时十美分就能跑,用最好的云机器。律师一小时一千美元。Python 便宜一万倍。律师每次给的答案还不一样,Python 基本每次一样。(乔治·霍兹)
他举的例子是一个保险箱,里面放一百万美元,合同写着三个人中的两个同时到场才能打开。这份合同的有效性完全依赖银行和律师。如果其中一个人死了,就会陷入遗产纠纷,搞清楚真相的成本高得离谱。换成智能合约,用密码学检查三个密钥里有没有两个签名,答案立刻确定。
他说所有企业真正想要的其实是确定性。他提到维亚康姆和 YouTube 的诉讼,说双方的态度是:这场官司谁赢我们不在乎,你只要告诉我们就行,我们需要确定性。
他也承认"代码即法律"要成为普遍接受的现实还很远。但这个想法的美感在于,它把解释成本压到了接近零。
关于加密货币,他给了两个他认为真正重要的创新。第一个是中本聪共识(Nakamoto consensus),一群人通过一个相对直白的算法达成去中心化的共识,这是 21 世纪最伟大的创新之一。第二个是智能合约。
还有一个他格外推崇的东西:分叉。
2012 年我在我的玩笑应用里写过,让奥巴马和罗姆尼同时当总统。然后美国人可以选,可以投资其中一个,把流动性从另一个抽走。加密货币世界真的有这个。以太坊分叉成以太坊和以太坊经典,你可以把流动性从一个抽出来放进另一个,人们用钱投票。(乔治·霍兹)
他希望公司也能这样分叉。同一家 Comma,一个闭源版本一个开源版本,看哪个活下来。一个被通用收购,一个继续当安卓式的叛军,让市场来裁决。
至于哪个币会赢,他说他不猜,也不在乎。他自己站在"比特币是模因币"这一边,理由是当年那场区块大小的争论实在太蠢。不过他承认自己在权益证明(proof of stake)上改变过看法,说有很多非常聪明的人在认真思考。
顺带说了一句关于治理的观察:即使在分布式系统里,领导者也有用,因为人类需要一张脸。他说以太坊有维塔利克(Vitalik Buterin)这样的门面,恰恰因为他是真正的天才。而他觉得民主制度出问题的地方在于,冒出来的领导者往往不是系统里最有能力的那批人。他想要的那种辩论是这样的:候选人被问第六修正案是什么,宇宙四大基本力是什么,2 的 x 次方的积分是什么。
使命是一句话,后半句才是关键
他给 Comma 的使命写了一句完整的话:解决自动驾驶,同时交付可发货的中间产品。
前半句容易理解。他把"解决自动驾驶"定义成造一个替代司机的人,这个人坐在驾驶座上,能带你去任何地方,安全、速度、质量、舒适度都不低于人类。
后半句才是他真正的设计。他在 Hacker News 上看到过一个说法,后来反复引用:你可以设定任意一个里程碑,达成它,然后离解决自动驾驶仍然无限远。他加了一句解释:如果没有可发货的产品,你很容易以为自己在前进而实际上没有。
商业上的诚实来自收入。他的原话是,当有人花一千美元买我们的东西,我们至少为他提供了一千美元的价值,否则他不会买。
Comma Two 的硬件基本就是一台手机。高通骁龙 820,带散热系统,接上车载接口。四个 CAN 接口接到 USB,再接到这台手机上。车载总线协议叫 CAN,简单得出乎意料,读写都靠它。软件是 openpilot,负责清洗神经网络的输入、清洗输出、执行控制、跑传感器、做标定、处理路面倾斜时的反向转向、把数据传回服务器、管理散热和磁盘空间。
他描述的神经网络很朴素:
就是一个权重块。人们说它是黑箱,我说它是一个权重块,你还期待什么?(乔治·霍兹)
从上次上节目到现在,他们兑现了一个承诺:横向控制的策略现在几乎完全端到端,你可以把车道线关掉,车还能开,只是在高速上稍微差一点。今年他们希望把纵向控制也做成同样的事。
数据量不是问题,问题是怎么选数据。他提到一个他喜欢的定义:监督学习里,权重取决于数据;强化学习里,数据取决于权重。后者才是他想要的形态。车犯错的时候自动接管,用那段数据训练,新模型上线。但目前还没做到那一步,现在还是靠人。
接管率的数字很具体:现在大约每一百英里一次非计划接管,一年前是十英里一次。十倍提升,但距离大规模可用还差三个数量级,也就是十万英里一次。他说十倍提升本身就意味着指数,但指数不意味着明天就有 100GHz 的处理器,和人类最好水平之间的差距仍然很大。
他不做车道线检测
这里是他和特斯拉路线分歧最清晰的地方。
特斯拉的做法是把驾驶拆成几百个任务:车道线检测、停车标志识别、红绿灯识别、可行驶区域分割、车辆行人自行车检测、定位,还有对场景中实体未来轨迹的预测。每个任务都是一个机器学习问题,配一整套数据引擎去挖边角案例,每个任务都有一个工程师成为世界上这个任务最强的人。霍兹把这个比作:你开一家国际象棋引擎公司,会去雇一个专门管主教的人吗。
他的判断是:这是特征工程。只不过抽象层级更高,叫任务工程。而人工智能的历史反复证明,特征工程的方法最终会被端到端取代。
他的证据是代码长度。Stockfish 的代码和 AlphaZero 的代码比,后者短得多,优雅得多,写它花的人力也少得多。
莱克斯提出了一个很好的反驳:AlphaZero 在模拟里可以杀掉几十亿个失败的智能体,代价接近零。现实世界里,生物进化通过杀死数以万亿计的生物才造出人类。你能在真实世界里做这种谋杀吗?
霍兹的回答是 MuZero。
MuZero 是自驾驶的答案
我认为 MuZero 会被回看成这个深度学习时代的基石论文。它不只是深度学习的全部,还有很多东西没到位,但 MuZero 是自动驾驶的解法。你需要做一些调整,但它做的事情正是那些 rollout,那些在学出来的模拟器里进行的谋杀。(乔治·霍兹)
这段话说得很重。他承认 AlphaZero 需要模拟器,而在真实道路上你没法随便试错。MuZero 的关键是从观测中学习一个动力学模型,然后在这个学出来的模型里做搜索和规划。这就把"在现实里杀人"换成了"在学出来的世界里杀人"。
他说自己读完那篇论文的时候,感觉是:好了,我可以坐下来等自动驾驶的解决方案自己到来了。那一年他看到了未来。
至于时间表,他给的答案是 2020 年代的后半段。他说神经网络会解决驾驶,我们不需要别的东西。他也承认路径上必须交付产品,所以过程会很慢。
驾驶员监控:他愿意赌一万美金
Comma 的驾驶员监控策略是自适应的。车停着的时候不强制监控;在限速 45 英里、有红绿灯、可能有行人的路上,监控策略非常严格;如果你一个人开在笔直空旷的高速上,就放松。这套风险估计全部由机器学习给出,没有硬编码。
他解释为什么不能永远保持最严格:
如果你在根本不可能撞到任何东西的时候也报警,人们就会学会忽略它。他们会往方向盘上挂配重,会想各种办法绕过去。你始终是这个自适应系统的一部分。(乔治·霍兹)
他提到自己开凯迪拉克超级巡航(Super Cruise)的经历:阳光从窗户照进来晃到摄像头,系统就说他没在看路,而他明明直视前方,而且没法通过触摸方向盘重置注意力状态,最后只能被强制退出。他的评价是:这本来应该是一场和用户的持续对话。
这也是他愿意为特斯拉下注的原因。他说 Elon 一定会在推出 L5 之前加上驾驶员监控,他愿意赌一万美金。他补了一句:如果我是他,我也会先公开说监控是错的,因为你已经造了一大批没有这个摄像头的车,你能说什么呢。
至于为什么驾驶员监控比外部感知容易,他给了两个理由。人脸的变化程度远小于外部环境。更重要的是,驾驶员监控的可靠性要求低得多,90% 的准确率就能拿到几乎全部收益,因为它是在和一个会配合你的人对话。而外部感知没有任何容错空间,撞上树就是撞上树。
Nvidia 正在自我挖坑
聊到特斯拉自研的 Dojo 训练芯片,他说这未必是为驾驶数据特化的,只是他们想走苹果的路,把链条上每一环都自己做。
他真正想谈的是训练硬件的垄断。现在只有两个选择:Nvidia 和谷歌。而谷歌的方案只在自己云上,条款苛刻,早年甚至明确写着不允许用 Google Cloud ML 训练自动驾驶或做任何与谷歌竞争的事,除非有书面许可。所以只剩下 Nvidia 一家。
他说自己在 2016 年是 Nvidia 的超级粉丝,黄仁勋是个很酷的人,当时股价 30 美元。但 2018 年之后他观察到管理层变了,现在的策略是把这个生态里每一块钱都榨出来,一块比 3080(699 美元)没好多少的卡卖一万。他认为从商业角度看这是自伤。
如果我是 Nvidia,就卖芯片,以合理的加价卖给所有人,不设任何限制。英特尔当年就是这么干的,看看他们那一轮跑了多久。Nvidia 现在是在把自己的芯片过度产品化,提取超过可持续的价值。当然,明天股价会涨。但作为 CEO,你要问的是:我能把这家公司露天开采到什么程度?(乔治·霍兹)
他承认黄仁勋是有五十年视野的人,所以他想不明白这件事怎么和长期计划自洽。他的猜测是:他听了错的人的话。
同样的逻辑他套在了特斯拉身上。他说如果他是特斯拉的 CEO,他会卖掉加速器芯片,因为这东西谁都能造,问题只是你愿不愿意投入。卖出去能赚一笔,还能让全世界帮你建工具链,连底层 bug 都有人替你修。但他也说电池要自己留着,那是真正和车企正面竞争的东西。
Waymo 的产品不成立
他先说了好话:去过几次,坐过他们的车,工程能力、研究、自研的规模都很 impressive,车在特定区域跑得很好,甚至开得比限速还快,体验不错。
然后他给出了自己的判断:问题不在技术,在产品。
Waymo 比一个称职的 Uber 司机慢 20%。你可以说它会更便宜,但用户早就有用钱换时间的选择了,那叫 Uber Pool。大概只有 15% 的 Uber Pool 用户不愿意用钱换时间。所以他们造出来的整个产品,和传统网约车网络相比不具备竞争力。(乔治·霍兹)
再往下推,能不能赚钱取决于这家公司能不能垄断。他认为 L4 自动驾驶共享车的市场会长得像滑板车市场,一场向底部的竞赛。滑板车公司已经放弃把它说成实用交通工具,改成强调好玩,这是诚实的做法。但从交通工具的角度看,滑板车不成立,L4 自动驾驶车也一样。
至于假如让他管 Waymo 一年会怎么做,他的回答出人意料:他会把安东尼·莱万多夫斯基(Anthony Levandowski)从监狱里弄出来,让他来管。他是认真的,他认为莱万多夫斯基是天才,会想出比他自己好得多的主意。他也承认 Waymo 已经陷了 100 亿美元,Comma 才融了 810 万,他没有任何能救回这个局面的想法,那种想法必须是一个巨大的冒险。
他给 Waymo 的批评是太早上来就打温情牌。一家什么都没交付的创业公司,应该更像叛军,把工程师推到前面,把失败也展示出来,就像 SpaceX 做火箭那样。他不接受广告里那个友好的无人车角色,说那个人压根不是用户,是付费演员,我找到了他的通告单。
改变他人生的三天
他记得自己人生中三个具体的日子,每一次都是思维方式被彻底替换。
第一次是读到埃利泽·尤德科夫斯基(Eliezer Yudkowsky)关于奇点的旧文章。那是 2016 年之前的东西,页面里几乎没有提到 AI 安全。让他震撼的是一个简单的对比:计算机的算力每 18 个月翻一倍,人类不是。一条是指数曲线,一条是水平线,两者还没有交叉,但交叉只是时间问题。这打开了他对指数增长的直觉,也打开了人类会被取代这件事的可能性。
第二次是 Hutter Prize。那篇东西的核心命题是:智能等于压缩。他之前一直在找"智能"这个词的定义,一直没找到,但压缩有非常清晰的定义。无损压缩意味着智能,这个等价关系给了他一个理解 AI 的框架。他后来花了六个月照着这个方向做,然后去 Vicarious 工作,把现代深度学习的部分补齐了。
第三次最有争议。他读到一个叫 Unqualified Reservations 的博客,是柯蒂斯·雅文(Curtis Yarvin,笔名 Mencius Moldbug)写的。那是 GamerGate 期间,2016 年大选前夕。他的描述是:突然之间,世界说得通了。
莱克斯问他,那些日子有什么共同点,是不是纯粹运气好撞上了。霍兹的回答是:
我没做任何特别的事才遇到它们,所以我现在也不需要做什么特别的事。我就在生活里漂着,祈祷能再遇到这样一天。(乔治·霍兹)
他还讲了一个完全不同类型的故事,关于什么叫真实发生过。他开车走科罗拉多的 Monarch Pass,雪开始下,前面有车滑出路面,他必须掉头,在甘尼森过一夜,第二天再走。他说那件事有意义,是因为它是真的。
我生活里很少有什么真实的事情发生。哪怕只是"我不得不掉头"这种平淡的事。(乔治·霍兹)
这句话很轻,但它把前面那些关于模拟、关于真假、关于信息淹没的讨论都串起来了。一个整天和虚拟世界打交道的人,在雪山上掉头的时候,才感觉到自己在真实里。
学编程只有一条路
他被人问得最多的问题之一是怎么学编程。他的答案是:没有人是靠看一个叫《学编程》的视频学会编程的。
我认识的每一个编程好的人,学的方式都一样:他们有件想做的事,然后试着去做,然后发现"这个可以让计算机帮我做"。就这样一直推着一个项目往前走。(乔治·霍兹)
他特别讨厌的一类提问是:我听说机器学习很重要,你能帮我们把机器学习用到芝士通心粉的生产里吗。他说这类人真正缺的是一个具体问题。正确的问法是:我这批盒子里装的通心粉不够,能不能用机器学习解决这个问题。有一个具体的问题,才有一切。
关于该学哪几门语言,他给了一条相当古典的路线。
先是汇编和 C。不在汇编里写过代码,你就不知道计算机在干什么。不用做到精通,但必须写过。有汇编才有对 C 的感激,有 C 才有对 Python 的感激。C 让你体会寄存器分配是怎么回事,编译器只有固定数量的寄存器,而你可以声明任意多的变量。
然后是函数式。学 Haskell,一路学到底,再学一门有依赖类型的语言,把那条理论线走完。
然后是 SIMD 那一类范式。一个很长的代码块里的指令是同时执行的,没有先后顺序。这是硬件层面的东西,值得了解。
最后是数据驱动的编程。卡帕西(Andrej Karpathy)管它叫 Programming 2.0,霍兹觉得这个叫法会变,但范式本身是新的。这跟前三种都不一样,它需要一套不同的技能,我们还在很早期的阶段。
这条路线有一个隐含的判断:抽象层级是一层层堆起来的,你必须知道下面那层在做什么,才真正理解上面那层给你的东西是什么。
几本书
他推荐的第一本是《无尽的玩笑》(Infinite Jest)。他说这是关于我们正在走向何方的书,读起来很享受,写得很好,读完会作为一个人的成长。他指出这本书读起来很费力,这正好为第二本书做了铺垫。
第二本是《阿特拉斯耸肩》(Atlas Shrugged)。他的原话是:这本书就是色情文学。他不会为这本书的文学质量辩护,它读起来很娱乐,就像色情文学一样,制作水准不高。书里有一段六十页的独白,安·兰德的编辑想删掉,她自己掏钱把它留了下来。但它提供了一个理解人际关系的框架。
他知道很多人会说这个框架很糟糕。他的回应是:但它是框架。
19 岁读这本书的时候,他注意到书里的反派口号是"各尽所能,各取所需",觉得这写得像火箭队一样卡通化。然后他意识到这真的是共产党的口号。
科幻方面他推了两本。格雷格·伊根(Greg Egan)的《置换城市》(Permutation City),讲的是自己的副本,正好呼应他前面说的备份思路。还有一本在线的《Prime Intellect 的变形记》(The Metamorphosis of Prime Intellect),一个后奇点世界的故事,他说一看就知道是工程师写的,对一个乌托邦的处理几乎是实用主义式的。他 15 岁第一次读,之后重读了好几次。
他不太喜欢《基地》,觉得太现代主义。他说人人都该读《神经漫游者》(Neuromancer)。他也提到了《深渊上的火》(A Fire Upon the Deep)和《沙丘》。还有一本争议很大的《青铜时代的心智》(Bronze Age Mindset)。
关于爱、疯狂和做自己
聊到爱,他把这个词拆成了三种。一种是鸦片式的,一种是催产素式的,第三种是对数学那种爱,前两种都装不进去。
他说自己不太喜欢前两种,理由和他不碰鸦片、不吃摇头丸的理由一样:伦理的生活是生产性的生活。他承认自己试过这两种,而且喜欢鸦片远多于摇头丸,但他还是选择不做。
第三种,那种对人类的抽象的爱,他说自己一直都有,很难想象没有它会是什么样。他看到有些人没有,不知道该怎么理解。
关于迷幻药物,他说了一个很聪明的观察:认为迷幻药有东西可以教你,这个想法几乎是迷幻药独有的。没人会为安非他命这么辩护。他认为所有药物都有东西可教,但有个前提:
你学的不是关于世界的事,你学的是关于自己的事。每个人一生都该往门后面看一眼,但看过之后,你不需要一直回去。(乔治·霍兹)
他自己大概一年会碰一次迷幻药,剂量很小。他的比喻是:学习率调大了。学习率大有好有坏。
莱克斯插了一句,说自己吃过几次蘑菇,印象最深的是那种友好和荒诞感,脑子里出现的画面和情绪都是善意的,全程都在笑。霍兹对这个描述没有反驳,他只强调界限:可以试试,可以学点东西,然后回到正常状态里去做事。
最后一个问题是关于疯狂。让他给自己的疯狂程度打分,一到十,他给了七。
但他接着说,他不确定自己真的相信疯狂这个框架。躁郁症和精神分裂症显然是真的,有生物学基础,那是需要认真对待的。再往这条谱系的另一端走,阿斯伯格、对立违抗障碍,这些描述的其实都是正常的人类多样性。那条线划在哪里,凭什么把它叫问题。
有人总说他一直在药物状态,他在直播里回应过:我用药很坦诚,如果我在用我会告诉你,今天早上只喝了一杯咖啡,剩下这就是我,你在看我的大脑实时运行。
他说自己就是自己选择成为的样子,尽量把话说得像他能看到的那么真,不说谎。别让大脑里那些约束把你压进社会规定的模子里。
我愿意闪一下。这是有点刻意构造出来的。我就是我选择成为的那个人。(乔治·霍兹)
安卓的剧本,再演一遍
Comma 和特斯拉的关系,他自己给的比喻是安卓对 iOS。
这个比喻的具体含义是:开放的、便宜的、能装在很多不同车上的方案,和一个封闭的、贵的、体验最好的方案,长期共存。他判断 Comma 的用户数有可能超过特斯拉,但营收永远不会。特斯拉能从每个用户身上榨出的钱远多于他们。
这里有个细节值得注意。他说如果只有 10% 的 openpilot 设备来自 Comma 官方硬件,那对公司来说依然是一大笔钱。剩下的 90% 是什么?是人们自己刷进其他设备,或者买别人做的硬件。他把这个当成生态健康的标志。
安装体验被描述成宜家家具级别。十分钟,有 YouTube 视频,能装一张宜家的桌子就能装 Comma Two。目前支持 91 款车,今年目标是 100 款。他推荐 2020 款卡罗拉,或者 2020 款索纳塔,后者用原厂的纵向控制,只接管横向,是台很精致的车。想要更多折腾空间就上本田思域,不过要自己刷一个改过的 EPS 固件,这部分他不能公开帮忙。
社区里大约 60% 的人跑官方版本,40% 的人跑 fork。有人只是想要更多仪表读数,有人不喜欢踩油门就退出这个行为。他们划的线是:试图绕过安全功能的,从社区里请出去。
他倒是说了自己可能尊重谁。通用的可能性是零。现代汽车的可能性明显更高。日德美车企普遍觉得自己太伟大了,不需要在意科技公司。科技公司里苹果最接近能被尊重的那一档。至于谷歌,他说过去五年下滑得太快。Facebook 他十年前就退出了,因为不认同那个商业模式。
吹牛和撒谎是两件事
聊到特斯拉那些跳票的时间线,他给出的区分很清晰。
如果 Elon 说我们一年内要把火箭降落回地球,然后花了四年,但他一直在往那个方向做,最后真的做到了,这不算撒谎。什么时候算撒谎?当你根本不会达到那个期限,而你自己知道。(乔治·霍兹)
他给的判断标准是主观的:只要说话的人自己相信,就不是 bullshit。他说自己身上也有这个东西,程序员普遍有。他也承认这个标准不能推到极端,比如比利·麦克法兰(Billy McFarland)大概也相信自己说的每一句话,而那就是邪教的开头,最后大家一起完蛋。
所以需要的是一点点系数,加上身边有人能拉住你。
他对假装成功直到成功这句话的态度是明确的否定。他的版本是:诚实,然后指望你能一路走到底。技术会赢,长期看说谎会输。
凯恩斯那句"市场保持非理性的时间可以比你保持偿付能力的时间更长"是他自己提出来的反驳。他没有绕过去,只是说这就是为什么需要有别的东西兜底。
还有一段关于人类心理的观察,他认为很多人盼着别人失败,是因为别人的成功会变成对自己人生选择的审判。
一个三十六岁、在大厂干了一辈子的人,看到有人在搞一个疯狂的新东西,他必须在心里判它失败。因为如果它成了,就意味着他本这个解释把技术讨论里的很多恶意还原成了自我保护。它也解释了为什么评论区永远比现实更刻薄:人在屏幕后面判断一件事时,往往要先替自己的人生找一个安稳的位置。
评论区是一场结构性的失败
他先做了一个统计学提醒:评论者不代表人群。他自己不评论任何东西。
然后他指出了一个设计问题。推特只有正向的赞,表达负面只能通过回复,这种不对称制造了它特有的毒性。YouTube 的评论有上有下,体验就好得多。
他说绝大多数人其实是想说话的,只是不愿意走进一个满屋子都是混蛋的派对。这是平台问题,人性本身没有坏到这个程度。平台的默认状态是熵增:如果你不花大力气去鼓励细腻和善意,它自然会滑向混乱。Reddit 上还剩下一些小版块,是欣喜和善意的小避风港,甚至能容纳有分歧但足够细腻的讨论,但那些都是自发长出来的,平台本身既没帮上忙也没使坏。
他对这件事的判断是乐观的:
我觉得推特可以被推翻。我们会回头看今天的推特,然后说,我简直不敢相信我们忍受过这种程度的毒性。(乔治·霍兹)他甚至提到一个具体的机制设计:让自我觉察被奖励。在现实对话里,人会花力气去觉察自己说的话有没有伤到对方,这在网络上是有成本的,而大多数人选择不付。如果你能设计出一个愿意为这种成本付钱的人得到回报的地方,结果可能会让人意外。他也承认不能指望所有用户都有这个自觉,但可以先把那些愿意的人接住。
绕不开的是商业模式。《社交困境》(The Social Dilemma)里那个更细腻的说法他一直记着:被卖掉的商品是对你的影响力。只要这一条不变,平台就没有动力去做上面那些事。
GPT-3 不是通用智能,奇点是带宽
他对大语言模型的态度是:酷,就这样。
你的损失函数就是字符上的交叉熵。那不是通用智能的损失函数。(乔治·霍兹)他给了两个具体理由。第一,这些模型没有长期记忆,上下文长度是硬编码的,可以加宽,但那不叫记忆。第二,他不相信把 GPT 放大能放大出能造火箭的东西。
关于 Transformer 能不能用在自动驾驶上,他的回答很干脆:可以试,但驾驶比语言更马尔可夫。t-1 时刻的状态信息大部分已经在 t 时刻里了,衰减得很干净。语言不一样,你可能得回头去看第二页的第三段。驾驶场景里很少有这种长程依赖,除了限速牌那种东西。
他说团队用的视觉模型输出一个一维或二维的感知空间,之后可能会在上面试试 Transformer,看看是不是更好。他的预期是这可能只是从 GRU 换成 Transformer 这种级别的替换,谈不上革命。
至于通用智能,他不相信硬起飞。他对奇点的定义很有意思:
奇点就是带宽。整个世界已经被联网了,我们只是在对这张网络提速。(乔治·霍兹)在他的描述里,未来没有某个超级智能单独醒来那一刻。他看到的是所有人类节点之间的连接速度不断上升,整个世界慢慢被压成一个单一的整体。他没说这是好事,只说他觉得这个定义接近正确。
莱克斯在这点上和他一致:奇点更可能从我们这群蚂蚁的集体智能里涌现,某个被造出来的系统很难单独完成这件事。霍兹补充了一句限定:驾驶本就落在通用智能的范围之内,而且是相当完整的一个子集。所以解决驾驶会顺带解决别的问题。
这也是他坚持要造出 L5 的原因。他的原话大意是:在 AI 领域,你太容易骗自己以为想通了什么。但如果造出一辆 L5 的车,你就无可争议地造出了某个东西。它未必是通用智能,但它是真的。
对比一下火星。他说如果只能二选一,他宁愿人类上火星。但他自己是个信息人,与现代主义那套气质格格不入,所以他的位置在信息这边。他甚至顺手给莱克斯贴了个标签,说莱克斯是个后现代主义者,两个人笑了一阵。
至于工具,他几乎不在意。一台 MacBook Air,酒店房间的角落,也能写出最好的代码。多显示器、机械键盘、Kinesis 那种怪键盘,他不否认它们舒服,但舒服不等于产能。他自己大部分时间在 Emacs 里写,用的是七十年代的编辑器。他说 VS Code 读代码不错,但 IDE 的 xref 比 VS Code 做得好。他承认自己把整个技术栈从 TensorFlow 换到 PyTorch,花了几个月,换完的感受是:为什么我在 TensorFlow 上浪费了这么多年。但 Emacs 这件事没有道理,心想要什么就是什么。
莱克斯在这件事上坦白得可爱,说自己从来没用过 vim,大概是怕一旦用了,会发现自己前半辈子的习惯都是浪费。霍兹的回应很平静:我不传教。
关于他不上推特这件事,理由也和平台有关。Instagram 是个漂亮的地方,它颂扬美。推特颂扬冲突,颂扬朝人开枪。他更愿意待在会让人变好看的地方,而不是让人变好斗的地方。
那条一直没断的线
整场对话里他反复回到同一个判断标准:这件事是不是真的,它有没有给你力量,能不能被验证。费米悖论是这样,模拟理论是这样,编译器是这样,自动驾驶也是这样。他对无法证伪的东西没有耐心,对能造出来的东西有无限耐心。
这大概就是他那句"技术总会赢"的真正含义。乐观主义在这里只是表层,底下是一套筛选机制:在足够长的时间里,能真正跑起来的东西会留下来,讲得漂亮但跑不起来的东西会消失。
他也有自己的软肋。他说自己在生活里漂着,没有结构,靠祈祷能再遇到一次那种让世界观换掉的日子。他靠读一个陌生人的博客理解了自己所处的时代,靠一篇论文理解了智能是什么,这些事都不是他计划出来的。
一个整天讲力量、讲验证、讲能不能跑起来的人,最后承认自己最珍视的东西是偶然得来的。这两件事放在一起并不矛盾。他的方法是让自己保持在一个随时能被击中的状态:不装懂,不为了面子和稀泥,不把时间花在虚假的游戏上。剩下的交给运气。
Comma 只融了 810 万美元,卖一千美元的设备。这个数字本身就是一种证明:一家小公司靠卖真东西活着,而不是靠讲一个十年的故事融资。他提到自己被收购方找上门,当场笑了出来,因为对方把创业公司当成自己的创新外包部门,还指望创始人配合着拿一些印出来的钱。
这期对话结束时,莱克斯说他是自己认识的最特别的人之一。这句评价放在整场对话的语境里,指的是那种罕见的组合:一边用"智能等于压缩"这种抽象框架理解世界,一边在雪山上因为不得不掉头而觉得真实。
如果你只想从这期对话里拿走一些能用的东西,下面这几条可以明天就开始做。
- 卡在一个问题上时,先问自己在哪一层修补。如果所有人都在下游打补丁,就回到上游看看这个补丁本来该不该存在。Optimism 那三千行字节码改写,本质上是编译器层面的问题被拖到了字节码层面。
- 先有具体问题再谈技术。把"我想用机器学习做点什么"换成"我这批盒子里装的通心粉不够,怎么解决"。前者没有答案,后者有。
- 学编程只有一条路:推着一个具体项目往前走。找一个你真心想让它发生的东西,然后卡住、查资料、卡住、再查。视频教程只能给你词汇表。
- 至少认真写一次汇编和 C,再学一门函数式语言。目的只有一个,让你知道每一层抽象下面在发生什么。
- 做和人交互的系统时,把可靠性要求分层次。驾驶员监控 90% 准确率就能拿到几乎全部收益,外部感知零容错。资源要投在收益曲线最陡的地方。
- 做任何需要人配合的产品,先想清楚告警疲劳。任何在不可能出事的时候响起的警报,都在训练用户忽略你。
- 设定里程碑时配一个能卖出去的东西。没有收入的里程碑,你可以达成任意一个,然后离目标仍然无限远。
- 区分吹牛和撒谎。自己相信但时间线乐观,和明知做不到还许诺,是性质完全不同的两件事。前者可以被原谅,后者会毁掉一切。
- 看到别人做出东西时,注意自己第一反应是找漏洞还是想知道怎么做的。如果是前者,那大概不是在评估技术,是在保护自己。
- 每年往门后面看一眼。迷幻药、长途旅行、一本让你世界观换掉的书。看完之后不必一直回去,你学到的是关于自己的事,世界本身没被解释。
本集资源与出处
- 视频在 YouTube 收看
- 音频官方 MP3 直链来自 lexfridman.com 官方播客 RSS
- 官网Lex Fridman 官网本集页面
- 文稿HappyScribe 版文稿