1. 回归算法

1.1. [2.0] RandomForestRegressor

RandomForestRegressor(随机森林回归算法),支持离散和连续特征。

训练节点

  • 输入
    • 训练路径:路径或者库表,Dense 结构,每一列对应一个特征、标签或者不参与计算的字段。
    • 训练数据格式:文本类型。
    • 数据分隔符:数据分隔符,默认为空白符或者逗号,可通过下拉框选择。
    • 特征列:作为训练特征的列,从0开始编号。对于库表可以直接勾选,对于普通路径,可填形式如 a-b、c 或者它们的混合,用英文逗号分割(例如0-10,15,17-19表示第0到10列、15、17到19列总共15列作为特征)。
      • 标签列:作为标签的列,要求特征列的特征标签为 double 类型。
    • 验证数据:半自动调参时用于评估的数据,格式与训练数据一致。
  • 输出:ML 格式或者 PMML 格式的模型,保存在后台生成的路径下。
  • 算法参数
    • maxDepth:决策树最大深度。
    • maxBins:决策树最大分支数。
    • minInfoGain:决策树分裂最小信息增益。
    • impurity:不纯度指标,支持 variance。
    • minInstancesPerNode:决策树节点最小样本数。
    • checkpointInterval:每多少轮设置 checkpoint 一次,在迭代轮数非常多的时候,可以降低因为计算节点失败导致的级联重算风险。
    • numTrees:最大迭代次数。
    • featureSubsetStrategy:特征采样比例策略,支持 auto、all、onethird、sqrt 和 log2,分别表示自动、全部、三分一、特征数的开方和特征数的对数。其中自动策略为:numTrees 为1时,该参数为 all;numTrees 大于1时,该参数为 sqrt。
    • subsamplingRate:样本数采样比例。
  • 半自动调参
    • 调参算法:默认贝叶斯调参,目前支持贝叶斯调参、网格调参和随机调参。
    • 评估方法:算法的评估方法,支持 RegressionEvaluator
    • 评估指标:回归评估指标,支持root mean squared error(均方根误差)、mean squared error(均方误差)、R2 metric(决定系数)和 mean absolute error(平均绝对值误差)。
    • minInfoGain:连续范围参数,下界大于等于0,上届小于1,一般不超过0.1。
    • maxDepth:离散整正整数参数,比较合理的方式是根据默认值5在周围调节。
    • maxBins:离散正整数参数,比较合理的方式是根据默认值32在周围调节。
    • minInstancesPerNode:离散正整数参数,默认值为1,可根据样本数目适当调节。
    • numTrees:离散正整数参数,比较合理的方式是根据默认值20在周围调节。

预测节点

  • 输入
    • 训练路径:路径或者库表,Dense 结构, 每一列对应一个特征、标签或者不参与计算的字段。
    • 训练数据格式:文本类型。
    • 数据分隔符:数据分隔符,默认为空白符或者逗号,可通过下拉框选择。
    • 特征列:作为训练特征的列,从0开始编号。对于库表可以直接勾选,对于普通路径,可填形式如 a-b、c 或者它们的混合,用英文逗号分割,(例如0-10,15,17-19表示第0到10列、15、17到19列总共15列作为特征)。
  • 输出
    • 结果路径:路径。
    • 结果格式:结果数据格式,默认为 parquet

1.2. [2.0] DecisionTreeRegressor

DecisionTreeRegressor(决策树算法)是机器学习中常用的一类分类/回归算法。决策树算法有解释性好、可以处理类别特征、不需要做特征 scaling 等优点,可以表示非线性模型,最高可以支持百万级别的样本。

训练节点

  • 输入
    • 训练路径:路径或者库表,Dense 结构, 每一列对应一个特征、标签或者不参与计算的字段。
    • 训练数据格式:文本类型。
    • 数据分隔符:数据分隔符,默认为空白符或者逗号,可通过下拉框选择。
    • 特征列:作为训练特征的列,从0开始编号。对于库表可以直接勾选,对于普通路径,可填形式如 a-b、c或者它们的混合,用英文逗号分割(例如0-10,15,17-19表示第0到10列、15、17到19列总共15列作为特征)
    • 标签列:作为标签的列,要求特征列的特征标签为 double 类型。
    • 验证数据:半自动调参时用于评估的数据,格式与训练数据一致。
  • 输出:ML 格式或者 PMML 格式的模型,保存在后台生成的路径下。
  • 算法参数
    • maxDepth:决策树最大深度。
    • maxBins:决策树最大分支数。
    • minInfoGain:决策树分裂最小信息增益。
    • impurity:不纯度指标,支持 variance
    • minInstancesPerNode:决策树节点最小样本数。
    • checkpointInterval:每多少轮设置 checkpoint 一次,在迭代轮数非常多的时候,可以降低因为计算节点失败导致的级联重算风险。
  • 半自动调参
    • 调参算法:默认贝叶斯调参,目前支持贝叶斯调参、网格调参和随机调参。
    • 评估方法:算法的评估方法,支持 RegressionEvaluator
    • 评估指标:回归评估指标,支持root mean squared error(均方根误差)、mean squared error(均方误差)、R2 metric(决定系数)和 mean absolute error(平均绝对值误差)。
    • minInfoGain:连续范围参数,下界大于等于0,上届小于1,一般不超过0.1。
    • maxDepth:离散整正整数参数,比较合理的方式是根据默认值5在周围调节。
    • maxBins:离散正整数参数,比较合理的方式是根据默认值32在周围调节。
    • minInstancesPerNode:离散正整数参数,默认值为1,可根据样本数目适当调节。

