public class GaussianMixtureModel extends Object implements scala.Serializable, Saveable
Multivariate Gaussian Mixture Model (GMM) consisting of k Gaussians, where points are drawn from each Gaussian i=1..k with probability w(i); mu(i) and sigma(i) are the respective mean and covariance for each Gaussian distribution i=1..k.
param: weights Weights for each Gaussian distribution in the mixture, where weights(i) is the weight for Gaussian i, and weights.sum == 1 param: gaussians Array of MultivariateGaussian where gaussians(i) represents the Multivariate Gaussian (Normal) Distribution for Gaussian i
Constructor and Description |
---|
GaussianMixtureModel(double[] weights,
MultivariateGaussian[] gaussians) |
Modifier and Type | Method and Description |
---|---|
MultivariateGaussian[] |
gaussians() |
int |
k()
Number of gaussians in mixture
|
static GaussianMixtureModel |
load(SparkContext sc,
String path) |
JavaRDD<Integer> |
predict(JavaRDD<Vector> points)
Java-friendly version of
predict() |
RDD<Object> |
predict(RDD<Vector> points)
Maps given points to their cluster indices.
|
RDD<double[]> |
predictSoft(RDD<Vector> points)
Given the input vectors, return the membership value of each vector
to all mixture components.
|
void |
save(SparkContext sc,
String path)
Save this model to the given path.
|
double[] |
weights() |
public GaussianMixtureModel(double[] weights, MultivariateGaussian[] gaussians)
public static GaussianMixtureModel load(SparkContext sc, String path)
public double[] weights()
public MultivariateGaussian[] gaussians()
public void save(SparkContext sc, String path)
Saveable
This saves: - human-readable (JSON) model metadata to path/metadata/ - Parquet formatted data to path/data/
The model may be loaded using Loader.load
.
public int k()