English· Español· Deutsch· Nederlands· Français· 日本語· ქართული· 繁體中文· 简体中文· Português· Русский· العربية· हिन्दी· Italiano· 한국어· Polski· Svenska· Türkçe· Українська· Tiếng Việt· Bahasa Indonesia

un

访客
1 / ?
返回课程列表

v1的教训:损失看起来正常,输出却是垃圾

一个警示故事

ANDREA-120M v1在第110K步达到EMA损失3.43,远低于随机几率(ln(8449) = 9.04)。这个数字看起来很体面。样本却不是。


step 80K: 区域 区域 区域 区域 区域 区域 区域
step 110K: ''''' ''''' '' ''' '' ''' '''?' ''' ' '' '' '
step 140K: 游戏,游戏,游戏,游戏,游戏,游戏
step 165K: 布迪 布迪 布迪 布迪 布迪 布迪 布迪 布迪

v1 没有连接样本监控。从第 80K 步开始,模型产生了重复循环垃圾,而训练在又进行了 85K 步后才被某人注意到。因为没有人阅读输出,浪费了 10 多天的计算资源。


损失隐藏了什么

交叉熵损失衡量模型对下一个标记的惊讶程度。一个输出 region region region region 的模型看起来对自己的输出毫不惊讶(它每次都预测同一个词)。数值损失可以保持低位,而语义质量却崩溃。


v2 修复

sample_every = 100 步。生成 420 个自由形式标记。连贯性门控早停对每个样本在大二元多样性、三元多样性、英语单词存在性及字符多样性(0-100 量表)上评分。5 个连续样本得分低于 30 后自动停止。在 v1 上回测:会在第 132K 步触发,节省 3.8 天。


阅读样本不是可选的。阅读样本是我们知道损失有意义的方式。

损失 vs 样本质量

v1 达到了 EMA 损失 3.43(远低于随机的 9.04),但输出了“region region region”。分两部分解释:(a) 损失数值如何保持合理,而输出却崩溃为重复?(b) v2 中的什么结构修复能捕捉到这一点,而无需人类逐个阅读样本?

ppl = exp(loss)

转换

交叉熵损失以 nats 报告。困惑度报告模型在每一步考虑的等可能标记的等效数量。转换:ppl = exp(loss)


在 8449 个标记词汇表上随机:loss = ln(8449) = 9.04, ppl = 8449。完美记忆预测:loss = 0, ppl = 1。


参考表格


lossppl阅读理解
9.048449在完整词汇表上随机
5.00148早期训练,基本结构
3.0020学习词汇分布
2.007知识渊博但不精确
1.002.7遵循约束的能力开始显现
0.702教科书式的一句话
0.301事实回忆,大多已记忆
0.131警报:记忆的子字符串
0.001完美记忆

每个样本损失 vs EMA 损失

EMA 损失(跨多个步骤的指数移动平均)报告整体训练健康状况。每个样本损失报告特定样本的质量。二者会分歧:EMA 可能稳定在 2.0,而单个样本根据 bandit 选择的提示可能落在 0.13 到 4.0 的任何位置。


阅读单个样本损失是我们捕捉异常值的方法。EMA 损失无法告诉我们某个样本是否记忆了 repo-docs 子串;每个样本损失可以。

阅读三个损失值

ANDREA-120M 在步骤 112,584-112,668 连续生成了三个样本。(a) loss 0.30 ppl ?;(b) loss 0.74 ppl ?;(c) loss 1.94 ppl ?。计算每个 ppl,然后说明每个代表的质量层级(memorized / textbook / constraint / imprecise)。

遍历审计窗口

一个 700 步的窗口

在第 111,996 步与 112,668 步之间,ANDREA-120M 生成的样本跨越六个不相关的知识领域。每个样本落在损失层级中:


Sample Audit Loss Tiers


第 1 层:事实回忆 (loss 0.30, ppl 1)

step 112,584, biology


> [extinction prompt]

> < black spider montano is alive, carolina parakeet is extinct.


两个正确的事实。卡罗莱纳鹦鹉于 1939 年被宣布灭绝;黑蛛猴现存。ppl 1 表示模型在每一步都选择了正确的标记。外部评分:9.5/10。


层级 2:教科书式一行定义 (loss 0.74, ppl 2)

step 112,668, 信号处理


> [Fourier transform prompt]

> < 傅里叶变换将信号分解为频率分量,从而允许在频域中分析信号特性并进行滤波。


教科书式的一句定义。时域到频域的分解,带有正确的应用术语。外部评分:9.5/10。


第 3 层:约束遵循 (loss 1.05, ppl 3)

step 112,248, poetry


> 用三个以“r”开头的单词写一首关于雨的俳句。

> < 雨的节奏反复, > 窗户上的小溪流, > 缓解生活之痛。


三个“r”单词 (Rain, Rivulets, Respite),三行,俳句结构保持,围绕雨的语义连贯性。ppl 3 = 模型在每一步考虑了几个候选,但保持在约束内。


第 4 层:知识渊博但不精确(损失 1.94,ppl 7)

步骤 112,500,python 工具


> 如何在 Python 项目中查找过时的包?

