Added models, outputs, data and tensorflow runs
BIN
data/backup/Uber Customer Reviews.csv
LFS
Normal file
|
BIN
data/backup/boosted_test.csv
LFS
Normal file
|
BIN
data/backup/boosted_train.csv
LFS
Normal file
|
BIN
data/backup/boosted_val.csv
LFS
Normal file
|
BIN
data/backup/original_test.csv
LFS
Normal file
|
BIN
data/backup/original_train.csv
LFS
Normal file
|
BIN
data/backup/original_val.csv
LFS
Normal file
|
BIN
data/backup/tagged_boosted_cleaned.csv
LFS
Normal file
|
BIN
data/backup/tagged_original_cleaned.csv
LFS
Normal file
|
BIN
data/backup/uber_reviews_taggedBoosted.csv
LFS
Normal file
|
BIN
data/backup/uber_reviews_taggedOriginal.csv
LFS
Normal file
|
BIN
data/processed/boosted_test.csv
LFS
Normal file
|
BIN
data/processed/boosted_train.csv
LFS
Normal file
|
BIN
data/processed/boosted_val.csv
LFS
Normal file
|
BIN
data/processed/original_test.csv
LFS
Normal file
|
BIN
data/processed/original_train.csv
LFS
Normal file
|
BIN
data/processed/original_val.csv
LFS
Normal file
|
BIN
data/processed/review.csv
LFS
Normal file
|
BIN
data/raw/tagged_boosted_cleaned.csv
LFS
Normal file
|
BIN
data/raw/tagged_original_cleaned.csv
LFS
Normal file
|
BIN
data/raw/uber_review_temp.csv
LFS
Normal file
|
BIN
data/raw/uber_reviews.csv
LFS
Normal file
|
BIN
data/raw/uber_reviews_cleaned.csv
LFS
Normal file
|
BIN
data/raw/uber_reviews_sampled.csv
LFS
Normal file
|
BIN
data/raw/uber_reviews_tagged.csv
LFS
Normal file
|
BIN
data/raw/uber_reviews_taggedBoosted.csv
LFS
Normal file
|
BIN
data/raw/uber_reviews_taggedOriginal.csv
LFS
Normal file
|
34
eval.bat
Normal file
@@ -0,0 +1,34 @@
|
||||
@echo off
|
||||
echo ============================================
|
||||
echo RECLASS - Full Evaluation Pipeline
|
||||
echo ============================================
|
||||
|
||||
echo.
|
||||
echo [1/6] Evaluate MTL Original
|
||||
python src/evaluate.py --mode mtl --dataset original --model_path outputs/best_model_mtl_original.pt
|
||||
|
||||
echo.
|
||||
echo [2/6] Evaluate MTL Boosted
|
||||
python src/evaluate.py --mode mtl --dataset boosted --model_path outputs/best_model_mtl_boosted.pt
|
||||
|
||||
echo.
|
||||
echo [3/6] Evaluate STL Bug Report
|
||||
python src/evaluate.py --mode stl --task bug_report --dataset original --model_path outputs/best_model_stl_bug_report_original.pt
|
||||
|
||||
echo.
|
||||
echo [4/6] Evaluate STL Feature Request
|
||||
python src/evaluate.py --mode stl --task feature_request --dataset original --model_path outputs/best_model_stl_feature_request_original.pt
|
||||
|
||||
echo.
|
||||
echo [5/6] Evaluate STL Aspect
|
||||
python src/evaluate.py --mode stl --task aspect --dataset original --model_path outputs/best_model_stl_aspect_original.pt
|
||||
|
||||
echo.
|
||||
echo [6/6] Evaluate STL Aspect Sentiment
|
||||
python src/evaluate.py --mode stl --task aspect_sentiment --dataset original --model_path outputs/best_model_stl_aspect_sentiment_original.pt
|
||||
|
||||
echo.
|
||||
echo ============================================
|
||||
echo All evaluations complete.
|
||||
echo ============================================
|
||||
pause
|
||||
13
notebooks/analysis.csv
Normal file
@@ -0,0 +1,13 @@
|
||||
model,task,macro_f1,macro_precision,macro_recall,accuracy,conf_overall,conf_correct,conf_incorrect
|
||||
mtl_original,bug_report,0.7833333333333331,0.768455530360292,0.8027848820687691,0.8613333333333331,0.956886053085327,0.97133868932724,0.8671128153800961
|
||||
mtl_original,feature_request,0.7632819746470161,0.7523338553934561,0.776279013245837,0.8693333333333331,0.9604225158691401,0.971001923084259,0.8900374770164491
|
||||
mtl_original,aspect,0.7170467094024511,0.718659478955565,0.7175741849634061,0.736,0.8980301022529601,0.927059710025787,0.81709885597229
|
||||
mtl_original,aspect_sentiment,0.7574652640875611,0.771311938013836,0.7471910012842651,0.912,0.965078949928283,0.9762944579124451,0.848845124244689
|
||||
mtl_boosted,bug_report,0.9051856266200821,0.9016466210687211,0.909222117350951,0.9132176234979971,0.9751167297363281,0.9835515618324281,0.8863566517829891
|
||||
mtl_boosted,feature_request,0.8164215686274511,0.8249551363417511,0.8084569363081141,0.9385847797062751,0.9860208034515381,0.99037754535675,0.9194391369819641
|
||||
mtl_boosted,aspect,0.8025782333853201,0.801386597022245,0.8071020445874091,0.8170894526034711,0.951742529869079,0.9682987332344051,0.8777835965156551
|
||||
mtl_boosted,aspect_sentiment,0.6003394063095551,0.589426822481914,0.6126239622702451,0.9345794392523361,0.981067180633544,0.9874913692474361,0.889292955398559
|
||||
stl_aspect,aspect,0.6941267385341161,0.692636644001273,0.717751069459417,0.716,0.8459477424621581,0.887672424316406,0.740754663944244
|
||||
stl_aspect_sentiment,aspect_sentiment,0.7856154710827541,0.7905014749262531,0.7816500597847741,0.916,0.981183290481567,0.9872694015502931,0.9148151278495781
|
||||
stl_bug_report,bug_report,0.7845034000574651,0.762719298245614,0.8191602728047741,0.856,0.9904617667198181,0.992652595043182,0.977438509464263
|
||||
stl_feature_request,feature_request,0.741924491616304,0.739484126984127,0.7444606473042491,0.862666666666666,0.951506376266479,0.9664607644081111,0.8575695753097531
|
||||
|
5
notebooks/analysis_macro_f1_pivot.csv
Normal file
@@ -0,0 +1,5 @@
|
||||
task,stl,mtl_original,mtl_boosted,mtl_orig_excluding_stl,mtl_boost_excluding_orig
|
||||
aspect,0.6941267385341161,0.7170467094024511,0.8025782333853201,0.02291997086833497,0.085531523982869
|
||||
aspect_sentiment,0.7856154710827541,0.7574652640875611,0.6003394063095551,-0.028150206995192995,-0.15712585777800603
|
||||
bug_report,0.7845034000574651,0.7833333333333331,0.9051856266200821,-0.0011700667241320017,0.12185229328674896
|
||||
feature_request,0.741924491616304,0.7632819746470161,0.8164215686274511,0.021357483030712054,0.053139593980434996
|
||||
|
5
notebooks/analysis_mcnemar_results.csv
Normal file
@@ -0,0 +1,5 @@
|
||||
task,both_correct,mtl_only_correct,stl_only_correct,both_wrong,p_value,significant
|
||||
bug_report,614,32,28,76,0.6988834276200058,False
|
||||
feature_request,610,42,37,61,0.6529643755164601,False
|
||||
aspect,482,70,55,143,0.2103272547960883,False
|
||||
aspect_sentiment,669,15,18,48,0.7283324808813632,False
|
||||
|
40
notebooks/per_class_analysis.csv
Normal file
@@ -0,0 +1,40 @@
|
||||
model,task,class,precision,recall,f1,support
|
||||
mtl_original,bug_report,No,0.9319727891156461,0.8954248366013071,0.9133333333333331,612.0
|
||||
mtl_original,bug_report,Yes,0.6049382716049381,0.710144927536231,0.6533333333333331,138.0
|
||||
mtl_original,feature_request,No,0.932148626817447,0.9115323854660341,0.9217252396166131,633.0
|
||||
mtl_original,feature_request,Yes,0.572519083969465,0.6410256410256411,0.604838709677419,117.0
|
||||
mtl_original,aspect,App,0.7875000000000001,0.84,0.812903225806451,225.0
|
||||
mtl_original,aspect,Driver,0.786259541984732,0.78030303030303,0.783269961977186,132.0
|
||||
mtl_original,aspect,General,0.8037383177570091,0.6880000000000001,0.7413793103448271,125.0
|
||||
mtl_original,aspect,Payment,0.617647058823529,0.636363636363636,0.6268656716417911,33.0
|
||||
mtl_original,aspect,Pricing,0.698630136986301,0.75,0.7234042553191491,68.0
|
||||
mtl_original,aspect,Service,0.618181818181818,0.610778443113772,0.6144578313253011,167.0
|
||||
mtl_original,aspect_sentiment,Positive,0.9387755102040811,0.9533678756476681,0.9460154241645241,386.0
|
||||
mtl_original,aspect_sentiment,Neutral,0.45161290322580605,0.35897435897435903,0.4,39.0
|
||||
mtl_original,aspect_sentiment,Negative,0.9235474006116201,0.9292307692307691,0.926380368098159,325.0
|
||||
mtl_boosted,bug_report,No,0.943514644351464,0.9222903885480571,0.9327817993795241,489.0
|
||||
mtl_boosted,bug_report,Yes,0.8597785977859771,0.8961538461538461,0.87758945386064,260.0
|
||||
mtl_boosted,feature_request,No,0.9633431085043981,0.9690265486725661,0.9661764705882351,678.0
|
||||
mtl_boosted,feature_request,Yes,0.686567164179104,0.647887323943662,0.6666666666666661,71.0
|
||||
mtl_boosted,aspect,App,0.9329896907216491,0.8418604651162791,0.8850855745721271,215.0
|
||||
mtl_boosted,aspect,Driver,0.8395721925133691,0.892045454545454,0.865013774104683,176.0
|
||||
mtl_boosted,aspect,General,0.829268292682926,0.772727272727272,0.8,88.0
|
||||
mtl_boosted,aspect,Payment,0.711111111111111,0.842105263157894,0.7710843373493971,76.0
|
||||
mtl_boosted,aspect,Pricing,0.826086956521739,0.8028169014084501,0.8142857142857141,71.0
|
||||
mtl_boosted,aspect,Service,0.6692913385826771,0.691056910569105,0.68,123.0
|
||||
mtl_boosted,aspect_sentiment,Positive,0.8,0.8823529411764701,0.8391608391608391,136.0
|
||||
mtl_boosted,aspect_sentiment,Neutral,0.0,0.0,0.0,6.0
|
||||
mtl_boosted,aspect_sentiment,Negative,0.968280467445742,0.9555189456342661,0.961857379767827,607.0
|
||||
stl_aspect,aspect,App,0.797356828193832,0.8044444444444441,0.8008849557522121,225.0
|
||||
stl_aspect,aspect,Driver,0.717241379310344,0.7878787878787871,0.7509025270758121,132.0
|
||||
stl_aspect,aspect,General,0.7619047619047611,0.64,0.695652173913043,125.0
|
||||
stl_aspect,aspect,Payment,0.625,0.6060606060606061,0.6153846153846151,33.0
|
||||
stl_aspect,aspect,Pricing,0.561403508771929,0.9411764705882351,0.703296703296703,68.0
|
||||
stl_aspect,aspect,Service,0.6929133858267711,0.5269461077844311,0.598639455782312,167.0
|
||||
stl_aspect_sentiment,aspect_sentiment,Positive,0.96,0.9326424870466321,0.9461235216819971,386.0
|
||||
stl_aspect_sentiment,aspect_sentiment,Neutral,0.5,0.461538461538461,0.48,39.0
|
||||
stl_aspect_sentiment,aspect_sentiment,Negative,0.911504424778761,0.95076923076923,0.9307228915662651,325.0
|
||||
stl_bug_report,bug_report,No,0.9421052631578941,0.8774509803921561,0.9086294416243651,612.0
|
||||
stl_bug_report,bug_report,Yes,0.583333333333333,0.760869565217391,0.660377358490566,138.0
|
||||
stl_feature_request,feature_request,No,0.92063492063492,0.916271721958925,0.9184481393507521,633.0
|
||||
stl_feature_request,feature_request,Yes,0.558333333333333,0.5726495726495721,0.5654008438818561,117.0
|
||||
|
BIN
outputs/best_model_mtl_boosted.pt
LFS
Normal file
BIN
outputs/best_model_mtl_original.pt
LFS
Normal file
BIN
outputs/best_model_stl_aspect_original.pt
LFS
Normal file
BIN
outputs/best_model_stl_aspect_sentiment_original.pt
LFS
Normal file
BIN
outputs/best_model_stl_bug_report_original.pt
LFS
Normal file
BIN
outputs/best_model_stl_feature_request_original.pt
LFS
Normal file
186
outputs/eval_summary_mtl_mtl_boosted.json
Normal file
@@ -0,0 +1,186 @@
|
||||
{
|
||||
"mode": "mtl",
|
||||
"dataset": "boosted",
|
||||
"task": "all",
|
||||
"model_path": "outputs/best_model_mtl_boosted.pt",
|
||||
"results": {
|
||||
"bug_report": {
|
||||
"macro_f1": 0.9051856266200824,
|
||||
"macro_precision": 0.9016466210687212,
|
||||
"macro_recall": 0.9092221173509517,
|
||||
"confidence": {
|
||||
"overall": 0.9751167297363281,
|
||||
"correct": 0.983551561832428,
|
||||
"incorrect": 0.8863566517829895
|
||||
},
|
||||
"per_class": {
|
||||
"No": {
|
||||
"precision": 0.9435146443514645,
|
||||
"recall": 0.9222903885480572,
|
||||
"f1-score": 0.9327817993795243,
|
||||
"support": 489.0
|
||||
},
|
||||
"Yes": {
|
||||
"precision": 0.8597785977859779,
|
||||
"recall": 0.8961538461538462,
|
||||
"f1-score": 0.8775894538606404,
|
||||
"support": 260.0
|
||||
},
|
||||
"accuracy": 0.9132176234979973,
|
||||
"macro avg": {
|
||||
"precision": 0.9016466210687212,
|
||||
"recall": 0.9092221173509517,
|
||||
"f1-score": 0.9051856266200824,
|
||||
"support": 749.0
|
||||
},
|
||||
"weighted avg": {
|
||||
"precision": 0.9144473918721233,
|
||||
"recall": 0.9132176234979973,
|
||||
"f1-score": 0.9136229077441307,
|
||||
"support": 749.0
|
||||
}
|
||||
}
|
||||
},
|
||||
"feature_request": {
|
||||
"macro_f1": 0.816421568627451,
|
||||
"macro_precision": 0.8249551363417517,
|
||||
"macro_recall": 0.8084569363081142,
|
||||
"confidence": {
|
||||
"overall": 0.9860208034515381,
|
||||
"correct": 0.9903775453567505,
|
||||
"incorrect": 0.9194391369819641
|
||||
},
|
||||
"per_class": {
|
||||
"No": {
|
||||
"precision": 0.9633431085043989,
|
||||
"recall": 0.9690265486725663,
|
||||
"f1-score": 0.9661764705882353,
|
||||
"support": 678.0
|
||||
},
|
||||
"Yes": {
|
||||
"precision": 0.6865671641791045,
|
||||
"recall": 0.647887323943662,
|
||||
"f1-score": 0.6666666666666666,
|
||||
"support": 71.0
|
||||
},
|
||||
"accuracy": 0.9385847797062751,
|
||||
"macro avg": {
|
||||
"precision": 0.8249551363417517,
|
||||
"recall": 0.8084569363081142,
|
||||
"f1-score": 0.816421568627451,
|
||||
"support": 749.0
|
||||
},
|
||||
"weighted avg": {
|
||||
"precision": 0.9371066705242975,
|
||||
"recall": 0.9385847797062751,
|
||||
"f1-score": 0.9377850205502763,
|
||||
"support": 749.0
|
||||
}
|
||||
}
|
||||
},
|
||||
"aspect": {
|
||||
"macro_f1": 0.8025782333853203,
|
||||
"macro_precision": 0.8013865970222454,
|
||||
"macro_recall": 0.8071020445874096,
|
||||
"confidence": {
|
||||
"overall": 0.9517425298690796,
|
||||
"correct": 0.9682987332344055,
|
||||
"incorrect": 0.8777835965156555
|
||||
},
|
||||
"per_class": {
|
||||
"App": {
|
||||
"precision": 0.9329896907216495,
|
||||
"recall": 0.8418604651162791,
|
||||
"f1-score": 0.8850855745721271,
|
||||
"support": 215.0
|
||||
},
|
||||
"Driver": {
|
||||
"precision": 0.839572192513369,
|
||||
"recall": 0.8920454545454546,
|
||||
"f1-score": 0.8650137741046832,
|
||||
"support": 176.0
|
||||
},
|
||||
"General": {
|
||||
"precision": 0.8292682926829268,
|
||||
"recall": 0.7727272727272727,
|
||||
"f1-score": 0.8,
|
||||
"support": 88.0
|
||||
},
|
||||
"Payment": {
|
||||
"precision": 0.7111111111111111,
|
||||
"recall": 0.8421052631578947,
|
||||
"f1-score": 0.7710843373493976,
|
||||
"support": 76.0
|
||||
},
|
||||
"Pricing": {
|
||||
"precision": 0.8260869565217391,
|
||||
"recall": 0.8028169014084507,
|
||||
"f1-score": 0.8142857142857143,
|
||||
"support": 71.0
|
||||
},
|
||||
"Service": {
|
||||
"precision": 0.6692913385826772,
|
||||
"recall": 0.6910569105691057,
|
||||
"f1-score": 0.68,
|
||||
"support": 123.0
|
||||
},
|
||||
"accuracy": 0.8170894526034713,
|
||||
"macro avg": {
|
||||
"precision": 0.8013865970222454,
|
||||
"recall": 0.8071020445874096,
|
||||
"f1-score": 0.8025782333853203,
|
||||
"support": 749.0
|
||||
},
|
||||
"weighted avg": {
|
||||
"precision": 0.8229006036672395,
|
||||
"recall": 0.8170894526034713,
|
||||
"f1-score": 0.8184145769402824,
|
||||
"support": 749.0
|
||||
}
|
||||
}
|
||||
},
|
||||
"aspect_sentiment": {
|
||||
"macro_f1": 0.6003394063095556,
|
||||
"macro_precision": 0.5894268224819142,
|
||||
"macro_recall": 0.6126239622702458,
|
||||
"confidence": {
|
||||
"overall": 0.9810671806335449,
|
||||
"correct": 0.9874913692474365,
|
||||
"incorrect": 0.8892929553985596
|
||||
},
|
||||
"per_class": {
|
||||
"Positive": {
|
||||
"precision": 0.8,
|
||||
"recall": 0.8823529411764706,
|
||||
"f1-score": 0.8391608391608392,
|
||||
"support": 136.0
|
||||
},
|
||||
"Neutral": {
|
||||
"precision": 0.0,
|
||||
"recall": 0.0,
|
||||
"f1-score": 0.0,
|
||||
"support": 6.0
|
||||
},
|
||||
"Negative": {
|
||||
"precision": 0.9682804674457429,
|
||||
"recall": 0.9555189456342669,
|
||||
"f1-score": 0.9618573797678275,
|
||||
"support": 607.0
|
||||
},
|
||||
"accuracy": 0.9345794392523364,
|
||||
"macro avg": {
|
||||
"precision": 0.5894268224819142,
|
||||
"recall": 0.6126239622702458,
|
||||
"f1-score": 0.6003394063095556,
|
||||
"support": 749.0
|
||||
},
|
||||
"weighted avg": {
|
||||
"precision": 0.9299682826963496,
|
||||
"recall": 0.9345794392523364,
|
||||
"f1-score": 0.9318735696194198,
|
||||
"support": 749.0
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
186
outputs/eval_summary_mtl_mtl_original.json
Normal file
@@ -0,0 +1,186 @@
|
||||
{
|
||||
"mode": "mtl",
|
||||
"dataset": "original",
|
||||
"task": "all",
|
||||
"model_path": "outputs/best_model_mtl_original.pt",
|
||||
"results": {
|
||||
"bug_report": {
|
||||
"macro_f1": 0.7833333333333333,
|
||||
"macro_precision": 0.7684555303602922,
|
||||
"macro_recall": 0.8027848820687695,
|
||||
"confidence": {
|
||||
"overall": 0.9568860530853271,
|
||||
"correct": 0.97133868932724,
|
||||
"incorrect": 0.8671128153800964
|
||||
},
|
||||
"per_class": {
|
||||
"No": {
|
||||
"precision": 0.9319727891156463,
|
||||
"recall": 0.8954248366013072,
|
||||
"f1-score": 0.9133333333333333,
|
||||
"support": 612.0
|
||||
},
|
||||
"Yes": {
|
||||
"precision": 0.6049382716049383,
|
||||
"recall": 0.7101449275362319,
|
||||
"f1-score": 0.6533333333333333,
|
||||
"support": 138.0
|
||||
},
|
||||
"accuracy": 0.8613333333333333,
|
||||
"macro avg": {
|
||||
"precision": 0.7684555303602922,
|
||||
"recall": 0.8027848820687695,
|
||||
"f1-score": 0.7833333333333333,
|
||||
"support": 750.0
|
||||
},
|
||||
"weighted avg": {
|
||||
"precision": 0.8717984378936761,
|
||||
"recall": 0.8613333333333333,
|
||||
"f1-score": 0.8654933333333333,
|
||||
"support": 750.0
|
||||
}
|
||||
}
|
||||
},
|
||||
"feature_request": {
|
||||
"macro_f1": 0.7632819746470164,
|
||||
"macro_precision": 0.7523338553934565,
|
||||
"macro_recall": 0.7762790132458379,
|
||||
"confidence": {
|
||||
"overall": 0.9604225158691406,
|
||||
"correct": 0.971001923084259,
|
||||
"incorrect": 0.890037477016449
|
||||
},
|
||||
"per_class": {
|
||||
"No": {
|
||||
"precision": 0.9321486268174475,
|
||||
"recall": 0.9115323854660348,
|
||||
"f1-score": 0.9217252396166135,
|
||||
"support": 633.0
|
||||
},
|
||||
"Yes": {
|
||||
"precision": 0.5725190839694656,
|
||||
"recall": 0.6410256410256411,
|
||||
"f1-score": 0.6048387096774194,
|
||||
"support": 117.0
|
||||
},
|
||||
"accuracy": 0.8693333333333333,
|
||||
"macro avg": {
|
||||
"precision": 0.7523338553934565,
|
||||
"recall": 0.7762790132458379,
|
||||
"f1-score": 0.7632819746470164,
|
||||
"support": 750.0
|
||||
},
|
||||
"weighted avg": {
|
||||
"precision": 0.8760464181331623,
|
||||
"recall": 0.8693333333333333,
|
||||
"f1-score": 0.8722909409460992,
|
||||
"support": 750.0
|
||||
}
|
||||
}
|
||||
},
|
||||
"aspect": {
|
||||
"macro_f1": 0.717046709402451,
|
||||
"macro_precision": 0.7186594789555653,
|
||||
"macro_recall": 0.7175741849634064,
|
||||
"confidence": {
|
||||
"overall": 0.8980301022529602,
|
||||
"correct": 0.9270597100257874,
|
||||
"incorrect": 0.81709885597229
|
||||
},
|
||||
"per_class": {
|
||||
"App": {
|
||||
"precision": 0.7875,
|
||||
"recall": 0.84,
|
||||
"f1-score": 0.8129032258064516,
|
||||
"support": 225.0
|
||||
},
|
||||
"Driver": {
|
||||
"precision": 0.7862595419847328,
|
||||
"recall": 0.7803030303030303,
|
||||
"f1-score": 0.7832699619771863,
|
||||
"support": 132.0
|
||||
},
|
||||
"General": {
|
||||
"precision": 0.8037383177570093,
|
||||
"recall": 0.688,
|
||||
"f1-score": 0.7413793103448276,
|
||||
"support": 125.0
|
||||
},
|
||||
"Payment": {
|
||||
"precision": 0.6176470588235294,
|
||||
"recall": 0.6363636363636364,
|
||||
"f1-score": 0.6268656716417911,
|
||||
"support": 33.0
|
||||
},
|
||||
"Pricing": {
|
||||
"precision": 0.6986301369863014,
|
||||
"recall": 0.75,
|
||||
"f1-score": 0.723404255319149,
|
||||
"support": 68.0
|
||||
},
|
||||
"Service": {
|
||||
"precision": 0.6181818181818182,
|
||||
"recall": 0.6107784431137725,
|
||||
"f1-score": 0.6144578313253012,
|
||||
"support": 167.0
|
||||
},
|
||||
"accuracy": 0.736,
|
||||
"macro avg": {
|
||||
"precision": 0.7186594789555653,
|
||||
"recall": 0.7175741849634064,
|
||||
"f1-score": 0.717046709402451,
|
||||
"support": 750.0
|
||||
},
|
||||
"weighted avg": {
|
||||
"precision": 0.7367554868722928,
|
||||
"recall": 0.736,
|
||||
"f1-score": 0.7352797185836668,
|
||||
"support": 750.0
|
||||
}
|
||||
}
|
||||
},
|
||||
"aspect_sentiment": {
|
||||
"macro_f1": 0.7574652640875613,
|
||||
"macro_precision": 0.7713119380138362,
|
||||
"macro_recall": 0.7471910012842655,
|
||||
"confidence": {
|
||||
"overall": 0.9650789499282837,
|
||||
"correct": 0.9762944579124451,
|
||||
"incorrect": 0.8488451242446899
|
||||
},
|
||||
"per_class": {
|
||||
"Positive": {
|
||||
"precision": 0.9387755102040817,
|
||||
"recall": 0.9533678756476683,
|
||||
"f1-score": 0.9460154241645244,
|
||||
"support": 386.0
|
||||
},
|
||||
"Neutral": {
|
||||
"precision": 0.45161290322580644,
|
||||
"recall": 0.358974358974359,
|
||||
"f1-score": 0.4,
|
||||
"support": 39.0
|
||||
},
|
||||
"Negative": {
|
||||
"precision": 0.9235474006116208,
|
||||
"recall": 0.9292307692307692,
|
||||
"f1-score": 0.9263803680981595,
|
||||
"support": 325.0
|
||||
},
|
||||
"accuracy": 0.912,
|
||||
"macro avg": {
|
||||
"precision": 0.7713119380138362,
|
||||
"recall": 0.7471910012842655,
|
||||
"f1-score": 0.7574652640875613,
|
||||
"support": 750.0
|
||||
},
|
||||
"weighted avg": {
|
||||
"precision": 0.9068442071511451,
|
||||
"recall": 0.912,
|
||||
"f1-score": 0.9091140978125444,
|
||||
"support": 750.0
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
69
outputs/eval_summary_stl_aspect_original.json
Normal file
@@ -0,0 +1,69 @@
|
||||
{
|
||||
"mode": "stl",
|
||||
"dataset": "original",
|
||||
"task": "aspect",
|
||||
"model_path": "outputs/best_model_stl_aspect_original.pt",
|
||||
"results": {
|
||||
"aspect": {
|
||||
"macro_f1": 0.6941267385341167,
|
||||
"macro_precision": 0.6926366440012734,
|
||||
"macro_recall": 0.7177510694594175,
|
||||
"confidence": {
|
||||
"overall": 0.8459477424621582,
|
||||
"correct": 0.8876724243164062,
|
||||
"incorrect": 0.7407546639442444
|
||||
},
|
||||
"per_class": {
|
||||
"App": {
|
||||
"precision": 0.7973568281938326,
|
||||
"recall": 0.8044444444444444,
|
||||
"f1-score": 0.8008849557522124,
|
||||
"support": 225.0
|
||||
},
|
||||
"Driver": {
|
||||
"precision": 0.7172413793103448,
|
||||
"recall": 0.7878787878787878,
|
||||
"f1-score": 0.7509025270758123,
|
||||
"support": 132.0
|
||||
},
|
||||
"General": {
|
||||
"precision": 0.7619047619047619,
|
||||
"recall": 0.64,
|
||||
"f1-score": 0.6956521739130435,
|
||||
"support": 125.0
|
||||
},
|
||||
"Payment": {
|
||||
"precision": 0.625,
|
||||
"recall": 0.6060606060606061,
|
||||
"f1-score": 0.6153846153846154,
|
||||
"support": 33.0
|
||||
},
|
||||
"Pricing": {
|
||||
"precision": 0.5614035087719298,
|
||||
"recall": 0.9411764705882353,
|
||||
"f1-score": 0.7032967032967034,
|
||||
"support": 68.0
|
||||
},
|
||||
"Service": {
|
||||
"precision": 0.6929133858267716,
|
||||
"recall": 0.5269461077844312,
|
||||
"f1-score": 0.5986394557823129,
|
||||
"support": 167.0
|
||||
},
|
||||
"accuracy": 0.716,
|
||||
"macro avg": {
|
||||
"precision": 0.6926366440012734,
|
||||
"recall": 0.7177510694594175,
|
||||
"f1-score": 0.6941267385341167,
|
||||
"support": 750.0
|
||||
},
|
||||
"weighted avg": {
|
||||
"precision": 0.7251149569069801,
|
||||
"recall": 0.716,
|
||||
"f1-score": 0.7125059034731999,
|
||||
"support": 750.0
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
51
outputs/eval_summary_stl_aspect_sentiment_original.json
Normal file
@@ -0,0 +1,51 @@
|
||||
{
|
||||
"mode": "stl",
|
||||
"dataset": "original",
|
||||
"task": "aspect_sentiment",
|
||||
"model_path": "outputs/best_model_stl_aspect_sentiment_original.pt",
|
||||
"results": {
|
||||
"aspect_sentiment": {
|
||||
"macro_f1": 0.7856154710827541,
|
||||
"macro_precision": 0.7905014749262537,
|
||||
"macro_recall": 0.7816500597847748,
|
||||
"confidence": {
|
||||
"overall": 0.9811832904815674,
|
||||
"correct": 0.987269401550293,
|
||||
"incorrect": 0.9148151278495789
|
||||
},
|
||||
"per_class": {
|
||||
"Positive": {
|
||||
"precision": 0.96,
|
||||
"recall": 0.9326424870466321,
|
||||
"f1-score": 0.9461235216819974,
|
||||
"support": 386.0
|
||||
},
|
||||
"Neutral": {
|
||||
"precision": 0.5,
|
||||
"recall": 0.46153846153846156,
|
||||
"f1-score": 0.48,
|
||||
"support": 39.0
|
||||
},
|
||||
"Negative": {
|
||||
"precision": 0.911504424778761,
|
||||
"recall": 0.9507692307692308,
|
||||
"f1-score": 0.9307228915662651,
|
||||
"support": 325.0
|
||||
},
|
||||
"accuracy": 0.916,
|
||||
"macro avg": {
|
||||
"precision": 0.7905014749262537,
|
||||
"recall": 0.7816500597847748,
|
||||
"f1-score": 0.7856154710827541,
|
||||
"support": 750.0
|
||||
},
|
||||
"weighted avg": {
|
||||
"precision": 0.9150652507374631,
|
||||
"recall": 0.916,
|
||||
"f1-score": 0.9152114921710495,
|
||||
"support": 750.0
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
45
outputs/eval_summary_stl_bug_report_original.json
Normal file
@@ -0,0 +1,45 @@
|
||||
{
|
||||
"mode": "stl",
|
||||
"dataset": "original",
|
||||
"task": "bug_report",
|
||||
"model_path": "outputs/best_model_stl_bug_report_original.pt",
|
||||
"results": {
|
||||
"bug_report": {
|
||||
"macro_f1": 0.7845034000574658,
|
||||
"macro_precision": 0.7627192982456141,
|
||||
"macro_recall": 0.8191602728047741,
|
||||
"confidence": {
|
||||
"overall": 0.9904617667198181,
|
||||
"correct": 0.9926525950431824,
|
||||
"incorrect": 0.9774385094642639
|
||||
},
|
||||
"per_class": {
|
||||
"No": {
|
||||
"precision": 0.9421052631578948,
|
||||
"recall": 0.8774509803921569,
|
||||
"f1-score": 0.9086294416243654,
|
||||
"support": 612.0
|
||||
},
|
||||
"Yes": {
|
||||
"precision": 0.5833333333333334,
|
||||
"recall": 0.7608695652173914,
|
||||
"f1-score": 0.660377358490566,
|
||||
"support": 138.0
|
||||
},
|
||||
"accuracy": 0.856,
|
||||
"macro avg": {
|
||||
"precision": 0.7627192982456141,
|
||||
"recall": 0.8191602728047741,
|
||||
"f1-score": 0.7845034000574658,
|
||||
"support": 750.0
|
||||
},
|
||||
"weighted avg": {
|
||||
"precision": 0.8760912280701755,
|
||||
"recall": 0.856,
|
||||
"f1-score": 0.8629510583277463,
|
||||
"support": 750.0
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
45
outputs/eval_summary_stl_feature_request_original.json
Normal file
@@ -0,0 +1,45 @@
|
||||
{
|
||||
"mode": "stl",
|
||||
"dataset": "original",
|
||||
"task": "feature_request",
|
||||
"model_path": "outputs/best_model_stl_feature_request_original.pt",
|
||||
"results": {
|
||||
"feature_request": {
|
||||
"macro_f1": 0.7419244916163044,
|
||||
"macro_precision": 0.739484126984127,
|
||||
"macro_recall": 0.7444606473042492,
|
||||
"confidence": {
|
||||
"overall": 0.9515063762664795,
|
||||
"correct": 0.9664607644081116,
|
||||
"incorrect": 0.8575695753097534
|
||||
},
|
||||
"per_class": {
|
||||
"No": {
|
||||
"precision": 0.9206349206349206,
|
||||
"recall": 0.9162717219589257,
|
||||
"f1-score": 0.9184481393507522,
|
||||
"support": 633.0
|
||||
},
|
||||
"Yes": {
|
||||
"precision": 0.5583333333333333,
|
||||
"recall": 0.5726495726495726,
|
||||
"f1-score": 0.5654008438818565,
|
||||
"support": 117.0
|
||||
},
|
||||
"accuracy": 0.8626666666666667,
|
||||
"macro avg": {
|
||||
"precision": 0.739484126984127,
|
||||
"recall": 0.7444606473042492,
|
||||
"f1-score": 0.7419244916163044,
|
||||
"support": 750.0
|
||||
},
|
||||
"weighted avg": {
|
||||
"precision": 0.864115873015873,
|
||||
"recall": 0.8626666666666667,
|
||||
"f1-score": 0.8633727612576044,
|
||||
"support": 750.0
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
BIN
outputs/figures/cm_mtl_boosted_aspect.png
Normal file
|
After Width: | Height: | Size: 48 KiB |
BIN
outputs/figures/cm_mtl_boosted_aspect_sentiment.png
Normal file
|
After Width: | Height: | Size: 34 KiB |
BIN
outputs/figures/cm_mtl_boosted_bug_report.png
Normal file
|
After Width: | Height: | Size: 23 KiB |
BIN
outputs/figures/cm_mtl_boosted_feature_request.png
Normal file
|
After Width: | Height: | Size: 23 KiB |
BIN
outputs/figures/cm_mtl_original_aspect.png
Normal file
|
After Width: | Height: | Size: 50 KiB |
BIN
outputs/figures/cm_mtl_original_aspect_sentiment.png
Normal file
|
After Width: | Height: | Size: 34 KiB |
BIN
outputs/figures/cm_mtl_original_bug_report.png
Normal file
|
After Width: | Height: | Size: 23 KiB |
BIN
outputs/figures/cm_mtl_original_feature_request.png
Normal file
|
After Width: | Height: | Size: 23 KiB |
BIN
outputs/figures/cm_stl_original_aspect.png
Normal file
|
After Width: | Height: | Size: 50 KiB |
BIN
outputs/figures/cm_stl_original_aspect_sentiment.png
Normal file
|
After Width: | Height: | Size: 34 KiB |
BIN
outputs/figures/cm_stl_original_bug_report.png
Normal file
|
After Width: | Height: | Size: 23 KiB |
BIN
outputs/figures/cm_stl_original_feature_request.png
Normal file
|
After Width: | Height: | Size: 24 KiB |
BIN
outputs/inference/best_model_mtl_original.pt_all_predictions_interactive.csv
LFS
Normal file
|
BIN
outputs/inference/best_model_mtl_original.pt_all_predictions_review.csv
LFS
Normal file
|
BIN
outputs/test_predictions_mtl_mtl_boosted.csv
LFS
Normal file
|
BIN
outputs/test_predictions_mtl_mtl_original.csv
LFS
Normal file
|
BIN
outputs/test_predictions_stl_aspect_original.csv
LFS
Normal file
|
BIN
outputs/test_predictions_stl_aspect_sentiment_original.csv
LFS
Normal file
|
BIN
outputs/test_predictions_stl_bug_report_original.csv
LFS
Normal file
|
BIN
outputs/test_predictions_stl_feature_request_original.csv
LFS
Normal file
|
34
run.bat
Normal file
@@ -0,0 +1,34 @@
|
||||
@echo off
|
||||
echo ============================================
|
||||
echo RECLASS - Full Training Pipeline
|
||||
echo ============================================
|
||||
|
||||
echo.
|
||||
echo [1/6] MTL Original
|
||||
python src/train.py --mode mtl --dataset original --epochs 15 --patience 3
|
||||
|
||||
echo.
|
||||
echo [2/6] MTL Boosted
|
||||
python src/train.py --mode mtl --dataset boosted --epochs 15 --patience 3
|
||||
|
||||
echo.
|
||||
echo [3/6] STL Bug Report
|
||||
python src/train.py --mode stl --task bug_report --dataset original --epochs 15 --patience 3
|
||||
|
||||
echo.
|
||||
echo [4/6] STL Feature Request
|
||||
python src/train.py --mode stl --task feature_request --dataset original --epochs 15 --patience 3
|
||||
|
||||
echo.
|
||||
echo [5/6] STL Aspect
|
||||
python src/train.py --mode stl --task aspect --dataset original --epochs 15 --patience 3
|
||||
|
||||
echo.
|
||||
echo [6/6] STL Aspect Sentiment
|
||||
python src/train.py --mode stl --task aspect_sentiment --dataset original --epochs 15 --patience 3
|
||||
|
||||
echo.
|
||||
echo ============================================
|
||||
echo All training runs complete.
|
||||
echo ============================================
|
||||
pause
|
||||