Skip to content

Commit

Permalink
compute performances for non-ML approaches
Browse files Browse the repository at this point in the history
  • Loading branch information
antoineBarbez committed May 22, 2019
1 parent ff1654b commit 2d8d12d
Show file tree
Hide file tree
Showing 75 changed files with 682 additions and 30 deletions.
Binary file modified .DS_Store
Binary file not shown.
2 changes: 1 addition & 1 deletion detection_tools/feature_envy/hist.py
Original file line number Diff line number Diff line change
Expand Up @@ -27,7 +27,7 @@ def getSmells(systemName, alpha=2.6):
occ = np.zeros(len(methods))

# Matrix representing co-occurences between methods and classes, i.e, the number of time each
# methods of the system has been changed in commits involving methods of each class of the system.
# method of the system has been changed in commits involving methods of each class of the system.
# For example, occurence[i, j] = 5 means that the ith method of the system have been involved
# 5 times in commits involving methods of the jth class of the system.
coOcc = np.zeros((len(methods), len(classes)))
Expand Down
Binary file modified experiments/.DS_Store
Binary file not shown.
17 changes: 17 additions & 0 deletions experiments/study_results/context.py
Original file line number Diff line number Diff line change
@@ -0,0 +1,17 @@
import os
import sys

ROOT_DIR = os.path.abspath(os.path.join(os.path.dirname(__file__), '../..'))
sys.path.insert(0, ROOT_DIR)

import utils.nnUtils as nnUtils

import neural_networks.decor.detect as decor
import neural_networks.hist.detect_god_class as hist_gc
import neural_networks.jdeodorant.detect_god_class as jdeodorant_gc

import neural_networks.incode.detect as incode
import neural_networks.hist.detect_feature_envy as hist_fe
import neural_networks.jdeodorant.detect_feature_envy as jdeodorant_fe

import neural_networks.vote.detect as vote
69 changes: 69 additions & 0 deletions experiments/study_results/perfs_feature_envy.py
Original file line number Diff line number Diff line change
@@ -0,0 +1,69 @@
from context import nnUtils, incode, hist_fe, jdeodorant_fe, vote

import numpy as np

systems = [
'android-frameworks-opt-telephony',
'android-platform-support',
'apache-ant',
'lucene',
'apache-tomcat',
'argouml',
'jedit',
'xerces-2_7_0'
]

overall_prediction_incode = np.empty(shape=[0, 1])
overall_prediction_hist = np.empty(shape=[0, 1])
overall_prediction_jd = np.empty(shape=[0, 1])
overall_prediction_vote = np.empty(shape=[0, 1])

overall_labels = np.empty(shape=[0, 1])
for system in systems:
# Get occurrences manually detected on the considered system
labels = nnUtils.getLabels('feature_envy', system)
overall_labels = np.concatenate((overall_labels, labels), axis=0)

# Compute performances for InCode
prediction_incode = nnUtils.predictFromDetect('feature_envy', system, incode.detect(system))
overall_prediction_incode = np.concatenate((overall_prediction_incode, prediction_incode), axis=0)

# Compute performances for HIST
prediction_hist = nnUtils.predictFromDetect('feature_envy', system, hist_fe.detect(system))
overall_prediction_hist = np.concatenate((overall_prediction_hist, prediction_hist), axis=0)

# Compute performances for JDeodorant
prediction_jd = nnUtils.predictFromDetect('feature_envy', system, jdeodorant_fe.detect(system))
overall_prediction_jd = np.concatenate((overall_prediction_jd, prediction_jd), axis=0)

# Compute performances for Vote
prediction_vote = nnUtils.predictFromDetect('feature_envy', system, vote.detect('feature_envy', system))
overall_prediction_vote = np.concatenate((overall_prediction_vote, prediction_vote), axis=0)

