学霸的模拟器系统: 第200章 O(N)的魔法与傲慢的谷歌(求订阅求月票)
芝加哥奥黑尔国际机场,C18登机口。
候机大厅的落地窗外,巨大的波音747如同展翅的大鹏,正在缓缓滑向跑道。
程新竹抱着膝盖坐在椅子上,眼睛瞪得像铜铃,哪怕她平时是个只对生物大分子感兴趣的医学生,也知道Geoffrey Hinton这个名字在人工智能领域的份量。
“神经网络教父,深度学习的执剑人....……”
程新竹像是在念某种咒语,转头看向依然一脸平静地在刷手机新闻的林允宁,“允宁,这就好比你是打篮球的,然后乔丹突然给你发私信说‘嘿,小伙子,晚上来我家后院单挑一把。你居然就只回了个‘收到?”
“不然呢?还要给他写封感谢信?”
林允宁收起手机,顺手把喝完的咖啡杯扔进垃圾桶,“辛顿教授确实是泰斗,但他发这封邮件,说明他也嗅到了危机感。Aether的算法在某种程度上挑战了他在多伦多大学建立的体系。这不仅仅是学术交流,更像是一场………………
踢馆赛的邀请函。”
“踢馆?”
程新竹兴奋地搓了搓手,“那我岂不是要去见证历史了?”
“只要你别在会上睡着就行。”
这时,一阵高跟鞋敲击大理石地面的清脆声音传来。
方雪若手里拿着三张新的登机牌,风风火火地走了过来。
她把那三张印着金色边框的票据分别拍在林允宁和程新竹手里。
“收拾东西,去休息室。”
雪若言简意赅,“我把咱们的票升到了头等舱。”
“啊?雪若姐,你前两天不是还说咱们是初创公司,能省则省嘛?”
程新竹下意识地想替公司省钱。
“该省得省,该花的也得花。”
雪若打断了她,理了理风衣的领口,“这次去ICML,我们要面对的是Google、微软和斯坦福的精英。如果你们下了飞机一脸狼狈,那气场上就先输了一半。
“记住,我们现在不是只有几台破电脑的创业公司了。我们是刚刚从辉瑞手里赚了八百万美金,准备去硅谷重新定义游戏规则的独角兽幼崽。要有身为精英的自觉。”
林允宁看着手里的头等舱机票,笑了笑,拎起背包:
“听老板的。”
波音747钻入云层,平稳地航行在三万英尺的高空。
头等舱宽大的座椅确实让人放松。
程新竹已经戴着眼罩睡着了,雪若正在翻看手中的财报。
那是全球顶级的散热材料供应商。
林允宁打开了笔记本电脑。
他没有看电影,也没有睡觉,而是调出了一篇Google研究院(Google Research)上周刚发表的论文:
《核方法在大规模数据集上的算力瓶颈与低秩近似》。
这篇论文像是一份判决书,直指当前所有注意力机制(Attention Mechanism)算法的死穴。
即使是他提出的“全注意力机制”,虽然在药物分子这种短序列上表现完美,但只要序列长度一拉长,计算量就会呈指数级爆炸。
核心问题在于那个该死的 Softmax。
在计算注意力时,标准公式是:
Attention(Q,K,V)= Softmax(Q?K^T).V
必须要先算 Q和 K的转置乘积。这会生成一个NXN的巨大矩阵。
如果N是1000(比如一段短文),矩阵就是100万个元素,显卡还能扛得住。
但如果是基因测序的长序列,可能是10万,那就是100亿个元素。现有的任何内存都会瞬间被撑爆。
这就是“算力的囚笼”。
在这个囚笼里,他的算法处理不了长文本,也处理不了高分辨率图像,注定只能是个玩具。
Google正是看准了这一点,才敢断言这个方向没有前途。
林允宁闭上眼,靠在椅背上。
【模拟科研模式启动。】
【注入模拟时长:200小时。】
机舱里的嗡鸣声瞬间消失。
林允宁的意识沉入了一片纯白的数学空间。
在他的眼前,出现了一个巨大的矩阵。那是标准的Softmax Attention计算过程:
Attention(Q,K,V)= softmax(Q * K^T)* V
那个中间产生的(Q*K^T)矩阵,大得像是一堵墙,横亘在算力的通道上。
它是一个 NXN的庞然大物。
【第20小时:你尝试用稀疏矩阵来近似。失败。稀疏化会丢失长距离的语义关联,得不偿失。】
【第60小时:你尝试用低分解(Low-rank factorization)。效果一般,精度损失太大。】
【第120小时:你回到了矩阵乘法的最基本性质??结合律。】
(A * B)*C = A *(B * C)
这谁都知道。
但在注意力公式里,那个非线性的 Softmax()函数像是一把锁,锁住了Q和K,让你无法先把K和V乘起来。
“如果我把这把锁换掉呢?”
林允宁的思维在这一刻跳出了深度学习的框架,回到了核方法(Kernel Method)的领域。
既然 Softmax是为了归一化和非线性映射,那为什么不用一个核函数 feature mapp()来代替它?
Sim(Q,K)=p(Q)*(K)^
一旦把非线性操作移到乘法之前,结合律就生效了!
原本的计算顺序是:
(Q * K^T)* V
这是先算NXN的大矩阵,再乘V
现在的计算顺序可以是:
Q *(K^T * V)
K^T是(dex N),V是(Nxd)。
它们乘起来,只是一个dxd的小矩阵!
d(特征维度)通常只有64或128,远小于序列长度 N。
【第180小时:推导完成。】
原本随N增长而爆炸的计算墙,瞬间坍塌。
新的复杂度:O(N)。
从平方级降维到线性级。
林允宁猛地睁开眼。
他迅速从包里掏出草稿纸,在那张印着美联航Logo的餐巾纸背面,写下了一行核心公式:
Linear_Attn =((Q)*(q(K)^T* V))/(Q(Q)*Σq(K)^T)
困扰了整个AI学界的大序列计算难题,被一个简单的高中数学知识??结合律,给破解了。
当然,前提是找到那个合适的映射函数p()。
但对于现在的他来说,这只是个数学技巧问题。
“解决什么了?这么兴奋?”
旁边传来方雪若的声音。
她刚摘下眼镜,手里拿着一份厚厚的财报,封面上写着“Indium Corporation”(铟泰公司)。
那是全球最大的散热材料供应商。
“解决了一个能帮我们省下几亿美元电费的问题。”
林允宁心情大好,把那张写着价值连城公式的餐巾纸折好,放进口袋,“铟泰?那是做焊料和散热材料的巨头。你看他们的财报做什么?”
“知己知彼。”
方雪若指了指报表上的一行数据,“铟泰正在大规模囤积稀有金属,这说明他们在押注下一代散热技术。我们的VO2热二极管如果想卖个好价钱,得找对买家。
“对了,宋胤乾教授那边有消息吗?”
“刚收到邮件。”
林允宁揉了揉太阳穴,“第一批掺钨的样品已经在炉子里了。宋老师按照我的Aether预测模型,调整了钨原子的掺杂比例。目标是把相变温度从68度压到40度左右。”
“成功率有多少?”
“理论上是80%,但材料学是玄学。”
林允宁苦笑了一下,“实验室烧出来是一回事,能不能量产是另一回事。如果成本降不下来,这东西就只能装在布兰登那台金贵的iPhone上,卖不了几亿台。”
“只要原理验证机(Prototype)能做出来就行。”
方雪若眼神笃定,“只要你能拿出一个在那台烫手的iPhone背面贴一下就能瞬间降温的Demo,我就有办法把苹果的人拉上谈判桌。现在的乔布斯,比任何人都需要这个故事来堵住用户的嘴。”
飞机降落在波特兰国际机场时,外面的天色已经暗了下来。
三人租了一辆黑色的雪佛兰SUV,沿着I-5号州际公路一路向南,驶向俄勒冈州立大学的所在地??科瓦利斯。
不同于芝加哥的钢铁森林,这里的道路两旁全是郁郁葱葱的道格拉斯冷杉,空气里弥漫着松脂和潮湿泥土的味道。
抵达会议酒店时,大堂里已经人声鼎沸。
这里没有西装革履的金融精英,满眼望去全是穿着格子衬衫、Polo衫和卡其裤的程序员和学者。
每个人胸前都挂着橙色的ICML胸牌,手里大多端着笔记本电脑,三五成群地讨论着核函数,贝叶斯优化和支持向量机。
“我去办签到。”
方雪若踩着高跟鞋走向前台,那种自带的气场让拥挤的人群自动让开了一条路。
林允宁和程新竹站在一旁的展板前,看着明天的会议议程。
“嘿,你是那个写《Attention Is All You Need》的小伙子吗?”
一个略带沙哑的声音从侧面传来。
林允宁转过身。
说话的是一个四十多岁的中年白人,发际线很高,戴着一副无框眼镜,胸前挂着的工牌上印着那个色彩斑斓的“Google(谷歌)”标志。
在那名字上方,印着他的头衔:Dr. Weiss, Technical Director (技术总监)。
“是我。”
林允宁点点头,扫了一眼对方的工牌。
魏斯(Weiss)博士。
林允宁在很多经典的统计学习论文里见过这个名字。
他是谷歌搜索算法团队的核心人物,也是坚定的“旧派”代表??信奉严谨的统计模型,瞧不起那种不可解释的神经网络“黑箱”。
“我看过你的预印本。”
魏斯手里端着一杯红酒,嘴角带着那种大厂高管特有的,居高临下的微笑,“不得不说,把拓扑学引入神经网络是个很性感的想法。数学很漂亮,真的。”
“谢谢。”
林允宁礼貌地回应,不卑不亢。
“但是,”
魏斯话锋一转,轻轻摇晃着酒杯,“年轻人,在工业界,漂亮是没用的。你那个算法的核心是个O(N^2)的矩阵乘法。你知道这意味着什么吗?”
他往前凑了一步,压低声音,像是在教导一个不懂事的实习生:
“这意味着在Google的数据中心里,它就是个因为内存溢出而被Kill掉的进程。处理不了长序列,它就永远只能是个在Arxiv上骗骗引用的玩具。O(N^2),在工业界就是死刑。”
旁边的程新竹脸一下子涨红了。
她刚想开口反驳,说我们在药物筛选上已经验证了它的价值,却被一只手拦住了。
雪若办完手续回来,正好听到了最后一句。
她脸上挂上了标准的职业假笑,刚准备用那种圆滑的商务辞令把场面圆过去。
“魏斯博士。”
林允宁上前一步,率先开口。
他并没有生气,甚至脸上的表情都没有一丝波动。
他只是抬起手,慢条斯理地整理了一下衣领??那是雪若送他的那条真丝领带。
“如果我没记错,Google现在的搜索排序算法,在处理长尾查询时,依然还在用十年前的倒排索引逻辑吧?”
林允宁看着魏斯的眼睛,语气平淡得像是在讨论晚饭吃什么:
“所谓的死刑,有时候只是因为你们手里的算盘太旧了。”
周围原本在闲聊的几个学者听到了这边的动静,纷纷停下交谈,投来好奇的目光。
魏斯的脸色沉了下来:“你在教Google怎么做搜索?”
“不,我是在邀请你看一场魔术。”
林允宁从口袋里掏出那张手写的餐巾纸,又塞了回去,只露出一角。
“明天上午十点,C厅,是我的报告。”
他看着魏斯,嘴角终于露出了一丝锋利的笑意:
“与其在这里讨论复杂度,不如到时候带上你的笔记本电脑,见识一下来自新时代的算法。”
说完,他没再看那位脸色铁青的技术总监一眼,转身对看呆了的程新竹和方雪若招了招手。
“走了,去吃饭,刚才在飞机上推导公式,我肚子都饿了。”