Linear Regression
Linear Regression(线性回归算法)是逻辑回归的原型,常用于预测连续的目标值。该算法具有模型简单、可解释性强等优点。
训练节点
- 输入
- 数据形式:Dense 或 Libsvm。
- 格式:| label | 参与计算的 features | 不参与计算的 features|
- label:Double 类型,通过算法参数中的数据标签列指定。
- 参与计算的 features:可通过算法参数的选择特征列指定。
- 不参与计算的 features:可包括不参与计算的特征。
- 输出
- PMML 格式的 Linear Regression model
- 模型格式:| 特征权重 | 偏置项 |
- 算法参数
- 数据标签列:数据标签(label)所在列,从0开始计数。
- 选择特征列:从0开始计数,以类似“1-12,15”的方式选择特征,表示取特征在表中的1到12列,15列。
- 并行数:训练数据的分区数、Spark 的并行数。
- 抽样率:输入数据的采样率。
- 正则化系数:默认为0,表示不添加正则项。
- elasticNet:范围:0 - 1.0,0表示 L2 正则,1表示 L1 正则,0 - 1.0表示 L1 和 L2 正则的结合。
- 最大迭代次数:默认为100。
预测节点
- 输入
- 数据形式:Dense 或 Libsvm
- 格式:| 参与计算的 features | 不参与计算的 features |
- 参与计算的 features:同训练节点。
- 不参与计算的 features:如果存在则保留在输出中,对于 Libsvm 格式的数据,也包括了 label 列,该 label 仅用于标识样本 ID。
- 输出
- 格式:| 不参与计算的 features 数据 | predict_value |
- predict_value:预测值。
DecisionTree Regression
DecisionTree Regression(决策树算法)是机器学习中非常常用的一类分类/回归算法。决策树算法有很多优点,如解释性好,可以处理类别特征,不需要做特征 scaling,可以表示非线性模型,最高可以支持百万级别的样本。
训练节点
- 输入
- 数据形式:Dense 或 Libsvm
- 格式:| label | 参与计算的 features | 不参与计算的 features |
- label:Double 类型,通过算法参数中的数据标签列指定。
- 参与计算的 features:可通过算法参数的选择特征列指定。
- 不参与计算的 features:可包括不参与计算的特征。
- 输出
- PMML 格式的 DecisionTree model
- 模型格式:| treeId | node |,决策树中的所有节点信息。
- treeId:树标号,都为0。
- node:树中的节点信息。
- 算法参数
- 数据标签列:数据标签(label)所在列,从0开始计数。
- 选择特征列:从0开始计数,以类似“1-12,15”的方式选择特征,表示取特征在表中的1到12列,15列。
- 并行数:训练数据的分区数、Spark 的并行数。
- 并行数:输入数据的分区数。
- 决策树最大深度: 训练决策树所允许的高度上限, 默认为10。
- 决策树最大分支数: 训练决策树所允许的最大分叉树, 默认为32。
预测节点
- 输入
- 数据形式:Dense 或 Libsvm
- 格式:| 参与计算的 features | 不参与计算的 features |
- 参与计算的 features:同训练节点。 不参与计算的 features:如果存在则保留在输出中,对于 Libsvm 格式的数据,也包括了 label 列,该 label 仅用于标识样本 ID。
- 输出
- 格式:| 不参与计算的 features 数据 | predict_value |
- predict_value:预测值。
RandomForest Regression
RandomForest Regression(随机森林)是决策树的一种ensemble算法,可用于分类和回归。平台的RandomForest分类算法支持连续、非连续特征。
训练节点
- 输入
- 数据形式:Dense 或 Libsvm
- 格式:| label | 参与计算的 features | 不参与计算的 features |
- label:Double 类型,通过算法参数中的数据标签列指定。
- 参与计算的 features:可通过算法参数的选择特征列指定。
- 不参与计算的 features:可包括不参与计算的特征。
- 输出
- PMML 格式的 RandomForest model
- 模型格式:| treeId | node |,所有组成森林的随机树。
- treeId:树的标号。
- node:树中的节点信息。
- 算法参数
- 数据标签列:数据标签(label)所在列,从0开始计数。
- 选择特征列:从0开始计数,以类似“1-12,15”的方式选择特征,表示取特征在表中的1到12列,15列。
- 并行数:训练数据的分区数、Spark 的并行数。
- 决策树棵树:模型使用的决策树的个数,默认为10。
- 决策树最大深度: 训练决策树所允许的高度上限, 默认为10。
- 决策树最大分支数: 训练决策树所允许的最大分叉树, 默认为32。
- 抽样率: 训练每课数使用的数据百分比,默认为1.0, 减少可以加快训练过程。
- 标签抽样策略:训练决策树选择标签的策略。
- auto:自动选择,当决策树棵树为1时选择 all,否则选择 sqrt。
- all:选择全部标签。
- sqrt:选择开根号个数的标签。
- log:选择取对数个数的标签。
预测节点
- 输入
- 数据形式:Dense 或 Libsvm
- 格式:| 参与计算的 features | 不参与计算的 features |
- 参与计算的 features:同训练节点。 不参与计算的 features:如果存在则保留在输出中,对于 Libsvm 格式的数据,也包括了 label 列,该 label 仅用于标识样本 ID。
- 输出
- 格式:| 不参与计算的 features数据 | predict_value |
- predict_value:所有树的预测值的平均值。