P3-5.3 即使有原始时间序列,为什么也不能立刻称它为学习输入¶
Section ID:
P3-5.3Version:v2026.07.20
看到原始时间序列时,很多读者会立刻这样想:数值也很多,顺序也在,那直接把它送进学习输入不就行了吗? 但这里应该先停一下。因为仅仅“有一条原始时间序列”这件事,并不能立刻说明 可以直接用于学习的输入已经准备好了。
原始时间序列虽然信息很多,但 什么算一条样本、多长的一段应被看成一个输入、我们究竟想预测什么,这些都可能还没有定下来。学习输入不是原始数据的另一个名字,而是一个按照问题边界整理出来的输入结构。所以,这一节最先要抓住的区分是:有原始时间序列 和 学习输入已经准备好,不是同一句话。
先最短地分开来看,就是下面这样。
| 现在手里已有的东西 | 仍然缺少的东西 |
|---|---|
| 按时点连续排开的原始时间序列 | 样本边界 |
| 传感器值和控制值的时间顺序 | 输入长度和区间标准 |
| 丰富的原始信息 | 目标标签与比较问题 |
也就是说,有原始时间序列 并不等于 学习输入已经准备好。
为什么“原样放进去”这个想法显得很快¶
觉得原始时间序列可以直接放进去,往往有三个原因。
- 行数和列数很多时,它看起来已经像一个很丰富的数据集。
- 一听到深度学习会自己学习表示,就容易觉得输入设计可以跳过。
- 时间序列结构越复杂,越容易让人觉得模型会比人工汇总更会自己学出来。
但这三点,其实都是把 输入结构的定义 和 表示学习 混在一起读时产生的错觉。
| 很快会冒出来的想法 | Part 3 里更应该先问的问题 |
|---|---|
| 时间序列越长,越适合直接送进去 | 一条样本到底是一整次动作,还是一个近期区间? |
| 深度学习会自己学出特征 | 输入应该从哪里切出来? |
| 原始日志很多,所以马上可以开始学习 | 结果列到底要定义成什么? |
要把原始时间序列变成学习输入,还需要什么¶
要把原始时间序列真正变成一个输入结构,至少要先有下面这些决定。
| 先要定什么 | 为什么需要 |
|---|---|
| 样本边界 | 必须先知道一个输入从哪里开始、到哪里结束 |
| 区间切分方式 | 必须先有像前段/中段/后段这样的比较标准 |
| 长度对齐方式 | 如果输入长度各不相同,就很难直接比较 |
| 目标标签候选 | 必须先知道想预测什么 |
例如,同一条原始时间序列,就可以被改造成完全不同的输入结构。
| 同一份原始日志可以形成的输入结构 | 它直接回答的问题 |
|---|---|
| 对一次完整动作做出的汇总向量 | 是否把一次动作作为一条表格式输入来比较? |
| 一次完整动作的区段序列 | 是否保留区段顺序来读取一次动作? |
| 把最近 20 次重新汇总后的聚合输入 | 是否把近期状态作为一个组合单元来比较? |
也就是说,原始时间序列不会天然指向某一种模型。问题怎么设,它就可能被重新做成完全不同的输入结构。即使面对同一份记录,动作汇总向量、区段序列、近期聚合输入 里哪一种更该先出现,也是由问题决定的。
为什么汇总表和中间表示仍然重要¶
这里常见的误解是:反正后面会看时间序列模型,那汇总表或区段表示就没那么重要。 但汇总表和中间表示并不只是临时过渡物,它们至少因为下面三点,仍然很重要。
| Part 3 里先做出的结构 | 为什么这个结构要先出现 |
|---|---|
| 汇总表 | 能先建立基本比较单位和基准线比较 |
| 区段表示 | 能让人先读出顺序和结构 |
| 聚合表 | 能从运行角度解释近期状态与平时状态 |
所以,有原始时间序列,并不会让汇总表变得不需要。因为有些问题就是先在汇总表里读得更直接,而有些问题则可能在后面再进一步转向更长的输入结构。
用一个场景重新看¶
假设一次动作中有 300 个时点记录。
- 在 Part 3 里,首先要判断这 300 个点是不是构成
一次完整动作。 - 再把它分成前段、中段、后段,做成汇总表。
- 如果需要,可以再用
UP, FLAT, DOWN这样的中间表示,把结构进一步保留下来。 - 只有到这一步之后,才能决定:这次动作应被看成一条输入、一个区段序列,还是一个近期区间聚合。
也就是说,正确顺序不是 有原始时间序列 -> 它立刻就是学习输入,而是 有原始时间序列 -> 先决定要把它变成什么输入结构。
用一个小图来看¶
这一节最核心的顺序,是事情不会停在 已有原始时间序列 这里。只有先定好样本边界、区间/长度规则和目标标签,最后才谈得上选择 输入结构。
flowchart TD
R[已有原始时间序列]
S[先定样本边界]
G[再定区间与长度规则]
L[再定目标标签]
I[最后选输入结构]
R --> S --> G --> L --> I 这一节要抓住的重点,不是模型种类,而是在把原始时间序列直接叫做输入之前,应该先把样本边界、区间标准和目标结构定下来。所以,说原始时间序列还不是学习输入,与其说是 数据还不够,不如说更接近 输入结构的边界和目的还没有被明确说明。
来源与参考资料¶
- Google for Developers,
Machine Learning Glossary中的labeled example。因为 example 是一个把特征和标签一起定义出来的结构,所以它支持这一点:在把原始时间序列称为输入之前,应该先固定单个样本的边界和结果列。 https://developers.google.com/machine-learning/glossary / 确认日期: 2026-07-20 - Google for Developers,
Machine Learning Glossary中的label leakage。它说明当特征变成标签代理时会出现设计缺陷,因此强化了这一点:如果不先固定输入结构和目标结构,就可能把原始时间序列的一部分错误地直接当作输入送进去。 https://developers.google.com/machine-learning/glossary / 确认日期: 2026-07-20 - W3C,
PROV-Overview. provenance framework 说明对象识别、派生关系和可复现性应得到支持,因此它强化了一个上位框架:输入长度和区间规则本身,也应作为一种可复现的结构设计被留下来。 https://www.w3.org/TR/prov-overview/ / 确认日期: 2026-07-20