提问人:Akshay Makadiya 提问时间:11/16/2023 更新时间:11/16/2023 访问量:22
根据 100k 值的现有数据预测下一个值
Predict the next value based on the existing data of 100k values
问:
我有一个数据集包含先前结果的 100000 个值。基于此,我想预测下一个值。
数据集如下所示。
0 1 1 1 0 0 1 0 1 0 0 0 0 1 . .. ...
根据这些结果,我想预测下一个结果。
我正在尝试不同的方法,如梯度提升、支持向量机 (SVM) 和基本神经网络,但无法实现。
答:
0赞
Lourenço Monteiro Rodrigues
11/16/2023
#1
除了要使用的模型类型外,还应该更好地定义预测的确切内容。通常,对于这些类型的序列,您将定义一个观察窗口(例如,10 个值)并预测下一个观察窗口。这为您提供了一个训练数据集,该数据集由所有连续的 10 个值集组成,下一个值作为预测目标。
选择适当长度的观察窗口非常重要,因为太短的窗口将没有足够的信息供模型学习模式,而太大的窗口将减少可以使用的训练样本量,并且可能太大,模型无法找到代表性模式,而不是虚假模式。
对于这种选择,您有两种选择:要么您知道这些值代表什么,并且对预测下一个值需要多少数据有一些明智的直觉;或者你只需要尝试不同的长度,看看什么效果最好。
还有第三种选择,那就是意识到实际上没有模式。例如,如果 0 和 1 代表抛硬币,您最多可以做的就是使用过去的数据来检查硬币是否公平,但最终预测仍然是来自二项分布的随机样本(p(x) 由过去观察的统计平衡提供信息,然而, 在公平硬币的情况下,有 50-50 的机会)。
评论