Apostolos Fanakis
6 years ago
5 changed files with 113 additions and 29 deletions
@ -0,0 +1,79 @@ |
|||||
|
import numpy as np |
||||
|
|
||||
|
class bcolors: |
||||
|
BLUE = '\033[94m' |
||||
|
GREEN = '\033[92m' |
||||
|
YELLOW = '\033[93m' |
||||
|
RED = '\033[91m' |
||||
|
ENDC = '\033[0m' |
||||
|
|
||||
|
# def arrayFromJSON(JSONPath): |
||||
|
|
||||
|
# Prints a nice message to let the user know the module was imported |
||||
|
print(bcolors.BLUE + 'model_training loaded' + bcolors.ENDC) |
||||
|
|
||||
|
# Enables executing the module as a standalone script |
||||
|
if __name__ == "__main__": |
||||
|
import sys |
||||
|
dataset = np.load(sys.argv[1] + 'dataset.npy') |
||||
|
target = np.load(sys.argv[1] + 'target.npy') |
||||
|
featureKeys = np.load(sys.argv[1] + 'featureKeys.npy') |
||||
|
|
||||
|
row_idx = np.r_[0:10956, 13696:24653] |
||||
|
trainingSet = np.copy(dataset[row_idx, :]) |
||||
|
trainingTarget = np.copy(target[row_idx]) |
||||
|
|
||||
|
row_idx = np.r_[10956:13696, 24653:27392] |
||||
|
testSet = np.copy(dataset[row_idx, :]) |
||||
|
testTarget = np.copy(target[row_idx]) |
||||
|
|
||||
|
# ========================================================================== |
||||
|
|
||||
|
# SVM training |
||||
|
from sklearn.svm import SVC |
||||
|
print('Training...') |
||||
|
clf = SVC(gamma='scale') |
||||
|
clf.fit(trainingSet, trainingTarget) |
||||
|
print('Testing...') |
||||
|
print(clf.score(testSet, testTarget)) |
||||
|
|
||||
|
# Χωρίς preprocessing => 0.4999087424712539 |
||||
|
# Με Standardization => 0.8906734805621463 |
||||
|
# Με Normalization => 0.4999087424712539 |
||||
|
# Με stand. then norm. => 0.7873699580215368 |
||||
|
# Με varReducedDataset + stand. => 0.8826428180324877 |
||||
|
# Με perReducedDataset + stand. => 0.81529476181785 |
||||
|
|
||||
|
# Με varReducedDataset + stand. + gamma = scale => 0.8828253330899799 |
||||
|
# Με varReducedDataset + stand. + sigmoid kernel => 0.5875159700675305 |
||||
|
# Με varReducedDataset + stand. + poly kernel dgr 5 => 0.8441321409016244 |
||||
|
|
||||
|
# Decision tree |
||||
|
from sklearn import tree |
||||
|
print('Training...') |
||||
|
clf = tree.DecisionTreeClassifier() |
||||
|
clf.fit(trainingSet, trainingTarget) |
||||
|
print('Testing...') |
||||
|
print(clf.score(testSet, testTarget)) |
||||
|
|
||||
|
# Με varReducedDataset + stand. => 0.7541522175579485 |
||||
|
|
||||
|
# Multi-layer Perceptron |
||||
|
from sklearn.neural_network import MLPClassifier |
||||
|
print('Training...') |
||||
|
clf = MLPClassifier(solver='lbfgs', alpha=1e-5, hidden_layer_sizes=(5, 3), random_state=2) |
||||
|
clf.fit(trainingSet, trainingTarget) |
||||
|
print('Testing...') |
||||
|
print(clf.score(testSet, testTarget)) |
||||
|
|
||||
|
# Με varReducedDataset + stand. και rndState = 2 => 0.8647563423982478 |
||||
|
|
||||
|
# Naive Bayes |
||||
|
from sklearn.naive_bayes import GaussianNB |
||||
|
print('Training...') |
||||
|
clf = GaussianNB() |
||||
|
clf.fit(trainingSet, trainingTarget) |
||||
|
print('Testing...') |
||||
|
print(clf.score(testSet, testTarget)) |
||||
|
|
||||
|
# Με varReducedDataset + stand. => 0.6557766015696295 |
Binary file not shown.
Binary file not shown.
Loading…
Reference in new issue