public class DecisionTreeRegressionModel extends PredictionModel<Vector,DecisionTreeRegressionModel> implements MLWritable, scala.Serializable
Decision tree
model for regression.
It supports both continuous and categorical features.
param: rootNode Root of the decision treeModifier and Type | Method and Description |
---|---|
static BooleanParam |
cacheNodeIds() |
static IntParam |
checkpointInterval() |
static Params |
clear(Param<?> param) |
DecisionTreeRegressionModel |
copy(ParamMap extra)
Creates a copy of this instance with the same UID and some extra params.
|
static int |
depth() |
static String |
explainParam(Param<?> param) |
static String |
explainParams() |
static ParamMap |
extractParamMap() |
static ParamMap |
extractParamMap(ParamMap extra) |
Vector |
featureImportances()
Estimate of the importance of each feature.
|
static Param<String> |
featuresCol() |
Param<String> |
featuresCol()
Param for features column name.
|
static <T> scala.Option<T> |
get(Param<T> param) |
static boolean |
getCacheNodeIds() |
static int |
getCheckpointInterval() |
static <T> scala.Option<T> |
getDefault(Param<T> param) |
static String |
getFeaturesCol() |
String |
getFeaturesCol() |
static String |
getImpurity() |
static String |
getLabelCol() |
String |
getLabelCol() |
static int |
getMaxBins() |
static int |
getMaxDepth() |
static int |
getMaxMemoryInMB() |
static double |
getMinInfoGain() |
static int |
getMinInstancesPerNode() |
static <T> T |
getOrDefault(Param<T> param) |
static Param<Object> |
getParam(String paramName) |
static String |
getPredictionCol() |
String |
getPredictionCol() |
static long |
getSeed() |
static String |
getVarianceCol() |
static <T> boolean |
hasDefault(Param<T> param) |
static boolean |
hasParam(String paramName) |
static boolean |
hasParent() |
static Param<String> |
impurity() |
static boolean |
isDefined(Param<?> param) |
static boolean |
isSet(Param<?> param) |
static Param<String> |
labelCol() |
Param<String> |
labelCol()
Param for label column name.
|
static DecisionTreeRegressionModel |
load(String path) |
static IntParam |
maxBins() |
static IntParam |
maxDepth() |
static IntParam |
maxMemoryInMB() |
static DoubleParam |
minInfoGain() |
static IntParam |
minInstancesPerNode() |
int |
numFeatures()
Returns the number of features the model was trained on.
|
static int |
numNodes() |
static Param<?>[] |
params() |
static void |
parent_$eq(Estimator<M> x$1) |
static Estimator<M> |
parent() |
static Param<String> |
predictionCol() |
Param<String> |
predictionCol()
Param for prediction column name.
|
static MLReader<DecisionTreeRegressionModel> |
read() |
Node |
rootNode() |
static void |
save(String path) |
static LongParam |
seed() |
static <T> Params |
set(Param<T> param,
T value) |
static org.apache.spark.ml.tree.DecisionTreeParams |
setCacheNodeIds(boolean value) |
static org.apache.spark.ml.tree.DecisionTreeParams |
setCheckpointInterval(int value) |
static M |
setFeaturesCol(String value) |
static org.apache.spark.ml.tree.TreeRegressorParams |
setImpurity(String value) |
static org.apache.spark.ml.tree.DecisionTreeParams |
setMaxBins(int value) |
static org.apache.spark.ml.tree.DecisionTreeParams |
setMaxDepth(int value) |
static org.apache.spark.ml.tree.DecisionTreeParams |
setMaxMemoryInMB(int value) |
static org.apache.spark.ml.tree.DecisionTreeParams |
setMinInfoGain(double value) |
static org.apache.spark.ml.tree.DecisionTreeParams |
setMinInstancesPerNode(int value) |
static M |
setParent(Estimator<M> parent) |
static M |
setPredictionCol(String value) |
static org.apache.spark.ml.tree.DecisionTreeParams |
setSeed(long value) |
DecisionTreeRegressionModel |
setVarianceCol(String value) |
static String |
toDebugString() |
String |
toString() |
Dataset<Row> |
transform(Dataset<?> dataset)
Transforms dataset by reading from
featuresCol , calling predict , and storing
the predictions as a new column predictionCol . |
static StructType |
transformSchema(StructType schema) |
String |
uid()
An immutable unique ID for the object and its derivatives.
|
StructType |
validateAndTransformSchema(StructType schema,
boolean fitting,
DataType featuresDataType)
Validates and transforms the input schema with the provided param map.
|
static void |
validateParams() |
static Param<String> |
varianceCol() |
MLWriter |
write()
Returns an
MLWriter instance for this ML instance. |
setFeaturesCol, setPredictionCol, transformSchema
transform, transform, transform
save
clear, copyValues, defaultCopy, defaultParamMap, explainParam, explainParams, extractParamMap, extractParamMap, get, getDefault, getOrDefault, getParam, hasDefault, hasParam, isDefined, isSet, paramMap, params, set, set, set, setDefault, setDefault, shouldOwn, validateParams
public static MLReader<DecisionTreeRegressionModel> read()
public static DecisionTreeRegressionModel load(String path)
public static Param<?>[] params()
public static void validateParams()
public static String explainParam(Param<?> param)
public static String explainParams()
public static final boolean isSet(Param<?> param)
public static final boolean isDefined(Param<?> param)
public static boolean hasParam(String paramName)
public static Param<Object> getParam(String paramName)
public static final <T> scala.Option<T> get(Param<T> param)
public static final <T> T getOrDefault(Param<T> param)
public static final <T> scala.Option<T> getDefault(Param<T> param)
public static final <T> boolean hasDefault(Param<T> param)
public static final ParamMap extractParamMap()
public static Estimator<M> parent()
public static void parent_$eq(Estimator<M> x$1)
public static M setParent(Estimator<M> parent)
public static boolean hasParent()
public static final Param<String> labelCol()
public static final String getLabelCol()
public static final Param<String> featuresCol()
public static final String getFeaturesCol()
public static final Param<String> predictionCol()
public static final String getPredictionCol()
public static M setFeaturesCol(String value)
public static M setPredictionCol(String value)
public static StructType transformSchema(StructType schema)
public static int numNodes()
public static int depth()
public static String toDebugString()
public static final IntParam checkpointInterval()
public static final int getCheckpointInterval()
public static final LongParam seed()
public static final long getSeed()
public static final IntParam maxDepth()
public static final IntParam maxBins()
public static final IntParam minInstancesPerNode()
public static final DoubleParam minInfoGain()
public static final IntParam maxMemoryInMB()
public static final BooleanParam cacheNodeIds()
public static org.apache.spark.ml.tree.DecisionTreeParams setMaxDepth(int value)
public static final int getMaxDepth()
public static org.apache.spark.ml.tree.DecisionTreeParams setMaxBins(int value)
public static final int getMaxBins()
public static org.apache.spark.ml.tree.DecisionTreeParams setMinInstancesPerNode(int value)
public static final int getMinInstancesPerNode()
public static org.apache.spark.ml.tree.DecisionTreeParams setMinInfoGain(double value)
public static final double getMinInfoGain()
public static org.apache.spark.ml.tree.DecisionTreeParams setSeed(long value)
public static org.apache.spark.ml.tree.DecisionTreeParams setMaxMemoryInMB(int value)
public static final int getMaxMemoryInMB()
public static org.apache.spark.ml.tree.DecisionTreeParams setCacheNodeIds(boolean value)
public static final boolean getCacheNodeIds()
public static org.apache.spark.ml.tree.DecisionTreeParams setCheckpointInterval(int value)
public static final Param<String> impurity()
public static org.apache.spark.ml.tree.TreeRegressorParams setImpurity(String value)
public static final String getImpurity()
public static final Param<String> varianceCol()
public static final String getVarianceCol()
public static void save(String path) throws java.io.IOException
java.io.IOException
public String uid()
Identifiable
uid
in interface Identifiable
public Node rootNode()
public int numFeatures()
PredictionModel
numFeatures
in class PredictionModel<Vector,DecisionTreeRegressionModel>
public DecisionTreeRegressionModel setVarianceCol(String value)
public Dataset<Row> transform(Dataset<?> dataset)
PredictionModel
featuresCol
, calling predict
, and storing
the predictions as a new column predictionCol
.
transform
in class PredictionModel<Vector,DecisionTreeRegressionModel>
dataset
- input datasetpredictionCol
of type Double
public DecisionTreeRegressionModel copy(ParamMap extra)
Params
defaultCopy()
.copy
in interface Params
copy
in class Model<DecisionTreeRegressionModel>
extra
- (undocumented)public String toString()
toString
in interface Identifiable
toString
in class Object
public Vector featureImportances()
This generalizes the idea of "Gini" importance to other losses, following the explanation of Gini importance from "Random Forests" documentation by Leo Breiman and Adele Cutler, and following the implementation from scikit-learn.
This feature importance is calculated as follows: - importance(feature j) = sum (over nodes which split on feature j) of the gain, where gain is scaled by the number of instances passing through node - Normalize importances for tree to sum to 1.
Note: Feature importance for single decision trees can have high variance due to
correlated predictor variables. Consider using a RandomForestRegressor
to determine feature importance instead.
public MLWriter write()
MLWritable
MLWriter
instance for this ML instance.write
in interface MLWritable
public StructType validateAndTransformSchema(StructType schema, boolean fitting, DataType featuresDataType)
schema
- input schemafitting
- whether this is in fittingfeaturesDataType
- SQL DataType for FeaturesType.
E.g., VectorUDT
for vector features.public Param<String> labelCol()
public String getLabelCol()
public Param<String> featuresCol()
public String getFeaturesCol()
public Param<String> predictionCol()
public String getPredictionCol()