圆周归一化与空间对齐
上一篇《整数对齐与分数概念》谈到:小数出现 = 维度不匹配——度量(度)没有对齐,关系(维)就维系不住。分数之所以"分不完",根子在两个量的标尺不一致。
那怎么解决?答案就是归一化——把所有维度都规划到圆周上。
圆周是一个天然的归一化框架:
- 无论 10 天干、12 地支、24 节气、28 星宿、60 甲子还是 64 卦——投影到 360° 的圆周上,都能用整数角度定位
- 小数带来的"分不完"问题被消解了——你不需要知道精确的小数位,只需要知道它在圆的哪个位置
- 圆周的闭合性让一切周期自洽:走完一圈就是一个完整周期,起点即是终点,无需无限
这背后是一个终极理想:
万事万物皆可取整,一切皆有周期。周期闭合,万物归一。
圆周归一化,就是古人解决维度不匹配的终极方案——拒绝小数的不可表达,追求一个全部取整、全部有周期的统一世界。
现象:罗盘上的圆环
打开本站任何一个罗盘,你会看到一圈又一圈的同心圆环。你看到的不是几何图形,是文字——每一段弧上写着几个汉字:
- 二十四节气环 —— 「立春」「雨水」「惊蛰」……
- 六十甲子环 —— 「甲子」「乙丑」「丙寅」……
- 二十八宿环 —— 「亢宿」「心宿」「斗宿」……
- 六十四卦环 —— 「乾」「坤」「屯」「蒙」……
每个环都在用一格一格的文字序列来表达周期性信息。不同环上的文字集不同(节气名 vs 干支名 vs 星宿名 vs 卦名),但形态完全一致——圆周被等分(或不等分)为若干段,每段就是一个宫格。
为什么选圆?有人会说"因为圆看起来好看"、"因为罗盘是圆的"——但这只是说到了表面。底下有很深的道理。
一宫一格,各自为义
圆环被分割成若干段,每段就是一宫。每宫划出一格,格里放着各自的意思:
- 「甲子」 —— 两个字坐一格。天干之首 × 地支之首 × 阳年 × 海中金 × 六十甲子序列的第 1 位——全都压缩在两个字里。不止如此,同一个「甲子」,在年柱环上指"某年",在日柱环上指"某日"。格的位置决定了它压缩的是哪一层语义。
- 「亢宿」 —— 两个字坐一格。四象归属(东青龙)× 七宿序(第二)× 星数(四颗)× 分野(郑)× 宿度 × 星占含义——一个宫格背后是一整张星象知识网。
- 「立春」 —— 两个字坐一格。节气序(第一)× 太阳黄经 315° × 春季始 × 月建(寅月节)× 物候(东风解冻)——一个格就是一个时序信标。
一宫一格,不可拆分。 你不能把「甲子」拆成「甲」和「子」当成两条独立信息来读——拆开之后"六十甲子的第 1 位"这个信息就散了。宫格是古人进行信息压缩的原子操作。一个环上有多少个宫格,这个环就携带了多少个语义量子。
半径 = 宫格的展开空间
每个环的信息量不取决于弧上写了多少个字,而取决于每宫背后需要多少视觉空间来展开其意思:
大半径的环 —— 弧长宽裕。适合放那些每宫背后还有附属视觉元素的宫格。二十八宿放在外层,因为每宿要展开的不只是「亢宿」两个字,还有它背后那四颗星的位置、星名(宿一、宿二……)、连线拓扑、入宿度标记。这些元素需要空间来铺展——你是从一个宫格出发,去解压缩它内部的意思。
小半径的环 —— 弧长紧凑。适合放那些意思已经高度压缩、不再需要视觉展开的宫格。四象(青龙/朱雀/玄武/白虎)放在内层,每个宫格只有两个字,后面不需要画七颗星、不需要连线。宫格本身就是信息的最浓缩形态。
圆心 —— 终极压缩:全部宫格收归为「一」。一个字,不可再分。
从外到内,就是一个分层语义压缩的过程:外环保留了解压缩所需的全部细节(原始码流),内环只保留了最浓缩的宫格(压缩摘要),圆心是熵为零的点——信息被压缩到不能再压缩。
但所有环共享同一个角度坐标系:0° 在正北,90° 在正东。 无论你在哪个半径上读,同一个角度指向同一个语义。这就是为什么多个环能"叠"在一起读——它们的角度空间已经对齐了。
现代类比:信源编码
这个概念在现代信息论里有一个精确的对应:
| 古代罗盘 | 现代信源编码 |
|---|---|
| 每一环上的宫格 | 一组语义符号(code words) |
| 大半径展开细节(28 宿之星点连线) | 高比特率编码 —— 保留全部细节 |
| 小半径收起抽象(四象之宫格) | 低比特率编码 —— 只有压缩摘要 |
| 圆心 = 「一」 | 熵为零 —— 信息被压缩到了极限 |
| 角度对齐使多环可对读 | 共享码本使多层编码可互译 |
深度学习里的 Batch Normalization / Layer Normalization 做的事情,和同心圆的圆心本质上是一回事:无论输入数据的原始分布是什么,先拉到同一个参考系中再处理。
- 不同半径的环 = 不同量级、不同范围的数据
- 归一化到圆心 = 减去均值 / 除以标准差
- 对齐后的角度信息 = 在归一化空间中的相对位置
古人通过"圆心归一化"实现了多尺度信息的对齐阅读。现代深度学习的 BatchNorm 本质上也在做同样的事。
进一步:圆环也是"数据容器"的投影
如果把圆环的圆心看作"投影中心",每一个环其实是一个独立的数据空间在这个投影面上的展开:
- 24 节气环是"太阳的时间周期"在极坐标上的投影
- 60 甲子环是"干支的时间周期"在极坐标上的投影
- 28 宿环是"恒星位置"在极坐标上的投影
不同周期、不同量纲的数据,通过投影到同一个圆环系上,变得可以相互比较。"今天太阳在哪个节气区间?同时刻北斗斗柄指向第几宿?"——从两个环上分别读一个角度,就能说清楚。
用现代术语说,这相当于:
多个不同维度的流形,被投影到同一个低维(1D 角度)空间中,通过共享角度坐标实现跨域对齐。
答案就在"周"字里
同样可以表达周期性信息,为什么用圆环而不是直线?
答案不在数学里,在语言里。
周,密也。从用、口。 ——《说文解字》
我个人觉得这个解说也不够深刻。"周"真正的力量,不在字形训诂里,而在它三千年承载的多重含义中。
周 的字形是"口"(围合)加笔画,最早的意象就是画了一个圈,把东西围在里面。由此衍生出所有后世含义:
- 圆周 —— 一个圈,首尾相接的几何
- 周期 —— 走完一圈回到起点的时间
- 一周 —— 一个完整的循环(七天一周,正是时间上的"一圈")
- 周全、周密 —— 完整无缺,没有遗漏
- 周行、周流 —— 循环运行,不滞于一端
- 周济 —— 周流而济,循环互助
古人没有去发明"cycle"这个词,因为**"周"本身就是他们理解循环的方式**。
为什么不是直线?
画一个圆,一笔就能完成。圆是最简单的闭合图形。
一根直线可以无限延长。但问题是:一个无限的东西,你无法定义它什么时候"完整"了。
- 直线走到哪里算"一圈"?没有终点。
- 你必须在直线上额外标记"起点"和"终点",告诉别人"看,这就是一个周期"。
- 但圆不需要——起点就是终点,画下去自然闭合。
我们只需要观察周期,不需要无限。圆刚好给了我们"恰好观察一个完整周期"的框架。
更进一步:无限延长的直线,对于可视化是没用的。它无法表达这个世界。
人的眼睛和大脑设计出来,是为了观察有限、闭合、有边界的东西。一条无限延伸的线——
- 你看不到它的两端
- 你在上面无法定位"现在在哪里"
- 你无法同时把握"整体"
你必须在它上面画一个区间、做一个标记,才能说"看这一段"。而这个操作的本质就是把直线的一段圈起来——你在把直线变成圆(或线段)。
任何能被"看"的信息,都必须先经过「周期化+投影」的处理。
周期给它一个闭环,投影把它映射到我们的感知范围内。古人用同心圆完成这两步,现代人用归一化+embedding 完成同样的操作。工具不同,底层逻辑完全一致。
模运算的几何直觉
用直线表达周期,你需要人为约定模数("每 N 归零");用圆表达周期,圆本来就是模运算的几何化身。
- 圆周 360°,从 359° 再往前走一步,回到 0°——这就是
mod 360。 - 十二地支环,从 "亥" 再走一步回到 "子"——这就是
mod 12。 - 六十甲子环,从 "癸亥" 再走一步回到 "甲子"——这就是
mod 60。
直线需要额外声明"归零规则",圆把这个规则画进了自己的形状里。
周的政治维度:周期 = 统治权
"周"不只是几何和时间。周公定礼、周朝授时——谁掌握周期,谁就有资格说你处在"周期的哪个位置"。
授时是古代天子最核心的权力之一。每年什么时候是冬至、什么时候该播种、什么时候该祭祀——这些不是自然事实,是经过计算、由天子颁布的时间秩序。颁历 = 宣示统治:
- 周天子以"周"为国号:天命周转,周而复始,自居为完整的循环承接者
- 诸侯奉周正朔才算是承认周的统治——不用你的历法,就是不承认你的周期
从这里,"周"的诚信义(周全、周正、周信)自然派生:不违天时、不欺天命,谓之"周"。
这就是为什么诚信概念最终和"圆"挂上了钩。每一次时间叠加——每一天、每一月、每一年的周期闭合——都在重复确认:这个周期是可信的,授时者是不欺天的,你的位置是可预期的。
当你说"圆周"的时候,你用的是周朝的"周"。你认可了周期的闭合性,也就认可了那个定义周期的人。
我们沉睡在文字里
"周"这个字我们每天都在用——一周有七天、周期循环、圆周运动——但很少有人停下来想:为什么一个表示"围合"的字,同时用来表示时间、空间、完整性和诚信?
因为古人看世界的方式是取象比类:太阳东升西落是一周、四季轮替是一周、十二地支走完是一周、人从出生到归于天地也是一周。万事万物只要"走完一圈回到起点",就可以用"周"来描述。
圆就是"周"的视觉化,周期就是"周"在时间上的展开。
这个秘密一直藏在我们的文字里,只是我们沉睡太久了,忘记了自己从何而来。
圆是归一化的几何表达。圆心归一,万环可读。