docs: run v6 — FineWeb-edu graduation (val 3.07, new distribution)

第一版脱离 TinyStories:纯 FineWeb-edu 真实网页文本(2.255B 语料),架构同
v4/v5(dim768/18L, core 127.43M),8 卡 DDP bf16,2.29B tok/1.02ep,~1.9h
@218K tok/s。train 11.03→3.14,best/final FineWeb val 3.0652。

方法论:FineWeb val(3.07) 与 v0–v5 的 TinyStories val(~1.1) 不可比——真实
网页熵高,~3.0 是预期非回退;判据是采样质量 + transfer eval。

- 新增 docs/runs/06-v6-fineweb-edu-dim768.md:数据管线(scripts/fineweb_to_txt.py)
  / 架构(同 v4/v5,隔离数据变量) / 超参 / 结果(val 单调降无走平=未饱和) /
  方法论说明 / transfer eval(v6→TinyStories val 2.75 vs v5 native 1.11,纯通用
  数据对窄分布有代价) / v5-vs-v6 同提示词采样对比(v6 写真实说明文 vs v5 一律
  掉进小故事)
- README 对比表加 v6 行(val 单独标注分布) + 换轴说明 + v7 提案
- evolution.md scaling 表 v6 行定稿 + 数据轴 TinyStories→FineWeb-edu 毕业说明

Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
This commit is contained in:
2026-06-16 22:21:43 +08:00
parent 88bec270af
commit b4bb426d48
3 changed files with 220 additions and 7 deletions

View File

@@ -38,7 +38,7 @@
| v3 | dim512/16L/16h · 67M/119M | TinyStories · 246M · 0.53ep | fp32 **batched(T10)** | 1 GPU · 26K | val 1.30 |
| v4 | dim768/18L/24h · 127M/205M | TinyStories · 721M · 1.54ep | fp32 batched | **8 GPU(T11)** · 145K | val 1.17(仍欠拟合) |
| v5 | dim768/18L**同 v4** | TinyStories · 2.49B · **5.33ep** | **bf16(T12)** | 8 GPU · 217K | val **1.11**:⚠️**TinyStories 饱和**3.5×数据仅↓5% |
| v6 | dim768/18L同 v4/v5 | **FineWeb-edu** 真实网页 · 2.29B · 1.02ep | bf16 | 8 GPU · 204K | 训练中FineWeb val 与上**不可比** |
| v6 | dim768/18L同 v4/v5 | **FineWeb-edu** 真实网页 · 2.29B · 1.02ep | bf16 | 8 GPU · 218K | val **3.07**:⚠️**FineWeb 留出集,与 v0v5 不可比**(真实网页熵高,~3.0 是预期);判据=采样质量+transfer。第一版脱离 TinyStories**语言种类质变**小故事→真实说明文transfer→TinyStories val 2.75(v5 native 1.11)纯通用数据对窄分布有代价val 末步仍单调降=未饱和 |
> 实训 token = steps×batch×seq非数据集大小。val 同一 1M-token TinyStories 留出集v0v5 可比v6 起换 FineWeb-edu 留出集,分布不同、不可比)。
@@ -49,7 +49,9 @@
- **算法**:手写 autograd(tape)+扇出累加 → AdamW/LR-sched/grad-clip → +QK-norm(Qwen3) → batched forward → bf16 混合精度(fp32 master)。
- **模型架构**:固定 Qwen3-styledim **32→256→384→512→768**;核心参数 **41K→127M**(总 3.26M→205M
- **Infra**:单卡 fp32 → cuBLAS/GPU-optim(T7) → NCCL DDP(T8) → batched forward(T10) → caching allocator(T11) → bf16(T12)。吞吐 **3.3K→217K tok/s**MFU **0.4%→17%**(每次提升都对应一块 perf 基建,详见 known-issues + MFU 分析)。
- **数据集**TinyStories 3MB 切片 → 全量 TinyStoriesepoch 0.01→5.33,至饱和)→ **FineWeb-edu** 真实网页。tokenizer 全程 gpt2 BPE复用 xserv-tokenizer
- **数据集**TinyStories 3MB 切片 → 全量 TinyStoriesepoch 0.01→5.33**至饱和**)→ **v6 毕业到 FineWeb-edu 真实网页**2.255B 语料1.02ep。tokenizer 全程 gpt2 BPE复用 xserv-tokenizerv6 刻意不换 tokenizer 以隔离「数据来源」变量KI-4 留后续版本)。
- **v5→v6 数据轴的质变**v0v5 都吃合成幼儿故事TinyStories低熵、词汇受控v5 证明同尺寸模型在它上面已饱和v6 第一版换成**真实教育类网页文本**FineWeb-edu语言种类发生质变——采样从「只会写小故事」变成「能写历史/科学/说明文」。
- ⚠️ **val 不可比**v0v5 的 val 是同一 TinyStories 1M 留出集(彼此可比);**v6 起换 FineWeb-edu 留出集分布不同、val3.07)不能和 v0v5~1.1)比大小**——真实网页熵高,~3.0 是预期而非回退。v6 的判据是采样质量 + **transfer eval**v6→TinyStories val 2.75 vs v5 native 1.11,量化「纯通用数据对窄分布的代价」)。
## 四、perf 杠杆台账(详见 [known-issues.md](known-issues.md)