# Print performances for the considered system
print(system)
print(' |precision |recall |f_measure')
print('-------------------------------------------')
print('InCode |' + "{0:.3f}".format(nnUtils.precision(prediction_incode, labels)) + ' |' + "{0:.3f}".format(nnUtils.recall(prediction_incode, labels)) + ' |' + "{0:.3f}".format(nnUtils.f_measure(prediction_incode, labels)))
print('-------------------------------------------')
print('HIST |' + "{0:.3f}".format(nnUtils.precision(prediction_hist, labels)) + ' |' + "{0:.3f}".format(nnUtils.recall(prediction_hist, labels)) + ' |' + "{0:.3f}".format(nnUtils.f_measure(prediction_hist, labels)))
print('-------------------------------------------')
print('JDeodorant |' + "{0:.3f}".format(nnUtils.precision(prediction_jd, labels)) + ' |' + "{0:.3f}".format(nnUtils.recall(prediction_jd, labels)) + ' |' + "{0:.3f}".format(nnUtils.f_measure(prediction_jd, labels)))
print('-------------------------------------------')
print('Vote |' + "{0:.3f}".format(nnUtils.precision(prediction_vote, labels)) + ' |' + "{0:.3f}".format(nnUtils.recall(prediction_vote, labels)) + ' |' + "{0:.3f}".format(nnUtils.f_measure(prediction_vote, labels)))
print('-------------------------------------------')

print('\n')

# Print overall performances
print('OVERALL')
print(' |precision |recall |f_measure')
print('-------------------------------------------')
print('InCode |' + "{0:.3f}".format(nnUtils.precision(overall_prediction_incode, overall_labels)) + ' |' + "{0:.3f}".format(nnUtils.recall(overall_prediction_incode, overall_labels)) + ' |' + "{0:.3f}".format(nnUtils.f_measure(overall_prediction_incode, overall_labels)))
print('-------------------------------------------')
print('HIST |' + "{0:.3f}".format(nnUtils.precision(overall_prediction_hist, overall_labels)) + ' |' + "{0:.3f}".format(nnUtils.recall(overall_prediction_hist, overall_labels)) + ' |' + "{0:.3f}".format(nnUtils.f_measure(overall_prediction_hist, overall_labels)))
print('-------------------------------------------')
print('JDeodorant |' + "{0:.3f}".format(nnUtils.precision(overall_prediction_jd, overall_labels)) + ' |' + "{0:.3f}".format(nnUtils.recall(overall_prediction_jd, overall_labels)) + ' |' + "{0:.3f}".format(nnUtils.f_measure(overall_prediction_jd, overall_labels)))
print('-------------------------------------------')
print('Vote |' + "{0:.3f}".format(nnUtils.precision(overall_prediction_vote, overall_labels)) + ' |' + "{0:.3f}".format(nnUtils.recall(overall_prediction_vote, overall_labels)) + ' |' + "{0:.3f}".format(nnUtils.f_measure(overall_prediction_vote, overall_labels)))
print('-------------------------------------------')
69 changes: 69 additions & 0 deletions experiments/study_results/perfs_god_class.py
Original file line number Diff line number Diff line change
@@ -0,0 +1,69 @@
from context import nnUtils, decor, hist_gc, jdeodorant_gc, vote

import numpy as np

systems = [
'android-frameworks-opt-telephony',
'android-platform-support',
'apache-ant',
'lucene',
'apache-tomcat',
'argouml',
'jedit',
'xerces-2_7_0'
]

overall_prediction_decor = np.empty(shape=[0, 1])
overall_prediction_hist = np.empty(shape=[0, 1])
overall_prediction_jd = np.empty(shape=[0, 1])
overall_prediction_vote = np.empty(shape=[0, 1])

overall_labels = np.empty(shape=[0, 1])
for system in systems:
# Get occurrences manually detected on the considered system
labels = nnUtils.getLabels('god_class', system)
overall_labels = np.concatenate((overall_labels, labels), axis=0)

# Compute performances for DECOR
prediction_decor = nnUtils.predictFromDetect('god_class', system, decor.detect(system))
overall_prediction_decor = np.concatenate((overall_prediction_decor, prediction_decor), axis=0)

# Compute performances for HIST
prediction_hist = nnUtils.predictFromDetect('god_class', system, hist_gc.detect(system))
overall_prediction_hist = np.concatenate((overall_prediction_hist, prediction_hist), axis=0)

# Compute performances for JDeodorant
prediction_jd = nnUtils.predictFromDetect('god_class', system, jdeodorant_gc.detect(system))
overall_prediction_jd = np.concatenate((overall_prediction_jd, prediction_jd), axis=0)

# Compute performances for Vote
prediction_vote = nnUtils.predictFromDetect('god_class', system, vote.detect('god_class', system))
overall_prediction_vote = np.concatenate((overall_prediction_vote, prediction_vote), axis=0)

