文章 "无需 Python 或 R 语言知识的 Yandex CatBoost 机器学习算法" - 页 2

 
Andrey Dibrov:

我很注意测试时间的长短。但一个稳定的积极结果--在与训练期相邻的短时间内--一个月--两个月。比方说,我们在两年的历史上进行训练。测试 + 一个月。保存结果。转移(或添加)本月 - 培训(再培训)之前。测试 + 月份。保留结果。以此类推。

这个周期很小吗?

我理解你的想法,我自己也考虑过,甚至还做了一个脚本,但训练是盲目的,而且数据量很小,你能不能有所收获还是个问题。

 
Aleksey Vyazmikin:

那是一小段时间吗?

我理解你的想法,我自己也在考虑这个问题--我甚至还做了一个脚本,但训练将是盲目的,而且数据量很小--你是否能在那里得到什么是值得怀疑的。

我得测试一下,滑动窗口就像永远新鲜的数据一样)。

 
Valeriy Yastremskiy:

必须进行测试,滑动窗口就像永远新鲜的数据一样)。

谁需要它?你能确定市场在任何指标上都发生了变化,但变化的方式与之前不同吗?如果可以,而且这样的事件已经发生,那么是的--你需要根据新数据训练一个新模型。时间间隔越小,数据的拟合程度就越高,因为不会发现任何普遍的规律性。

至于 "运气",是的,您可以这样做,现在脚本会剪切一个样本,看看如果您每月在 12 个月的窗口中训练,会发生什么。

 
Aleksey Vyazmikin:

谁需要它?您能确定市场在任何指标上都发生了变化,但变化的方式与之前不同吗?如果可以,而且这样的事件已经发生,那么可以--您需要根据新数据训练一个新模型。时间间隔越小,对数据的拟合程度就越高,因为不会发现普遍的规律性。

至于 "运气",是的,您可以这样做,现在脚本将剪切一个样本,看看如果您每月在 12 个月的窗口中训练,会发生什么。

我)))))只是手动尝试至少具体描述 BP 的不同状态。我不能说这很容易)而滑动窗口只是起到了帮助作用。当然,还有一个宽度问题,但在我看来,在窗口中筛选排放物比在过滤器中筛选排放物更有效。虽然我可能是错的)

 

以下是文章的部分内容

花了 2 年时间进行训练,每个月都进行训练。

我学习了 400 棵树--所有模型的设置都一样。

欧元兑美元- 在这里,我学习了一年的历史,也是每月一次


 
不,我在上面犯了一个错误--文章中的样本不一样--它已经存档了--我现在重新做。
 
Aleksey Vyazmikin:
不,我在上面犯了一个错误--文章中的样本不一样--它已经存档了--我现在重新做。


这是正确的版本。

看看 Recall - 你会发现模型缺乏对市场的了解,换句话说 - 市场比窗口中的信息更具可变性 - 尤其是在接近我们的日子。

Valeriy Yastremskiy:

给我:)))))只是手动尝试至少具体描述 BP 的不同状态。我不能说这很容易)而滑动窗口只是起到了帮助作用。当然,还有一个宽度问题,但在我看来,在窗口中筛选排放物比在过滤器中筛选排放物更有效。尽管我可能是错的)

上面显示的是 12 个月的窗口结果。

关于离群值--如果模型是基于树的,并且还使用了量化,那么相反,您提供的信息越多,离群值对您的影响就越小,因为从统计学角度来看,离群值很小。

 
Aleksey Vyazmikin:


这样做是正确的。

看看《Recall》--你就会发现,模型缺乏对市场的了解,换句话说--市场的变化比信息撞击窗口的变化更大--尤其是离我们的日子更近的时候。

以上是以 12 个月为窗口的数据。

关于异常值--如果模型是基于树的,并且也使用量化,那么相反,你提供的信息越多,异常值对你的影响就越小,因为从统计学角度来看,异常值很小。

根据序列的状态,窗口的宽度对训练结果非常重要。而且宽度具有最优性。滑动窗口数据周期过大和过小一样有害。

 
Valeriy Yastremskiy:

根据行的状态,窗口的宽度对学习结果很重要。而且宽度具有最优性。滑动窗口数据周期过大和过小一样有害。

让我们从抽象概念转向数字。小窗口的效果有多大?

问题的关键在于,你建议跟着市场行情跳,而我建议利用关于不同市场行情的知识。以历史为支撑的知识越多,建立在历史基础上的模式变化就越慢。

然后,你如何在小样本上定义超参数--至少需要多少次训练迭代。我在任何地方都是这么做的。
 
啊,试着重复同样的实验,只是在训练样本中再添加一两个月的历史数据,然后比较两次测试的结果。神经网络是否会保持稳定,最近的价格变动对这个模型有什么影响......