StockRanker训练

# StockRanker训练

定义

M.stock_ranker_train.v5(self, training_ds, features, test_ds=None, learning_algorithm='排序', number_of_leaves=30,minimum_docs_per_leaf=1000, number_of_trees=20, learning_rate=0.1,max_bins=1023, feature_fraction=1, base_model=None,rolling_input=None)

StockRanker排序学习模型训练。StockRanker属于集成学习,模型由多棵决策树组成,所有树的结论累加起来做为最终决策分数。

参数:

  • training_ds (DataSource) – 训练数据,需要包含所有用到的特征数据,包括基础特征和衍生特征。
  • features (列表|DataSource) – 特征列表。
  • test_ds (DataSource) – 测试数据集,可用于在训练阶段查看训练效果,来做模型参数和特征等的调优;通过配置early stop参数可以让训练提前终止;默认值是None。
  • learning_algorithm (choice) – 学习算法,机器学习优化算法;可选值有: 排序, 回归, 二分类, logloss;默认值是排序。
  • number_of_leaves (int) – 叶节点数量:每棵树最大叶节点数量。一般情况下,叶子节点越多,则模型越复杂,表达能力越强,过拟合的可能性也越高;默认值是30。
  • minimum_docs_per_leaf (int) – 每叶节点最小样本数:每个叶节点最少需要的样本数量,一般值越大,泛化性性越好;默认值是1000。
  • number_of_trees (int) – 树的数量:一般情况下,树越多,则模型越复杂,表达能力越强,过拟合的可能性也越高;默认值是20。
  • learning_rate (float) – 学习率:学习率如果太大,可能会使结果越过最优值,如果太小学习会很慢;默认值是0.1。
  • max_bins (int) – 特征值离散化数量:一般情况下,max_bins越大,则学的越细,过拟合的可能性也越高;默认值是1023。
  • feature_fraction (int) – 特征使用率:在构建每一颗树时,每个特征被使用的概率,如果为1,则每棵树都会使用所有特征;默认值是1。
  • base_model (字符串) – 基础模型,可以在此模型上继续训练;默认值是None。
  • rolling_input (dict) – 滚动运行参数,接收来自滚动运行的输入,用于训练数据过滤;默认值是None。

返回:

  • .model: 模型
  • .feature_gains: 特征贡献
  • .m_lazy_run: 延迟运行,将当前模块打包,可以作为其他模块的输入,在其他模块里运行。启用需要勾选模块的 延迟运行 参数。

返回类型:

  • Outputs