# Print performances for the considered system
print(system)
print(' |precision |recall |f_measure')
print('-------------------------------------------')
print('DECOR |' + "{0:.3f}".format(nnUtils.precision(prediction_decor, labels)) + ' |' + "{0:.3f}".format(nnUtils.recall(prediction_decor, labels)) + ' |' + "{0:.3f}".format(nnUtils.f_measure(prediction_decor, labels)))
print('-------------------------------------------')
print('HIST |' + "{0:.3f}".format(nnUtils.precision(prediction_hist, labels)) + ' |' + "{0:.3f}".format(nnUtils.recall(prediction_hist, labels)) + ' |' + "{0:.3f}".format(nnUtils.f_measure(prediction_hist, labels)))
print('-------------------------------------------')
print('JDeodorant |' + "{0:.3f}".format(nnUtils.precision(prediction_jd, labels)) + ' |' + "{0:.3f}".format(nnUtils.recall(prediction_jd, labels)) + ' |' + "{0:.3f}".format(nnUtils.f_measure(prediction_jd, labels)))
print('-------------------------------------------')
print('Vote |' + "{0:.3f}".format(nnUtils.precision(prediction_vote, labels)) + ' |' + "{0:.3f}".format(nnUtils.recall(prediction_vote, labels)) + ' |' + "{0:.3f}".format(nnUtils.f_measure(prediction_vote, labels)))
print('-------------------------------------------')

print('\n')

# Print overall performances
print('OVERALL')
print(' |precision |recall |f_measure')
print('-------------------------------------------')
print('DECOR |' + "{0:.3f}".format(nnUtils.precision(overall_prediction_decor, overall_labels)) + ' |' + "{0:.3f}".format(nnUtils.recall(overall_prediction_decor, overall_labels)) + ' |' + "{0:.3f}".format(nnUtils.f_measure(overall_prediction_decor, overall_labels)))
print('-------------------------------------------')
print('HIST |' + "{0:.3f}".format(nnUtils.precision(overall_prediction_hist, overall_labels)) + ' |' + "{0:.3f}".format(nnUtils.recall(overall_prediction_hist, overall_labels)) + ' |' + "{0:.3f}".format(nnUtils.f_measure(overall_prediction_hist, overall_labels)))
print('-------------------------------------------')
print('JDeodorant |' + "{0:.3f}".format(nnUtils.precision(overall_prediction_jd, overall_labels)) + ' |' + "{0:.3f}".format(nnUtils.recall(overall_prediction_jd, overall_labels)) + ' |' + "{0:.3f}".format(nnUtils.f_measure(overall_prediction_jd, overall_labels)))
print('-------------------------------------------')
print('Vote |' + "{0:.3f}".format(nnUtils.precision(overall_prediction_vote, overall_labels)) + ' |' + "{0:.3f}".format(nnUtils.recall(overall_prediction_vote, overall_labels)) + ' |' + "{0:.3f}".format(nnUtils.f_measure(overall_prediction_vote, overall_labels)))
print('-------------------------------------------')
Binary file modified experiments/tuning/.DS_Store
Binary file not shown.
2 changes: 1 addition & 1 deletion experiments/tuning/context.py
Original file line number Diff line number Diff line change
Expand Up @@ -8,4 +8,4 @@

