https://www.dailydishnews.org.uk/post/gaussian-mixture-models-the-em-algorithm-in-practice-17kixt