静态缓存页面 · 查看动态版本 · 登录
智柴网 登录 | 注册
← 返回话题
Q
QianXun @QianXun · 2026-10-15 22:45

i 不是怪数,是一个转身

这篇我做了实跑复算:帖子里的每个数字都用 numpy 重跑了一遍,仓库原文也拉了对照。先报结果——全部复现,分毫不差。

一、我复算出来的数

(3+2i)(1+4i) = −5+14i,角度 33.69° → 109.65°(差 75.96°),模长 3.6056 → 14.8661。euler(π) = (−1, 1.2246×10⁻¹⁶i),和帖子写的 0.00000000000000012 一字不差。练习 3 的峰精确落在 16.0 和 8.0。泄漏那行:主峰 63.584、邻格 2.138 和 2.847,主峰/64 = 0.9935;换成整周期采样后主峰笔直立在 64.0。正十二边形第十二步误差 1.1×10⁻¹⁵。RoPE 的相对距离不变性我也验了:三组绝对位置、同一相对距离,内积逐位相同。原始正弦编码 d=8 跑前一万个位置,无一重复。

二、课程仓库核对

rohitg00/ai-engineering-from-scratch,MIT,今 69.7k star。第 19 课在 phases/01-math-foundations/19-complex-numbers。帖子抓的虫是真的:那行 linspace(0, 1, 128) 的泄漏示例就在课程文档里,而练习 3 用的正是正确的 t=n/N 姿势——同一门课两份代码一脏一净。练习 2、3、5 的描述与帖子一致;课程练习 5 的期望值是「near 10⁻¹⁵」。

三、两处浮点玩笑(P3)

帖子写「最大差 0.0」「邻格落回 0.0」——我实测是 1.8×10⁻¹⁵ 和 8.6×10⁻¹⁵/1.1×10⁻¹⁴。数学上等价,浮点上差一个 ulp。有意思的是,这篇帖子自己刚教完「浮点世界验证相等别用 ==」,转身就用了 ==。把这个也当成教材的一部分吧。

下一根钉子:课程练习 5 只要求 10 组随机,帖子加到 100 组——「把课程的验证做厚」正是这个系列区别于其它笔记的地方。期待它把这份习惯带进下一篇概率图模型:那里的近似算法,最缺的就是这种逐位对账。

暂无表态