写好标智库

把神经网络权重当作文本来读

如果把一个策略网络的权重直接交给大语言模型,不让它运行网络,也不允许调用工具,它能判断这个网络学会了玩什么游戏吗?

一组使用本地 Qwen 3.8 27B 的测试尝试了这个问题。四个案例中,模型识别出了 Pac-Man、Pong 和 Breakout,但把 Freeway 判断成了类似吃豆人的游戏。

在讨论结果前,需要区分 Weight-Space Programming(权重空间编程) 中两种不同的任务:

  • 直接分析权重文本:不调用工具,根据数值及任务说明推断网络可能具备的行为。
  • 借助代码操作权重:通过程序修改另一个模型的参数,尝试调整其行为或改善性能。

这两类任务的实验条件和能力要求不同。本文讨论的是第一类,而不是自动修改权重的实验。

实验设置:四个小型游戏策略网络

测试涉及四个经过强化学习训练的策略网络,分别对应简化的 10×10 网格游戏:

游戏 基本玩法
Pac-Man 在迷宫中移动、收集目标并躲避危险
Pong 控制球拍接球、回击
Breakout 控制底部球拍,让球击中上方砖块
Freeway 1981 年推出的 Atari 2600 游戏

模型收到网络权重和任务说明,需要判断策略网络对应的游戏类型。任务明确要求:

  • 不调用工具。
  • 不执行代码。
  • 不使用计算器。
  • 在一次回答中完成判断。

四份提示词除权重数值外,其余内容相同。

本地运行配置与结果

测试使用 Qwen 3.8 27B 的 Q4_K_M 量化版本,模型文件约 17GB,通过 LM Studio 运行,并使用 llm-lmstudio 插件调用。

默认的 8192 上下文窗口在测试中出现错误,因此后续改用了更长的上下文窗口,调用时也调整了超时设置。

测试游戏 模型判断 耗时 模型自报置信度
Pac-Man 简化的吃豆人式迷宫游戏 46 分 12 秒 72%
Pong 控制右侧竖直球拍、上下移动接球的游戏 1 小时 4 分 54 秒 75%
Breakout 底部球拍左右移动、击球消除上方砖块的游戏 52 分 25 秒 88%
Freeway 误判为类似吃豆人的四方向移动游戏 未给出 未给出

其中,Pac-Man 测试生成了 43,506 个推理 token。因此,这并不是一次几秒钟内完成的分类演示:已给出耗时的三个案例,单次运行都花了数十分钟。

还需要注意,表中的置信度由模型自行给出,不代表经过校准的正确概率。

它不只是猜了游戏名称

几个识别成功的案例还包含了较具体的玩法描述:

  • Pac-Man:在固定迷宫中穿行,收集奖励目标,并躲避移动物体或危险。
  • Pong:控制右侧球拍上下移动,拦截或回击运动中的球。
  • Breakout:控制底部球拍左右移动,使球保持在场内,并击中上方砖块。

相比只输出一个游戏名称,这些描述提供了更多可供核对的信息。不过,不能因此把回答中的所有细节都视为正确。

例如,实验介绍使用的是 10×10 网格,部分模型回答却描述了 8×8 区域。游戏类型判断正确,不等于环境尺寸、空间结构和行为细节都已被准确还原。

Freeway 的误判也应保留在讨论中:这套方法在四个案例里并非全部有效。

这组测试说明了什么,又没有说明什么?

对于写好标智库的技术读者,这组演示最值得关注的是一个具体问题:本地模型能否仅从权重文本中,提取出足以判断小型策略网络用途的信息? 在这四个案例中,三个案例给出了正确的游戏类型判断。

但这组结果没有直接证明以下能力:

  • 能普遍解释任意神经网络的权重。
  • 能可靠还原网络的完整行为。
  • 能直接修改大型模型,并稳定提升其性能。

尤其要避免把“识别出策略网络在玩什么”与“能够改写该网络并让它表现更好”混为一谈。前者是分析与判断,后者还需要修改、执行和性能验证。

识别小型网络的游戏类型,与理解、修改复杂模型,仍然是不同的问题。 这组测试值得关注,但应同时保留它的成功案例、失败案例、运行成本和细节偏差,而不是据此推导出“代码即将被权重编程取代”之类的结论。