ARTICLE DETAIL

资讯详情

深耕郑州网站建设与运营推广的一线实战洞察。

从二十八星宿到现代预测:有限观察者如何面对确定性与不确定性

从二十八星宿到现代预测:有限观察者如何面对确定性与不确定性 二十八星宿在很多人印象里是“古代占星术”但如果你把它放到“有限观察者如何预测未来”这个框架里看它其实更像一套用离散网格逼近连续世界的老式预测系统。标题里那句话“未来是确定的但对有限的观察者而言它并不一定能够被完全计算”可以说是给二十八星宿也给所有预测模型写了一句非常准确的墓志铭。星空的规律肉眼可见月相、节气、四季循环都稳定到让人相信“背后有秩序”但真正要把这种秩序变成具体、长期、可验证的预测结果每个时代都会撞上同一个天花板观察者永远有限——信息有限精度有限算力有限模型本身也有限。这篇文章不打算复述每个星宿的传说而是想拆一个更根本的问题为什么古人能确认“天行有常”却始终无法把所有未来都算清楚这个困境在今天其实一点都没有消失。1. 先分清二十八星宿是观测网格不是玄学标签1.1 它是古代天文学家用来压缩宇宙信息的编码表二十八星宿本质上是把月亮在恒星背景中运行一周时沿途经过的恒星区域切成了二十八格。月球绕地球运行一圈大约 27.3 天古人取整数 28意思是月亮差不多每天走一格。这个分法不是哪位巫师拍脑袋定的而是长期观测后形成的网格化坐标系统。有了这个网格观察者才能回答“月亮今晚在哪个区域”“木星走到哪个区间”“某颗恒星和某颗行星的相对位置发生了怎样的变化”这些问题如果不做离散化光是描述连续星空的位置和轨迹古代的记录和传承根本吃不消。我查过不少流传下来的星图资料二十八宿并不是均匀划分的有的星宿跨度大有的跨度小。因为它不是按“每格 30 度”的几何规则切出来的而是根据实际恒星群的形态和位置一块一块标记出来的。这一点很关键它是一套基于观测经验的地图式编码不是先验的数学网格。这种“把连续信息切块”的做法放在信息论里叫量化和抽样。人的记忆有限文字和年代记录有限跨代传递时还要考虑可读性。把一整条天区切出二十八个带编号的格子就能用极低的成本完成跨时空信息传输。1.2 用二十八格预测本质上是用低分辨率模型逼近高维状态很多现代讨论二十八星宿的文章喜欢把每个星宿对应的“吉凶属性”当成核心。但我会建议先换一个角度看这套系统的真正价值是它提供了一种低分辨率预测思路。什么叫低分辨率预测就是我不需要知道月亮在连续坐标上的精确位置我只需要知道它落在哪个区间就能大致判断当前处于一个什么阶段。新月、上弦月、满月、下弦月这些状态对应农历的月相也对应潮汐、季节、农时。对于农业社会来说这种区间级精度已经足够支撑历法、农耕安排和节气节庆。所以二十八星宿的“预测”在最初层面并不是在预言某天会发生一件具体的事而是在做状态分类。它是说明“当前观察系统处于哪个状态区间”的指针不是“未来某时刻会发生什么”的剧本。这一点特别值得现代预测爱好者注意。做预测的第一件事不是去追求一个精确答案而是先确定观察对象的粒度。如果你只能分辨二十八档状态就不要设计一个要求十万档精度的预测目标。很多后续迷信化的解释问题就出在这里拿一个区间分类系统去回答“会不会打仗”“庄稼收成多少石”这类具体问题等于用低分辨率模型硬算高分辨率答案结果自然不可靠。1.3 先记录再分类最后才谈预测古代天象观测的流程其实和现代数据分析非常像先做长期原始记录再把记录按规则分类最后才拿分类结果去推演未来。每个月月亮走到哪个星宿每颗行星在哪段星区内逆行这些都会被记录在案。积累了十几甚至几十年之后才能总结出周期规律。比如“岁星”木星大约十二年走完一圈这就是从反复观测中提取出来的周期。周期一旦被提取出来就变成可以用于推演的模型。所以二十八星宿首先是数据库其次才是预测框架。如果只看它“占验”的部分会把它过度简化成一组符号标签如果只看它的天文历法功能又会忽略掉它作为预测模型的完整链路观测、编码、记录、提取周期、外推未来。这条链路任何一个现代做数据分析的人看了都不会陌生。2. 确定论为什么诱人从月相规律到拉普拉斯妖2.1 可重复观测会产生“秩序幻觉”但幻觉的基础不是错觉为什么古人会相信“未来是确定的”因为确实有很多事情是重复发生的。太阳东升西落月亮盈亏交替冬去春来潮汐起落。在人类可记录的时间尺度内这些周期几乎没有出现过明显的“违约”。这种确定性一旦被确认就会产生强烈的外推冲动如果月亮按 27.3 天绕一圈这件事是确定的那会不会火星的运行也是确定的会不会旱涝也是确定的会不会某些天象出现时人间大事也是确定的从朴素的因果律出发这种外推并不荒谬。真正荒谬的是在没有验证中介机制的情况下直接把天象周期性等同于社会事件周期性。这也是观察者容易犯的典型错误把局部稳定当成全局稳定把短周期规律当成长周期规律把相关关系当成因果链条。2.2 拉普拉斯妖一个把确定性推向极端的思维实验到了近代拉普拉斯提出了一个著名的思想实验假设存在一个智能体它知道宇宙中所有粒子的位置和速度并且拥有无限的计算能力那么它就能根据牛顿力学推出整个宇宙的过去和未来。这个智能体被后人称为“拉普拉斯妖”。拉普拉斯妖是“未来确定”这个命题中最强的版本。它意味着如果世界确实遵守确定的物理法则那么未来并不是开放的它从一开始就被写定了只是人类没有能力读到那个剧本而已。这个想法在物理上具有极强吸引力但它同时把矛头指向了“有限观察者”能否计算未来这个要害问题。拉普拉斯妖知道所有粒子的精确状态并且有无限算力所以它能算出一切。而现实中的观察者不管是中国古代的还是现代的都不具备这样的条件。二十八星宿时代的观察者拥有的观测精度是多少大概是肉眼能够分辨的角分级别更细的位置细节根本看不到。现代天文台能测到非常精细的天体参数但所观测的系统只是宇宙中极微小的一部分。拉普拉斯妖需要的是“全部粒子状态”这本身就是超出现实观察能力的存在。2.3 确定的不等号可计算的这是理解标题的关键我想重点把这个命题拆开未来是确定的不等于未来是可以被完全计算的。这个“不等于”有三个层面的原因信息不完备。我可能知道物理定律是确定的但我不知道系统当前所有变量的精确数值。算力有限。即使原则上存在确定解要求的中间计算量也可能远超现实资源。模型不完备。物理系统本身可能还叠加认知层的信息处理不能保证有限公理体系内可以推导出一切真命题。所以标题那句话应该被理解成确定性是本体论层面的判断可计算性是认识论层面的能力。前者回答“世界是不是有定数”后者回答“有限观察者能不能拿到那个定数”。这两个问题经常被混在一起讨论一混就会得出各种完全相反的判断。3. 有限观察者为什么算不出确定未来精度、算力与模型边界3.1 初始条件的微小误差会被非线性系统不断放大三体问题和气象预报是理解这一点最直接的两个例子。三体问题是说如果有三个天体在引力作用下运动牛顿力学方程是确定的但一般情况下找不到解析解。更麻烦的是它可能进入混沌状态两个极端相似的初始条件在长时间演化后会变得完全不同。这就是著名的“蝴蝶效应”。把这个逻辑放到星象观测里如果某个星宿记录报告“火星位于某个区间”这个区间本身就是有误差的误差可能来自肉眼分辨率、记录工具、坐标系选取。放到现代测量中哪怕误差已经很小只要有误差在确定性的混沌系统中预测窗口就会被压缩。这不只是古代观测者的问题也是现代数值天气预报、气候模拟、轨道计算都要面对的问题。区别只在于现代模型会把预测结果给成一个置信区间并把预测时效标出来五天天气预报比十五天预报要可信得多。3.2 状态空间太大穷举式计算没有现实意义理论上如果我有一个完全确定的模型并且掌握了它的初始状态那么只要能跑完整个系统的演化过程理论上就能得到未来的状态。但这个“能跑完”三个字在现实中非常沉重。宇宙中粒子数量极多它们之间的交互关系更是组合爆炸级别。哪怕是模拟几十万个粒子的行为现代超级计算机也只能在很短的物理时间内给出近似结果。要模拟整个宇宙需要的算力远超现实中任何有限设备。二十八星宿模型的简化程度当然低得多它只考虑了几十颗可观测天体在二十八个星区的相对位置。这种简化让古代观察者可以手工推演比如推算某颗行星会在下一个季节进入哪个星宿。这个成本是可控的所以它是可以实际运行的模型。但这种可控性也意味着它舍弃了大量可能影响结果的变量。简化的模型能跑但跑出来的现实预测精度就会受限于简化程度。3.3 即使给你全部信息有些命题在系统内部也没法判定确定性世界的信息和算力还不是全部问题。哥德尔不完备定理提供了一个更深的警告任何一个足够复杂的公理系统中都存在无法在该系统内部被证明或证伪的命题。换句话说哪怕未来在物理上是确定的也不代表存在一套有限的规则能让观察者把确定未来完整推导出来。停机问题也类似你没办法写一个通用程序判断任何其他程序会不会因死循环而停止。这是计算理论的基本结论它限制的是“有限算法能够验证的东西”。把这一点上升到预测领域它的意思是世界可能确实是一本已经写好的书但谁也不能保证有足够的目录和索引让一个有限观察者在不跳出系统的情况下把整本书读完。二十八星宿作为一种规则集当然也逃不出这个边界。3.4 观察行为本身会改变被观察对象量子力学的不确定性原理告诉人们在某些尺度上测量动作会对被测量系统产生不可忽略的影响。即使不在量子尺度观察者也会通过选择观察窗口、定义分类标准、决定记录哪些变量来改变对系统的认知结构。二十八星宿的二十八格分类就是这样一种“观察窗口”。同一个天空有人看到的是二十八个星宿有人看到的是十二星座有人看到的是八十多个星座。区别不在于天空本身而在于观察者切分世界的方式。不同的切分方式会导出不同的预测模型而模型与真实系统之间永远隔着一层编码和解码的过程。所以“完全计算未来”不仅是算力不足的问题还是“观察者如何定义测量变量”的问题。你选的变量不同未来在你眼里就不同。4. 把二十八星宿思维改造成现代预测框架的四步操作4.1 先定义要预测的对象再定义可观测变量就算我们不把二十八星宿当作预测工具来用它的思维方式也能直接迁移到现代工作里面对一个复杂系统时先不要急着预测结果先定义“我要预测什么”再定义“我能观察到什么”。用二十八星宿的逻辑来表达如果你要预测月球运行周期那么可观测变量就是月球相对恒星背景的位置如果你要预测植物生长周期那么可观测变量可能是温度、日照时数、降水量。对象和变量定义清楚后面所有建模才有意义。很多项目失败的起点不是模型选错而是预测对象模糊。比如“预测市场表现”这种目标单独拿出来根本没法建模它至少要细化为“预测下季度某种产品的销量区间”然后找到对应的观测指标。4.2 把连续世界切成有限状态并积累基线数据古人把星空切成二十八格本质上是做了一个状态空间离散化。这个动作在今天依然是数据科学的核心操作连续值要变成离散等级才能进入分类器轨迹要切分成阶段才能做阶段识别。建议按照四步来建立自己的预测框架确定一个观测时间窗口比如每天一次或者每周一次。定义状态区间也就是把连续指标切成 K 个档位K 根据你的分辨能力定不是越大越好。持续记录至少一个“完整周期”的基线数据。例如农历观测者记录一整轮月相周期现代销售预测也要记录至少一个销售周期否则模型没有参照。把每次观测结果归入对应档位形成状态序列。完成这步之后你手里就有了一套“低分辨率但稳定”的观测数据。有了数据才有资格谈预测。4.3 用误差回溯和参数修订替代一锤子式的“预言”古代星象预测在实际操作里也不是算一次就永远不改星官会不断根据实际天象修订表格、调整坐标。现代气象预报更明显每天滚动更新每次新数据进来都重新计算。一个可用的预测框架必须包含误差回溯环节。我的建议是固定一个周期做对比预测值和实际值之间差多少如果系统性偏大或偏小就调整模型参数如果误差随机波动就保留现有模型并给出置信范围。每一次修订都要记录不能只记账不核账。这里最容易踩的坑是把预测当成一次性的“成事预言”预测完就不管了直到结果出来才发现完全偏离。真正的做法是建立“预测-验证-修订-再预测”的循环模型随着数据量增加逐步更新。4.4 输出状态集合或概率区间而不是唯一剧情二十八星宿系统如果作为分类器它输出的应该是“当前系统处于状态 A接下来可能进入状态 B 或状态 C 的概率大致是这样的区间”而不是“某日必有大灾”这种单点结论。把输出边界定义成区间才是对有限观察者能力的诚实承认。现代预测框架里这个原则对应置信区间、概率分布、情景分析。金融预测会同时给出基准情景、乐观情景和悲观情景气象预报会给出降水概率流行病模型会给出传播范围区间。这些都是“确定的模型”和“不确定的输出”之间的缓冲地带。一个人如果被要求“给出准确预测”最专业的回答可能不是直接给一个日期而是说明在哪个置信水平下未来会落在哪个区间。这样才能把预测变成可被验证、可被使用的信息而不会沦为一句无法证伪的口号。5. 现代人该怎么用这类模型判断标准和真实边界5.1 判断一个预测模型是否可靠的四个检查如果要检验自己手里的预测框架可以按下面四个维度逐项检查。第一数据是否可重复。同样的观测者在同样的时间和条件下是否能得到相同的离散步点换成不同观测者差距有多大。第二输入输出是否清晰。输入是什么变量输出是什么类型是状态标签、概率区间还是具体数值。任何模糊的输入输出定义都会让模型变成“怎么说都有理”的玄学。第三是否具备误差反馈。模型有没有记录预测值和实际值的偏差有没有在下一轮预测中迭代。第四是否承认不确定区间。一个模型如果永远“给出唯一答案”而且答案永远无法被证伪那它就不是预测而是叙事。这四个检查不仅适用于星级分类系统也适用于商业预测、个人时间管理、股市判断、甚至是日常决策中的“我以为下一步会发生什么”。5.2 星宿模型在今天的生态位文化工具而不是计算函数二十八星宿在今天还能发挥什么作用我认为它适合作为以下几类素材或工具文化历史素材用来理解古代人如何建立时间坐标和空间坐标。记忆编码练习把复杂信息拆分到有编号的容器里训练自己的分类和记忆。决策反思触发器提醒自己“当前掌握的信息是有限的不要轻易输出极端确定结论”。创意写作背景作为科幻、奇幻、历史小说的世界设定基础。它不适合用来判断具体决策结果。不是说它背后没有逻辑而是它的分辨率、数据质量和误差修正机制无法满足现代具体任务的高精度要求。拿它来做个人择日的精算、投资方向判断、重大医疗决策都是把低分辨率工具用于高精度场景属于工具误用。5.3 当“确定性信仰”撞上“有限观察能力”正确姿势是共存人类很难同时接受两个事实世界可能是有规律的我无法完全掌握这个规律。通常人的反应是偏向其中一个极端。一部分人认为既然规律存在就可以通过更精细的观测穷尽它另一部分人认为规律根本不存在一切预测都是骗局。更务实的做法是同时接受两者。先承认系统存在结构否则预测没有基础再承认观察者存在边界否则预测会变得自负。二十八星宿的高级用法不是让你相信每一格都对应固定命运而是让你在每一个采样点上保持谦逊我记录的只是一次低分辨率观测它只代表真实状态在某一区间内。6. 常见误区不要把预测失败归因于模型不够细6.1 误区一观测更密、变量更多结果就一定更准增加观测频率和变量数并不必然提高预测精度。数据量增多会引入更多噪声变量增多会带来过拟合模型在历史数据上极其准确在新数据上却迅速失准。二十八星宿若被不断细分从二十八宿改成五十六宿、一百宿短期看可能更贴近恒星天空但长期看观测成本上升、记录出错率上升误差反而可能放大。建模时先问“增加这个变量是不是能减少真实的预测误差”而不是“能不能让模型显得更丰富”。6.2 误区二把物理方程的确定性等同于可实验路径一个方程是确定的和这个方程能有效解出未来状态这两件事中间隔着很多环节。方程可能是非线性、混沌的初值可能有误差模型可能忽略了某些无法观测的变量计算时间可能超出资源上限。判断一个预测系统的能力不能只看基本定律是否确定而要看从输入到输出整条链路是否稳定、可重复、可验证。星象预测之所以不能当作现代科学预测不是因为它相信天体规律存在而是因为它在输入精度、误差迭代、输出验证上的链路太弱了。6.3 误区三把天体周期预测延伸成社会事件预断天体的物理周期可以预测比如日食、月食、行星冲日这些现代天文学能给出很精确的时间。但这套预测能力并不自动延伸到社会事件。也就是说“火星进入某宿”和“某地区发生冲突”之间无论从物理机制还是统计相关性看都没有经过严格验证。二十八星宿里常被赋予吉凶含义这是文化编码的结果不是物理因果。你可以把星象和象征意义作为一种传统文本去研究、去欣赏但不能把社会事件的预测重任交给一个没有验证中介机制的模型。如果一个模型没法解释“通过什么机制让 A 导致 B”那么它给出的相关性就只能保持在相关性层面不能升格为因果结论。6.4 一个朴素的最终建议做加法不如做减法面对太复杂的系统与其不断增加干预变量不如先退回到最基本的几个要素做一个低分辨率的观测框架。就像二十八星宿一样承认自己的观察单元只有二十八格承认输出只是一个区间承认预测需要不断被修正。在实操中这意味着少说“我算准了某件事”多说“我目前掌握了三条信息推断未来三个月有几种可能方向概率大致如何”这意味着建立预测清单后定期复盘把每条预测都记录为“可验证的假设”这意味着把每一次失败都看成对预测系统的重要反馈而不是用一个更玄的解释来圆场。真正有价值的不是拥有一个完美的预测模型而是清楚知道自己的模型在什么条件下可靠在什么条件下不可靠。一个知道自己看不清的观察者才最接近看清的那一面。
返回列表