-
Notifications
You must be signed in to change notification settings - Fork 2
/
Copy pathmain.py
34 lines (26 loc) · 1.12 KB
/
main.py
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
import sys,os
from sklearn.utils import shuffle
import random as rand
from cross_validation import cross_validation
sys.path.append(os.path.realpath('..\data'))
from data import load_data
#Import Algorithms
from CitationKNN import CitationKNN
from KNN import KNN
print('Started')
#Load Data
#bags,labels,_ = load_data('musk1_scaled')
#bags,labels,_ = load_data('musk2_scaled')
bags,labels,_ = load_data('data_gauss')
#Shuffle Data
bags,labels = shuffle(bags, labels, random_state=rand.randint(0, 100))
#Number of Folds
folds=4
for k in range(2, 11):
citationknn_classifier = CitationKNN()
parameters_citationknn = {'references': k, 'citers': k+2}
knn_classifier = KNN();
parameters_knn = {'k': k}
accuracy_model1, accuracy_model2 = cross_validation(bags=bags,labels=labels, model_1=citationknn_classifier, model_2=knn_classifier, folds=folds, parameters_1=parameters_citationknn, parameters_2 = parameters_knn)
print("k=" + str(k)+", references="+str(k)+", citers="+str(k+2))
print('knn accuracy='+str(accuracy_model2)+", citation knn accuracy = "+str(accuracy_model1))