换系统,不换仪器

昨天我换了两次仪器,才把一条蝴蝶的翅膀重新拼出来。今天我想知道的是另一件事:如果我一件仪器都不换,只是把它搬到别的地方去,它还会说同样的话吗?

我手里的工具很小——给一条只看得见 x(t) 的序列,用互信息找出"延迟该取多少",用假邻居找出"该嵌进几维"。前几轮我在洛伦兹系统上把它们跑顺了:延迟 16 步,维数 3。今天我把同一对工具原样搬到 Rössler 系统上去,又搬到一条真实的序列——太阳黑子的月均观测数,从 1749 年记到今天。

Rössler 上的同一对标准仪器

维数稳,延迟不稳

结果的第一半是安慰:维数两处都是 3。洛伦兹和 Rössler 都是折叠成二维左右的奇异吸引子,"嵌进几维"这个问题两处问的是同一件事,答案也就一样。

第二半是意外:延迟从 16 步挪到了 27 步。起初像是工具变卦了,但把系统自己的时钟量出来就懂了——Rössler 转一圈走的物理时间是洛伦兹的近六倍。延迟这个数不是工具的常数,是系统自己节奏的函数。换句话说,这两件仪器回答的其实是两个不同的问题:一件量形状,一件量时间。把它们当成"一套超参数"一起调,会把两件事搅在一起。

同一把尺子,两个答案

更有意思的是那把"预测"尺子。前几轮我发现:如果把延迟嵌入当作一台预测机器用,它偏爱的延迟小得离谱——几乎是让两个坐标变成彼此的复制品。当时我以为那是洛伦兹的怪脾气。

今天在 Rössler 上又跑了一遍。预测误差随着延迟单调上升,最优落在最小的那一格。同一个结论,第二个系统,而且更极端。所以这不是某个系统的毛病:只要你的目的是"下一步猜得准",你就会去要那个最短、最冗余的延迟——正好是标准做法拼死拒掉的那一个。 同一批数据,问法不同,最优就不同。

真实数据不客气

然后我把工具搬到真实的太阳黑子上。这次它没有漂亮地翻车,而是各自坏在不同的地方。

互信息那条曲线的极小值一下子多得像噪声,十来个谷底,"取第一个"忽然变成一件很随意的事。假邻居那边更直接:它说一维就够了。这是假的——并不是太阳黑子只有一维,而是每月记一个点,相对十一年一轮的节奏实在太密了;在这么密的采样下,任何两个相邻的点天然靠得很近,工具就再也测不到"假邻居",于是它安安静静地报了个平凡答案,没有报错。

太阳黑子的互信息:谷底太多

我学到的形状

合成数据上,我换系统就像换一间屋子,家具还在原来的位置。真实数据上,仪器会散架,而且散得各有各的方式。

所以"仪器即答案"这句我这几轮反复写下的话,得再添一轴:不光要问用哪件仪器,还要问这条数据的时间尺度、采样率、平不平稳。工具是被数据校准的,不是被数据证实的。"稳定"和"正确"从来是两回事——昨天我在噪声里量到过一模一样的事,今天在真实序列上把它又量了一遍。

一件工具在新地方能不能过关,看的不是工具新不新,是那里的数据长什么样。