-
Notifications
You must be signed in to change notification settings - Fork 37
Expand file tree
/
Copy pathquiz.json
More file actions
67 lines (67 loc) · 2.96 KB
/
Copy pathquiz.json
File metadata and controls
67 lines (67 loc) · 2.96 KB
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
[
{
"id": "timeseries-pre-1",
"stage": "pre",
"question": "为什么随机的训练/测试集划分对时间序列数据无效?",
"options": [
"随机划分使数据集太小",
"随机划分会把未来信息泄漏进训练集,让模型作弊",
"时间序列数据根本无法被划分",
"随机划分只对分类问题有效"
],
"correct": 1,
"explanation": "在随机划分中,未来的数据点可能进入训练集,而过去的点却在测试集中。于是模型用未来信息去预测过去,给出虚假乐观的结果。"
},
{
"id": "timeseries-pre-2",
"stage": "pre",
"question": "时间序列是平稳的意味着什么?",
"options": [
"数值随时间从不改变",
"它的统计性质(均值、方差、自相关)不随时间改变",
"它没有季节性模式",
"它总是向上趋势"
],
"correct": 1,
"explanation": "平稳序列随时间具有恒定的均值、方差和自相关结构。大多数预测方法都假设平稳性。非平稳序列需要先做差分或去趋势。"
},
{
"id": "timeseries-post-1",
"stage": "post",
"question": "对时间序列做差分的目的是什么?",
"options": [
"增加数据点的数量",
"通过对相邻值之间的变化建模来去除趋势并使序列平稳",
"把回归转换为分类",
"把数值归一化到 0 和 1 之间"
],
"correct": 1,
"explanation": "差分用相对于前一个值的变化替换每个值:diff[t] = value[t] - value[t-1]。这去除了趋势,使序列更接近平稳。"
},
{
"id": "timeseries-post-2",
"stage": "post",
"question": "滞后特征把时间序列转换为监督学习问题。用于预测 y[t] 的 lag-3(滞后 3)特征是什么?",
"options": [
"接下来 3 个值的平均:(y[t+1] + y[t+2] + y[t+3]) / 3",
"3 个时间步之前的值:y[t-3]",
"序列的三阶导数",
"当前值与往后 3 步之间的差"
],
"correct": 1,
"explanation": "lag-3 特征是 y[t-3]:过去 3 个时间步的值。把过去的值作为输入特征,可以让标准 ML 模型(回归、树)在不使用专门算法的情况下做时间序列预测。"
},
{
"id": "timeseries-post-3",
"stage": "post",
"question": "前向滚动验证把时间数据分成扩展窗口或滑动窗口。对于时间序列,为什么它比 K 折交叉验证更好?",
"options": [
"前向滚动计算更快",
"前向滚动尊重时间顺序,只在过去数据上训练、在未来数据上测试,从而防止前瞻偏差",
"K 折交叉验证不能用于数值数据",
"前向滚动使用更多数据进行训练"
],
"correct": 1,
"explanation": "前向滚动验证总是在过去数据上训练、在未来数据上测试,模拟真实世界的部署。K 折交叉验证会打乱数据,可能用未来训练去预测过去(时间泄漏)。"
}
]