-
Notifications
You must be signed in to change notification settings - Fork 0
Expand file tree
/
Copy pathrunScripts.m
More file actions
115 lines (97 loc) · 3.71 KB
/
runScripts.m
File metadata and controls
115 lines (97 loc) · 3.71 KB
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
%%% Quality of Life Improvement Settings %%%
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
clear
clc
close all
rng(1) % For reproducability
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
%%% Change Directories Here First %%%
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
directoryPath = 'C:\Users\Sean\Documents\MATLAB\Project2\';
%%%%%%%%%%%%%%%%%%%%%%%%%%%
%%% Image Preprocessing %%%
%%%%%%%%%%%%%%%%%%%%%%%%%%%
disp('Image Preprocessing');
imagePreProcessing(directoryPath);
%%%%%%%%%%%%%%%%%%%%%%%
%%% Table Generator %%%
%%%%%%%%%%%%%%%%%%%%%%%
disp('Table Generator');
dataEven = tableGeneratorEvenSampling(directoryPath);
dataRandom = tableGeneratorRandomSampling(directoryPath);
%%%%%%%%%%%%%%%%%%%%%%%
%%% Data Tabulation %%%
%%%%%%%%%%%%%%%%%%%%%%%
% Tabulating
disp('Data Tabulation (Even)');
X_even = dataEven(:, 1:end-1);
Y_even = dataEven(:, end);
tabulate(Y_even);
disp('Data Tabulation (Random)');
X_random = dataRandom(:, 1:end-1);
Y_random = dataRandom(:, end);
tabulate(Y_random);
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
%%% Model Comparisons (Naive Bayes VS SVM w/ dataEven) %%%
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
disp('Model Comparisons (Naive Bayes VS SVM, w/ dataEven)');
% Naive Bayes w/ Even Data; Setting Up Parameters
disp('Naive Bayes w/ Even Data');
crossVal = false;
evenOrRandom = 'even';
[confusionMatrixAvg, bestImageName, confusionMatrixBest,...
worstImageName, confusionMatrixWorst] =...
runNaiveBayes(X_even, Y_even, directoryPath, crossVal, evenOrRandom)
% SVM w/ Even Data; Setting Up Parameters
disp('SVM w/ Even Data');
lambda = 0.001;
maxIter = 1000000;
trickSTD = false;
evenOrRandom = 'even';
% Training and Testing Model
[confusionMatrixAvg, bestImageName, confusionMatrixBest,...
worstImageName, confusionMatrixWorst] =...
runSoftSVM(X_even, Y_even, directoryPath,...
lambda, maxIter, trickSTD, evenOrRandom)
% Naive Bayes w/ Random Data; Setting Up Parameters
disp('Naive Bayes w/ Random Data');
crossVal = false;
evenOrRandom = 'random';
% Training and Testing Model
[confusionMatrixAvg, bestImageName, confusionMatrixBest,...
worstImageName, confusionMatrixWorst] =...
runNaiveBayes(X_even, Y_even, directoryPath, crossVal, evenOrRandom)
% SVM w/ Random Data; Setting Up Parameters
disp('SVM w/ Random Data');
lambda = 0.001;
maxIter = 1000000;
trickSTD = false;
evenOrRandom = 'random';
% Training and Testing Model
[confusionMatrixAvg, bestImageName, confusionMatrixBest,...
worstImageName, confusionMatrixWorst] =...
runSoftSVM(X_random, Y_random, directoryPath,...
lambda, maxIter, trickSTD, evenOrRandom)
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
%%% Model Comparisons (SVM w/ SVM STD VS Naive Bayes w/ CrossVal) %%%
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
% Naive Bayes, w/ Random Data & Cross-Validatition; Setting Up Parameters
disp('Naive Bayes, w/ Random Data & Cross-Validatition');
crossVal = true;
evenOrRandom = 'random';
% Training and Testing Model
[confusionMatrixAvg, bestImageName, confusionMatrixBest,...
worstImageName, confusionMatrixWorst] =...
runNaiveBayes(X_random, Y_random, directoryPath, crossVal, evenOrRandom)
% SVM w/ Even Data; Setting Up Parameters
disp('SVM w/ Even Data & STD Trick');
lambda = 0.001;
maxIter = 1000000;
trickSTD = true;
evenOrRandom = 'even';
% Training and Testing Model
[confusionMatrixAvg, bestImageName, confusionMatrixBest,...
worstImageName, confusionMatrixWorst] =...
runSoftSVM(X_even, Y_even, directoryPath,...
lambda, maxIter, trickSTD, evenOrRandom)