public class GaussianMixture extends Estimator<GaussianMixtureModel> implements GaussianMixtureParams, DefaultParamsWritable
This class performs expectation maximization for multivariate Gaussian Mixture Models (GMMs). A GMM represents a composite distribution of independent Gaussian distributions with associated "mixing" weights specifying each's contribution to the composite.
Given a set of sample points, this class will maximize the log-likelihood for a mixture of k Gaussians, iterating until the log-likelihood changes by less than convergenceTol, or until it has reached the max number of iterations. While this process is generally guaranteed to converge, it is not guaranteed to find a global optimum.
Constructor and Description |
---|
GaussianMixture() |
GaussianMixture(String uid) |
Modifier and Type | Method and Description |
---|---|
GaussianMixture |
copy(ParamMap extra)
Creates a copy of this instance with the same UID and some extra params.
|
GaussianMixtureModel |
fit(Dataset<?> dataset)
Fits a model to the input data.
|
static GaussianMixture |
load(String path) |
static MLReader<T> |
read() |
GaussianMixture |
setFeaturesCol(String value) |
GaussianMixture |
setK(int value) |
GaussianMixture |
setMaxIter(int value) |
GaussianMixture |
setPredictionCol(String value) |
GaussianMixture |
setProbabilityCol(String value) |
GaussianMixture |
setSeed(long value) |
GaussianMixture |
setTol(double value) |
StructType |
transformSchema(StructType schema)
:: DeveloperApi ::
|
String |
uid()
An immutable unique ID for the object and its derivatives.
|
equals, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
getK, k, validateAndTransformSchema
getMaxIter, maxIter
featuresCol, getFeaturesCol
getPredictionCol, predictionCol
getProbabilityCol, probabilityCol
clear, copyValues, defaultCopy, defaultParamMap, explainParam, explainParams, extractParamMap, extractParamMap, get, getDefault, getOrDefault, getParam, hasDefault, hasParam, isDefined, isSet, paramMap, params, set, set, set, setDefault, setDefault, shouldOwn
toString
write
save
initializeLogging, initializeLogIfNecessary, initializeLogIfNecessary, isTraceEnabled, log_, log, logDebug, logDebug, logError, logError, logInfo, logInfo, logName, logTrace, logTrace, logWarning, logWarning
public GaussianMixture(String uid)
public GaussianMixture()
public static GaussianMixture load(String path)
public static MLReader<T> read()
public String uid()
Identifiable
uid
in interface Identifiable
public GaussianMixture copy(ParamMap extra)
Params
defaultCopy()
.copy
in interface Params
copy
in class Estimator<GaussianMixtureModel>
extra
- (undocumented)public GaussianMixture setFeaturesCol(String value)
public GaussianMixture setPredictionCol(String value)
public GaussianMixture setProbabilityCol(String value)
public GaussianMixture setK(int value)
public GaussianMixture setMaxIter(int value)
public GaussianMixture setTol(double value)
public GaussianMixture setSeed(long value)
public GaussianMixtureModel fit(Dataset<?> dataset)
Estimator
fit
in class Estimator<GaussianMixtureModel>
dataset
- (undocumented)public StructType transformSchema(StructType schema)
PipelineStage
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.
transformSchema
in class PipelineStage
schema
- (undocumented)