Sale!

Data Mining Homework #1

$30.00

Category:

Description

5/5 - (2 votes)

Page 1 of 3
COSC 4570/5010 Data Mining
Homework #1
Submission guideline You need to submit only one .zip file. Please name the file as “Your Net
id_Homework1.zip”.
1. Problems from the book
Solve the following from Chapter 2 from Problems 2, 5, 13, 15, and 16.
2. Sampling
• When is sampling with replacement appropriate and when is sampling without
replacement more preferable? Provide two examples where each is more appropriate.
• Samples obtained uniformly at random can miss anomalies (underrepresented data
points) in datasets. How can we sample more systematically using PCA?
3. Curse of Dimensionality
Due to curse of dimensionality distances become meaningless in high-dimensional spaces. That
is, the minimum distance between random pairs of nodes becomes really close to the maximum
distance between such pairs. In this problem, you are going to verify this phenomenon.
Write a program in Java, C, C++, Python, or MATLAB that
a. Generates n d-dimensional random points.
b. Computes the maximum and minimum distance using Euclidean distance between all !”
#$
pairs of nodes (i.e. �(�#) ����������). Denote these values as ���(�, �) and ���(�, �)
respectively.
c. Computes �(�, �) = log ;<=(>,”)?;@A(>,”)
;@A (>,”)
Change n in range 100 ≤ � ≤ 1,000 and d in range 1 ≤ � ≤ 100 and assume that
feature values are in range [0,100] (or some other fixed range). Compute �(�, �) using
your program and plot the 3-D surface of �(�, �) in MATLAB or your programming
language of choice.
Page 2 of 3
How does the surface change with respect to n? Perform the same experiment, but this
time using �F norm for computing distances (Book, Page 70) and plot the surface. Submit
your code and your two plots.
4. Weka
Download and install Weka from http://www.cs.waikato.ac.nz/ml/weka/ . The following
tutorial is useful:
https://www.cs.auckland.ac.nz/courses/compsci367s1c/tutorials/IntroductionToWeka.pdf
You can also watch Weka Tutorials on YouTube. Get used to Weka and learn how to
modify data in Weka. In particular, learn how to generate ARFF files for Weka from csv
files (open an arff file in notepad from Weka data folder + visit
http://www.cs.waikato.ac.nz/ml/weka/ arff.html.) You can use Weka’s own CSV-to-ARFF
converter or you can write your own header for ARFF files.
Load a dataset from the data folder of Weka (e.g., weka-3-6/data/weather.numeric.arff).
You can always see the current stage of your dataset using the “edit” button. For each
of the following, determine how it can be done using Weka and submit as part of your
homework, the proper command and parameters. For example, if you want to center
your data using Weka, you need to use the Center filter, under
weka.filters.unsupervised.attribute.Center.
• Center data (having zero mean): Center
• Removing attribute 2 to 4
• Removing all attributes but the last
• Removing Reordering attributes 1,2,3,4,5 as 5,4,1,2,3
• Removing instances with missing values:
• How is a missing value denoted in an ARFF file?
• What does “visualize all” do?
• Removing all instances where the 3nd feature value is equal to ‘x’.
5. PCA
The most known dataset in data mining/machine learning is the Iris dataset. Learn about
this dataset at the following URL:
https://archive.ics.uci.edu/ml/datasets/iris.
Download the dataset (in Data Folder > iris.data). The dataset contains the information
gathered on three types of iris plant: Iris Setosa, Iris Versicolour, and Iris Virginica. To
see if different types of Iris plants are distinguishable from one another, we can just
Page 3 of 3
visualize our dataset. The Iris dataset is a four-dimensional dataset; therefore, it cannot
be visualized in 2D or 3D. Apply PCA to the dataset and reduce the dimensionality to
two. Plot the dimensionality- reduced dataset. Color data points based on their plant
type (e.g., Iris-setosa can be red, etc.). The plant type is given as the fifth column in the
dataset. The figure should show the type(s) that can be easily distinguished from others.
Which Iris type is the easiest to distinguish from the rest? Submit your code and plot.