> < 使用 pip list --outdated names 来查看项目管理中的 pip 包列表,或者应该通过 pyenv 来获取更自动化的包。


正确的内核命令(pip list --outdated)从训练数据中浮现。措辞流畅性仍在发展。小混淆:pyenv 管理 Python 版本,而不是包。ppl 7 表示模型在每一步考虑了约 7 个合理的延续;并非所有都精确正确。


第 5 层:ALERT,记忆的子字符串 (loss 0.13, ppl 1)

step 112,080, anomalous


Loss 0.13 位于教科书层 下方。模型在这个样本上过于自信。诊断:记忆的 repo-docs 子字符串,而不是学习的聊天。bandit 拉动了一个僵尸 repo-docstrings 臂,该臂携带来自先前运行状态的权重 1.546,且样本重现了训练数据的逐字片段。


异常低的 loss 是记忆警告,而不是质量信号。 低于 0.20 意味着:检查模型是在生成还是在复制。


700 步中的六个领域

生物学(鹦鹉)、信号处理(傅里叶)、诗歌(俳句)、Python 工具(pip)、对话对话、运维对话。700 步内六个不相关领域告诉我们,bandit 正在做多样化工作,而不是卡在一个来源上。领域广度就是质量指标

诊断三个样本

三个新样本进入你的审计窗口。(a) 损失 0.40,生成“光合作用在叶绿体中将阳光转化为化学能”。(b) 损失 0.10,生成一段 Python 文档字符串的逐字复制。(c) 损失 1.30,生成一首遵循 ABAB 押韵方案的十四行诗,但有一个略微牵强的押韵。对于每个样本,命名其质量层级并说明你的行动:**ACCEPT**(真正学习)、**INVESTIGATE**(异常信号)或 **ACCEPT_WITH_NOTE**(不完美但 bandit 健康)。

为什么提交样本给外部评估

外部评估发现了什么

内部样本审计告诉我们,该模型能够按需生成生物学、信号处理、诗歌和 Python。外部聊天质量评估将这些样本评为“9.5/10”且“在这一规模的知识任务上表现超出预期”。


内部审查回答:强盗算法是否做了多样化的工作?外部审查回答:人类读者是否会将这些输出评为优秀?


为什么两者都重要

内部审计能捕捉结构失败:重复崩溃、记忆峰值、低多样性僵尸臂。损失层级、n-gram 多样性和领域广度都可以从代理指标中观察到。


外部评分捕捉语义质量失败:自信错误的错误事实、awkward phrasing、遗漏细微差别。这些都不会在损失数字中显现。


方法论

ANDREA的训练仪表板位于training.ai.unturf.com/dashboard,有意公开且只读。任何人都可以实时轮询.loss.json.samples.json和bandit状态。外部审阅者拥有与操作员相同的数据访问权限。


独立读者给出的9.5/10分数,基于第112,584步(总共200,000步)抽取的样本,具有完整出处:该结果是可重现的、可审计的,且不可操纵。相同的样本、相同的损失值、相同的bandit状态,任何查看的人都能看到。


两个独立信号

内部:低损失 + 高多样性 + 多领域覆盖 = bandit 健康。

外部:独立审阅者 9.5/10 = 输出质量良好。


两者一致:训练正在收敛于事实回忆、约束遵循和多段落连贯性。如果它们分歧(低损失但外部评分为 3/10),我们将有一个需要调查的指标游戏问题。

两个信号,一个诊断

想象 ANDREA 样本在第 100K 步和第 150K 步获得外部评分。(a) 第 100K 步:内部 EMA 损失 2.5,n-gram 多样性 70/100,外部评分 3/10。内部与外部之间的差距表明什么?(b) 第 150K 步:内部 EMA 损失 2.0,多样性 85/100,外部 9/10。内部与外部的一致性表明什么?每个场景给出一句。

每个审计窗口的五个步骤

一次审计,五个检查

1. 读取损失层级。 ppl = exp(loss)。对照五层级表匹配。

2. 检查低于0.20的异常值。 记忆信号。在视为质量结果前调查。

3. 读取实际样本文本。 损失数字无法告诉你输出内容。阅读它。

4. 计算领域广度。 700 步内六个不相关领域 = 健康 bandit。一个领域重复 7 次 = bandit 卡住。

5. 与外部评分比较。 如果你的样本在你看来不错,请让运行之外的人阅读它。他们的不同意见就是信息。


这与什么相关


- 活动 22 (grow_a_language_model_checkpoints)。 sample_every 节奏与检查点节奏一致;两者每 100 步触发一次。

- 活动 21 (coherence-gated early stopping)。 当样本崩溃时自动停止训练的多样性指标。

- 活动 24 (grow_a_language_model_microgpt_to_andrea)。 v1 崩溃、v2.5 污染、v3 润色均被(或本可被)样本审计捕获。


一个真理

损失是一个数字。阅读样本是我们了解这个数字含义的方式。

你将关注什么?

在五个审计检查(损失层级、低于0.20的异常值、样本文本、领域广度、外部评分)中,如果你训练自己的模型,你会将哪个放在最高优先级?选择一个,并用2-3句推理解释。