Python数据挖掘代写 | COMP809 Data Mining and Machine Learning Assignment 2


For this question, you will explore the clustering methods you have learnt in this course. You have been given datasets from three very different application environments and you are required to explore three widely used clustering algorithms and deploy each of them on the different datasets.
The three algorithms that you have decided to explore are 1) K-Means 2) DBSCAN and 3) Agglomerative.

The three datasets that you have been given are:

➢ Seoul Bike Sharing Demand
➢ Sales Transactions
➢ Water Treatment Plant

You need to complete three tasks as detailed below.

For each activity in this task, you must explain each dataset and perform data exploration, data pre-processing and apply a suitable feature selection algorithm before deploying each clustering algorithm. Your clustering results should include the following measures:

The time is taken, Sum of Squares Errors (SSE), Cluster Silhouette Measure (CSM). You may use
Davis-Bouldin score as an alternative to SSE.

Submit Python code used for parts a) to c) below. You only need to submit the code for one of the 3 datasets.

a) Run the K means algorithm on each of the three datasets. Obtain the best value of K using either SSE and/or CSM. Tabulate your results in a 3 by 3 table, with each row corresponding to a dataset and each column corresponding to one of the three measures mentioned above.

Display the CSM plot for the best value of the K parameter for each dataset. [7 marks]

b) Repeat the same activity for DBSCAN algorithm and tabulate your results once again, just as you did for part a). Display the CSM plot and the 3 by 3 table for each dataset. [7 marks]

c) Finally, use the Agglomerative algorithm and document your results as you did for parts a) and b). Display the CSM plot and the 3 by 3 table for each dataset. [7 marks]

a) For each dataset identify which clustering algorithm performed best. Justify your answer.
In the event that no single algorithm performs best on all three performance measures, you will need to carefully consider how you will rate each of the measures and then decide how you will produce an overall measure that will enable you to rank the algorithms. [7 marks]

b) For each winner algorithm and for each dataset explain why it produced the best value for the CSM measure. This explanation must refer directly to the conceptual design details of the algorithm. There is no need to produce any further experimental evidence for this part of the question. [7 marks]

c) Based on what you produced in a) above, which clustering algorithm would you consider being the overall winner (i.e., after taking into consideration performance across all three datasets). Justify your answer. [5 marks]