OneVsRest (Spark 3.5.5 JavaDoc) (original) (raw)
Object
- org.apache.spark.ml.PipelineStage
- org.apache.spark.ml.Estimator<OneVsRestModel>
- org.apache.spark.ml.classification.OneVsRest
- org.apache.spark.ml.Estimator<OneVsRestModel>
All Implemented Interfaces:
java.io.Serializable, org.apache.spark.internal.Logging, ClassifierParams, ClassifierTypeTrait, OneVsRestParams, Params, HasFeaturesCol, HasLabelCol, HasParallelism, HasPredictionCol, HasRawPredictionCol, HasWeightCol, PredictorParams, Identifiable, MLWritable
public final class OneVsRest
extends Estimator<OneVsRestModel>
implements OneVsRestParams, HasParallelism, MLWritable
Reduction of Multiclass Classification to Binary Classification. Performs reduction using one against all strategy. For a multiclass classification with k classes, train k models (one per class). Each example is scored against all k models and the model with highest score is picked to label the example.
See Also:
Serialized Form
Nested Class Summary
* ### Nested classes/interfaces inherited from interface org.apache.spark.internal.Logging `org.apache.spark.internal.Logging.SparkShellLoggingFilter`
Constructor Summary
Constructors
Constructor and Description OneVsRest() OneVsRest(String uid) Method Summary
All Methods Static Methods Instance Methods Concrete Methods
Modifier and Type Method and Description Param<Classifier<?,? extends Classifier<Object,Classifier,ClassificationModel>,? extends ClassificationModel<Object,ClassificationModel>>> classifier() param for the base binary classifier that we reduce multiclass classification into. OneVsRest copy(ParamMap extra) Creates a copy of this instance with the same UID and some extra params. Param featuresCol() Param for features column name. OneVsRestModel fit(Dataset<?> dataset) Fits a model to the input data. Param labelCol() Param for label column name. static OneVsRest load(String path) IntParam parallelism() The number of threads to use when running parallel algorithms. Param predictionCol() Param for prediction column name. Param rawPredictionCol() Param for raw prediction (a.k.a. static MLReader<OneVsRest> read() OneVsRest setClassifier(Classifier value) OneVsRest setFeaturesCol(String value) OneVsRest setLabelCol(String value) OneVsRest setParallelism(int value) The implementation of parallel one vs. OneVsRest setPredictionCol(String value) OneVsRest setRawPredictionCol(String value) OneVsRest setWeightCol(String value) Sets the value of param weightCol. StructType transformSchema(StructType schema) Check transform validity and derive the output schema from the input schema. String uid() An immutable unique ID for the object and its derivatives. Param weightCol() Param for weight column name. MLWriter write() Returns an MLWriter instance for this ML instance. * ### Methods inherited from class org.apache.spark.ml.[Estimator](../../../../../org/apache/spark/ml/Estimator.html "class in org.apache.spark.ml") `[fit](../../../../../org/apache/spark/ml/Estimator.html#fit-org.apache.spark.sql.Dataset-org.apache.spark.ml.param.ParamMap-), [fit](../../../../../org/apache/spark/ml/Estimator.html#fit-org.apache.spark.sql.Dataset-org.apache.spark.ml.param.ParamPair-org.apache.spark.ml.param.ParamPair...-), [fit](../../../../../org/apache/spark/ml/Estimator.html#fit-org.apache.spark.sql.Dataset-org.apache.spark.ml.param.ParamPair-scala.collection.Seq-), [fit](../../../../../org/apache/spark/ml/Estimator.html#fit-org.apache.spark.sql.Dataset-scala.collection.Seq-)` * ### Methods inherited from class org.apache.spark.ml.[PipelineStage](../../../../../org/apache/spark/ml/PipelineStage.html "class in org.apache.spark.ml") `[params](../../../../../org/apache/spark/ml/PipelineStage.html#params--)` * ### Methods inherited from class Object `equals, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait` * ### Methods inherited from interface org.apache.spark.ml.classification.[OneVsRestParams](../../../../../org/apache/spark/ml/classification/OneVsRestParams.html "interface in org.apache.spark.ml.classification") `[getClassifier](../../../../../org/apache/spark/ml/classification/OneVsRestParams.html#getClassifier--)` * ### Methods inherited from interface org.apache.spark.ml.classification.[ClassifierParams](../../../../../org/apache/spark/ml/classification/ClassifierParams.html "interface in org.apache.spark.ml.classification") `[validateAndTransformSchema](../../../../../org/apache/spark/ml/classification/ClassifierParams.html#validateAndTransformSchema-org.apache.spark.sql.types.StructType-boolean-org.apache.spark.sql.types.DataType-)` * ### Methods inherited from interface org.apache.spark.ml.param.shared.[HasLabelCol](../../../../../org/apache/spark/ml/param/shared/HasLabelCol.html "interface in org.apache.spark.ml.param.shared") `[getLabelCol](../../../../../org/apache/spark/ml/param/shared/HasLabelCol.html#getLabelCol--)` * ### Methods inherited from interface org.apache.spark.ml.param.shared.[HasFeaturesCol](../../../../../org/apache/spark/ml/param/shared/HasFeaturesCol.html "interface in org.apache.spark.ml.param.shared") `[getFeaturesCol](../../../../../org/apache/spark/ml/param/shared/HasFeaturesCol.html#getFeaturesCol--)` * ### Methods inherited from interface org.apache.spark.ml.param.shared.[HasPredictionCol](../../../../../org/apache/spark/ml/param/shared/HasPredictionCol.html "interface in org.apache.spark.ml.param.shared") `[getPredictionCol](../../../../../org/apache/spark/ml/param/shared/HasPredictionCol.html#getPredictionCol--)` * ### Methods inherited from interface org.apache.spark.ml.param.[Params](../../../../../org/apache/spark/ml/param/Params.html "interface in org.apache.spark.ml.param") `[clear](../../../../../org/apache/spark/ml/param/Params.html#clear-org.apache.spark.ml.param.Param-), [copyValues](../../../../../org/apache/spark/ml/param/Params.html#copyValues-T-org.apache.spark.ml.param.ParamMap-), [defaultCopy](../../../../../org/apache/spark/ml/param/Params.html#defaultCopy-org.apache.spark.ml.param.ParamMap-), [defaultParamMap](../../../../../org/apache/spark/ml/param/Params.html#defaultParamMap--), [explainParam](../../../../../org/apache/spark/ml/param/Params.html#explainParam-org.apache.spark.ml.param.Param-), [explainParams](../../../../../org/apache/spark/ml/param/Params.html#explainParams--), [extractParamMap](../../../../../org/apache/spark/ml/param/Params.html#extractParamMap--), [extractParamMap](../../../../../org/apache/spark/ml/param/Params.html#extractParamMap-org.apache.spark.ml.param.ParamMap-), [get](../../../../../org/apache/spark/ml/param/Params.html#get-org.apache.spark.ml.param.Param-), [getDefault](../../../../../org/apache/spark/ml/param/Params.html#getDefault-org.apache.spark.ml.param.Param-), [getOrDefault](../../../../../org/apache/spark/ml/param/Params.html#getOrDefault-org.apache.spark.ml.param.Param-), [getParam](../../../../../org/apache/spark/ml/param/Params.html#getParam-java.lang.String-), [hasDefault](../../../../../org/apache/spark/ml/param/Params.html#hasDefault-org.apache.spark.ml.param.Param-), [hasParam](../../../../../org/apache/spark/ml/param/Params.html#hasParam-java.lang.String-), [isDefined](../../../../../org/apache/spark/ml/param/Params.html#isDefined-org.apache.spark.ml.param.Param-), [isSet](../../../../../org/apache/spark/ml/param/Params.html#isSet-org.apache.spark.ml.param.Param-), [onParamChange](../../../../../org/apache/spark/ml/param/Params.html#onParamChange-org.apache.spark.ml.param.Param-), [paramMap](../../../../../org/apache/spark/ml/param/Params.html#paramMap--), [params](../../../../../org/apache/spark/ml/param/Params.html#params--), [set](../../../../../org/apache/spark/ml/param/Params.html#set-org.apache.spark.ml.param.Param-T-), [set](../../../../../org/apache/spark/ml/param/Params.html#set-org.apache.spark.ml.param.ParamPair-), [set](../../../../../org/apache/spark/ml/param/Params.html#set-java.lang.String-java.lang.Object-), [setDefault](../../../../../org/apache/spark/ml/param/Params.html#setDefault-org.apache.spark.ml.param.Param-T-), [setDefault](../../../../../org/apache/spark/ml/param/Params.html#setDefault-scala.collection.Seq-), [shouldOwn](../../../../../org/apache/spark/ml/param/Params.html#shouldOwn-org.apache.spark.ml.param.Param-)` * ### Methods inherited from interface org.apache.spark.ml.util.[Identifiable](../../../../../org/apache/spark/ml/util/Identifiable.html "interface in org.apache.spark.ml.util") `[toString](../../../../../org/apache/spark/ml/util/Identifiable.html#toString--)` * ### Methods inherited from interface org.apache.spark.ml.param.shared.[HasRawPredictionCol](../../../../../org/apache/spark/ml/param/shared/HasRawPredictionCol.html "interface in org.apache.spark.ml.param.shared") `[getRawPredictionCol](../../../../../org/apache/spark/ml/param/shared/HasRawPredictionCol.html#getRawPredictionCol--)` * ### Methods inherited from interface org.apache.spark.ml.param.shared.[HasWeightCol](../../../../../org/apache/spark/ml/param/shared/HasWeightCol.html "interface in org.apache.spark.ml.param.shared") `[getWeightCol](../../../../../org/apache/spark/ml/param/shared/HasWeightCol.html#getWeightCol--)` * ### Methods inherited from interface org.apache.spark.ml.param.shared.[HasParallelism](../../../../../org/apache/spark/ml/param/shared/HasParallelism.html "interface in org.apache.spark.ml.param.shared") `[getExecutionContext](../../../../../org/apache/spark/ml/param/shared/HasParallelism.html#getExecutionContext--), [getParallelism](../../../../../org/apache/spark/ml/param/shared/HasParallelism.html#getParallelism--)` * ### Methods inherited from interface org.apache.spark.ml.util.[MLWritable](../../../../../org/apache/spark/ml/util/MLWritable.html "interface in org.apache.spark.ml.util") `[save](../../../../../org/apache/spark/ml/util/MLWritable.html#save-java.lang.String-)` * ### Methods inherited from interface org.apache.spark.internal.Logging `$init$, initializeForcefully, initializeLogIfNecessary, initializeLogIfNecessary, initializeLogIfNecessary$default$2, initLock, isTraceEnabled, log, logDebug, logDebug, logError, logError, logInfo, logInfo, logName, logTrace, logTrace, logWarning, logWarning, org$apache$spark$internal$Logging$$log__$eq, org$apache$spark$internal$Logging$$log_, uninitialize`
Constructor Detail
* #### OneVsRest public OneVsRest(String uid) * #### OneVsRest public OneVsRest()
Method Detail
* #### read public static [MLReader](../../../../../org/apache/spark/ml/util/MLReader.html "class in org.apache.spark.ml.util")<[OneVsRest](../../../../../org/apache/spark/ml/classification/OneVsRest.html "class in org.apache.spark.ml.classification")> read() * #### load public static [OneVsRest](../../../../../org/apache/spark/ml/classification/OneVsRest.html "class in org.apache.spark.ml.classification") load(String path) * #### parallelism public [IntParam](../../../../../org/apache/spark/ml/param/IntParam.html "class in org.apache.spark.ml.param") parallelism() The number of threads to use when running parallel algorithms. Default is 1 for serial execution Specified by: `[parallelism](../../../../../org/apache/spark/ml/param/shared/HasParallelism.html#parallelism--)` in interface `[HasParallelism](../../../../../org/apache/spark/ml/param/shared/HasParallelism.html "interface in org.apache.spark.ml.param.shared")` Returns: (undocumented) * #### classifier public [Param](../../../../../org/apache/spark/ml/param/Param.html "class in org.apache.spark.ml.param")<[Classifier](../../../../../org/apache/spark/ml/classification/Classifier.html "class in org.apache.spark.ml.classification")<?,? extends [Classifier](../../../../../org/apache/spark/ml/classification/Classifier.html "class in org.apache.spark.ml.classification")<Object,[Classifier](../../../../../org/apache/spark/ml/classification/Classifier.html "class in org.apache.spark.ml.classification"),[ClassificationModel](../../../../../org/apache/spark/ml/classification/ClassificationModel.html "class in org.apache.spark.ml.classification")>,? extends [ClassificationModel](../../../../../org/apache/spark/ml/classification/ClassificationModel.html "class in org.apache.spark.ml.classification")<Object,[ClassificationModel](../../../../../org/apache/spark/ml/classification/ClassificationModel.html "class in org.apache.spark.ml.classification")>>> classifier() param for the base binary classifier that we reduce multiclass classification into. The base classifier input and output columns are ignored in favor of the ones specified in [OneVsRest](../../../../../org/apache/spark/ml/classification/OneVsRest.html "class in org.apache.spark.ml.classification"). Specified by: `[classifier](../../../../../org/apache/spark/ml/classification/OneVsRestParams.html#classifier--)` in interface `[OneVsRestParams](../../../../../org/apache/spark/ml/classification/OneVsRestParams.html "interface in org.apache.spark.ml.classification")` Returns: (undocumented) * #### weightCol public final [Param](../../../../../org/apache/spark/ml/param/Param.html "class in org.apache.spark.ml.param")<String> weightCol() Param for weight column name. If this is not set or empty, we treat all instance weights as 1.0. Specified by: `[weightCol](../../../../../org/apache/spark/ml/param/shared/HasWeightCol.html#weightCol--)` in interface `[HasWeightCol](../../../../../org/apache/spark/ml/param/shared/HasWeightCol.html "interface in org.apache.spark.ml.param.shared")` Returns: (undocumented) * #### rawPredictionCol public final [Param](../../../../../org/apache/spark/ml/param/Param.html "class in org.apache.spark.ml.param")<String> rawPredictionCol() Param for raw prediction (a.k.a. confidence) column name. Specified by: `[rawPredictionCol](../../../../../org/apache/spark/ml/param/shared/HasRawPredictionCol.html#rawPredictionCol--)` in interface `[HasRawPredictionCol](../../../../../org/apache/spark/ml/param/shared/HasRawPredictionCol.html "interface in org.apache.spark.ml.param.shared")` Returns: (undocumented) * #### predictionCol public final [Param](../../../../../org/apache/spark/ml/param/Param.html "class in org.apache.spark.ml.param")<String> predictionCol() Param for prediction column name. Specified by: `[predictionCol](../../../../../org/apache/spark/ml/param/shared/HasPredictionCol.html#predictionCol--)` in interface `[HasPredictionCol](../../../../../org/apache/spark/ml/param/shared/HasPredictionCol.html "interface in org.apache.spark.ml.param.shared")` Returns: (undocumented) * #### featuresCol public final [Param](../../../../../org/apache/spark/ml/param/Param.html "class in org.apache.spark.ml.param")<String> featuresCol() Param for features column name. Specified by: `[featuresCol](../../../../../org/apache/spark/ml/param/shared/HasFeaturesCol.html#featuresCol--)` in interface `[HasFeaturesCol](../../../../../org/apache/spark/ml/param/shared/HasFeaturesCol.html "interface in org.apache.spark.ml.param.shared")` Returns: (undocumented) * #### labelCol public final [Param](../../../../../org/apache/spark/ml/param/Param.html "class in org.apache.spark.ml.param")<String> labelCol() Description copied from interface: `[HasLabelCol](../../../../../org/apache/spark/ml/param/shared/HasLabelCol.html#labelCol--)` Param for label column name. Specified by: `[labelCol](../../../../../org/apache/spark/ml/param/shared/HasLabelCol.html#labelCol--)` in interface `[HasLabelCol](../../../../../org/apache/spark/ml/param/shared/HasLabelCol.html "interface in org.apache.spark.ml.param.shared")` Returns: (undocumented) * #### uid public String uid() An immutable unique ID for the object and its derivatives. Specified by: `[uid](../../../../../org/apache/spark/ml/util/Identifiable.html#uid--)` in interface `[Identifiable](../../../../../org/apache/spark/ml/util/Identifiable.html "interface in org.apache.spark.ml.util")` Returns: (undocumented) * #### setClassifier public [OneVsRest](../../../../../org/apache/spark/ml/classification/OneVsRest.html "class in org.apache.spark.ml.classification") setClassifier([Classifier](../../../../../org/apache/spark/ml/classification/Classifier.html "class in org.apache.spark.ml.classification")<?,?,?> value) * #### setLabelCol public [OneVsRest](../../../../../org/apache/spark/ml/classification/OneVsRest.html "class in org.apache.spark.ml.classification") setLabelCol(String value) * #### setFeaturesCol public [OneVsRest](../../../../../org/apache/spark/ml/classification/OneVsRest.html "class in org.apache.spark.ml.classification") setFeaturesCol(String value) * #### setPredictionCol public [OneVsRest](../../../../../org/apache/spark/ml/classification/OneVsRest.html "class in org.apache.spark.ml.classification") setPredictionCol(String value) * #### setRawPredictionCol public [OneVsRest](../../../../../org/apache/spark/ml/classification/OneVsRest.html "class in org.apache.spark.ml.classification") setRawPredictionCol(String value) * #### setParallelism public [OneVsRest](../../../../../org/apache/spark/ml/classification/OneVsRest.html "class in org.apache.spark.ml.classification") setParallelism(int value) The implementation of parallel one vs. rest runs the classification for each class in a separate threads. Parameters: `value` \- (undocumented) Returns: (undocumented) * #### setWeightCol public [OneVsRest](../../../../../org/apache/spark/ml/classification/OneVsRest.html "class in org.apache.spark.ml.classification") setWeightCol(String value) Sets the value of param `weightCol`. This is ignored if weight is not supported by `classifier`. If this is not set or empty, we treat all instance weights as 1.0\. Default is not set, so all instances have weight one. Parameters: `value` \- (undocumented) Returns: (undocumented) * #### transformSchema public [StructType](../../../../../org/apache/spark/sql/types/StructType.html "class in org.apache.spark.sql.types") transformSchema([StructType](../../../../../org/apache/spark/sql/types/StructType.html "class in org.apache.spark.sql.types") schema) Check transform validity and derive the output schema from the input schema. We check validity for interactions between parameters during `transformSchema` and raise an exception if any parameter value is invalid. Parameter value checks which do not depend on other parameters are handled by `Param.validate()`. Typical implementation should first conduct verification on schema change and parameter validity, including complex parameter interaction checks. Specified by: `[transformSchema](../../../../../org/apache/spark/ml/PipelineStage.html#transformSchema-org.apache.spark.sql.types.StructType-)` in class `[PipelineStage](../../../../../org/apache/spark/ml/PipelineStage.html "class in org.apache.spark.ml")` Parameters: `schema` \- (undocumented) Returns: (undocumented) * #### fit public [OneVsRestModel](../../../../../org/apache/spark/ml/classification/OneVsRestModel.html "class in org.apache.spark.ml.classification") fit([Dataset](../../../../../org/apache/spark/sql/Dataset.html "class in org.apache.spark.sql")<?> dataset) Description copied from class: `[Estimator](../../../../../org/apache/spark/ml/Estimator.html#fit-org.apache.spark.sql.Dataset-)` Fits a model to the input data. Specified by: `[fit](../../../../../org/apache/spark/ml/Estimator.html#fit-org.apache.spark.sql.Dataset-)` in class `[Estimator](../../../../../org/apache/spark/ml/Estimator.html "class in org.apache.spark.ml")<[OneVsRestModel](../../../../../org/apache/spark/ml/classification/OneVsRestModel.html "class in org.apache.spark.ml.classification")>` Parameters: `dataset` \- (undocumented) Returns: (undocumented) * #### copy public [OneVsRest](../../../../../org/apache/spark/ml/classification/OneVsRest.html "class in org.apache.spark.ml.classification") copy([ParamMap](../../../../../org/apache/spark/ml/param/ParamMap.html "class in org.apache.spark.ml.param") extra) Description copied from interface: `[Params](../../../../../org/apache/spark/ml/param/Params.html#copy-org.apache.spark.ml.param.ParamMap-)` Creates a copy of this instance with the same UID and some extra params. Subclasses should implement this method and set the return type properly. See `defaultCopy()`. Specified by: `[copy](../../../../../org/apache/spark/ml/param/Params.html#copy-org.apache.spark.ml.param.ParamMap-)` in interface `[Params](../../../../../org/apache/spark/ml/param/Params.html "interface in org.apache.spark.ml.param")` Specified by: `[copy](../../../../../org/apache/spark/ml/Estimator.html#copy-org.apache.spark.ml.param.ParamMap-)` in class `[Estimator](../../../../../org/apache/spark/ml/Estimator.html "class in org.apache.spark.ml")<[OneVsRestModel](../../../../../org/apache/spark/ml/classification/OneVsRestModel.html "class in org.apache.spark.ml.classification")>` Parameters: `extra` \- (undocumented) Returns: (undocumented) * #### write public [MLWriter](../../../../../org/apache/spark/ml/util/MLWriter.html "class in org.apache.spark.ml.util") write() Description copied from interface: `[MLWritable](../../../../../org/apache/spark/ml/util/MLWritable.html#write--)` Returns an `MLWriter` instance for this ML instance. Specified by: `[write](../../../../../org/apache/spark/ml/util/MLWritable.html#write--)` in interface `[MLWritable](../../../../../org/apache/spark/ml/util/MLWritable.html "interface in org.apache.spark.ml.util")` Returns: (undocumented)