View File

@@ -0,0 +1,204 @@
# Scaling Run v6: 脱离 TinyStories — 纯 FineWeb-edu 真实网页文本 + dim768/18L(同 v4/v5) + 8 卡 DDP bf16 — Design Document
## Goal
v5 给了一个干净的结论:**dim768/127M-core 在 TinyStories 上已近数据饱和**(同 arch 数据 ×3.5 仅
val ↓5%、末段走平。v5 末尾的判断是「瓶颈在**语料**而非容量」——再榨 TinyStories 的 epoch 收益薄,
真正的杠杆是**换更广、更真的语料**。
v6 就是兑现这条判断的第一步:**第一版彻底脱离 TinyStories换成纯 FineWeb-edu**(真实教育类网页文本)。
1. **架构完全冻结 = v4/v5**dim 768 / 24 heads × 32 head_dim / 18 layers / SwiGLU ffn 2048
core 127.43M,总 204.63M)。**一个权重维度都不改**——和 v5「只动数据量」一样v6「只动数据来源」
把「TinyStories → FineWeb-edu」做成唯一被测变量。
2. **数据从玩具语料毕业到真实网页**v0v5 都吃 TinyStoriesGPT 合成的、词汇受控的幼儿小故事);
v6 换成 FineWeb-edu`sample/10BT` 子集2.255B-token 真实教育类网页文本)。这不是为了「更低的 val」
而是为了**让模型见到真实世界的语言分布**(历史/科学/技术/说明文),测「更丰富的数据 → 更丰富的语言」。
3. **bf16 + 8 卡 global 256同 v5 的甜点区)**:复用 T12 的 bf16 混合精度fp32 master稳态
~218K tok/s~1.9h 训完 2.29B token~1.02 epoch
> ### ⚠️ 方法论说明(本版最重要的一条)
>
> **v6 的 val lossFineWeb-edu 3.0652)和 v0v5 的 val lossTinyStories ~1.1)不在同一把尺子上,
> 不能直接比大小。** TinyStories 是合成的、词汇与句法都受控的幼儿故事,**熵很低**——一个学得好的模型
> 能把 val 压到 ~1.1。FineWeb-edu 是真实网页文本,主题、词汇、句式无穷无尽,**熵本就高出一大截**
> 同尺寸模型在它上面的 val 落在 ~3.0 是**完全预期的,不是回退**。
>
> 所以 **v6 不该用「val 3.07 比 v5 的 1.11 差」来读**。本版的真正判据是两条:
> **(a) 通用提示词下的采样质量**v6 是否能写出连贯的真实英文,而不是掉进小故事);
> **(b) transfer eval**v6 在 TinyStories 留出集上的表现,量化「换通用数据」对原分布的代价)。
## 数据v6 的真正变化点)
| 项 | v5 | v6 |
|----|----|----|
| 来源 | TinyStories 全量 train合成幼儿故事| **FineWeb-edu**HuggingFaceFW/fineweb-edu, `sample/10BT`,真实教育类网页)|
| 语料规模 | 468.26M tokens | **2,254,904,418 tokens**3 个 parquet 分片)|
| **训练消费 token** | ~2.49B38000 步)| **~2.29B**35000 步 × global 256 × seq 256|
| epoch 占比 | ~5.33 | **~1.02** |
| tokenizer | gpt2 BPEvocab 50257| **同(刻意不换,隔离数据变量)** |
| 缓存 | `data/tinystories-train.txt.u16.bin` | `data/fineweb-edu.txt.u16.bin`4.51GB u16|
| held-out val | TinyStories 末尾 1M token | **FineWeb-edu 末尾 1M token与 v0v5 不可比,分布不同)** |
**新数据管线**`scripts/fineweb_to_txt.py`):从 FineWeb-edu 的 parquet 分片**按 row-group 流式**抽
`text` 列,每篇文档后接一个 `<|endoftext|>`gpt2 id 50256Corpus 的文档边界),写成一个 UTF-8 `.txt`
再走 `Corpus::load_cached` 的 gpt2 BPE 一次性 tokenize → `.u16.bin` 缓存(免重复 BPE。整条管线**只新增
这一个脚本**Corpus / tokenizer / 训练器全部复用 v0v5 的既有代码——这正是「只动数据来源」的工程边界。
(冗余的 10.45GB `.txt` 训完即删,可由脚本 + parquet 重新生成4.51GB 的 `.u16.bin` 缓存留在 dash5。
**tokenizer 刻意不换**gpt2 BPE 对真实网页未必是最优词表KI-4「大词表小 vocab」仍在台账上但 v6
若同时换 tokenizerval 的变化就无法干净归因到「数据来源」。**保 gpt2 → 隔离数据变量**;换 tokenizer 留给
后续版本单独做。
## 架构
v6 = **与 v4/v5 字节级同构的** tiny Qwen3RoPE + RMSNorm + per-head QK-norm + SwiGLU + 独立 lm_headMHA
**刻意一个维度都不改**,让「数据来源」成为唯一被测变量。
| 维度 | v4/v5 | v6 |
|------|-------|----|
| dim= heads·head_dim| 768 | **768** |
| n_layers | 18 | **18** |
| n_heads / head_dim | 24 / 32 | **24 / 32** |
| ffn_hiddenSwiGLU| 2048 | 2048|
| vocab | 50257 | 50257|
| **core 参数** | 127,432,704≈127.43M| **127,432,704** |
| **总参数** | 204,627,456≈204.63M| **204,627,456** |
config.json 与 v4/v5 一字不差(导出的 **201 tensors** 形状完全相同)。
## 训练器8 卡 DDP bf16同 v5
复用 v5 的训练栈,无改动:
- **fp32 master 权重 + AdamW/clip/DDP 全部 fp32**linears 走 `cublasGemmEx`16BF / fp32 accum、激活
存 bf16norm/softmax/rope/CE 仍 fp32。bf16 撑住 per-rank batch 32 / global 256 的甜点区。
- **8 卡 thread-per-GPU**all-reduce device 梯度取均值后各 rank 本地 GpuAdamW step跨 rank 参数
bit-identicalT8/T11
- 全程稳态 **~218,000 tok/s**、wall-clock **~1.9h** 训完 2.29B token。
## 超参
| 项 | 值 | 备注 |
|----|----|----|
| optimizer | 手写 AdamWGPU 端 step| wd=0.1,β/eps 用 xtrain-optim 默认 |
| LR schedule | 线性 warmup → cosine decay | max_lr **6e-4** → min_lr **6e-5**(同 v1v5|
| warmup | ~1750 步steps/20| lr 在 ~step 1750 达峰 6e-4cosine 衰减到末步 6e-5 |
| grad clip | global-norm 1.0 | warmup 后 gnorm ~0.4 起平稳 |
| steps | **35000** | ~1.9h @ 8 卡 |
| global batch | **256**per-rank 32 × world 8| bf16 甜点区(同 v5|
| seq_len | **256** | 同 v2v5 |
| tokens/step | 256×256 = 65536 | 总训练 token ≈ **2.29B**~1.02 epoch|
| world size | **8**RTX 5090sm_120| |
| 精度 | **bf16 混合精度**fp32 master| T12/KI-2导出 xserv 同样 BF16 |
## 结果
- **train loss**start **11.0273** → end **3.1442**(全程平滑下降)
- **best / final val lossFineWeb-edu held-out 1M tokenstep 34999****3.0652**
- FineWeb val 曲线(抽样,**单调下降无走平** —— 与 v5 末段抖动相反):
| step | 499 | 1999 | 3999 | 5999 | 7999 | 9999 | 13999 | 17999 | 21999 | 25999 | 29999 | 33999 | **34999** |
|------|-----|------|------|------|------|------|-------|-------|-------|-------|-------|-------|-------|
| val | 5.6987 | 4.0900 | 3.6906 | 3.5501 | 3.4681 | 3.4057 | 3.3089 | 3.2383 | 3.1779 | 3.1268 | 3.0907 | 3.0683 | **3.0652** |
**注意曲线形状**v6 的 FineWeb val **到末步仍在单调降**3.0683 → 3.0652,无 v5 那种 ~0.004 带内抖动)。
对真实网页这本「信息量大得多」的语料1.02 epoch / 2.29B token **远未触到数据天花板**——继续训(更多
epoch 或更大模型val 还有明显下降空间。这与 v5 在 TinyStories 上 5.33 epoch 走平形成鲜明对照:**换了语料,
天花板被抬高了。**
### ⚠️ 为什么 3.07 不能和 v5 的 1.11 比
| | v5 | v6 |
|---|---|---|
| val 语料 | TinyStories合成幼儿故事低熵| FineWeb-edu真实网页高熵|
| best val | **1.1102** | **3.0652** |
| 可比性 | ← **不可比** → | 两套 held-out 来自完全不同的分布 |
**3.07 > 1.11 ≠ v6 比 v5 差。** 一本词汇受控、句式套路化的幼儿故事集,本来就能被压到很低的 val真实网页
文本的内在熵高出一截,同尺寸模型落在 ~3.0 是**预期值**。判 v6 的好坏,看下面两节(采样质量 + transfer
不看这个不可比的数字。
## Transfer eval — v6 在 TinyStories 留出集上
把 v6 的 ckpt 拿到**与 v5 完全相同的 TinyStories 1M 留出集**上跑 `--eval-ckpt`bf16量化「纯通用数据
训练」对 TinyStories 原分布的代价:
| 模型 | TinyStories 1M val | 说明 |
|------|--------------------|------|
| v5native TinyStories| **1.1102** | 直接在 TinyStories 上训出来的 |
| **v6FineWeb-edu→ TinyStories** | **2.7546** | 从没见过 TinyStories纯 transfer |
**v6 在 TinyStories 上 2.75,比 v5 的 1.11 高 +1.64 nats。** 这是预期的、也是有意义的v6 **从未训练过
TinyStories**它把容量花在了真实网页分布上对「the little girl named Lily」这种高度套路化的幼儿故事
反而生疏了。换句话说,**纯通用数据训练对窄分布TinyStories有明确代价**——v6 用 TinyStories 专有的
流畅度,换来了通用网页文本的能力。这正是「换轴」该有的样子:不是免费午餐,是一次有方向的权衡。
> 这条 transfer 也回答了一个隐含问题v6 的 2.75 远好于一个随机模型(~11说明 FineWeb-edu 学到的
> 通用语言能力**确实迁移到了** TinyStories英语语法、常见词、叙事结构都通用只是没有 v5 那种针对性。
## 采样对比 —— v5(TinyStories) vs v6(FineWeb-edu),同通用提示词
两个模型**同 arch、同 xserv 服务、同贪心、同 prompt**,唯一差别是训练语料。喂**通用/说明文**提示词
(不是 "Once upon a time"),看语言走向:
| prompt | **v5TinyStories** | **v6FineWeb-edu** |
|--------|----------------------|------------------------|
| `The history of` | the castle was very interesting… **The little girl was so excited to explore the castle.** She ran around… | the United States is **a fascinating one. It is a country that has been shaped by the experiences of its people. From the founding of the United States to the present day…** |
| `In science,` | **the little girl learned about different kinds of plants and animals.** She was so excited to learn more. | the term science is used to refer to the study of the physical world. **Science is a broad field that encompasses biology, chemistry, physics, and engineering.** |
| `The most important` | thing was that **the little girl was safe.** She was so happy that she had been able to help the bird. `<\|endoftext\|>` | thing is to have a good understanding of **the different types of data and how they are used… it can help you make decisions about your business.** |
| `The United States` | of the world was a very special place. **Everyone was happy and they all looked forward to the future.** `<\|endoftext\|>` | has a long history… **the process of assimilation** (轻微史实幻觉,但语域是历史说明文)|
| `Water is` | **not good for you… Lily and Ben nodded. They drank water and felt better. They learned their lesson.** | a natural resource that is used to produce energy. **It is a renewable resource that can be used to generate electricity.** |
**结论很直接**
- **v5 无法脱离小故事模式**。每一个通用提示词都被它掰回 TinyStories 叙事——"the little girl"、"Lily and
Ben"、"learned their lesson"、`<|endoftext|>` 收尾。它**只会**写幼儿故事,因为它**只见过**幼儿故事。
- **v6 写出真实说明文英文**——历史、科学学科、数据/商业决策、可再生资源。语域明确是**教育类网页文本**
正是 FineWeb-edu 的分布。小模型仍有重复倾向greedy 尤甚,如 "decisions about your business" 重复一次),
也有轻微史实幻觉("Rockefeller coined Americanization"),但**语言的种类和广度**是 v5 完全没有的。
这就是 v6 这版要回答的问题的答案:**更丰富、更真实的语料 → 更丰富、更通用的语言**。代价是窄分布上的
专有流畅度transfer 2.75 已量化),收益是从「只会一种文体」到「能写真实世界的说明文」。
## xserv 验证
导出 HF Qwen3 safetensors命名映射 + 2D 权重转置 [in,out]→[out,in] + BF16见 T9 `docs/08`
**201 tensors**config.json 与 v4/v5 一字不差)存入 registry`xserv-cli` 加载并贪心生成:
```
$ xserv-cli ~/projects/tiny-models/v6-fineweb-edu-dim768 --max-tokens 50
Model: qwen3, layers=18, hidden=768, heads=24/24 kv, vocab=50257
Loaded 201 tensors
Ready (KV cache, dtype=bf16).
xserv> The history of the United States is a fascinating one. It is a country that has been shaped by
the experiences of its people. From the founding of the United States to the present day, there
are many stories that have shaped the country.
xserv> In science, the term science is used to refer to the study of the physical world. Science is a
broad field that encompasses a wide range of disciplines, including biology, chemistry, physics,
and engineering.
xserv> Water is a natural resource that is used to produce energy. It is a renewable resource that can
be used to generate electricity.
```
**token-match**v6 **训练即 bf16**fp32 master权重本就在 bf16 数值域里收敛,导出 BF16 给 xserv 后
两侧数值路径一致——同 v4/v5 的闭环v5 是 3/3 逐 token 一致。xserv 加载 qwen3 layers=18 hidden=768
201 tensors、KV-cache、贪心生成闭环成立。
## 相比 v5 与 v7 提案
v5 给出**数据天花板**结论TinyStories 在 dim768 饱和v6 兑现了「换轴:广化语料」这条路——结果是
**语言种类的质变**(小故事 → 真实说明文),且 FineWeb val 到末步仍单调降 = **新语料下天花板被抬高、
1.02 epoch 远未触顶**。v7 的杠杆按收益排序:
1. **更多/更好数据(首选)**v6 才训 1.02 epoch、val 还在单调降——**同 arch 多喂 FineWeb-edu**23 epoch
或加更多 10BT 分片)几乎肯定继续降 val是当前最便宜、最确定的收益。
2. **数据混合(次选,治 transfer 退化)**v6 暴露了「纯通用数据伤窄分布」TinyStories transfer 1.11→2.75)。
若想同时要**连贯性 + 广度**,可上 **TinyStories + FineWeb-edu 混合**语料——但这是为「不退化」服务,不是
为「更低通用 val」服务优先级看目标。
3. **更大模型dim1024+,要 KI-3**v6 证明真实语料的信息量对 127M-core 还有富余val 未饱和)→ 更大模型
能从同语料榨更多。但 dim1024+ 激活显存上升,需先做 **KI-3 激活重计算**T12 已列为 bf16 之后的下一个
显存杠杆)。代价最高,留到「数据这条便宜杠杆榨干后」再上。
**我的判断v7 先走 1更多 FineWeb-edu epoch**——v6 的曲线明确告诉我们「这本语料还没喂够」,在动模型
尺寸(贵、要 KI-3之前先把已经铺好的数据轴吃满是性价比最高的下一步。

View File

@@ -18,6 +18,11 @@ val loss 一栏给的是各版**各自训练 run 报告的 best val**held-out
**tokens / epoch 两列让数据饱和可见**v4→v5 同 arch、数据 ×3.51.54→5.33 epochval 仅 ↓0.06~5%
且末段走平 ⇒ TinyStories 在 dim768 已近**数据天花板**(详见 [05-v5](05-v5-tinystories-dim768.md))。
⚠️ **v6 起换了保留集(语料)**v0v5 的 val 都是 **TinyStories** 1M 留出集彼此可比v6 换成纯
**FineWeb-edu**(真实网页文本),它的 val3.07)是**另一把尺子上的另一个分布****不能**和 v0v5 的
~1.1 比大小——真实网页熵高,~3.0 是预期值不是回退。v6 的判据是采样质量 + transfer eval
[06-v6](06-v6-fineweb-edu-dim768.md))。下表 v6 行的 val 单独标注分布。
| 版本 | 数据 | 训练 token | epoch | 架构 (dim/L/heads·hd/ffn) | core 参数 | 总参数 | val loss | 备注 |
|---|---|---|---|---|---|---|---|---|
| [v0-baseline](../../docs/05-training-loop.md) | TinyStories valid 3MB 切片 (~72 万 tok) | ~0.72M | — | 32 / 4 / 2·16 / 64 | ~41K | 3.26M | **3.8050** | 太小不可用;采样陷入 "mommy's mommy's mommy" 循环 |
@@ -26,12 +31,14 @@ val loss 一栏给的是各版**各自训练 run 报告的 best val**held-out
| [v3-tinystories-dim512](03-v3-tinystories-dim512.md) | TinyStories 全量 (复用 v1 缓存) | ~245.8M | ~0.53 | 512 / 16 / 16·32 / 2048 | 67.13M | 118.59M | **1.3027** | dim512/16L + **单卡 batched (T10)**val 比 v2 低 0.40,带动机/转折的连续叙事;~2.65h/单卡 ~26K tok/s。T10 修 KI-1 根因(launch-bound),单卡避开 KI-5 |
| [v4-tinystories-dim768](04-v4-tinystories-dim768.md) | TinyStories 全量 (复用 v1 缓存) | ~720.9M | ~1.54 | 768 / 18 / 24·32 / 2048 | 127.43M | 204.63M | **1.1690** | dim768/18L + **8 卡 DDP fp32**val 比 v3 低 0.13,细节更具体、结构更完整;~84min/8 卡 ~145K tok/s。验证 T11 缓存分配器在 dim768 多卡扩展;⚠️ fp32 per-rank batch 32 OOM = bf16(KI-2) 触发点 |
| [v5-tinystories-dim768](05-v5-tinystories-dim768.md) | TinyStories 全量 (复用 v1 缓存) | **~2.49B** | **~5.33** | 768 / 18 / 24·32 / 2048 (**同 v4**) | 127.43M | 204.63M | **1.1102** | **架构同 v4**,唯一变量=数据量 + **8 卡 DDP bf16**(global 256)~3.2h/8 卡 ~217K tok/s。⚠ **数据天花板**:数据 ×3.5 仅 val ↓0.06(~5%) 且末段走平 ⇒ TinyStories 在 dim768 近饱和v6 该换轴(更大模型/更广语料) |
| [v6-fineweb-edu-dim768](06-v6-fineweb-edu-dim768.md) | **FineWeb-edu** 真实网页 (2.255B 语料) | ~2.29B | ~1.02 | 768 / 18 / 24·32 / 2048 (**同 v4/v5**) | 127.43M | 204.63M | **3.0652** ⚠️*(FineWeb val,与上不可比)* | **第一版脱离 TinyStories**,唯一变量=数据来源 + 8 卡 DDP bf16~1.9h/8 卡 ~218K tok/s。**val 是另一分布**(真实网页熵高,~3.0 是预期非回退),判据=采样质量+transfer。FineWeb val 末步仍单调降=未饱和;**transfer**: v6→TinyStories val **2.75**(v5 native 1.11),纯通用数据对窄分布有代价。采样: v6 写真实说明文 vs v5 一律掉进小故事 |
## 下一档(提案)
- **v6**待派发v5 给出**数据天花板**结论(同 arch 数据 ×3.5 仅 val ↓5% 且末段走平TinyStories 在
dim768 已近饱和——v6 该**换轴**,见 `05-v5-*.md` 末尾 "v6 提案"。两条候选:**A 更大模型dim1024+
容量上限尚未触顶dim 越大 KI-4 占比越摊薄)** vs **B 更广语料FineWeb-edu 等 + 可能换 tokenizer KI-4
抬高语料信息上限)**。判断 **B 解锁空间更大**v5 的瓶颈是语料而非容量,只放大模型很快又撞 TinyStories 信息上限)
理想 A+B 同时。**KI-3激活重计算)仅在 v6 走 Adim1024+)时才需要**,与放大模型路线绑定。
- **v7**待派发v6 兑现了 v5「换轴广化语料」的判断——纯 FineWeb-edu 带来**语言种类的质变**(小故事→真实
说明文),且 FineWeb val 才训 1.02 epoch、到末步**仍单调降**=新语料下远未饱和。v7 杠杆按收益排序:
**1. 更多/更好 FineWeb-edu首选最便宜最确定同 arch 多喂 23 epoch / 加分片val 几乎必继续降)**
**2. 数据混合TinyStories+FineWeb治 v6 暴露的 transfer 退化 1.11→2.75,为「连贯+广度」服务)**
**3. 更大模型dim1024+,要先做 KI-3 激活重计算,代价最高,留到数据轴榨干后)**。判断 **先走 1**——
v6 曲线明确说「这本语料还没喂够」,动模型尺寸前先吃满数据轴性价比最高。详见 `06-v6-*.md` 末尾 "v7 提案"。
</content>