算法与学习实验
小实验的价值在于暴露目标函数、表示和评测,而不是用一个结果替代算法结论。信息截至 2026-07-14。

结论先行
三篇算法文章都选择了足够小、可观察的任务:遗传算法组合二维基元逼近目标图,语言模型用立方体、球和圆柱表达三维物体,DPO 让小模型偏好“手机靓号”。它们最适合被当作教学实验,因为每个案例都能把一个抽象概念显形:遗传算法会忠实优化你写下的适应度,不会自动理解语义;语言模型的空间表现受输出语言和几何表示影响;偏好优化依赖 chosen 与 rejected 的相对关系,而非一个绝对好答案。
这些实验不能直接证明对应算法在大型游戏生产中有效。更有价值的做法是补齐基线、随机种子、留出集、失败样本和指标定义,让小实验成为可重复的诊断工具。
原文演进
| 时间 | 案例 | 状态 | 教学焦点 |
|---|---|---|---|
| 2025-06 | 遗传算法做 2D 基元拟合 | 核心,案例中跑通 | 表示、变异、选择和适应度如何共同塑造结果 |
| 2025-06 | LLM 做 3D 基元生成 | 核心,案例中跑通 | 模型能识别物体部件,却容易产生空间关系和尺度错误 |
| 2026-03 | DPO 生成手机靓号 | 核心,案例中跑通 | 用 chosen、rejected 对理解直接偏好优化 |
有效方法
让表示足够简单,错误足够可见
二维实验只用五类基元,使每次变异都能直观看到;三维实验限制为 box、sphere、cylinder 和少量参数,使输出能被解析与渲染。限制表达力会牺牲细节,却能暴露模型到底是否理解对象数量、相对位置和比例。
先定义基线
遗传算法至少比较随机搜索、贪心局部搜索和不同种群或变异率;3D 基元至少比较直接 JSON、可执行代码、先列部件再写几何;DPO 至少比较原模型、监督微调和不同偏好数据量。没有基线,只能说“程序产生了变化”,不能说算法带来优势。
固定随机性并保留全过程
记录种子、配置、数据版本、每代最优与均值、模型 checkpoint、训练曲线和渲染结果。失败运行不能只保留最后一张图。对生成模型还应保存解析失败、合法但错误和视觉正确但结构错误三类样本。
将训练指标和任务指标分开
二维像素相似度提高,不代表图形语义更接近;DPO loss 下降,不代表用户更喜欢号码;3D 代码能运行,不代表物体可识别。任务指标应靠独立规则或人工盲评,例如部件 F1、空间关系、碰撞率、偏好胜率和留出模式表现。
失败原因
适应度会奖励错误捷径
原文观察约 20 秒达到约 0.78 的拟合度,这两个数字只属于作者当时的目标图、实现与硬件。若适应度按像素误差,算法可能用大色块覆盖背景来获得高分,而不是组合出语义正确的部件。应分解轮廓、颜色、结构复杂度和重叠惩罚,并检查多张图。
3D 基元的格式正确掩盖空间错误
语言模型能写出合法 JSON,常见问题仍包括物体穿插、部件悬空、左右相反、尺寸失衡和坐标系混淆。解析器只验证语法。需要包围盒、接触、支撑、对称和摄像机可见性检查,并明确单位、轴向与原点。
教学版 DPO 容易省略参考模型
原文手机靓号案例为了直观,突出同一前缀下 chosen 和 rejected 的对数概率差。这适合入门,但完整 DPO 推导还包含相对于 reference policy 的概率比,并与 KL 约束的 RLHF 目标有关。若只提升 chosen、压低 rejected 而忽略参考模型,容易把简化损失误称为标准 DPO。
偏好数据可能学到表面模式
“连号、重复、对称”是容易定义的手机靓号规则,模型可能记住局部数字模式而非抽象偏好。必须用未见前缀、未见组合和冲突偏好测试泛化,并检查原本生成分布是否严重退化。
当前技术进展
DPO 原始论文将带 KL 约束的偏好优化重新参数化为分类式损失,从而不需要先训练显式 reward model 再进行在线强化学习。它使用偏好对和 reference policy 的相对对数概率。手机靓号案例应被理解为这一思想的教学缩影,而不是完整复现论文全部假设。DPO 原始论文,访问于 2026-07-14
2026 年的研究《3D Primitives are a Spatial Language for VLMs》系统比较 14 个视觉语言模型和 6 种场景代码语言,报告同一模型的对象检测 F1 可因表达语言产生显著差异,并提出先生成基元代码再做空间推理的 Code-CoT。这为原文 3D 基元实验提供了后续证据:中间表示不是中性的,代码语言本身会改变模型能否表达空间。原始论文,访问于 2026-07-14
cross-attention 的理论源头可追溯到 Transformer 的 attention 机制。注意力通过 query 与 key 的相似度加权 value,适合把一个实体的查询与可变实体集合对齐。它提供信息选择,不自动保证因果、记忆或决策正确。Attention Is All You Need,访问于 2026-07-14
编辑判断: 这些后续工作强化了本专题最有用的结论:算法表现往往先是表示与评测问题。换更大的模型之前,先检查输入、输出语言、目标函数和验证器。
推荐工作流
以下模板适用于可重复的小型算法实验:
问题与可证伪假设
-> 最小表示
-> 至少一个简单基线
-> 固定数据、种子与预算
-> 训练或搜索全过程记录
-> 独立任务指标和失败分类
-> 留出集与消融
-> 明确不支持的外推
| 项目 | 必填内容 |
|---|---|
| 假设 | 例如“基元代码比自由文本更能保持部件空间关系” |
| 自变量 | 表示语言、模型、变异率、数据量等 |
| 控制项 | 种子、预算、目标图、解码参数、硬件 |
| 基线 | 随机、规则、原模型或人工流程 |
| 指标 | 训练指标和真实任务指标分别列出 |
| 失败类型 | 解析、结构、视觉、泛化、性能 |
| 外推边界 | 样本、品类、硬件和许可 |
适用边界
适合:教学;快速理解一个损失或搜索过程;评估中间表示;为大型系统设计小型单元测试;生成可视化失败样本。
不适合直接外推:单张目标图到复杂内容生成;单个物体到完整场景空间推理;手机号码偏好到开放式人类价值对齐;一次成功运行到稳定算法优势。
当问题可以用规则直接求解时,小实验仍可用于教学,但不应把模型或强化学习包装成生产上的必要方案。
原始文章与延伸阅读
本专题收录 3 篇原文,完整元数据见文章索引。