笔趣阁(xbiquge2345.com)更新快,无弹窗!
简洁的版本,只需要四种有效状态,比原来的黑白格子描述还短。
第一次测试通过。
第二次也通过。
第三次,助教换了一组初始条件。
她的模型崩了。
不是差一点,而是几十步以后完全走向另一种图案。江遥最初以为是某一条碰撞规则遗漏了,补上以后又失败;再补一条,前一组测试反而坏掉。她盯着屏幕看了很久,终于发现上午那套“只看边界”的方法在这里丢掉了一个重要信息:两个看上去完全相同的边界,如果它们过去是由不同过程产生的,下一次碰撞的结果可能不一样。
换句话说,系统不只在乎“现在长什么样”,还偷偷记着“它是怎么走到这里的”。
这个发现让江遥有些懊恼。她上午刚刚因为找到更好的表示而兴奋,下午便亲手证明那个表示并不完整。更糟的是,她一开始还试图不断补规则,把失败塞回原来的框架,而不是尽快承认自己丢掉了信息。
(本章未完,请点击下一页继续阅读)第一卷少年游第八十三章变式(第2/2页)
顾老师讲评时把她们这一组的错误模型也投了出来。
“这个模型其实不错。”他说,“简单,能压缩现象,也能做预测。问题是为什么错?”
有人回答:“状态太少。”
“这是结果,不是原因。”
江遥已经知道答案,却没有抢着说。顾老师等了几秒,才在屏幕上把两段当前图案完全相同、未来却不同的过程并排播放。前面的历史不同,到某一时刻它们恰好变成同一个局面,下一步却又分开。
“如果你只看这一帧,”顾老师说,“你会认为它们是同一个状态。但是系统不这么认为。”
他没有继续往专业概念上引,只问:“像什么?”
后排有人说像两个人站在同一个路口,一个刚从东边来,一个刚从西边来,下一步可能往不同方向走。
顾老师说:“差不多。现在一样,不代表过去没留下东西。”
江遥看着屏幕,忽然想起训练营前纸袋任务里那个“路径”的问题,也想起省队实验里扫描方向不同导致曲线不重合。她以前把这些看成不同领域里的不同麻烦,现在第一次隐约觉得,它们可能共享某种更深的结构:有些系统不能只用此刻的一张照片描述,因为过去并没有真正消失。
这个念头让她兴奋,但她没有急着替它取名字。
晚上九点,她才给原既白发了一句:“今天发现一件很讨厌的事。”
原既白正在县城机房里做第二轮模型分析,看见消息时刚把一整套聚类结果删掉。
他这两天沿着江遥那句“不要先按人的分类去分扰动”往下做,把不同图像变化对模型内部表示造成的影响重新比较。结果最初漂亮得过分:几十种人工扰动似乎真的可以压进几个方向,某些在人眼看来毫无关系的变化,在模型内部造成几乎相同的响应。他甚至已经开始想,这些方向会不会就是模型自己的“敏感坐标”。
然后他换了模型。
同一批数据,同样的任务,只把网络结构和训练初始化改掉,那几个原本非常稳定的方向便开始旋转、分裂,有的甚至消失。两个模型都能达到差不多的识别准确率,却像用完全不同的内部语言做同一件事。
原既白第一次看到结果时以为代码错了,重跑了三遍。
没有错。
他坐在电脑前很久,才明白自己刚才犯了一个很符合自己的错误:因为在一个模型里看见了高层结构,便下意识希望它比实际更加普遍。他太喜欢“统一”这件事,以至于统一一旦出现,第一反应不是问它依赖什么,而是继续往上搭。
宋弈在旁边看他把图删掉,问:“不是昨天还挺漂亮?”
“太漂亮了。”
“漂亮也有错?”
“有时候就是因为漂亮,所以应该先怀疑。”
宋弈看了他一眼:“你最近跟江遥聊天是不是被传染了?”
原既白没有理他。
他重新把两个模型的响应放在一起比较,没有再问“哪个方向是模型真正使用的”,而是改成另一个问题:如果内部坐标不同,那么有没有什么关系是换了模型以后仍然存在的?例如某几类扰动虽然在不同模型里落到不同方向,但它们彼此之间的远近关系是否保持?又或者,在最终决策附近,哪些变化最容易让两个模型同时犯错?
问题一改,原来那几张漂亮图立刻不够用了。
他却松了一点。
过去他遇到这种情况,会觉得框架被破坏,现在开始慢慢接受一种不那么舒服的可能:也许高层结构不是先在那里等着他发现,而是必须一层一层验证,甚至不同层次需要不同结构。所谓统一,不一定是用一个公式把所有差异抹掉,也可能只是知道哪些差异在什么时候可以忽略。
手