umontreal.iro.lecuyer.probdistmulti
Class MultiNormalDist
- java.lang.Object
-
- umontreal.iro.lecuyer.probdistmulti.ContinuousDistributionMulti
-
- umontreal.iro.lecuyer.probdistmulti.MultiNormalDist
-
public class MultiNormalDist extends ContinuousDistributionMulti
Implements the abstract classContinuousDistributionMultifor the multinormal distribution with mean vector μ and covariance matrix Σ. The probability density isP[X = (x1,..., xd)] = exp(- (x - μ)TΣ-1(x - μ)/2)/((2π)^d |Σ|)1/2
-
-
Constructor Summary
Constructors Constructor and Description MultiNormalDist(double[] mu, double[][] sigma)
-
Method Summary
All Methods Static Methods Instance Methods Concrete Methods Deprecated Methods Modifier and Type Method and Description doubledensity(double[] x)Returns f (x1, x2,…, xd), the probability density of X evaluated at the point x, where x = {x1, x2,…, xd}.static doubledensity(double[] mu, double[][] sigma, double[] x)Computes the density of the multinormal distribution with parameters μ = mu and Σ = sigma, evaluated at x.double[][]getCorrelation()Returns the correlation matrix of the distribution, defined as ρij = σij/(σ_iiσ_jj)1/2.static double[][]getCorrelation(double[] mu, double[][] sigma)Computes the correlation matrix of the multinormal distribution with parameters μ and Σ).double[][]getCovariance()Returns the variance-covariance matrix of the distribution, defined as
σij = E[(Xi - μi)(Xj - μj)].static double[][]getCovariance(double[] mu, double[][] sigma)Computes the covariance matrix of the multinormal distribution with parameters μ and Σ.intgetDimension()Returns the dimension d of the distribution.static double[]getMaximumLikelihoodEstimateMu(double[][] x, int n, int d)Deprecated.static double[][]getMaximumLikelihoodEstimateSigma(double[][] x, int n, int d)Deprecated.double[]getMean()Returns the mean vector of the distribution, defined as μi = E[Xi].static double[]getMean(double[] mu, double[][] sigma)Returns the mean E[X] = μ of the multinormal distribution with parameters μ and Σ.static double[]getMLEMu(double[][] x, int n, int d)Estimates the parameters μ of the multinormal distribution using the maximum likelihood method.static double[][]getMLESigma(double[][] x, int n, int d)Estimates the parameters Σ of the multinormal distribution using the maximum likelihood method.double[]getMu()Returns the parameter μ of this object.doublegetMu(int i)Returns the i-th component of the parameter μ of this object.double[][]getSigma()Returns the parameter Σ of this object.voidsetParams(double[] mu, double[][] sigma)Sets the parameters μ and Σ of this object.
-
-
-
Method Detail
-
density
public double density(double[] x)
Description copied from class:ContinuousDistributionMultiReturns f (x1, x2,…, xd), the probability density of X evaluated at the point x, where x = {x1, x2,…, xd}. The convention is thatx [i -1 ] = xi.- Specified by:
densityin classContinuousDistributionMulti- Parameters:
x- value at which the density is evaluated- Returns:
- density function evaluated at x
-
getMean
public double[] getMean()
Description copied from class:ContinuousDistributionMultiReturns the mean vector of the distribution, defined as μi = E[Xi].- Specified by:
getMeanin classContinuousDistributionMulti
-
getCovariance
public double[][] getCovariance()
Description copied from class:ContinuousDistributionMultiReturns the variance-covariance matrix of the distribution, defined as
σij = E[(Xi - μi)(Xj - μj)].- Specified by:
getCovariancein classContinuousDistributionMulti
-
getCorrelation
public double[][] getCorrelation()
Description copied from class:ContinuousDistributionMultiReturns the correlation matrix of the distribution, defined as ρij = σij/(σ_iiσ_jj)1/2.- Specified by:
getCorrelationin classContinuousDistributionMulti
-
density
public static double density(double[] mu, double[][] sigma, double[] x)Computes the density of the multinormal distribution with parameters μ = mu and Σ = sigma, evaluated at x.
-
getDimension
public int getDimension()
Returns the dimension d of the distribution.- Overrides:
getDimensionin classContinuousDistributionMulti
-
getMean
public static double[] getMean(double[] mu, double[][] sigma)Returns the mean E[X] = μ of the multinormal distribution with parameters μ and Σ.
-
getCovariance
public static double[][] getCovariance(double[] mu, double[][] sigma)Computes the covariance matrix of the multinormal distribution with parameters μ and Σ.
-
getCorrelation
public static double[][] getCorrelation(double[] mu, double[][] sigma)Computes the correlation matrix of the multinormal distribution with parameters μ and Σ).
-
getMaximumLikelihoodEstimateMu
@Deprecated public static double[] getMaximumLikelihoodEstimateMu(double[][] x, int n, int d)Deprecated.It is now called getMLEMu.
-
getMLEMu
public static double[] getMLEMu(double[][] x, int n, int d)Estimates the parameters μ of the multinormal distribution using the maximum likelihood method. It uses the n observations of d components in table x[i][j], i = 0, 1,…, n - 1 and j = 0, 1,…, d - 1.- Parameters:
x- the list of observations used to evaluate parametersn- the number of observations used to evaluate parametersd- the dimension of each observation- Returns:
- returns the parameters [μ1,...,μd]
-
getMaximumLikelihoodEstimateSigma
@Deprecated public static double[][] getMaximumLikelihoodEstimateSigma(double[][] x, int n, int d)Deprecated.It is now called getMLESigma.
-
getMLESigma
public static double[][] getMLESigma(double[][] x, int n, int d)Estimates the parameters Σ of the multinormal distribution using the maximum likelihood method. It uses the n observations of d components in table x[i][j], i = 0, 1,…, n - 1 and j = 0, 1,…, d - 1.- Parameters:
x- the list of observations used to evaluate parametersn- the number of observations used to evaluate parametersd- the dimension of each observation- Returns:
- returns the covariance matrix Σ
-
getMu
public double[] getMu()
Returns the parameter μ of this object.
-
getMu
public double getMu(int i)
Returns the i-th component of the parameter μ of this object.
-
getSigma
public double[][] getSigma()
Returns the parameter Σ of this object.
-
setParams
public void setParams(double[] mu, double[][] sigma)Sets the parameters μ and Σ of this object.
-
-
DMelt 3.0 © DataMelt by jWork.ORG