Skip to content
Skew-Normal Mixture-of-Experts: A toolbox for Non-Linear Regression and Clustering using some non-normal mixtures of experts
MATLAB
Branch: master
Clone or download
Fetching latest commit…
Cannot retrieve the latest commit at this time.
Permalink
Type Name Latest commit message Commit time
Failed to load latest commit information.
data
.gitignore
IRLS.m
MAP.m
README.md
designmatrix_Poly_Reg.m
initialize_univ_NMoE.m
learn_SNMoE_EM.m
learn_univ_NMoE_EM.m
logsumexp.m
main_demo_SNMoE_RealData.m
main_demo_SNMoE_SimulatedData.m
multinomial_logit.m
normalize.m
sample_univ_NMoLE.m
sample_univ_SN.m
sample_univ_SNMoE.m
show_SNMoE_results.m

README.md

skew-normal mixture-of-experts (SNMoE) <<<<<

SNMoE : A Matlab/Octave toolbox for modeling, sampling, inference, regression and clustering of heterogeneous data with the Skew-Normal Mixture-of-Experts (SNMoE) model.

SNMoE provides a flexible modeling framework for heterogenous data with possibly skewed distributions to generalize the standard Normal mixture of expert model. SNMoE consists of a mixture of K skew-Normal expert regressors network (of degree p) gated by a softmax gating network (with regression degree q) and is represented by

  • The gating net. parameters $\alpha$'s of the softmax net.
  • The experts network parameters: The location parameters (regression coefficients) $\beta$'s, scale parameters $\sigma$'s, and the skewness parameters $\lambda$'s. SNMoE thus generalises mixtures of (normal, skew-normal) distributions and mixtures of regressions with these distributions. For example, when $q=0$, we retrieve mixtures of (skew-normal, or normal) regressions, and when both $p=0$ and $q=0$, it is a mixture of (skew-normal, or normal) distributions. It also reduces to the standard (normal, skew-normal) distribution when we only use a single expert (K=1).

Model estimation/learning is performed by a dedicated expectation conditional maximization (ECM) algorithm by maximizing the observed data log-likelihood. We provide simulated examples to illustrate the use of the model in model-based clustering of heteregenous regression data and in fitting non-linear regression functions. Real-world data examples of tone perception for musical data analysis, and the one of temperature anomalies for the analysis of climate change data, are also provided as application of the model.

To run it on the provided examples, please run "main_demo_SNMoE_SimulatedData.m" or "main_demo_SNMoE_RealData.m"

Please cite the code and the following papers when using this code: 
- F. Chamroukhi. Skew-Normal Mixture of Experts., July, 2016, The International Joint Conference on Neural Networks.
- F. Chamroukhi. Non-Normal Mixtures of Experts. arXiv:1506.06707, July, 2015

(c) Introduced and written by Faicel Chamroukhi (may 2015)

You can’t perform that action at this time.