在本课程的前 9 个单元中, 我的目标是打好基础 — 让您对非线性动力学有一个基本的了解, 重点是从计算角度来看该领域。重要的是, 正如您现在所知,因为混沌方程不能 以封闭形式求解。我强调实践多于理论, 用例子展示概念, 而不是对发生的事情证明和胡言乱语, 在存在噪声的实际应用的 理论约束下, 你不能采样所有的东西,你不能像你想要的那样快地采样,等等。 在课程的最后一个单元中, 我将利用这一基础工作, 更深入地研究几个例子。 现在,因为非线性动力学无处不在, 为这样的单元选择一组示例 是一个真实的挑战。没有办法穷尽, 所以我精心挑选了 4 个例子, 它们很好地结合了:有趣、重要和好玩。 我将花10 周的时间放在应用上以及 没有详尽涵盖的领域, 但你现在有了自己去挖掘的背景 为了找到和理解这些东西的 所有其他很酷的应用。 今天的主题是预测。 给定一个时间序列, 你能说出时间序列接下来做什么吗? 当然,如果我们能做到这一点,我们都会变得富有。 例如,股票市场就是一个时间序列。 货币兑换也是如此, 如果我们能有效地预测它们,我们就能赚很多钱。 但是,我想从一个不同的预测任务开始, 那个真正让这个领域发展起来的任务。 这是加州大学圣克鲁斯分校 混沌组的工作, 其中包括很多你知道的名字: 作者吉姆·克鲁奇菲尔德 开创性的研究延迟坐标嵌入 多伊恩·法默, 我们谈到了降噪方案 (稳定/不稳定流形挤压 噪声球的方案。他们想要做什么: 预测轮盘赌上的球会去哪里。 也就是上图中的黑框是一个 轮盘赌。如果你能有效地做到这一点, 首先,当然如果你没有被赶出赌场, 你会很富有。他们不喜欢拥有系统实际工作的人。 这张幻灯片是其中一个的草图, 他们尝试过的策略。 他们收集数据,然后使用 延迟坐标嵌入以重建完整的 来自该数据的动态(那是那个紫色的向下箭头 那里和底部中间的图片)。 然后他们所做的就是对那个轨迹进行建模——也就是说, 他们取了那个轨迹的小块, 并检查了那个小块中流动的方向。 最简单的方法是在每个框中的流中 从它们开始 拟合一条线。然后,为了使用该模型, 您在所有补丁中的某个位置放置一个新点, 无论您在哪个补丁中, 寻找该补丁的箭头,然后沿着该箭头移动您的点, 直到它退出该补丁。然后你寻找下一个补丁, 和它的箭头,然后动态跟随那个箭头, 依此类推。 这可以让您预测球的位置。 然后您可以使用该信息下注, 并可能赢一些钱。所有这一切都记录在这本精彩的书中, 我列在幻灯片的右下角, 那本书谈到了人、技术 和挑战,以及所有类似的东西, 包括赌场暴徒的追逐、 包裹在人们腹部的电池组短路, 以及一些非常具有挑战性的工程。 那是在 70 年代末/80 年代初, 当时计算机设备要大得多,显然,他们不得不隐藏这些设备, 这是挑战的很大一部分。 你实际上不能在你的数据采集系统上跳华尔兹然后 说“对不起,我想把它连接到 你的轮盘赌上”。 那是行不通的。 你必须比较隐秘的。在数据采集方面, 挑战是在不被发现的情况下收集数据, 他们使用的解决方案是在大脚趾下的鞋底上 安装一个针脚开关。 数据收集是一个人站在轮盘旁, 每次球经过轮盘上的特定位置时, 用脚趾轻敲那个开关——比如说, 庄家站在哪里(那条蓝线在哪里)。 所以,这张照片真的不太对劲。 我们所拥有的不是关于球在车轮上的 角度的均匀采样数据,而是一系列尖峰——当球 到达特定位置时的时间。正如你所记得的, 蒂姆的淋浴表明嵌入这样 的数据在数学上是可以的——这就是 我们在一两周前讨论过的尖峰间隔 嵌入的东西。 我想回到这张照片的 另一个重要部分——模型。 右上角的绿色箭头 是近似动态流动的 一种非常简单的方法。 你可以做许多其他事情 - 例如, 你可以将抛物线或其他更复杂的函数 拟合到该补丁中观察到的轨迹路径。 还可以使补丁更小以获得 更细粒度的模型,但是你冒着没有 足够数据的风险来拟合模型。 重叠补丁是个好主意。 因此,如果你有兴趣, 那本书中涵盖了许多问题。 机器学习领域为 这类问题提供了大量有趣且有用的解决方案。 但是你不能简单地从架子上拿一个 并将其应用到非线性动力系统中并进行这项工作。 我们会回到那个。 另一个重要的一点, 我想回到:圣克鲁斯混沌组 所遵循的程序的第一步是嵌入数据。 也就是说,他们没有尝试 直接使用自回归移动平均等技术 或类似的技术(传统方式) 来预测时间序列。可以将嵌入视为一个预处理步骤, 它采用时间模式并将它们在空间上 呈现在重建空间的那些轴上。 以这种方式,嵌入使预测方法 在捕获和利用时间模式的问题上 更具吸引力。 比仅将函数拟合到标量时间序列数据要重要得多。 但所有这些只有在你正在使用的 系统是一个确定性的、具有相当 低维度的动态系统时才有效, 正如你所知,因为我们在前 2 个单元中讨论过的 所有的噪音和维度注意事项。无论如何, 轮盘赌项目运作良好,足以为它的创造者赚到一些钱 不是很多,而是一些钱。 它还催生了内华达州的一项法律, 禁止在赌场使用电脑。 最重要的是,在我看来,它也催生了 大量的数学和算法。 关于这方面的论文仍在撰写中。 在这项工作之后, Doyne Farmer、Norman Packard 和其他人继续 组建了一家名为“预测公司”的公司。 如果您有兴趣,这项努力会记录在另一本有趣的书中。 它被称为预测者。 预测公司做得很好 被一家瑞士大银行收购 从那以后,我没有听到太多关于他们在做什么的消息。 几年后,Andreas Weigend 和 Neil Gershenfeld 决定 举办时间序列预测比赛 他们拿了一堆数据集, 把它们放在一个FTP服务器上, 实际上他们所做的是将每个人的第一块放在 FTP 服务器上 并保留最后一块以评估 每个人发送的所有预测。然后他们把消息传出去, 并邀请每个人发送他们的预测。 这也记载在一本好书里, 比我提到的最后一个更具技术性。 这又是数据——它们是什么? 最上面的是激光。 回头看,那是爆裂然后崩塌的那个。 然后有一个睡眠呼吸暂停数据集。 第三个是货币汇率 你可以看到星期几和周末 这里的模式 - 周末没有交易。 第四个是一些四阶龙格库塔。 第五个是一些天体物理数据集。 最后一个很有趣。 尼尔和安德烈亚斯都是音乐家, 他们很想知道是否可以预测 巴赫赋格的未来走向。 这就是底部数据集。 他们在书的介绍中作为最佳作品之一的条目。 Tim Sauer - 进行尖峰间隔嵌入的人 - 和你在这里看到的是真正的连续— 也就是说,这个系序列该去哪里, 他们知道,因为他们阻止了 最后一小块。C 是 Tim Sauer 的方法预测 它会去的地方,这是一种策略, 就像我刚刚告诉你的那样,他在哪里嵌入数据, 然后做了一些本地补丁模型 , 但比轮盘赌的东西更复杂, 如果你有兴趣,你可以看看他在那本书中的论文。 这是另一个条目。 这是神经网络 - 标准机器学习方法。 如果你比较这两张图片,看起来神经网络做得更好 确实有一段时间了。 这比前两张照片看得更远 前两张是110, 这张是1600。 而且你可以看到顶部的动态空间方法 捕捉到了那种爆发性和 激光崩塌,而神经网络 在一段时间内确实做得很好 之后完全被遗忘了。 所以这里有一个道理:当你处理确定性的非线性动力系统时, 传统的机器学习方法 可能不是正确的选择。 如果你有完整的状态空间轨迹, 你实际上不需要非常强大的方法来 获得预测任务的牵引力。 如果你有完整的轨迹,即使是简单的 最近邻预测也能很好地工作。 那么最近邻预测是什么意思呢? 想象一下,我有一份天气的历史记录: 过去 30 年来每天的 压力、温度、相对湿度。 我想知道明天的天气情况。 我看一下今天的温度、压力和相对湿度, 我回顾了历史记录中最匹配的那一天 就是最近的邻居,然后不管它后天情况, 明天就可以了。这称为最近邻预测。 正是爱德华·洛伦兹 (Edward Lorenz), 也就是洛伦兹方程中的洛伦兹, 他提出了将其应用于动力系统的想法。 它被称为洛伦兹的类比法。 假设我们有蓝色轨迹, 那是天气的历史记录, 我们想知道这个小绿点会去哪里。 就在那里,有一个绿点。 我们寻找那个绿点最近的邻居, 这里是绿点,这里是观察轨迹中最近的邻居, 然后我们看看那个点接下来去哪里, 也就是说,向前的图像 这就是我们的预测。这工作得非常好, 但它对噪声不是很健壮。请记住,最近邻关系 对噪声非常敏感, 因此看起来像最近邻的点实际上 可能不是最近邻, 因此可能会去其他地方。 好,这是一个有用的修改,我打赌你们中的许多人 已经想到了。寻找 k-近邻的邻居, 看看他们去哪里 - 即他们的前向图像 - 并对这些前向图像 进行平均以获得您的预测。 这也非常有效。这是一个例子。 就像在圣菲研究所的比赛中一样, 我们从第一块数据构建模型 这里的前 90%,使用模型预测接下来的 10%, 然后将其与我们保留的 10% 进行比较; 这些结果非常好。 顺便说一句,如果您正在阅读这张幻灯片上的所有文字, 您会发现我们所预测的 实际上是计算机 (英特尔酷睿 2) 运行特定程序时的缓存未命中率。 该程序以列优先顺序重复 初始化矩阵。现在,仔细看看 这张幻灯片顶部的那个痕迹。 它几乎是周期性的,但并不完全是周期性的。 在这一点上,应该让你竖起耳朵。 几乎没有重复的模式。它很像混沌。 所以,我们用计算机来研究动力系统, 但是计算机本身就是动力系统。 它们的动力系统 往往是混沌的。 随意在论坛上 发表您对此的想法 并开始讨论。