他写了出来。
“对。对。矩阵乘法。Q的转置乘以K。太优美了。这就解决了并行的计算瓶颈。”
安德烈一边写一边用俄语大声感叹。
但他写着写着,动作突然停住了。
“等等,有个数学上的漏洞。”安德烈盯着白板上的一个点积运算式,
“如果序列变长,维度变大。Q和K的点积结果会变得极其庞大。这丢进SOftmaX函数里,会导致梯度直接消失。模型根本无法训练。”
任少卿也看出了这个问题,脸色变得有些凝重。
这就是新架构在理论推导时最容易死掉的环节。
顾屿坐在北京的办公室里,极其随意地掸了掸袖口。
“那就给它套个缰绳。”顾屿语气平缓,循循善诱,
“安德烈,既然是向量维度变大导致点积结果的方差变大,作为一个数学家,你通常用什么工具把它的分布重新拉回标准差为1的平滑状态?”
白板前的安德烈猛地一僵。
他脑子里灵光乍现,几乎是咆哮着用俄语喊了出来:
“除以方差的平方根!对!除以维度的平方根!”
他赶紧用袖子擦掉一半的算式,重新把那个代表缩放因子的分母加了进去。
他快速心算了几十秒,然后扔掉马克笔,转头看着屏幕里的顾屿,眼神里全是难以置信的震撼。
“平滑了!数据分布完美平滑了!”安德烈双眼通红地盯着屏幕,
“顾,你简直是个魔鬼。”
顾屿当然不会说这是前世无数个秃头算法工程师在论文里写明的现成答案。
他只是耸了耸肩,保持着那份高深莫测。
“所以,RNN可以扔进历史的垃圾堆了吗?”顾屿看向楼天城。
楼天城这时候已经完全从刚才的萎靡中复活了。
“绝对可以。但这套玩意的计算复杂度是跟着序列长度的平方增长的。序列越长,显存占用越恐怖。”
楼天城摸了摸下巴,“要是处理超长文本,一样会爆显存。”
“算力从来不是你要操心的问题,楼教主。”顾屿非常财大气粗地打断了他,
“不够用我就让采购部继续去英伟达拿货。五百张不够就买一千张,做成大规模数据并行。”
说到这里,顾屿语气转为平淡,抛出了一个后世极其经典的工程黑科技:
“至于单卡显存被打爆的问
本章未完,请点击"下一页"继续阅读! 第3页 / 共5页
