This code demonstrates EM Algorithm for circular data.
Normally, Expectation-Maximization (EM) algorithm example employs a Gaussian distribution.
However, in this example, I employed a Von-mises distribution to EM algorithm.
EM algorithm will cluster circular data as below.
See p.106 in the text book Pattern Recognition and Machine learning by Christoper Bishop for more information about Von-mises distribution.
The mathematical description about Von-mises distribution and EM algorithm can be described as below.
Von-mises Distribution :
Theta_0 is mean of distribution.
m is normalization coefficient
I_0(m) is bessel function
In this example, I used audio data that are panned between multiple audio channels.
More detailed description can be found on this paper : PDF
run the code "RUN_THIS_em_von.m"
Download MATLAB code here :