NaiveBayesModel (Spark 3.5.5 JavaDoc) (original) (raw)
Object
- org.apache.spark.ml.PipelineStage
- org.apache.spark.ml.Transformer
- org.apache.spark.ml.Model
* * org.apache.spark.ml.PredictionModel<FeaturesType,M>
* * org.apache.spark.ml.classification.ClassificationModel<FeaturesType,M>
* * org.apache.spark.ml.classification.ProbabilisticClassificationModel<Vector,NaiveBayesModel>
* * org.apache.spark.ml.classification.NaiveBayesModel
- org.apache.spark.ml.Model
- org.apache.spark.ml.Transformer
All Implemented Interfaces:
java.io.Serializable, org.apache.spark.internal.Logging, ClassifierParams, NaiveBayesParams, ProbabilisticClassifierParams, Params, HasFeaturesCol, HasLabelCol, HasPredictionCol, HasProbabilityCol, HasRawPredictionCol, HasThresholds, HasWeightCol, PredictorParams, Identifiable, MLWritable
public class NaiveBayesModel
extends ProbabilisticClassificationModel<Vector,NaiveBayesModel>
implements NaiveBayesParams, MLWritable
Model produced by NaiveBayes
param: pi log of class priors, whose dimension is C (number of classes) param: theta log of class conditional probabilities, whose dimension is C (number of classes) by D (number of features) param: sigma variance of each feature, whose dimension is C (number of classes) by D (number of features). This matrix is only available when modelType is set Gaussian.
See Also:
Serialized Form
Nested Class Summary
* ### Nested classes/interfaces inherited from interface org.apache.spark.internal.Logging `org.apache.spark.internal.Logging.SparkShellLoggingFilter`
Method Summary
All Methods Static Methods Instance Methods Concrete Methods
Modifier and Type Method and Description NaiveBayesModel copy(ParamMap extra) Creates a copy of this instance with the same UID and some extra params. static NaiveBayesModel load(String path) Param modelType() The model type which is a string (case-sensitive). int numClasses() Number of classes (values which the label can take). int numFeatures() Returns the number of features the model was trained on. Vector pi() Vector predictRaw(Vector features) Raw prediction for each possible label. static MLReader<NaiveBayesModel> read() Matrix sigma() DoubleParam smoothing() The smoothing parameter. Matrix theta() String toString() 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.classification.[ProbabilisticClassificationModel](../../../../../org/apache/spark/ml/classification/ProbabilisticClassificationModel.html "class in org.apache.spark.ml.classification") `[normalizeToProbabilitiesInPlace](../../../../../org/apache/spark/ml/classification/ProbabilisticClassificationModel.html#normalizeToProbabilitiesInPlace-org.apache.spark.ml.linalg.DenseVector-), [predictProbability](../../../../../org/apache/spark/ml/classification/ProbabilisticClassificationModel.html#predictProbability-FeaturesType-), [probabilityCol](../../../../../org/apache/spark/ml/classification/ProbabilisticClassificationModel.html#probabilityCol--), [setProbabilityCol](../../../../../org/apache/spark/ml/classification/ProbabilisticClassificationModel.html#setProbabilityCol-java.lang.String-), [setThresholds](../../../../../org/apache/spark/ml/classification/ProbabilisticClassificationModel.html#setThresholds-double:A-), [thresholds](../../../../../org/apache/spark/ml/classification/ProbabilisticClassificationModel.html#thresholds--), [transform](../../../../../org/apache/spark/ml/classification/ProbabilisticClassificationModel.html#transform-org.apache.spark.sql.Dataset-), [transformSchema](../../../../../org/apache/spark/ml/classification/ProbabilisticClassificationModel.html#transformSchema-org.apache.spark.sql.types.StructType-)` * ### Methods inherited from class org.apache.spark.ml.classification.[ClassificationModel](../../../../../org/apache/spark/ml/classification/ClassificationModel.html "class in org.apache.spark.ml.classification") `[predict](../../../../../org/apache/spark/ml/classification/ClassificationModel.html#predict-FeaturesType-), [rawPredictionCol](../../../../../org/apache/spark/ml/classification/ClassificationModel.html#rawPredictionCol--), [setRawPredictionCol](../../../../../org/apache/spark/ml/classification/ClassificationModel.html#setRawPredictionCol-java.lang.String-), [transformImpl](../../../../../org/apache/spark/ml/classification/ClassificationModel.html#transformImpl-org.apache.spark.sql.Dataset-)` * ### Methods inherited from class org.apache.spark.ml.[PredictionModel](../../../../../org/apache/spark/ml/PredictionModel.html "class in org.apache.spark.ml") `[featuresCol](../../../../../org/apache/spark/ml/PredictionModel.html#featuresCol--), [labelCol](../../../../../org/apache/spark/ml/PredictionModel.html#labelCol--), [predictionCol](../../../../../org/apache/spark/ml/PredictionModel.html#predictionCol--), [setFeaturesCol](../../../../../org/apache/spark/ml/PredictionModel.html#setFeaturesCol-java.lang.String-), [setPredictionCol](../../../../../org/apache/spark/ml/PredictionModel.html#setPredictionCol-java.lang.String-)` * ### Methods inherited from class org.apache.spark.ml.[Model](../../../../../org/apache/spark/ml/Model.html "class in org.apache.spark.ml") `[hasParent](../../../../../org/apache/spark/ml/Model.html#hasParent--), [parent](../../../../../org/apache/spark/ml/Model.html#parent--), [setParent](../../../../../org/apache/spark/ml/Model.html#setParent-org.apache.spark.ml.Estimator-)` * ### Methods inherited from class org.apache.spark.ml.[Transformer](../../../../../org/apache/spark/ml/Transformer.html "class in org.apache.spark.ml") `[transform](../../../../../org/apache/spark/ml/Transformer.html#transform-org.apache.spark.sql.Dataset-org.apache.spark.ml.param.ParamMap-), [transform](../../../../../org/apache/spark/ml/Transformer.html#transform-org.apache.spark.sql.Dataset-org.apache.spark.ml.param.ParamPair-org.apache.spark.ml.param.ParamPair...-), [transform](../../../../../org/apache/spark/ml/Transformer.html#transform-org.apache.spark.sql.Dataset-org.apache.spark.ml.param.ParamPair-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, wait, wait, wait` * ### Methods inherited from interface org.apache.spark.ml.classification.[NaiveBayesParams](../../../../../org/apache/spark/ml/classification/NaiveBayesParams.html "interface in org.apache.spark.ml.classification") `[getModelType](../../../../../org/apache/spark/ml/classification/NaiveBayesParams.html#getModelType--), [getSmoothing](../../../../../org/apache/spark/ml/classification/NaiveBayesParams.html#getSmoothing--)` * ### Methods inherited from interface org.apache.spark.ml.[PredictorParams](../../../../../org/apache/spark/ml/PredictorParams.html "interface in org.apache.spark.ml") `[validateAndTransformSchema](../../../../../org/apache/spark/ml/PredictorParams.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--), [labelCol](../../../../../org/apache/spark/ml/param/shared/HasLabelCol.html#labelCol--)` * ### 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") `[featuresCol](../../../../../org/apache/spark/ml/param/shared/HasFeaturesCol.html#featuresCol--), [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--), [predictionCol](../../../../../org/apache/spark/ml/param/shared/HasPredictionCol.html#predictionCol--)` * ### 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.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.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.ml.classification.[ProbabilisticClassifierParams](../../../../../org/apache/spark/ml/classification/ProbabilisticClassifierParams.html "interface in org.apache.spark.ml.classification") `[validateAndTransformSchema](../../../../../org/apache/spark/ml/classification/ProbabilisticClassifierParams.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.[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--), [rawPredictionCol](../../../../../org/apache/spark/ml/param/shared/HasRawPredictionCol.html#rawPredictionCol--)` * ### Methods inherited from interface org.apache.spark.ml.param.shared.[HasProbabilityCol](../../../../../org/apache/spark/ml/param/shared/HasProbabilityCol.html "interface in org.apache.spark.ml.param.shared") `[getProbabilityCol](../../../../../org/apache/spark/ml/param/shared/HasProbabilityCol.html#getProbabilityCol--)` * ### Methods inherited from interface org.apache.spark.ml.param.shared.[HasThresholds](../../../../../org/apache/spark/ml/param/shared/HasThresholds.html "interface in org.apache.spark.ml.param.shared") `[getThresholds](../../../../../org/apache/spark/ml/param/shared/HasThresholds.html#getThresholds--)` * ### 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`
Method Detail
* #### read public static [MLReader](../../../../../org/apache/spark/ml/util/MLReader.html "class in org.apache.spark.ml.util")<[NaiveBayesModel](../../../../../org/apache/spark/ml/classification/NaiveBayesModel.html "class in org.apache.spark.ml.classification")> read() * #### load public static [NaiveBayesModel](../../../../../org/apache/spark/ml/classification/NaiveBayesModel.html "class in org.apache.spark.ml.classification") load(String path) * #### smoothing public final [DoubleParam](../../../../../org/apache/spark/ml/param/DoubleParam.html "class in org.apache.spark.ml.param") smoothing() The smoothing parameter. (default = 1.0). Specified by: `[smoothing](../../../../../org/apache/spark/ml/classification/NaiveBayesParams.html#smoothing--)` in interface `[NaiveBayesParams](../../../../../org/apache/spark/ml/classification/NaiveBayesParams.html "interface in org.apache.spark.ml.classification")` Returns: (undocumented) * #### modelType public final [Param](../../../../../org/apache/spark/ml/param/Param.html "class in org.apache.spark.ml.param")<String> modelType() The model type which is a string (case-sensitive). Supported options: "multinomial", "complement", "bernoulli", "gaussian". (default = multinomial) Specified by: `[modelType](../../../../../org/apache/spark/ml/classification/NaiveBayesParams.html#modelType--)` in interface `[NaiveBayesParams](../../../../../org/apache/spark/ml/classification/NaiveBayesParams.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) * #### 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) * #### pi public [Vector](../../../../../org/apache/spark/ml/linalg/Vector.html "interface in org.apache.spark.ml.linalg") pi() * #### theta public [Matrix](../../../../../org/apache/spark/ml/linalg/Matrix.html "interface in org.apache.spark.ml.linalg") theta() * #### sigma public [Matrix](../../../../../org/apache/spark/ml/linalg/Matrix.html "interface in org.apache.spark.ml.linalg") sigma() * #### numFeatures public int numFeatures() Returns the number of features the model was trained on. If unknown, returns -1 Overrides: `[numFeatures](../../../../../org/apache/spark/ml/PredictionModel.html#numFeatures--)` in class `[PredictionModel](../../../../../org/apache/spark/ml/PredictionModel.html "class in org.apache.spark.ml")<[Vector](../../../../../org/apache/spark/ml/linalg/Vector.html "interface in org.apache.spark.ml.linalg"),[NaiveBayesModel](../../../../../org/apache/spark/ml/classification/NaiveBayesModel.html "class in org.apache.spark.ml.classification")>` * #### numClasses public int numClasses() Number of classes (values which the label can take). Specified by: `[numClasses](../../../../../org/apache/spark/ml/classification/ClassificationModel.html#numClasses--)` in class `[ClassificationModel](../../../../../org/apache/spark/ml/classification/ClassificationModel.html "class in org.apache.spark.ml.classification")<[Vector](../../../../../org/apache/spark/ml/linalg/Vector.html "interface in org.apache.spark.ml.linalg"),[NaiveBayesModel](../../../../../org/apache/spark/ml/classification/NaiveBayesModel.html "class in org.apache.spark.ml.classification")>` * #### predictRaw public [Vector](../../../../../org/apache/spark/ml/linalg/Vector.html "interface in org.apache.spark.ml.linalg") predictRaw([Vector](../../../../../org/apache/spark/ml/linalg/Vector.html "interface in org.apache.spark.ml.linalg") features) Raw prediction for each possible label. The meaning of a "raw" prediction may vary between algorithms, but it intuitively gives a measure of confidence in each possible label (where larger = more confident). This internal method is used to implement `transform()` and output `rawPredictionCol`. Specified by: `[predictRaw](../../../../../org/apache/spark/ml/classification/ClassificationModel.html#predictRaw-FeaturesType-)` in class `[ClassificationModel](../../../../../org/apache/spark/ml/classification/ClassificationModel.html "class in org.apache.spark.ml.classification")<[Vector](../../../../../org/apache/spark/ml/linalg/Vector.html "interface in org.apache.spark.ml.linalg"),[NaiveBayesModel](../../../../../org/apache/spark/ml/classification/NaiveBayesModel.html "class in org.apache.spark.ml.classification")>` Parameters: `features` \- (undocumented) Returns: vector where element i is the raw prediction for label i. This raw prediction may be any real number, where a larger value indicates greater confidence for that label. * #### copy public [NaiveBayesModel](../../../../../org/apache/spark/ml/classification/NaiveBayesModel.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/Model.html#copy-org.apache.spark.ml.param.ParamMap-)` in class `[Model](../../../../../org/apache/spark/ml/Model.html "class in org.apache.spark.ml")<[NaiveBayesModel](../../../../../org/apache/spark/ml/classification/NaiveBayesModel.html "class in org.apache.spark.ml.classification")>` Parameters: `extra` \- (undocumented) Returns: (undocumented) * #### toString public String toString() Specified by: `[toString](../../../../../org/apache/spark/ml/util/Identifiable.html#toString--)` in interface `[Identifiable](../../../../../org/apache/spark/ml/util/Identifiable.html "interface in org.apache.spark.ml.util")` Overrides: `toString` in class `Object` * #### 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)