交易中的机器学习:理论、模型、实践和算法交易 - 页 1173

 
尤里-阿索连科

你是如何看书的?你会把它们放在你的屁股下面吗?

它非常受欢迎。一个问题要么有解决方案,要么没有。如果不这样做,你就无法解决这个问题。如果有,你将无法解决。而NS与此毫无关系。

因此,请阅读上面建议的书。在数量上总是有一个最佳的解决方案,至于它有多满意是第二个问题。

 

按照承诺,我报告了对选择二元分类模型的不同指标的测试结果。该测试包括17个指标:Logloss;BalancedErrorRate;LogLikelihoodOfPrediction;WKappa;Kappa;BrierScore;ZeroOneLoss;Accuracy;BalancedAccuracy;MCC;Precision;Recall;F1;AUC;HingeLoss;HammingLoss;CrossEntropy,默认是Logloss。方法很简单,用相同的设置在相同的样本上运行CatBoost,进行训练、测试和最终检查,数值取自最终检查的文件,它不参与训练。对于每个指标,形成了8个从1到8的不同大小的树,这也平均了从集合中选择好的价值的能力,也被用来确定在调整树的大小的意义。使用了四个训练目标,这些策略因趋势运动的目标不同而有较大差异。各项指标的结果在下表中进行了总结。



结果发现,一些指标之间完全一致,它们被组合成一组--指标组标识符以绿色显示


以下是每个指标的汇总表,其中指标的最大值和最小值被突出显示,整个样本中的峰值被着色。

接下来是每个指标的平均利润汇总表,作为确定目标的所有变体的通用指标的变体--最大平均金额。



正如我之前写的,我在这个数据上平行测试我的公式,以便从获得的数据中选择最佳指标--"%All*1%",结果被合并到参加测试的每个指标的这样一个表中。

这种方法允许根据每个指标的选择因素得分之和进行排名,如下表所示。

有趣的是,在第一个排名中最受欢迎的Precision却排在最末,这表明它并不是多面手,而是它的表现对第一个目标来说非常好。

也可以从每个指标的表格中考虑这个因素选择了哪些选项,并看一下这些指标的总和上的排名。

总结一下,可以将结果汇总到一个汇总表中,并将各地方的分数相加--谁的那个指标最少,谁就可能更好。

我们可以得出结论,Logloss是一个平均数,而不是选择模型的最佳指标,同时不同的TS可能需要不同的方法来选择训练过的模型。因此,例如,对于目标(columns_100)比较平衡的样本,Precision是完美的,但对于不平衡的样本,例如20%(columns_200)和小于目标 "1 "的样本,事情就出错了,在这里,使用HingeLoss是合理的,它已经完美地应对了这个任务。最平衡的,也许是召回指标--它可以用来探测地面,我想。准确度这样的指标被证明是非常不可靠和不平衡的,一方面它能够找到目标最平衡的最佳选项,但另一方面,所有树状选项的平均值它没有很好地剔除,因此它不太适合寻找不平衡的样本或模型调整。

 
亚历山大_K2


这种趋势很容易被我 "跪着 "找到的一个 梦寐以求的扳手轻轻地冲进马桶。


我想知道它想出了什么办法。

 
阿列克谢-维亚兹米 金。

伟大的测试,谢谢

有任何关于traine/test错误的信息吗? 就拿那里的任何一个Accuracy或logloss来说,最受欢迎的是

例如,像这样的东西

2018.11.27 02:26:37.780 Core 2  2018.11.23 23:59:59   RlMonteCarlo TRAIN LOSS
2018.11.27 02:26:37.780 Core 2  2018.11.23 23:59:59   0.19023
2018.11.27 02:26:37.780 Core 2  2018.11.23 23:59:59   RlMonteCarlo TEST LOSS
2018.11.27 02:26:37.780 Core 2  2018.11.23 23:59:59   0.43959

右侧轨道左侧测试。

我对模型的归纳能力很感兴趣,以及处理过度的功绩是什么。我看到你很快就掌握了这个工具。最后,实质性的对话 :))

 
马克西姆-德米特里耶夫斯基

