COMP-4250 Big Data Analytics and Database DesignProject IIData Mining with WekaDeadline: End of Sunday March 28, 2021ObjectiveThe objective of this project is to gain hands-on experience using Weka (a popular data miningsoftware) to build models from real world datasets. You will also evaluate different data miningalgorithms in terms of accuracy and run time. This project is composed of five different tasks. Eachtask is explained in detail below. Note that task 5 is optional and you can get up to an extra 2% forperforming it.SoftwareThe software to be used in this project is Weka. See the following link to download the latest version.http://www.cs.waikato.ac.nz/m...It is a free software that you can download and install on your machine. A guide on how to useWeka's Explorer can be found in the attached ExplorerGuide.pdf. Another document about the ARFFdata format can be found in the attached Arff.pdf. Note that Weka is able to handle other data formatsas well (such as csv). However, ARFF is the default format for Weka.After installing Weka, you can use "java -Xmx256m -jar weka.jar" to modify the heap size whenyou invoke the program. You can increase the value of 256m if it is not enough. If not mentionedexplicitly, you should use the default parameters of Weka for each classification algorithm.Dataset: Along with this file on Blackboard.Submission• A pdf file that contains your answers to the tasks.• The programs, if any, that you write for solving the optional task 5, and a readme file showinghow to use these programs.• Make a zip file from all of the above files, and name the file as LLL_FFF_DDD.zip, in whichLLL, FFF, and DDD are your last name, first name, and student ID, respectively. Onesubmission per team is enough, and you should name the team members at the top of yoursubmitted pdf file.• Submit the zip file on Blackboard before the deadline.Task 1 (2%)Consider the attached lymphography dataset (lymph.arff) that describes 148 patients with 19attributes. The last attribute is the class attribute that classifies a patient in one of the four categories 2(normal, metastases, malign_lymph, and fibrosis). Detailed information about the attributes is givenin lymph_info.txt. The data set is in the ARFF format used by Weka.Use the following learning methods (classification algorithms) that are provided in Weka to learn aclassification model from the dataset with all the attributes:Ø C4.5 (weka.classifier.trees.J48)Ø RIPPER (weka.classifier.rules.JRip)For each learning method, report only the classification model learned from the dataset. Therefore,copy and paste the “Classifier model (full training set)” from Weka output to your report. For C4.5,it would be “J48 pruned tree”. For RIPPER, it would be “JRIP rules:”.Task 2 (5%)You are given a training dataset (monks-train.arff) and a test dataset (monks-test.arff) in which eachtraining example is represented by seven nominal (categorical) attributes. The last attribute is theclass attribute that classify each data point to one of the two classes (0 and 1). The attributeinformation is given below:Attribute Possible ValuesA1 1, 2, 3A2 1, 2, 3A3 1, 2A4 1, 2, 3A5 1, 2, 3, 4A6 1, 2class 0, 1Use the following learning methods provided in Weka to learn a classification model from thetraining dataset and test the model on the test dataset:Ø C4.5 (weka.classifier.trees.J48)Ø RIPPER (weka.classifier.rules.JRip)Ø k-Nearest Neighbor (weka.classifiers.lazy.IBk)Ø Naive Bayesian Classification (weka.classifiers.bayes.NaiveBayes)Ø Neural Networks (weka.classifiers.functions.MultilayerPerceptron)Note that you have to use the “Supplied test set” option in the “Test options” box of Weka and passthe test data file (monks-test.arff) to Weka.Report the classification summary, classification accuracy, and confusion matrix of each algorithmon test dataset. In other words, copy and paste the “Summary”, “Detailed Accuracy By Class”, and“Confusion Matrix” from Weka output to your report. Also, briefly discuss your results in termsof accuracy.4Task 3 (3%)You are given a dataset on credit card application approval (credit.arff) in the ARFF format. Thedataset describes 690 customers with 16 attributes. The last attribute is the class attribute describingwhether the customer's application was approved or not. The dataset contains both symbolic andcontinuous attributes. Some of the continuous attributes contain missing values (which are markedby "?"). All attribute names and values have been changed to meaningless symbols to protectconfidentiality of the data.Randomly split the dataset into a training set (70%) and a test set (30%). This can be done using the"Percentage split" in the “Test option” box of Weka's "Classify" section (set the number to 70).Apply each of the following classification algorithms to learn a classification model from thetraining set and classify the examples in the test set.Ø C4.5 (weka.classifier.trees.J48)Ø Naive Bayesian Classification (weka.classifiers.bayes.NaiveBayes)Ø Neural Networks (weka.classifiers.functions.MultilayerPerceptron)Report the classification accuracy of each learning algorithm on the test dataset. In other words,copy and paste the “Summary”, “Detailed Accuracy By Class”, and “Confusion Matrix” from Wekaoutput to your report.Note that C4.5, Naive Bayesian Classification, and Neural Networks can automatically handle bothsymbolic and continuous attributes as well as missing values of continuous attributes. Therefore,you do not need to do any extra preprocessing on the data and can directly run the above learningalgorithms on the input dataset (credit.arff).Task 4 (5%)Conduct 10-fold cross validation to evaluate the following classification learning algorithms:Ø C4.5 (weka.classifiers.trees.J48)Ø RIPPER (weka.classifier.rules.JRip)Ø Naive Bayesian Classification (weka.classifiers.bayes.NaiveBayes)Ø k-Nearest Neighbor (weka.classifiers.lazy.IBk)Ø Neural networks (weka.classifiers.functions.MultilayerPerceptron)on the following datasets from the UCI repository:• Ecoli database (ecoli.arff) (https://archive.ics.uci.edu/m...)• Glass identification database (glass.arff)(https://archive.ics.uci.edu/m...)• Image segmentation database (image.arff)(http://archive.ics.uci.edu/ml...)Use all attributes to build the model. Report the classification accuracy and run time of eachalgorithm on each data set. Discuss the results and determine if there is an overall winner in termsof accuracy (misclassification rates) and run time.You can summarize the results in two tables, one for the run time and the other for the accuracy.Then, you can add few sentences to discuss the results.6Task 5 (Optional and up to an extra 2%)You are given a dataset (risk.csv) that describes 30,000 online purchase orders for an online trader.Each example in the dataset corresponds to an online purchase order and is described by 43attributes. A detailed description of the attributes can be found in risk-attributes.txt. The secondattribute is the target (i.e., class) attribute that indicates whether an order has a high risk of defaultpayment. The class attribute has two values, "yes" meaning high risk and "no" meaning low risk.With the class attribute, the dataset contains 44 attributes in total. Randomly split the dataset into atraining set (70%) and a test set (30%). This can be done using the "Percentage split" in the “Testoption” box of Weka's "Classify" section (set the number to 70).Your task is to help the online trader to recognize if a person who makes an order is a customer whowill eventually pay the goods by using data mining techniques. You will use a classificationalgorithm to build a prediction model based on the training data. This prediction model shall thenbe used for classifying incoming orders into the high risk or low risk class. You need to assign eachorder in the test set to one of the two classes based on the prediction model learned from the trainingdata.For this learning and classification task, data preprocessing is very important. The dataset is a rawdataset and contains missing values and possibly irrelevant attributes. You may consider usingfeature selection (i.e., removing some attributes) and other data preprocessing techniques (fillingNULL values, discretize values). For example, ORDER_ID will likely be an irrelevant attribute.In addition to the classification result, you will also need to describe the data preprocessing methods(e.g., discretizing birth date into buckets) either from Weka or optionally written on your own andthe classification method used in your solution (test different ones). If you write any programs fordata processing, you should submit your programs with a readme file describing how to use theprograms.Report the classification accuracy (the same as previous tasks) and misclassification costcomputed for the two classes that do not have equal weights. Below is the cost matrix for this dataset.High risk Low riskHigh risk 0 50Low risk 5 0Students who have higher classification accuracy and lower misclassification cost will get bettermark for this task.General Note:When using data mining algorithms, you should be aware of the limitations of each algorithm. Somealgorithms are not able to handle symbolic attributes or may perform poorly when data containssymbolic attributes. Some other algorithms may have this problem with continuous attributes. Also,some algorithms may not be able to handle missing values. In this case, missing values should bepredicted in a preprocessing step before passing the data to the algorithm. Another option is toremove data points that contain missing values.
...