预测节点

  • 输入
    • 训练路径:路径或者库表,Dense 结构, 每一列对应一个特征、标签或者不参与计算的字段。
    • 训练数据格式:文本类型。
    • 数据分隔符:数据分隔符,默认为空白符或者逗号,可通过下拉框选择。
    • 特征列:作为训练特征的列,从0开始编号。对于库表可以直接勾选,对于普通路径,可填形式如 a-b、c 或者它们的混合,用英文逗号分割(例如0-10,15,17-19表示第0到10列、15、17到19列总共15列作为特征)。
  • 输出
    • 结果路径:路径。
    • 结果格式:结果数据格式,默认为 parquet

1.3. [2.0] GBTRegressor

GBTRegressor(梯度提升树)是一种常用的分类回归算法,这里的实现根据论文 J.H. Friedman. "Stochastic Gradient Boosting." 1999.

训练节点

  • 输入
    • 训练路径:路径或者库表,Dense 结构, 每一列对应一个特征、标签或者不参与计算的字段。
    • 训练数据格式:文本类型。
    • 数据分隔符:数据分隔符,默认为空白符或者逗号,可通过下拉框选择。
    • 特征列:作为训练特征的列,从0开始编号。对于库表可以直接勾选,对于普通路径,可填形式如 a-b、c 或者它们的混合,用英文逗号分割(例如0-10,15,17-19表示第0到10列、15、17到19列总共15列作为特征)。
    • 标签列:作为标签的列,要求特征列的特征标签为 double 类型。
    • 验证数据:半自动调参时用于评估的数据,格式与训练数据一致。
  • 输出:ML 格式或者 PMML 格式的模型,保存在后台生成的路径下。
  • 算法参数
    • featureSubsetStrategy:特征采样比例策略,支持 auto、all、onethird、sqrt 和 log2,分别表示自动、全部、三分一、特征数的开方和特征数的对数。其中自动策略为:numTrees 为1时,该参数 all;numTrees大于1时,该参数为 sqrt。
    • impurity:不纯度指标,支持 variance。
    • maxBins:决策树最大分支数。
    • maxDepth:决策树最大深度。
    • maxIter:最大迭代次数。
    • minInfoGain:决策树分裂最小信息增益。
    • minInstancesPerNode:决策树节点最小样本数。
    • stepSize:步长,范围为(0, 1]。
    • subsamplingRate:样本数采样比例。
  • 半自动调参
    • 调参算法:默认贝叶斯调参,目前支持贝叶斯调参、网格调参和随机调参。
    • 评估方法:算法的评估方法,支持 RegressionEvaluator
    • 评估指标:回归评估指标,支持root mean squared error(均方根误差)、mean squared error(均方误差)、R2 metric(决定系数)和 mean absolute error(平均绝对值误差)。
    • minInfoGain:连续范围参数,下界大于等于0,上界小于1,一般不超过0.1。
    • stepSize:连续范围参数,下界大于0,上界小于等于1。
    • subsamplingRate:连续范围参数,下界大于0,上界小于等于1。
    • maxBins:离散正整数参数,比较合理的方式是根据默认值32在周围调节。
    • maxDepth:离散整正整数参数,比较合理的方式是根据默认值5在周围调节。
    • minInstancesPerNode:离散正整数参数,默认值为1,可根据样本数目适当调节。

预测节点

  • 输入
    • 训练路径:路径或者库表,Dense 结构, 每一列对应一个特征、标签或者不参与计算的字段。
    • 训练数据格式:文本类型。
    • 数据分隔符:数据分隔符,默认为空白符或者逗号,可通过下拉框选择。
    • 特征列:作为训练特征的列,从0开始编号。对于库表可以直接勾选,对于普通路径,可填形式如 a-b、c 或者它们的混合,用英文逗号分割(例如0-10,15,17-19表示第0到10列、15、17到19列总共15列作为特征)。
  • 输出
    • 结果路径:路径。
    • 结果格式:结果数据格式,默认为 parquet

1.4. [2.0] IsotonicRegressor

IsotonicRegressor(保序回归)是一种非参回归模型(nonparametric regression),该算法只有一个约束条件,即函数空间为单调递增函数的空间。详细说明请参考 保序算法说明

训练节点

  • 输入
    • 训练路径:路径或者库表,Dense 结构, 每一列对应一个特征、标签或者不参与计算的字段。
    • 训练数据格式:文本类型。
    • 数据分隔符:数据分隔符,默认为空白符或者逗号,可通过下拉框选择。
    • 特征列:作为训练特征的列,从0开始编号。对于库表可以直接勾选,对于普通路径,可填形式如 a-b、c 或者它们的混合,用英文逗号分割(例如0-10,15,17-19表示第0到10列、15、17到19列总共15列作为特征)。对于这个算法,一般特征列只有1列,如果选择多列,实际生效的也只是选择的第一列
    • 标签列:作为标签的列,要求特征列的特征标签为 double 类型。
    • 验证数据:半自动调参时用于评估的数据,格式与训练数据一致。
  • 输出:ML 格式或者 PMML 格式的模型,保存在后台生成的路径下。
  • 算法参数:isotonic 表示升序还是降序。

预测节点

  • 输入
    • 训练路径:路径或者库表,Dense 结构,每一列对应一个特征、标签或者不参与计算的字段。
    • 训练数据格式:文本类型。
    • 数据分隔符:数据分隔符,默认为空白符或者逗号,可通过下拉框选择。
    • 特征列:作为训练特征的列,从0开始编号。对于库表可以直接勾选,对于普通路径,可填形式如 a-b、c 或者它们的混合,用英文逗号分割(例如0-10,15,17-19表示第0到10列、15、17到19列总共15列作为特征)。
  • 输出
    • 结果路径:路径。
    • 结果格式:结果数据格式,默认为 parquet