很好的测试,谢谢你。

是否有任何关于traine/test的错误差异的信息? 就拿一个Accuracy或logloss来说,最常见的是

例如,像这样的东西

右边跟踪左边测试。

我对模型的归纳能力很感兴趣,以及处理过度的功绩是什么。我看到你已经迅速掌握了这个工具。最后,实质性的会谈 :))

Catbust使用三个样本--一个是用于训练的测试样本,第二个是测试每个模型的训练情况,并选择最佳模型,这个模型是在训练过程中得到的,并被证明在测试数据上是稳定的,第三个是考试样本,在训练结束后由选定的模型进行标记。由于它实际上可以在训练样本上学得很好,所以将测试样本上的结果与训练样本进行比较是没有意义的,但将测试与考试样本进行比较则有意义。但是,由于我在Excel中手工处理这一切,所以我没有足够的力量来检查测试样本的结果。当然需要这样的数据来评估模型,应该考虑和分析,但这个过程还没有自动化(刚开始写一个脚本来准备处理的设置--离分析还很远),我不能谈论任何数字。

我没有注意到任何对抗过度训练的特殊方法,除了在读数特别好的情况下停止训练的方法......。该算法本身有一些可以关闭的随机性--它还允许不选择最好的预测者来分支树,这应该有助于防止过度学习。

现在,我想把预测器分批送入,看看会发生什么,因为无论如何,该模型有贪婪的树原则,这有时会阻止它获得更好的结果。

 
阿列克谢-维亚兹米 金。

Catbust使用三个样本--一个是测试,在此基础上进行学习;第二个是测试每个模型的学习情况,并选择最佳模型,该模型是在学习过程中获得的,并证明在测试数据上是稳定的;第三个是检查样本,其标志是所选模型已被训练。由于它实际上可以在训练样本上学得很好,所以将测试样本上的结果与训练样本进行比较是没有意义的,但将测试与考试样本进行比较则有意义。但是,由于我在Excel中手工处理这一切,所以我没有足够的力量来检查测试样本的结果。当然需要这样的数据来评估模型,应该考虑和分析,但这个过程还没有自动化(刚开始写一个脚本来准备处理的设置--离分析还很远),我不能谈论任何数字。

我没有注意到任何对抗过度训练的特殊方法,除了在读数特别好的情况下停止训练的方法......。该算法本身有一些可以关闭的随机性--它还允许不选择最好的预测者来分支树,这应该有助于防止过度学习。

现在我想输入部分预测因子,看看会发生什么,因为该模型仍然有一个贪婪的建树原则,这有时会阻止它获得更好的结果。

这正是令人讨厌的地方,永恒的整合比TC的开发要花费更多时间。我也想研究python,但还没有时间。

 
马克西姆-德米特里耶夫斯基

这就是令人恼火的地方,永恒的整合比TC的开发还要花时间。我也想做一些python,但我还没有时间。

我想把它用在MT5上,因为我没有用python工作,我喜欢ketbust有控制台版本。

 
阿列克谢-维亚兹米 金。

我不是用python,我喜欢ketbust有控制台版本,我想让这个版本与MT5兼容。

你可以使用控制台的,但使用起来很不舒服。

 
马克西姆-德米特里耶夫斯基

几乎每个人都有控制台的,他们的工作很笨拙。

我不知道,还有谁有这些东西?

为什么不方便呢--MT5中会有一个脚本,在那里你可以实现参数的设置和枚举--比用纯Python或R代码好得多。

Catbust能够与格状农场合作,这也吸引了我的注意。

 
阿列克谢-维亚兹米 金。

我不知道,到底还有谁有?

为什么不方便呢--MT5上会有一个脚本,在那里你可以实现参数的设置和枚举--无论如何都比用纯Python或R代码好。

Catbust知道如何与grpf农场合作,这也引起了我的注意。

所有的图书馆都有Mbo,这个只是Pros上的libs。

对低级语言中的MO不适应,也很费时间,尤其是研究性的MO
原因: