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

 
mytarmailS #:
我用 xgboost 没有成功...
或者说,我成功了,但训练并不成功,你需要和梯度交朋友,你需要让拟合函数梯度化,而遗传学要容易得多

是的,这就是棘手的地方。你必须计算梯度和二阶导数矩阵,也就是黑森(Hessian)。Hessian必须是正定的。

以利润为例,Hessian 是退化的(等于零)。因此,有必要以某种方式对损失函数进行微调,使其在必要性和需要性之间达成合理的折衷。

 
Andrey Dik #:

1. 我的姓氏没有被废除
问题不在于全局是否会改变(它一定会改变),而在于它是否能找到全局极值。如果你不在乎,你可以用随机数初始化网络权重,这样就可以了,因为全局与否又有什么区别呢?因为全局与否又有什么区别呢?)

1.关于姓氏,我会考虑的。你是我所知道的唯一一个有这样姓氏的人。

2. 我想反对的是,我们不应该把这个想法带入荒谬的境地,但实际上情况是一样的:我们不需要任何最佳状态--我们需要高原,范围越广越好,利润越高越好。极值总是一种不稳定的状态,但我们需要一种稳定的状态,而且是在未来。因此,事实证明,寻找最佳状态是一种有害的活动。

在这里,我想说的是,未来利润的稳定性取决于预测因子的特性,而与模型关系不大,与优化算法关系更小。也就是说,这是一种完全不同的方法。

 
СанСаныч Фоменко #:

我在这里推崇的理念是,未来利润的可持续性取决于预测因素的属性,而很少取决于模型,更不用说优化算法了。这是一种完全不同的方法。

能把您的样本发给我吗?我们对模型学习能力差的问题有着相同的看法,我想比较一下你的选择方法比我的好多少,以及它是否完全适合你的样本。

 
建议用什么来代替 logloss?
 
Aleksey Nikolayev #:

是的,这就是棘手的部分。你需要计算梯度和二次导数矩阵--赫斯。Hessian 也必须是正定的。

例如,对于利润来说,Hessian 是退化的(等于零)。因此,有必要以某种方式对损失函数进行微调,在必要性和需要性之间达成合理的折中。

据我所知,这里 完全没有考虑 Hessian。

#  Custom objective function (squared error)
myobjective <- function(preds, dtrain) {
  labels <- getinfo(dtrain, "label")
  grad <- (preds-labels)    
  hess <- rep(1, length(labels))                
  return(list(grad = grad, hess = hess))
}

#  Custom Metric
evalerror <- function(preds, dtrain) {
  labels <- getinfo(dtrain, "label")
  err <- (preds-labels)^2        
  return(list(metric = "MyError", value = mean(err)))   
}

只是为了减小梯度。

grad <- (preds-labels)   


这是 不同的。

logregobj <- function(preds, dtrain) {
  labels <- getinfo(dtrain, "label")
  preds <- 1 / (1 + exp(-preds))
  grad <- preds - labels
  hess <- preds * (1 - preds)
  return(list(grad = grad, hess = hess))
}


我记得我在这方面遇到了很多麻烦,所以就放弃了。

不过,如果能锻炼我的体质,那一定很酷)。
 
СанСаныч Фоменко #:

但在现实中,情况就是这样:我们不 需要什么最佳状态,我们需要的是高原 状态,范围越广越好利润 越高越好。而极值总是一种不稳定的状态

评估 "有多少高原/没有高原 "的函数 不是寻找最大值吗?

评估 "利润越高越好 " 函数不是最大值搜索

评估 " 范围越广越 好 " 函数 不是 最大搜索

评估 "稳定/不稳定状态 "的函数不是 最大搜索?

还是你也需要一个高原?)))) 那么请看第一点 ))))

哦,这些亵渎神明的人......



SanSanych Fomenko#

我想说的 是,未来利润的可持续性取决于预测因素的属性,而与模型关系不大,更与优化算法无关。也就是说,这是一种完全不同的方法。

你不应该推崇 这个观点,而应该证明它或至少证明它的合理性....。

这里就有一个人在推崇Mashka是最好的东西,这样推崇有什么用??????

 
更酷的是,把缺失的正文也包括进来,想想什么样的关系可以描述芯片和标签之间的利润因素。大致没有 🤤
 
СанСаныч Фоменко #:

1.我会记住这个姓的。你是我认识的唯一一个姓这个姓的人。

2. 我想反对的是,我们不应该把这个想法带入荒谬的境地,但实际上情况是一样的:我们不需要任何最佳状态--我们需要高原,越广泛越好,越有利可图越好。极值总是一种不稳定的状态,但我们需要一种稳定的状态,而且是在未来。因此,事实证明,寻找最佳状态是一种有害的职业。

在这里,我想说的是,未来利润的稳定性取决于预测因子的特性,而与模型关系不大,与优化算法关系更小。这是一种完全不同的方法。

1. v

这里有一个数字,就像某个假设学习函数的曲线。

你认为网格会在局部极值 1 处停止吗? 或者是 2 处? 或者是 3 处,比如中间? 因此,事先并不知道有多少个局部极值,可能有 100500 个,甚至更多。这就是为什么要设法找到算法所能达到的所有局部极值中的最高值。

 
Maxim Dmitrievsky #:
建议用什么来替代 logloss?

如果这是我的问题,那就是利润或它的某个合理的类比值。利润 - 现在让它成为所有 (close[i] - open[i])*prognos[i]的总和,其中prognos[i] 是对蜡烛颜色的预测,为 1 或-1。为了获得良好的梯度和海斯行为,可能需要对其进行一定的修改。

 
Aleksey Nikolayev #:

如果对我来说是个问题,那么利润或它的某个合理类比值。利润 - 现在就让它成为所有(close[i] - open[i])*prognos[i]的总和,其中prognos[i] 是对蜡烛颜色的预测,为 1 或-1。为了获得良好的梯度和 Hessian 行为,可能需要对其进行一定的修改。

在遗传学中,我们利用变量并通过一个标准将其最大化。在这里你不能这么做,因为分类。利润和类别标签之间没有关系。充其量,你什么也得不到。这就是为什么将此类标准放在 eval_metrics 中的原因
原因: