第4章 你来自哪?(2/2)
【畅读更新加载慢,有广告,章节不完整,请退出畅读后阅读!】
放过。DeepMind开源了训练和评估模型,发布了演示网站,外界能查看AlphaCode在具体编程问题上的生成解决方案、解释和可视化,却不能像使用 ChatGPT那样输入一个新问题,让系统实时生成代码。
不到两分钟,回复出现了。
“AST距离捕捉的是程序如何被写出来。
执行轨迹捕捉的是程序在采样输入上的行为。
我说的是稍微不同的东西:推断是哪一类反例生成器杀死了哪些候选程序。
如果两个程序需要同一种对抗性输入才会失败,那么即便它们的语法和普通执行轨迹不同,它们也属于同一个潜在解法家族。”
伊戈尔端着咖啡回到桌前,想了想,又问:
“这需要知道反例分布。在编程竞赛里,隐藏测试是不可见的。你怎么避免只是发明出一套带有自己偏差的基准测试?”
这次Light_Chen没有马上回复。
过了大约五分钟,他发来一段更长的回答。
“我们只需要用一组根据题目描述和候选程序行为生成的探针。
对每个候选程序,提取它隐含的假设,然后生成小规模的对抗性探针族,专门攻击这些假设。
在最终过滤之前,估计候选解的多样性是否真实存在。如果80%的候选程序都死在同一类探针族上,那么就可以顺利掩盖一个已经坍缩的策略空间。”
伊戈尔开始认真起来。
他回复:“假设我们接受这个观点。那么指标应该长什么样?原始聚类数量?失败家族上的熵?还是别的什么?”
“我会定义三个数字。
原始采样数:生成了多少个程序。
行为幸存数:有多少程序通过了可见测试或样例测试。
语义有效样本量:在自适应探针下,还剩下多少个不同的失败吸引域。
有用的比率增加语义有效样本量/原始采样数和语义有效样本量/行为幸存数。
如果第一个比率很小,说明模型采样到的只是风格。
如果第二个比率很小,说明过滤器选出来的只是同一个想法的不同变体。
如果两个比率都会随着规模提高而提高,那么模型确实在学习真正的策略多样性。”
伊戈尔靠在椅背上,仔细一想,卧槽大佬啊,对方给的策略有点可行性。
他看出价值了,没有再继续在推特上继续和对方聊天,而是选择切换到推特私信里。
先给Light_Chen点了个关注,然后接着问道:“你认为这是代码生成特有的问题,还是语言模型的一般性限制?”
“一般性限制,但代码把它暴露出来。”
“在语言里,表面多样性甚至更具有欺骗性。十个答案看起来可以完全不同,却共享同一个隐藏框架。”
“代码有用,是因为失败可以被运行给判断出来。”
“如果我们能做到如何在代码里测量坍缩的策略空间,就能得到一种更广泛诊断推理系统的方法。”
伊戈尔想了想,问了个有点尖锐的问题:“如果没有AlphaCode的内部访问权限,你怎么测试这一点?”
他想看看对方能不能在没有AlphaCode的内部权限的情况下设计出近似验证方法。
过了一会儿,Light_Chen回复:
“使用演示题目里的公开样例足够做一次合理性检查。”
“选择那些演示中展示了多个生成解法或解释的题目。”
“手动重构解法家族。”
“围绕可能的不变量生成对抗性变体。”
“比较这些不同的解法是否会一起失败。”
“哪怕只有5到10个例子,也足以判断这个测量方法是否值得放大。”
伊戈尔内心已经在为对方鼓掌了。
“你在OpenAI工作,还是微软?或者META的人工智能实验室?”
他已经冒出想要挖人的想法了。
21世纪什么最重要?当然是人才最重要。
自己有可能要为马斯克工作,一个人孤掌难鸣,那么带越多的人一起去越好。
开除一个人太容易了,开除一群人有点难。
这也是为什么,在硅谷,印度人在抱团,华国人也在抱团,大家都在抱团。
来了一个就来两,来了两个就来一串。
你想开除我,先掂量掂量,我们走了,你的业务还能不能运转。
“我还在上学。”
“哦,斯坦福还是MIT?”
“江城大学。”