import neural_networks.asci.predict as asci
import neural_networks.smad.model as md
import neural_networks.vote.predict as vote
import neural_networks.vote.detect as vote
Binary file modified experiments/tuning/results/.DS_Store
Binary file not shown.
101 changes: 101 additions & 0 deletions experiments/tuning/results/smad/god_class/jedit.csv
Original file line number Diff line number Diff line change
@@ -0,0 +1,101 @@
Learning rate;Beta;Dense sizes;F-measure
0.320478025117;0.00708484484164;[66];0.527027027027027
0.0297903969154;0.241572495218;[72, 59, 42];0.5142857142857143
0.0466426920877;0.103022578751;[21, 12, 8];0.513888888888889
0.281443843094;0.0165959541185;[6];0.513888888888889
0.0804475210438;0.153314358085;[16];0.513888888888889
0.0466757259553;0.0111184595637;[79];0.5128205128205129
0.274604104289;0.15979683555;[12, 6];0.5064935064935064
0.304295680016;0.156223227842;[47, 17];0.5034013605442177
0.300847598494;0.0180608587717;[99, 40];0.5033112582781457
0.087537011919;0.0914477999021;[47];0.5
0.0978410889464;0.349243445107;[88];0.49655172413793097
0.0911095275385;0.109101361912;[88, 31];0.49645390070921985
0.11141446559;0.00601486575551;[15, 6];0.4963503649635037
0.113447165265;0.0775114339383;[38];0.4929577464788732
0.0733331562211;0.284024610193;[80];0.4895104895104895
0.0778090216987;0.0144166227365;[84];0.48920863309352514
0.0921497265712;0.0419117458026;[41, 12];0.48920863309352514
0.0525452978769;0.0342554259055;[100, 53, 4];0.4857142857142857
0.119738576469;0.060487309356;[96, 95, 77];0.4857142857142857
0.189006758786;0.279722704069;[77, 12];0.4852941176470588
0.340705261616;0.0314672712822;[44, 38];0.4827586206896551
0.322857440665;0.0662725550939;[88, 59];0.4795321637426901
0.198527271498;0.0541098881738;[54, 41, 24];0.47887323943661975
0.0725572668663;0.0338447347447;[98, 88];0.47552447552447547
0.0623078387888;0.0331047349325;[79];0.47552447552447547
0.386616314119;0.02360787457;[47, 22];0.47513812154696133
0.0594775260882;0.213934720342;[87, 26];0.4748201438848921
0.221991362864;0.080951365116;[39];0.47435897435897434
0.254194200737;0.0112945119028;[34, 9];0.4742268041237113
0.617713506496;0.0273493329209;[5];0.4691358024691358
0.296963360995;0.0580478538595;[32, 27];0.46808510638297873
0.192812509921;0.00843670432761;[81, 75, 45];0.46540880503144655
0.0321262997963;0.00412747840812;[97, 28, 8];0.46153846153846156
0.106243013853;0.00641442158882;[38];0.460431654676259
0.488664610983;0.0158578835776;[70];0.4596273291925465
0.743240766693;0.0143264381137;[82, 50];0.4468085106382979
0.11301981812;0.0223446947459;[70];0.4444444444444445
0.339087634704;0.00662733938167;[73, 61, 9];0.4444444444444444
0.270628052029;0.0211487177349;[27, 8];0.4428571428571429
0.430262277317;0.115295315403;[68];0.4361702127659574
0.452379259337;0.0671489904282;[59, 10, 6];0.4347826086956522
0.52426169438;0.0400013852702;[71, 23];0.42780748663101603
0.483391041749;0.250495079444;[94, 33];0.4146341463414634
0.556126115048;0.00661648400512;[8];0.41134751773049644
0.616624887704;0.0112672449476;[22, 12];0.40816326530612246
0.811087532559;0.0256291240002;[18, 18];0.4
0.396134324986;0.00344229448818;[45, 11];0.3971631205673759
0.430958096538;0.033968626362;[16, 9, 8];0.39285714285714285
0.0216102710947;0.901886002193;[92, 77];0.39285714285714285
0.0316862214999;0.0172396238447;[52];0.38461538461538464
0.86151258666;0.0207420707543;[64, 23, 10];0.38202247191011235
0.0339912570363;0.0278744271654;[49, 26];0.374468085106383
0.7532650847;0.0288939034027;[30, 5];0.3444444444444444
0.600284820634;0.0264549304161;[42];0.3404255319148936
0.0130045049853;0.011088753116;[69, 57, 12];0.257372654155496
0.0119929904056;0.826346344782;[50, 50];0.2516853932584269
0.00750423313693;0.0098531322601;[92, 77, 69];0.21894736842105264
0.0186435641567;0.00532258736044;[66];0.21428571428571427
0.010460377219;0.0472010623234;[98, 33];0.15033557046979865
0.00863139770048;0.195823274625;[67];0.13647642679900746
0.0768284477376;0.146452040426;[7];0.1236263736263736
0.00344887418834;0.337654300846;[74, 55, 38];0.12162162162162163
0.00762187771011;0.00882887205284;[90, 54];0.11776649746192895
0.032984422004;0.0324544334453;[20, 16, 8];0.11475409836065574
0.0173368574077;0.0182282000994;[66, 12];0.11094890510948904
0.00755446390792;0.546229454416;[83];0.09098294069861901
0.0143882968664;0.00524608063456;[10, 5];0.08970438328236494
0.00530827517359;0.00786151822823;[88];0.08560311284046691
0.0101707781529;0.0761107784047;[65];0.0797962648556876
0.00635529273454;0.00341670750099;[82, 74];0.07920792079207921
0.0204614677599;0.0791291662387;[6, 4, 4];0.07741935483870967
0.00515878556462;0.123626236384;[94];0.07304601899196493
0.00344428912822;0.0119273893828;[68, 50, 48];0.07119741100323623
0.0142933625561;0.697491544542;[30, 7];0.0705521472392638
0.0186782191915;0.0120486459778;[10, 9, 7];0.06990622335890878
0.00464390714796;0.0120594153617;[81, 11, 4];0.06779661016949153
0.0106799859767;0.541828867614;[25];0.06707734428473648
0.0155314961936;0.00338742729772;[40, 16];0.06637554585152838
0.00518758848536;0.0132133646328;[87, 43, 36];0.06094527363184079
0.00739427916925;0.209885049424;[47, 17, 5];0.060790273556231005
0.00524312169633;0.0298161930166;[18, 18];0.057177615571776155
0.00564168960039;0.00475645986981;[7, 5, 5];0.05701509223029626
0.0037539737356;0.00376546322107;[60, 47, 35];0.05104096709200806
0.0195859084914;0.0143216097996;[11, 10];0.05082212257100149
0.00443499109079;0.0109910152631;[43, 23];0.046511627906976744
0.00803418585008;0.0560107132695;[28, 25, 14];0.04525993883792049
0.833407485044;0.330155434635;[15, 12];0.04238921001926782
0.00467313543127;0.0251819374319;[11];0.041365046535677345
0.136789781521;0.248356557129;[27, 21, 15];0.03982300884955752
0.015316040588;0.00321177551683;[31, 6];0.03898635477582846
0.62892995586;0.283836798473;[24, 17, 6];0.03828032979976442
0.380754571104;0.438691115981;[43, 41];0.037925925925925925
0.163409872025;0.329164040324;[51, 15, 12];0.036148148148148145
0.38350512832;0.908891689141;[22, 15, 5];0.03248924988055423
0.163819043669;0.906728547392;[17, 14];0.03248924988055423
0.46854505963;0.616383590859;[51, 43];0.03248924988055423
0.395120957241;0.602342565379;[72];0.03248924988055423
0.856189597526;0.626661747205;[16, 13];0.03248924988055423
0.00473676585254;0.00557080858382;[18, 4];0.023564064801178203
0.0226564647229;0.873832240159;[72, 27, 19];0.015712682379349044
Original file line number Diff line number Diff line change
@@ -0,0 +1,4 @@
Policy;F-measure
1;0.5263157894736842
2;0.2117647058823529
3;0.0
Original file line number Diff line number Diff line change
@@ -0,0 +1,4 @@
Policy;F-measure
1;0.5290102389078498
2;0.20994475138121546
3;0.0
4 changes: 4 additions & 0 deletions experiments/tuning/results/vote/feature_envy/apache-ant.csv
Original file line number Diff line number Diff line change
@@ -0,0 +1,4 @@
Policy;F-measure
1;0.5212355212355212
2;0.2138364779874214
3;0.0
Original file line number Diff line number Diff line change
@@ -0,0 +1,4 @@
Policy;F-measure
1;0.5253012048192771
2;0.23076923076923075
3;0.0
4 changes: 4 additions & 0 deletions experiments/tuning/results/vote/feature_envy/argouml.csv
Original file line number Diff line number Diff line change
@@ -0,0 +1,4 @@
Policy;F-measure
1;0.5182341650671786
2;0.23602484472049692
3;0.0
4 changes: 4 additions & 0 deletions experiments/tuning/results/vote/feature_envy/jedit.csv
Original file line number Diff line number Diff line change
@@ -0,0 +1,4 @@
Policy;F-measure
1;0.525328330206379
2;0.19753086419753088
3;0.0
4 changes: 4 additions & 0 deletions experiments/tuning/results/vote/feature_envy/lucene.csv
Original file line number Diff line number Diff line change
@@ -0,0 +1,4 @@
Policy;F-measure
1;0.5344827586206896
2;0.21111111111111108
3;0.0
4 changes: 4 additions & 0 deletions experiments/tuning/results/vote/feature_envy/xerces-2_7_0.csv
Original file line number Diff line number Diff line change
@@ -0,0 +1,4 @@
Policy;F-measure
1;0.5592841163310962
2;0.14492753623188404
3;0.0
Original file line number Diff line number Diff line change
@@ -0,0 +1,4 @@
Policy;F-measure
2;0.3174603174603175
1;0.16849816849816848
3;0.06153846153846154
Original file line number Diff line number Diff line change
@@ -0,0 +1,4 @@
Policy;F-measure
2;0.3285714285714286
1;0.17869415807560138
3;0.05555555555555555
4 changes: 4 additions & 0 deletions experiments/tuning/results/vote/god_class/apache-ant.csv
Original file line number Diff line number Diff line change
@@ -0,0 +1,4 @@
Policy;F-measure
2;0.360655737704918
1;0.2188183807439825
3;0.057971014492753624
4 changes: 4 additions & 0 deletions experiments/tuning/results/vote/god_class/apache-tomcat.csv
Original file line number Diff line number Diff line change
@@ -0,0 +1,4 @@
Policy;F-measure
2;0.3309352517985612
1;0.22222222222222218
3;0.056338028169014086
4 changes: 4 additions & 0 deletions experiments/tuning/results/vote/god_class/argouml.csv
Original file line number Diff line number Diff line change
@@ -0,0 +1,4 @@
Policy;F-measure
2;0.339622641509434
1;0.1704781704781705
3;0.07407407407407407
4 changes: 4 additions & 0 deletions experiments/tuning/results/vote/god_class/lucene.csv
Original file line number Diff line number Diff line change
@@ -0,0 +1,4 @@
Policy;F-measure
2;0.3285714285714286
1;0.18848167539267016
3;0.05555555555555555
4 changes: 4 additions & 0 deletions experiments/tuning/results/vote/god_class/xerces-2_7_0.csv
Original file line number Diff line number Diff line change
@@ -0,0 +1,4 @@
Policy;F-measure
2;0.2905982905982906
1;0.1532567049808429
3;0.06557377049180328
10 changes: 10 additions & 0 deletions experiments/tuning/tune_smad.py
Original file line number Diff line number Diff line change
Expand Up @@ -44,6 +44,14 @@ def generateRandomHyperParameters():

