TuneHyperparameters

class TuneHyperparameters.TuneHyperparameters(evaluationMetric=None, models=None, numFolds=None, numRuns=None, parallelism=None, paramSpace=None, seed=0)[source]

Bases: mmlspark.Utils.ComplexParamsMixin, pyspark.ml.util.JavaMLReadable, pyspark.ml.util.JavaMLWritable, pyspark.ml.wrapper.JavaEstimator

Tunes model hyperparameters

Supports distributed hyperparameter tuning through randomized grid search. In the near future will support Nelder-Mead and kernel density optimization.

Parameters:
  • evaluationMetric (str) – Metric to evaluate models with
  • models (object) – Estimators to run
  • numFolds (int) – Number of folds
  • numRuns (int) – Termination criteria for randomized search
  • parallelism (int) – The number of models to run in parallel
  • paramSpace (object) – Parameter space for generating hyperparameters
  • seed (long) – Random number generator seed (default: 0)
getEvaluationMetric()[source]
Returns:Metric to evaluate models with
Return type:str
static getJavaPackage()[source]

Returns package name String.

getModels()[source]
Returns:Estimators to run
Return type:object
getNumFolds()[source]
Returns:Number of folds
Return type:int
getNumRuns()[source]
Returns:Termination criteria for randomized search
Return type:int
getParallelism()[source]
Returns:The number of models to run in parallel
Return type:int
getParamSpace()[source]
Returns:Parameter space for generating hyperparameters
Return type:object
getSeed()[source]
Returns:Random number generator seed (default: 0)
Return type:long
classmethod read()[source]

Returns an MLReader instance for this class.

setEvaluationMetric(value)[source]
Parameters:evaluationMetric (str) – Metric to evaluate models with
setModels(value)[source]
Parameters:models (object) – Estimators to run
setNumFolds(value)[source]
Parameters:numFolds (int) – Number of folds
setNumRuns(value)[source]
Parameters:numRuns (int) – Termination criteria for randomized search
setParallelism(value)[source]
Parameters:parallelism (int) – The number of models to run in parallel
setParamSpace(value)[source]
Parameters:paramSpace (object) – Parameter space for generating hyperparameters
setParams(evaluationMetric=None, models=None, numFolds=None, numRuns=None, parallelism=None, paramSpace=None, seed=0)[source]

Set the (keyword only) parameters

Parameters:
  • evaluationMetric (str) – Metric to evaluate models with
  • models (object) – Estimators to run
  • numFolds (int) – Number of folds
  • numRuns (int) – Termination criteria for randomized search
  • parallelism (int) – The number of models to run in parallel
  • paramSpace (object) – Parameter space for generating hyperparameters
  • seed (long) – Random number generator seed (default: 0)
setSeed(value)[source]
Parameters:seed (long) – Random number generator seed (default: 0)
class TuneHyperparameters.TuneHyperparametersModel(java_model=None)[source]

Bases: mmlspark.Utils.ComplexParamsMixin, pyspark.ml.wrapper.JavaModel, pyspark.ml.util.JavaMLWritable, pyspark.ml.util.JavaMLReadable

Model fitted by TuneHyperparameters.

This class is left empty on purpose. All necessary methods are exposed through inheritance.

static getJavaPackage()[source]

Returns package name String.

classmethod read()[source]

Returns an MLReader instance for this class.