multivariate_gaussian
Aceasta functie este folosita pentru a calcula probabilitățile unui set de date X
sub o distribuție gaussiană multivariată, dată prin valorile medii mean_values
și matricea de covarianță variances
.

Implementare
Funcția va returna un vector probabilities
care conține probabilitățile pentru fiecare exemplu din X
.
obțin dimensiunea matricei
X
, unde m reprezintă numărul de exemple și n numărul de caracteristici.[m, n] = size(X);calculez diferența dintre fiecare exemplu din
X
și vectorul medieimean_values
.difference = bsxfun(@minus, X, mean_values)calculez inversa matricei de covarianță
variances
.inverse_variance = inv(variances);calculez determinantul matricei de covarianță
variances
.determinant = det(variances);calculez exponentul pentru funcția de densitate a probabilității, care este o parte esențială a ecuației pentru distribuția gaussiană multivariată.
exponent = -0.5 * sum((difference * inverse_variance) .* difference, 2);calculez probabilitățile pentru fiecare exemplu din
X
, folosind formula pentru distribuția gaussiană multivariată.probabilities = (1 / (sqrt((2 * pi)^n * determinant))) * exp(exponent);