This assignment is about fitting mixtures of axis-aligned Gaussians to two-dimensional data. Copy the files below into your directory: http://www.cs.toronto.edu/~hinton/csc321/matlab/mogem.m http://www.cs.toronto.edu/~hinton/csc321/matlab/moginit.m http://www.cs.toronto.edu/~hinton/csc321/matlab/plotellipse.m http://www.cs.toronto.edu/~hinton/csc321/matlab/showmog.m PART 1 (5 points) Run moginit to create training and validation datasets from 12 random Gaussians. Then use the function mogem to fit various numbers of Gaussians to the training data. Using performance on the validation data, determine the optimal number of Gaussians to fit to the training data. Present your results as a graph that plots both the validation density and the training density as a function of the number of Gaussians. Include a brief statement of what you think the graph shows. Also include a brief statement about the effects of changing the initial standard deviation used in mogem. Please do not change the random seeds in moginit.m (this will produce different data). You can do this later if you want to just play around and get a feel for how the algorithm behaves. PART 3 (3 points) Change moginit.m to use only 4 cases per Gaussian and repeat the experiment above (without changing the random seeds). Present your results as a graph and include a brief statement of what you think the graph shows and why it differs from the graph in PART 1.