return learning_rate, beta, dense_sizes

# Returns a training and a testing dataset from an input dataset (instances and labels)
# The input dataset is first split into n_folds folds.
# The test dataset is the fold of index fold_index
# The training dataset is obtained by concatenating the n_folds-1 remaining folds.
# X : instances
# Y : labels
# fold_index: the index of the fold we want to be returned as the test dataset
# n_fold : the number of folds, i.e., k for a k-fold cross-validation
def get_cross_validation_dataset(X, Y, fold_index, n_fold):
folds_x, folds_y = nnUtils.split(X, Y, n_fold)
x_train = np.empty(shape=[0, X.shape[-1]])
Expand Down Expand Up @@ -87,6 +95,7 @@ def train(session, model, x_train, y_train, num_step, lr, beta):

predictions = np.empty(shape=[0, 1])
for j in range(args.n_fold):
# Create the training and testing datasets for this fold
x_train, y_train, x_test, y_test = get_cross_validation_dataset(data_x, data_y, j, args.n_fold)

# New graph
Expand All @@ -101,6 +110,7 @@ def train(session, model, x_train, y_train, num_step, lr, beta):
# Initialize the variables of the TensorFlow graph.
session.run(tf.global_variables_initializer())

# Train the model
train(
session=session,
model=model,
Expand Down
2 changes: 1 addition & 1 deletion experiments/tuning/tune_vote.py
Original file line number Diff line number Diff line change
Expand Up @@ -36,7 +36,7 @@ def parse_args():
overall_prediction = np.empty(shape=[0, 1])
overall_labels = np.empty(shape=[0, 1])
for system in training_systems:
prediction = vote.predictWithPolicy(args.antipattern, system, k)
prediction = nnUtils.predictFromDetect(args.antipattern, system, vote.detectWithPolicy(args.antipattern, system, k))
labels = nnUtils.getLabels(args.antipattern, system)

overall_prediction = np.concatenate((overall_prediction, prediction), axis=0)
Expand Down
Empty file.
Loading

0 comments on commit 2d8d12d

Please sign in to comment.