Parcourir la source

Write Keras result script

Jérôme BUISINE il y a 4 ans
Parent
commit
87b8d18661

+ 6 - 0
models_info/models_comparisons_keras.csv

@@ -0,0 +1,6 @@
+model_name; number_of_approximations; coeff_of_determination; MSE 10 samples; MSE 1000 samples;
+6_column_4_row_4_KERAS;163840;0.8879883207039488;17.575786590576172;33.762996673583984
+6_column_5_row_4_KERAS;131840;0.7618169123451719;17.809364318847656;30.046279907226562
+6_column_4_row_5_KERAS;131840;0.8311999662347791;19.474899291992188;33.592063903808594
+6_column_5_row_5_KERAS;106090;0.9742683905539422;33.592559814453125;58.5841064453125
+7_column_4_row_4_KERAS;163840;0.8329720019677914;7.109706878662109;23.089672088623047

+ 602 - 0
models_info/models_comparisons_statistics_Sponza1.csv

@@ -0,0 +1,602 @@
+model_name; number_of_approximations; coeff_of_determination;
+3_column_1_row_1_SGD;2621440;0.9018440335588152;
+3_column_2_row_1_SGD;1310720;0.9030639086070882;
+3_column_3_row_1_SGD;875520;0.9046887472319078;
+3_column_4_row_1_SGD;655360;0.9028638108468524;
+3_column_5_row_1_SGD;527360;0.9013514578307432;
+3_column_1_row_2_SGD;1310720;0.901559581651048;
+3_column_2_row_2_SGD;655360;0.8997161412853001;
+3_column_3_row_2_SGD;437760;0.9026073387834556;
+3_column_4_row_2_SGD;327680;0.8975807926416736;
+3_column_5_row_2_SGD;263680;0.9005704941905649;
+3_column_1_row_3_SGD;875520;0.9002687459560941;
+3_column_2_row_3_SGD;437760;0.8960744385901536;
+3_column_3_row_3_SGD;292410;0.8995415460360059;
+3_column_4_row_3_SGD;218880;0.8984005842624919;
+3_column_5_row_3_SGD;176130;0.9018465241333278;
+3_column_1_row_4_SGD;655360;0.9010061297048312;
+3_column_2_row_4_SGD;327680;0.9012928718046163;
+3_column_3_row_4_SGD;218880;0.8970211635949088;
+3_column_4_row_4_SGD;163840;0.9018409554541595;
+3_column_5_row_4_SGD;131840;0.9009369695265287;
+3_column_1_row_5_SGD;527360;0.9009282533162567;
+3_column_2_row_5_SGD;263680;0.9035144189863733;
+3_column_3_row_5_SGD;176130;0.9012795920870199;
+3_column_4_row_5_SGD;131840;0.9023804839041808;
+3_column_5_row_5_SGD;106090;0.9010977387301471;
+3_column_1_row_1_Ridge;2621440;0.9048792888482339;
+3_column_2_row_1_Ridge;1310720;0.9043694760978499;
+3_column_3_row_1_Ridge;875520;0.9054274178579726;
+3_column_4_row_1_Ridge;655360;0.9040665219614458;
+3_column_5_row_1_Ridge;527360;0.904119902558395;
+3_column_1_row_2_Ridge;1310720;0.9060360372738719;
+3_column_2_row_2_Ridge;655360;0.9056130084455571;
+3_column_3_row_2_Ridge;437760;0.9061505438822383;
+3_column_4_row_2_Ridge;327680;0.9051119791518648;
+3_column_5_row_2_Ridge;263680;0.9052273423331532;
+3_column_1_row_3_Ridge;875520;0.9039990114265846;
+3_column_2_row_3_Ridge;437760;0.9032055069289541;
+3_column_3_row_3_Ridge;292410;0.9045233914853957;
+3_column_4_row_3_Ridge;218880;0.9023635525126912;
+3_column_5_row_3_Ridge;176130;0.9046559335045065;
+3_column_1_row_4_Ridge;655360;0.9057356771494335;
+3_column_2_row_4_Ridge;327680;0.9053208093971855;
+3_column_3_row_4_Ridge;218880;0.9052097792138781;
+3_column_4_row_4_Ridge;163840;0.9051917087260447;
+3_column_5_row_4_Ridge;131840;0.9041790245038754;
+3_column_1_row_5_Ridge;527360;0.906613531364999;
+3_column_2_row_5_Ridge;263680;0.9059610653667538;
+3_column_3_row_5_Ridge;176130;0.9060171892386887;
+3_column_4_row_5_Ridge;131840;0.9063155783223782;
+3_column_5_row_5_Ridge;106090;0.9049774052384802;
+4_column_1_row_1_SGD;2621440;0.9238400465983646;
+4_column_2_row_1_SGD;1310720;0.9237858005162195;
+4_column_3_row_1_SGD;875520;0.9235304387457681;
+4_column_4_row_1_SGD;655360;0.9282408949399894;
+4_column_5_row_1_SGD;527360;0.9231201055602892;
+4_column_1_row_2_SGD;1310720;0.926620209235368;
+4_column_2_row_2_SGD;655360;0.9200400291873101;
+4_column_3_row_2_SGD;437760;0.9247185061190719;
+4_column_4_row_2_SGD;327680;0.9214330409447601;
+4_column_5_row_2_SGD;263680;0.9261076340929203;
+4_column_1_row_3_SGD;875520;0.9255577407845614;
+4_column_2_row_3_SGD;437760;0.9225826181653274;
+4_column_3_row_3_SGD;292410;0.924529898457659;
+4_column_4_row_3_SGD;218880;0.9194797669277981;
+4_column_5_row_3_SGD;176130;0.9222517410311172;
+4_column_1_row_4_SGD;655360;0.9256479776957526;
+4_column_2_row_4_SGD;327680;0.9232934038215228;
+4_column_3_row_4_SGD;218880;0.927924505287978;
+4_column_4_row_4_SGD;163840;0.9237348153070685;
+4_column_5_row_4_SGD;131840;0.9224146116037348;
+4_column_1_row_5_SGD;527360;0.9290513852626092;
+4_column_2_row_5_SGD;263680;0.9236377504314556;
+4_column_3_row_5_SGD;176130;0.9287586716997476;
+4_column_4_row_5_SGD;131840;0.9233782823376949;
+4_column_5_row_5_SGD;106090;0.9248549436800502;
+4_column_1_row_1_Ridge;2621440;0.9268721463279616;
+4_column_2_row_1_Ridge;1310720;0.9263509992432455;
+4_column_3_row_1_Ridge;875520;0.9272334840708022;
+4_column_4_row_1_Ridge;655360;0.9262825317853585;
+4_column_5_row_1_Ridge;527360;0.9260669530041175;
+4_column_1_row_2_Ridge;1310720;0.9277305684862951;
+4_column_2_row_2_Ridge;655360;0.9273012951489785;
+4_column_3_row_2_Ridge;437760;0.9277004639441416;
+4_column_4_row_2_Ridge;327680;0.927152911806534;
+4_column_5_row_2_Ridge;263680;0.9273678197596282;
+4_column_1_row_3_Ridge;875520;0.9262042636746705;
+4_column_2_row_3_Ridge;437760;0.9255647130337549;
+4_column_3_row_3_Ridge;292410;0.9266076692164044;
+4_column_4_row_3_Ridge;218880;0.9245070474138093;
+4_column_5_row_3_Ridge;176130;0.9267199543109474;
+4_column_1_row_4_Ridge;655360;0.927361479425523;
+4_column_2_row_4_Ridge;327680;0.9268700953213174;
+4_column_3_row_4_Ridge;218880;0.9268681613680866;
+4_column_4_row_4_Ridge;163840;0.9271033394079862;
+4_column_5_row_4_Ridge;131840;0.9263445325485576;
+4_column_1_row_5_Ridge;527360;0.9284806576679552;
+4_column_2_row_5_Ridge;263680;0.9277585397191872;
+4_column_3_row_5_Ridge;176130;0.92812020511958;
+4_column_4_row_5_Ridge;131840;0.9282604526807204;
+4_column_5_row_5_Ridge;106090;0.9270287371376925;
+5_column_1_row_1_SGD;2621440;0.9367111146085788;
+5_column_2_row_1_SGD;1310720;0.9376190775973123;
+5_column_3_row_1_SGD;875520;0.9360403304295202;
+5_column_4_row_1_SGD;655360;0.9373504313792875;
+5_column_5_row_1_SGD;527360;0.941930080841582;
+5_column_1_row_2_SGD;1310720;0.938354786272183;
+5_column_2_row_2_SGD;655360;0.938330615516916;
+5_column_3_row_2_SGD;437760;0.9394344634412042;
+5_column_4_row_2_SGD;327680;0.93701905657239;
+5_column_5_row_2_SGD;263680;0.9360938408128409;
+5_column_1_row_3_SGD;875520;0.9359518514130127;
+5_column_2_row_3_SGD;437760;0.938628855578142;
+5_column_3_row_3_SGD;292410;0.9336646260619088;
+5_column_4_row_3_SGD;218880;0.935321307758417;
+5_column_5_row_3_SGD;176130;0.9419325789791767;
+5_column_1_row_4_SGD;655360;0.9351955247805795;
+5_column_2_row_4_SGD;327680;0.9405871939445785;
+5_column_3_row_4_SGD;218880;0.9356282937499052;
+5_column_4_row_4_SGD;163840;0.9389650724166467;
+5_column_5_row_4_SGD;131840;0.9388891692168994;
+5_column_1_row_5_SGD;527360;0.9387609825742358;
+5_column_2_row_5_SGD;263680;0.9368747851848085;
+5_column_3_row_5_SGD;176130;0.939476858230962;
+5_column_4_row_5_SGD;131840;0.9391461001424486;
+5_column_5_row_5_SGD;106090;0.9374469862318235;
+5_column_1_row_1_Ridge;2621440;0.9406190691621044;
+5_column_2_row_1_Ridge;1310720;0.9402935996712836;
+5_column_3_row_1_Ridge;875520;0.940984682437774;
+5_column_4_row_1_Ridge;655360;0.9400246386154238;
+5_column_5_row_1_Ridge;527360;0.9400864560267465;
+5_column_1_row_2_Ridge;1310720;0.9413898021212901;
+5_column_2_row_2_Ridge;655360;0.9411725552961796;
+5_column_3_row_2_Ridge;437760;0.9414778831998802;
+5_column_4_row_2_Ridge;327680;0.9409731221709966;
+5_column_5_row_2_Ridge;263680;0.941070619040009;
+5_column_1_row_3_Ridge;875520;0.9400021238478729;
+5_column_2_row_3_Ridge;437760;0.9395109741142409;
+5_column_3_row_3_Ridge;292410;0.9403203786442491;
+5_column_4_row_3_Ridge;218880;0.9383127392071078;
+5_column_5_row_3_Ridge;176130;0.9401606066988617;
+5_column_1_row_4_Ridge;655360;0.9409820178396546;
+5_column_2_row_4_Ridge;327680;0.9406237493458419;
+5_column_3_row_4_Ridge;218880;0.9408625064549981;
+5_column_4_row_4_Ridge;163840;0.940625733693943;
+5_column_5_row_4_Ridge;131840;0.9401644601976726;
+5_column_1_row_5_Ridge;527360;0.9419562219997344;
+5_column_2_row_5_Ridge;263680;0.9415841853550192;
+5_column_3_row_5_Ridge;176130;0.9418136695457876;
+5_column_4_row_5_Ridge;131840;0.9415796075658626;
+5_column_5_row_5_Ridge;106090;0.9410106884141813;
+6_column_1_row_1_SGD;2621440;0.9440773930612799;
+6_column_2_row_1_SGD;1310720;0.9451810688869228;
+6_column_3_row_1_SGD;875520;0.9484973723804508;
+6_column_4_row_1_SGD;655360;0.9467115140967961;
+6_column_5_row_1_SGD;527360;0.9492299665160813;
+6_column_1_row_2_SGD;1310720;0.9500657735905486;
+6_column_2_row_2_SGD;655360;0.9507909714462969;
+6_column_3_row_2_SGD;437760;0.9483403147711145;
+6_column_4_row_2_SGD;327680;0.9449462348621216;
+6_column_5_row_2_SGD;263680;0.9508755677819095;
+6_column_1_row_3_SGD;875520;0.9440695067480401;
+6_column_2_row_3_SGD;437760;0.943315960276263;
+6_column_3_row_3_SGD;292410;0.9459432442263078;
+6_column_4_row_3_SGD;218880;0.9410683209517501;
+6_column_5_row_3_SGD;176130;0.9444468362859815;
+6_column_1_row_4_SGD;655360;0.9491182846020207;
+6_column_2_row_4_SGD;327680;0.9466096441403584;
+6_column_3_row_4_SGD;218880;0.946605039024686;
+6_column_4_row_4_SGD;163840;0.9511345172611906;
+6_column_5_row_4_SGD;131840;0.9504641476768161;
+6_column_1_row_5_SGD;527360;0.9499126359875585;
+6_column_2_row_5_SGD;263680;0.9515442066814321;
+6_column_3_row_5_SGD;176130;0.9448195314921479;
+6_column_4_row_5_SGD;131840;0.950535719216121;
+6_column_5_row_5_SGD;106090;0.9465596811537218;
+6_column_1_row_1_Ridge;2621440;0.9500112533951145;
+6_column_2_row_1_Ridge;1310720;0.9498787529722942;
+6_column_3_row_1_Ridge;875520;0.9501925911459874;
+6_column_4_row_1_Ridge;655360;0.9497392047002419;
+6_column_5_row_1_Ridge;527360;0.9497634523230317;
+6_column_1_row_2_Ridge;1310720;0.9506661461039074;
+6_column_2_row_2_Ridge;655360;0.9506028678702206;
+6_column_3_row_2_Ridge;437760;0.950719899384283;
+6_column_4_row_2_Ridge;327680;0.9504429029427287;
+6_column_5_row_2_Ridge;263680;0.9502201471201848;
+6_column_1_row_3_Ridge;875520;0.9494456101276149;
+6_column_2_row_3_Ridge;437760;0.9490775969828756;
+6_column_3_row_3_Ridge;292410;0.9496089082634063;
+6_column_4_row_3_Ridge;218880;0.9480783124572383;
+6_column_5_row_3_Ridge;176130;0.9496303006868331;
+6_column_1_row_4_Ridge;655360;0.9503106590363949;
+6_column_2_row_4_Ridge;327680;0.9500410560266952;
+6_column_3_row_4_Ridge;218880;0.9501980050659545;
+6_column_4_row_4_Ridge;163840;0.9500356184254353;
+6_column_5_row_4_Ridge;131840;0.9498111672420186;
+6_column_1_row_5_Ridge;527360;0.951142377442809;
+6_column_2_row_5_Ridge;263680;0.9509612089004259;
+6_column_3_row_5_Ridge;176130;0.951075357509009;
+6_column_4_row_5_Ridge;131840;0.9511037907797656;
+6_column_5_row_5_Ridge;106090;0.9502685739453036;
+7_column_1_row_1_SGD;2621440;0.9507142010615479;
+7_column_2_row_1_SGD;1310720;0.9532178427236289;
+7_column_3_row_1_SGD;875520;0.955951191107229;
+7_column_4_row_1_SGD;655360;0.9554999196739484;
+7_column_5_row_1_SGD;527360;0.9535832294444466;
+7_column_1_row_2_SGD;1310720;0.9567492775039457;
+7_column_2_row_2_SGD;655360;0.9545688568930129;
+7_column_3_row_2_SGD;437760;0.9542275663285891;
+7_column_4_row_2_SGD;327680;0.9579625170923427;
+7_column_5_row_2_SGD;263680;0.9542142001374029;
+7_column_1_row_3_SGD;875520;0.9533486799797252;
+7_column_2_row_3_SGD;437760;0.9482220203507664;
+7_column_3_row_3_SGD;292410;0.9509268850920043;
+7_column_4_row_3_SGD;218880;0.9568449703346397;
+7_column_5_row_3_SGD;176130;0.9586747185880715;
+7_column_1_row_4_SGD;655360;0.9564523505113329;
+7_column_2_row_4_SGD;327680;0.954252023357771;
+7_column_3_row_4_SGD;218880;0.9543300181160363;
+7_column_4_row_4_SGD;163840;0.9545886411700063;
+7_column_5_row_4_SGD;131840;0.9549938930536672;
+7_column_1_row_5_SGD;527360;0.955296456118917;
+7_column_2_row_5_SGD;263680;0.9548392758198384;
+7_column_3_row_5_SGD;176130;0.9549027011377612;
+7_column_4_row_5_SGD;131840;0.9570603751007631;
+7_column_5_row_5_SGD;106090;0.9556075579659185;
+7_column_1_row_1_Ridge;2621440;0.9569073498398472;
+7_column_2_row_1_Ridge;1310720;0.956798269844352;
+7_column_3_row_1_Ridge;875520;0.9571317680173924;
+7_column_4_row_1_Ridge;655360;0.9566925273454739;
+7_column_5_row_1_Ridge;527360;0.9568177343602591;
+7_column_1_row_2_Ridge;1310720;0.9574630185013829;
+7_column_2_row_2_Ridge;655360;0.9574396639589218;
+7_column_3_row_2_Ridge;437760;0.9574773008796577;
+7_column_4_row_2_Ridge;327680;0.9573824355888886;
+7_column_5_row_2_Ridge;263680;0.957013702578561;
+7_column_1_row_3_Ridge;875520;0.956616548440722;
+7_column_2_row_3_Ridge;437760;0.9563788482371716;
+7_column_3_row_3_Ridge;292410;0.9567974565533122;
+7_column_4_row_3_Ridge;218880;0.9556014045366621;
+7_column_5_row_3_Ridge;176130;0.9568703081242191;
+7_column_1_row_4_Ridge;655360;0.9571749728940104;
+7_column_2_row_4_Ridge;327680;0.9569945867427827;
+7_column_3_row_4_Ridge;218880;0.9570489403499076;
+7_column_4_row_4_Ridge;163840;0.9570406397454825;
+7_column_5_row_4_Ridge;131840;0.9567254010885442;
+7_column_1_row_5_Ridge;527360;0.9580207785579998;
+7_column_2_row_5_Ridge;263680;0.9577932406040923;
+7_column_3_row_5_Ridge;176130;0.9581248617178797;
+7_column_4_row_5_Ridge;131840;0.9578554731088966;
+7_column_5_row_5_Ridge;106090;0.957187047611965;
+8_column_1_row_1_SGD;2621440;0.9614516931855509;
+8_column_2_row_1_SGD;1310720;0.9607843464679758;
+8_column_3_row_1_SGD;875520;0.9584442370403943;
+8_column_4_row_1_SGD;655360;0.9592477036588165;
+8_column_5_row_1_SGD;527360;0.9588085741714347;
+8_column_1_row_2_SGD;1310720;0.9597605036173472;
+8_column_2_row_2_SGD;655360;0.9595748218430874;
+8_column_3_row_2_SGD;437760;0.9589665773733413;
+8_column_4_row_2_SGD;327680;0.9607917967846749;
+8_column_5_row_2_SGD;263680;0.9631336811994005;
+8_column_1_row_3_SGD;875520;0.9566936479813432;
+8_column_2_row_3_SGD;437760;0.9599994239306038;
+8_column_3_row_3_SGD;292410;0.96060121777427;
+8_column_4_row_3_SGD;218880;0.9540998662802332;
+8_column_5_row_3_SGD;176130;0.9606994200925764;
+8_column_1_row_4_SGD;655360;0.9592252585587852;
+8_column_2_row_4_SGD;327680;0.9603216211459723;
+8_column_3_row_4_SGD;218880;0.9613194787672417;
+8_column_4_row_4_SGD;163840;0.960834489540638;
+8_column_5_row_4_SGD;131840;0.9596966882389331;
+8_column_1_row_5_SGD;527360;0.9601640959639741;
+8_column_2_row_5_SGD;263680;0.9628453542913169;
+8_column_3_row_5_SGD;176130;0.9605815126848721;
+8_column_4_row_5_SGD;131840;0.9598715759994171;
+8_column_5_row_5_SGD;106090;0.9637175405548719;
+8_column_1_row_1_Ridge;2621440;0.9621258104000048;
+8_column_2_row_1_Ridge;1310720;0.9620158943552832;
+8_column_3_row_1_Ridge;875520;0.9622772507739744;
+8_column_4_row_1_Ridge;655360;0.9618139842487734;
+8_column_5_row_1_Ridge;527360;0.9621095344764579;
+8_column_1_row_2_Ridge;1310720;0.9626365629845108;
+8_column_2_row_2_Ridge;655360;0.962620476368632;
+8_column_3_row_2_Ridge;437760;0.9625436435717333;
+8_column_4_row_2_Ridge;327680;0.9624580703145078;
+8_column_5_row_2_Ridge;263680;0.9622333046791779;
+8_column_1_row_3_Ridge;875520;0.9618281016451463;
+8_column_2_row_3_Ridge;437760;0.9615929048446094;
+8_column_3_row_3_Ridge;292410;0.9619835277338461;
+8_column_4_row_3_Ridge;218880;0.9606320087254909;
+8_column_5_row_3_Ridge;176130;0.961963672142547;
+8_column_1_row_4_Ridge;655360;0.9624082997105865;
+8_column_2_row_4_Ridge;327680;0.9623229934293402;
+8_column_3_row_4_Ridge;218880;0.962203826535569;
+8_column_4_row_4_Ridge;163840;0.9620959397371079;
+8_column_5_row_4_Ridge;131840;0.9620078006748025;
+8_column_1_row_5_Ridge;527360;0.9631172534453151;
+8_column_2_row_5_Ridge;263680;0.9630264090085239;
+8_column_3_row_5_Ridge;176130;0.9630988059163643;
+8_column_4_row_5_Ridge;131840;0.9629757205711362;
+8_column_5_row_5_Ridge;106090;0.9626417332173228;
+9_column_1_row_1_SGD;2621440;0.9645789044395122;
+9_column_2_row_1_SGD;1310720;0.9648693164530011;
+9_column_3_row_1_SGD;875520;0.9647953874684999;
+9_column_4_row_1_SGD;655360;0.9684638966042167;
+9_column_5_row_1_SGD;527360;0.9644827305520111;
+9_column_1_row_2_SGD;1310720;0.9645044559313808;
+9_column_2_row_2_SGD;655360;0.9691283165390676;
+9_column_3_row_2_SGD;437760;0.965096388481414;
+9_column_4_row_2_SGD;327680;0.9638605699258518;
+9_column_5_row_2_SGD;263680;0.9653201286659296;
+9_column_1_row_3_SGD;875520;0.9614943663308396;
+9_column_2_row_3_SGD;437760;0.9648949315691664;
+9_column_3_row_3_SGD;292410;0.9687578078353178;
+9_column_4_row_3_SGD;218880;0.9580563656411462;
+9_column_5_row_3_SGD;176130;0.9641447608495044;
+9_column_1_row_4_SGD;655360;0.9635559980573651;
+9_column_2_row_4_SGD;327680;0.9663073555006781;
+9_column_3_row_4_SGD;218880;0.9636828831182573;
+9_column_4_row_4_SGD;163840;0.9628393924790943;
+9_column_5_row_4_SGD;131840;0.9617758624976142;
+9_column_1_row_5_SGD;527360;0.9655678170487156;
+9_column_2_row_5_SGD;263680;0.966083542912257;
+9_column_3_row_5_SGD;176130;0.9664025262227942;
+9_column_4_row_5_SGD;131840;0.9679698620080854;
+9_column_5_row_5_SGD;106090;0.9693431599553474;
+9_column_1_row_1_Ridge;2621440;0.9661788646887369;
+9_column_2_row_1_Ridge;1310720;0.9661133119374721;
+9_column_3_row_1_Ridge;875520;0.9662788939210536;
+9_column_4_row_1_Ridge;655360;0.9659103430661038;
+9_column_5_row_1_Ridge;527360;0.9662446737678226;
+9_column_1_row_2_Ridge;1310720;0.9666590986092691;
+9_column_2_row_2_Ridge;655360;0.966612281036895;
+9_column_3_row_2_Ridge;437760;0.9666279004639425;
+9_column_4_row_2_Ridge;327680;0.9665066195822173;
+9_column_5_row_2_Ridge;263680;0.9663865078998338;
+9_column_1_row_3_Ridge;875520;0.9659679355231687;
+9_column_2_row_3_Ridge;437760;0.9657551473643922;
+9_column_3_row_3_Ridge;292410;0.96598885714359;
+9_column_4_row_3_Ridge;218880;0.9649174563931227;
+9_column_5_row_3_Ridge;176130;0.9661519756817509;
+9_column_1_row_4_Ridge;655360;0.9664168568504732;
+9_column_2_row_4_Ridge;327680;0.96635136916258;
+9_column_3_row_4_Ridge;218880;0.9663106627045006;
+9_column_4_row_4_Ridge;163840;0.9661863671248107;
+9_column_5_row_4_Ridge;131840;0.9660271751989071;
+9_column_1_row_5_Ridge;527360;0.9670504024848378;
+9_column_2_row_5_Ridge;263680;0.9669671380196475;
+9_column_3_row_5_Ridge;176130;0.9669807846219197;
+9_column_4_row_5_Ridge;131840;0.966981752403277;
+9_column_5_row_5_Ridge;106090;0.9665657997984771;
+10_column_1_row_1_SGD;2621440;0.9724700772743716;
+10_column_2_row_1_SGD;1310720;0.9710344859085424;
+10_column_3_row_1_SGD;875520;0.9670236990437074;
+10_column_4_row_1_SGD;655360;0.9675697062013565;
+10_column_5_row_1_SGD;527360;0.9717618745746092;
+10_column_1_row_2_SGD;1310720;0.9651358828761836;
+10_column_2_row_2_SGD;655360;0.9712652636690107;
+10_column_3_row_2_SGD;437760;0.9695171398667295;
+10_column_4_row_2_SGD;327680;0.9661844718165332;
+10_column_5_row_2_SGD;263680;0.9678959376996278;
+10_column_1_row_3_SGD;875520;0.9729084643213478;
+10_column_2_row_3_SGD;437760;0.9632006318143673;
+10_column_3_row_3_SGD;292410;0.9666264018352322;
+10_column_4_row_3_SGD;218880;0.9672320140372728;
+10_column_5_row_3_SGD;176130;0.9686431906214115;
+10_column_1_row_4_SGD;655360;0.9684451608746395;
+10_column_2_row_4_SGD;327680;0.9681041192771974;
+10_column_3_row_4_SGD;218880;0.9654015536145907;
+10_column_4_row_4_SGD;163840;0.9656870988482249;
+10_column_5_row_4_SGD;131840;0.9701344681611564;
+10_column_1_row_5_SGD;527360;0.9687408745481146;
+10_column_2_row_5_SGD;263680;0.9680898416215462;
+10_column_3_row_5_SGD;176130;0.9690101152914368;
+10_column_4_row_5_SGD;131840;0.9737395452185884;
+10_column_5_row_5_SGD;106090;0.968938831587383;
+10_column_1_row_1_Ridge;2621440;0.9694733869899889;
+10_column_2_row_1_Ridge;1310720;0.9694056655042242;
+10_column_3_row_1_Ridge;875520;0.9695903381411906;
+10_column_4_row_1_Ridge;655360;0.9691593970550918;
+10_column_5_row_1_Ridge;527360;0.9696425385361354;
+10_column_1_row_2_Ridge;1310720;0.9699811078270313;
+10_column_2_row_2_Ridge;655360;0.9699262709449458;
+10_column_3_row_2_Ridge;437760;0.9699770160947236;
+10_column_4_row_2_Ridge;327680;0.9698279130795563;
+10_column_5_row_2_Ridge;263680;0.9697762290156763;
+10_column_1_row_3_Ridge;875520;0.9692056004846871;
+10_column_2_row_3_Ridge;437760;0.9690470932943124;
+10_column_3_row_3_Ridge;292410;0.9692512635730614;
+10_column_4_row_3_Ridge;218880;0.9682521694493934;
+10_column_5_row_3_Ridge;176130;0.9694714798365212;
+10_column_1_row_4_Ridge;655360;0.9697768756277562;
+10_column_2_row_4_Ridge;327680;0.9696821116827771;
+10_column_3_row_4_Ridge;218880;0.9697190713508366;
+10_column_4_row_4_Ridge;163840;0.969509750737743;
+10_column_5_row_4_Ridge;131840;0.9694510337143287;
+10_column_1_row_5_Ridge;527360;0.9703211698550637;
+10_column_2_row_5_Ridge;263680;0.9702401503065603;
+10_column_3_row_5_Ridge;176130;0.9702181149245632;
+10_column_4_row_5_Ridge;131840;0.9701834911405847;
+10_column_5_row_5_Ridge;106090;0.9700783702592559;
+15_column_1_row_1_SGD;2621440;0.97732866727599;
+15_column_2_row_1_SGD;1310720;0.9792206618418519;
+15_column_3_row_1_SGD;875520;0.9808949328952219;
+15_column_4_row_1_SGD;655360;0.9744880456702503;
+15_column_5_row_1_SGD;527360;0.9796554205241181;
+15_column_1_row_2_SGD;1310720;0.978508678956571;
+15_column_2_row_2_SGD;655360;0.975976210218718;
+15_column_3_row_2_SGD;437760;0.9756492263128579;
+15_column_4_row_2_SGD;327680;0.9786540217257594;
+15_column_5_row_2_SGD;263680;0.9796210318862589;
+15_column_1_row_3_SGD;875520;0.9828586231315071;
+15_column_2_row_3_SGD;437760;0.9868622965995065;
+15_column_3_row_3_SGD;292410;0.9771490047936036;
+15_column_4_row_3_SGD;218880;0.9782802133591513;
+15_column_5_row_3_SGD;176130;0.9787518951443609;
+15_column_1_row_4_SGD;655360;0.9800270762818598;
+15_column_2_row_4_SGD;327680;0.9811660322594138;
+15_column_3_row_4_SGD;218880;0.978323912899543;
+15_column_4_row_4_SGD;163840;0.9758285017341048;
+15_column_5_row_4_SGD;131840;0.9762260014862295;
+15_column_1_row_5_SGD;527360;0.9794932744418796;
+15_column_2_row_5_SGD;263680;0.9772509216122444;
+15_column_3_row_5_SGD;176130;0.9790659501713884;
+15_column_4_row_5_SGD;131840;0.9821912859136556;
+15_column_5_row_5_SGD;106090;0.9777714253712043;
+15_column_1_row_1_Ridge;2621440;0.9795625146886475;
+15_column_2_row_1_Ridge;1310720;0.9794992913365859;
+15_column_3_row_1_Ridge;875520;0.9795783299202621;
+15_column_4_row_1_Ridge;655360;0.9794080823581702;
+15_column_5_row_1_Ridge;527360;0.9797170271708974;
+15_column_1_row_2_Ridge;1310720;0.9798736007885148;
+15_column_2_row_2_Ridge;655360;0.9798802118592786;
+15_column_3_row_2_Ridge;437760;0.9797824573470604;
+15_column_4_row_2_Ridge;327680;0.9798297975809522;
+15_column_5_row_2_Ridge;263680;0.9797739805457037;
+15_column_1_row_3_Ridge;875520;0.9794241788175034;
+15_column_2_row_3_Ridge;437760;0.9793785721305834;
+15_column_3_row_3_Ridge;292410;0.9794106437198302;
+15_column_4_row_3_Ridge;218880;0.979008669310412;
+15_column_5_row_3_Ridge;176130;0.979553998956287;
+15_column_1_row_4_Ridge;655360;0.9797455966208835;
+15_column_2_row_4_Ridge;327680;0.9797611491640498;
+15_column_3_row_4_Ridge;218880;0.9795764897693547;
+15_column_4_row_4_Ridge;163840;0.9797085333667599;
+15_column_5_row_4_Ridge;131840;0.9795047446798912;
+15_column_1_row_5_Ridge;527360;0.9801231367204652;
+15_column_2_row_5_Ridge;263680;0.9799542329108277;
+15_column_3_row_5_Ridge;176130;0.9800501858666356;
+15_column_4_row_5_Ridge;131840;0.9800560509912011;
+15_column_5_row_5_Ridge;106090;0.9800235970630995;
+20_column_1_row_1_SGD;2621440;0.9824379972792051;
+20_column_2_row_1_SGD;1310720;0.9849857054090381;
+20_column_3_row_1_SGD;875520;0.98673273197123;
+20_column_4_row_1_SGD;655360;0.9878028937871204;
+20_column_5_row_1_SGD;527360;0.9840948720737839;
+20_column_1_row_2_SGD;1310720;0.9835029608727066;
+20_column_2_row_2_SGD;655360;0.9854399061324185;
+20_column_3_row_2_SGD;437760;0.9850512106707943;
+20_column_4_row_2_SGD;327680;0.9857632476495658;
+20_column_5_row_2_SGD;263680;0.9854388745954534;
+20_column_1_row_3_SGD;875520;0.986239433449881;
+20_column_2_row_3_SGD;437760;0.988056107005179;
+20_column_3_row_3_SGD;292410;0.9827272051266717;
+20_column_4_row_3_SGD;218880;0.9934662925637835;
+20_column_5_row_3_SGD;176130;0.982233484634258;
+20_column_1_row_4_SGD;655360;0.9854374826404572;
+20_column_2_row_4_SGD;327680;0.9846857966675787;
+20_column_3_row_4_SGD;218880;0.9847655680015055;
+20_column_4_row_4_SGD;163840;0.9854398454016167;
+20_column_5_row_4_SGD;131840;0.9821243013555272;
+20_column_1_row_5_SGD;527360;0.9852605701893115;
+20_column_2_row_5_SGD;263680;0.9831491668113602;
+20_column_3_row_5_SGD;176130;0.9861279797710439;
+20_column_4_row_5_SGD;131840;0.9849893342938301;
+20_column_5_row_5_SGD;106090;0.9849175728028211;
+20_column_1_row_1_Ridge;2621440;0.9847018801676395;
+20_column_2_row_1_Ridge;1310720;0.9846314263102566;
+20_column_3_row_1_Ridge;875520;0.984696566144416;
+20_column_4_row_1_Ridge;655360;0.9845667033744335;
+20_column_5_row_1_Ridge;527360;0.9847450744833405;
+20_column_1_row_2_Ridge;1310720;0.9849067687669482;
+20_column_2_row_2_Ridge;655360;0.9848809924051981;
+20_column_3_row_2_Ridge;437760;0.9848367226894351;
+20_column_4_row_2_Ridge;327680;0.9849014114712341;
+20_column_5_row_2_Ridge;263680;0.984782959495995;
+20_column_1_row_3_Ridge;875520;0.9845979331864276;
+20_column_2_row_3_Ridge;437760;0.984527493542682;
+20_column_3_row_3_Ridge;292410;0.9845494732470643;
+20_column_4_row_3_Ridge;218880;0.9843383266086974;
+20_column_5_row_3_Ridge;176130;0.9846184919282571;
+20_column_1_row_4_Ridge;655360;0.9847936862778347;
+20_column_2_row_4_Ridge;327680;0.9847503728169199;
+20_column_3_row_4_Ridge;218880;0.9846564617022961;
+20_column_4_row_4_Ridge;163840;0.984823673834053;
+20_column_5_row_4_Ridge;131840;0.9845266523496794;
+20_column_1_row_5_Ridge;527360;0.9850920558623808;
+20_column_2_row_5_Ridge;263680;0.9848990971496439;
+20_column_3_row_5_Ridge;176130;0.9850267471642196;
+20_column_4_row_5_Ridge;131840;0.9849453199443569;
+20_column_5_row_5_Ridge;106090;0.984884360485246;
+25_column_1_row_1_SGD;2621440;0.9881595514701959;
+25_column_2_row_1_SGD;1310720;0.9859865116260224;
+25_column_3_row_1_SGD;875520;0.9847724304723485;
+25_column_4_row_1_SGD;655360;0.9853021745369607;
+25_column_5_row_1_SGD;527360;0.9878803861385836;
+25_column_1_row_2_SGD;1310720;0.9900690526434912;
+25_column_2_row_2_SGD;655360;0.9897782072498549;
+25_column_3_row_2_SGD;437760;0.9898892755483351;
+25_column_4_row_2_SGD;327680;0.9902644287554029;
+25_column_5_row_2_SGD;263680;0.9876280264113345;
+25_column_1_row_3_SGD;875520;0.9900609919575947;
+25_column_2_row_3_SGD;437760;0.9853527222603075;
+25_column_3_row_3_SGD;292410;0.988363348116198;
+25_column_4_row_3_SGD;218880;0.9840107846677744;
+25_column_5_row_3_SGD;176130;0.9897080238603562;
+25_column_1_row_4_SGD;655360;0.9893808364141823;
+25_column_2_row_4_SGD;327680;0.9867908130427527;
+25_column_3_row_4_SGD;218880;0.987750258018854;
+25_column_4_row_4_SGD;163840;0.9847141268972969;
+25_column_5_row_4_SGD;131840;0.9898134042240133;
+25_column_1_row_5_SGD;527360;0.9905992637085934;
+25_column_2_row_5_SGD;263680;0.9881124157886312;
+25_column_3_row_5_SGD;176130;0.989081958373833;
+25_column_4_row_5_SGD;131840;0.9864962928074;
+25_column_5_row_5_SGD;106090;0.9859442482063168;
+25_column_1_row_1_Ridge;2621440;0.9877824821272712;
+25_column_2_row_1_Ridge;1310720;0.9877373049105811;
+25_column_3_row_1_Ridge;875520;0.9878158305686462;
+25_column_4_row_1_Ridge;655360;0.9876620621866213;
+25_column_5_row_1_Ridge;527360;0.9877969377478204;
+25_column_1_row_2_Ridge;1310720;0.9879557342460751;
+25_column_2_row_2_Ridge;655360;0.9879358822394124;
+25_column_3_row_2_Ridge;437760;0.9879377806153998;
+25_column_4_row_2_Ridge;327680;0.987934350824841;
+25_column_5_row_2_Ridge;263680;0.987839275354604;
+25_column_1_row_3_Ridge;875520;0.9877139310412247;
+25_column_2_row_3_Ridge;437760;0.987676689952595;
+25_column_3_row_3_Ridge;292410;0.9876852056334527;
+25_column_4_row_3_Ridge;218880;0.9875359046884888;
+25_column_5_row_3_Ridge;176130;0.9876088764506541;
+25_column_1_row_4_Ridge;655360;0.987852238044879;
+25_column_2_row_4_Ridge;327680;0.987837805183374;
+25_column_3_row_4_Ridge;218880;0.987759776222446;
+25_column_4_row_4_Ridge;163840;0.9878545826387495;
+25_column_5_row_4_Ridge;131840;0.9876935829050099;
+25_column_1_row_5_Ridge;527360;0.9880968432586942;
+25_column_2_row_5_Ridge;263680;0.9879726720232863;
+25_column_3_row_5_Ridge;176130;0.9880470524780389;
+25_column_4_row_5_Ridge;131840;0.9879711829223724;
+25_column_5_row_5_Ridge;106090;0.9878958741445886;
+30_column_1_row_1_SGD;2621440;0.9936011559388273;
+30_column_2_row_1_SGD;1310720;0.9910967452038709;
+30_column_3_row_1_SGD;875520;0.9890280947559156;
+30_column_4_row_1_SGD;655360;0.9878315194527263;
+30_column_5_row_1_SGD;527360;0.9896690260026946;
+30_column_1_row_2_SGD;1310720;0.9878148277917076;
+30_column_2_row_2_SGD;655360;0.9967427395979712;
+30_column_3_row_2_SGD;437760;0.9882382433556801;
+30_column_4_row_2_SGD;327680;0.987439720224569;
+30_column_5_row_2_SGD;263680;0.9886821310625223;
+30_column_1_row_3_SGD;875520;0.9921555312984731;
+30_column_2_row_3_SGD;437760;0.9893253165965346;
+30_column_3_row_3_SGD;292410;0.9891162041108567;
+30_column_4_row_3_SGD;218880;0.9781460410431271;
+30_column_5_row_3_SGD;176130;0.9873639727553882;
+30_column_1_row_4_SGD;655360;0.9897018010076235;
+30_column_2_row_4_SGD;327680;0.989989267133688;
+30_column_3_row_4_SGD;218880;0.9888302609724179;
+30_column_4_row_4_SGD;163840;0.9890654793424778;
+30_column_5_row_4_SGD;131840;0.9891776262980241;
+30_column_1_row_5_SGD;527360;0.9901329103814718;
+30_column_2_row_5_SGD;263680;0.9900734563619954;
+30_column_3_row_5_SGD;176130;0.9865752614545937;
+30_column_4_row_5_SGD;131840;0.9924199974538417;
+30_column_5_row_5_SGD;106090;0.9877342778528481;
+30_column_1_row_1_Ridge;2621440;0.989859241822365;
+30_column_2_row_1_Ridge;1310720;0.9898195604913811;
+30_column_3_row_1_Ridge;875520;0.9898948598795394;
+30_column_4_row_1_Ridge;655360;0.9897686358516007;
+30_column_5_row_1_Ridge;527360;0.9898443428802682;
+30_column_1_row_2_Ridge;1310720;0.9899797886956712;
+30_column_2_row_2_Ridge;655360;0.9899460731578205;
+30_column_3_row_2_Ridge;437760;0.9899705596065305;
+30_column_4_row_2_Ridge;327680;0.9899243254724205;
+30_column_5_row_2_Ridge;263680;0.9898853032103115;
+30_column_1_row_3_Ridge;875520;0.9897701146874756;
+30_column_2_row_3_Ridge;437760;0.9897253214363837;
+30_column_3_row_3_Ridge;292410;0.9897749940273581;
+30_column_4_row_3_Ridge;218880;0.9895967439458504;
+30_column_5_row_3_Ridge;176130;0.9897497142308519;
+30_column_1_row_4_Ridge;655360;0.9898830612036947;
+30_column_2_row_4_Ridge;327680;0.9898260773223637;
+30_column_3_row_4_Ridge;218880;0.9897957625210482;
+30_column_4_row_4_Ridge;163840;0.9898283768181652;
+30_column_5_row_4_Ridge;131840;0.9897226777855396;
+30_column_1_row_5_Ridge;527360;0.9900844396469048;
+30_column_2_row_5_Ridge;263680;0.9899736358844179;
+30_column_3_row_5_Ridge;176130;0.990009706329826;
+30_column_4_row_5_Ridge;131840;0.9900257524876726;
+30_column_5_row_5_Ridge;106090;0.9898648303142513;
+test_sponza1;2621440;1.0332056346847467;

+ 2 - 0
modules/config.py

@@ -13,6 +13,8 @@ number_of_columns               = 512
 kind_of_models                  = ["SGD", "Ridge", "SVR"]
 
 global_result_filepath          = "models_info/models_comparisons.csv"
+global_result_filepath_keras    = "models_info/models_comparisons_keras.csv"
+
 scenes_list                     = ['Exterieur01', 'Boulanger', 'CornellBoxNonVide', 'CornellBoxNonVideTextureArcade', 'CornellBoxVide', 'Bar1', 'CornellBoxNonVideTextureDegrade', 'CornellBoxNonVideTextureDamier', 'CornellBoxVideTextureDamier', 'CornellBoxNonVide', 'Sponza1', 'Bureau1_cam2']
 
 test_scenes                     = ['Sponza1']

+ 6 - 0
notebooks/.ipynb_checkpoints/DL_reconstruction_study-checkpoint.ipynb

@@ -0,0 +1,6 @@
+{
+ "cells": [],
+ "metadata": {},
+ "nbformat": 4,
+ "nbformat_minor": 2
+}

Fichier diff supprimé car celui-ci est trop grand
+ 127 - 0
notebooks/DL_reconstruction_study.ipynb


+ 4 - 4
run.sh

@@ -14,9 +14,9 @@ if [ "${erased}" == "Y" ]; then
 fi
 
 for n in {3,4,5,6,7,8,9,10,15,20,25,30}; do
-    for model in {"SGD","Ridge","SVR"}; do
-        for row in {2,3,4,5,6,7,8,9,10}; do
-            for column in {2,3,4,5,6,7,8,9,10}; do
+    for model in {"SGD","Ridge"}; do
+        for row in {1,2,3,4,5}; do
+            for column in {1,2,3,4,5}; do
 
                 # Run creation of dataset and train model
                 DATASET_NAME="data/dataset_${n}_column_${column}_row_${row}.csv"
@@ -25,7 +25,7 @@ for n in {3,4,5,6,7,8,9,10,15,20,25,30}; do
                 if ! grep -q "${MODEL_NAME}" "${file_path}"; then
                     echo "Run computation for model ${MODEL_NAME}"
 
-                    python make_dataset.py --n ${n} --each_row ${row} --each_column ${column}
+                    # python make_dataset.py --n ${n} --each_row ${row} --each_column ${column}
                     python train_model.py --data ${DATASET_NAME} --model ${model}
                 else
                     echo "${MODEL_NAME} results already computed.."

+ 9 - 6
run_keras.sh

@@ -1,5 +1,5 @@
 # erase "models_info/models_comparisons.csv" file and write new header
-file_path='models_info/models_comparisons.csv'
+file_path='models_info/models_comparisons_keras.csv'
 
 erased=$1
 
@@ -10,25 +10,28 @@ if [ "${erased}" == "Y" ]; then
     touch ${file_path}
 
     # add of header
-    echo 'model_name; number_of_approximations; coeff_of_determination;' >> ${file_path}
+    echo 'model_name; number_of_approximations; coeff_of_determination; MSE 10 samples; MSE 1000 samples;' >> ${file_path}
 fi
 
 for n in {3,4,5,6,7,8,9,10,15,20,25,30}; do
-    for row in {1,2,3,4,5}; do
-        for column in {1,2,3,4,5}; do
+   for row in {1,2,3,4,5}; do
+       for column in {1,2,3,4,5}; do
 
             # Run creation of dataset and train model
             DATASET_NAME="data/dataset_${n}_column_${column}_row_${row}.csv"
             MODEL_NAME="${n}_column_${column}_row_${row}_KERAS"
+            IMAGE_RECONSTRUCTED="Sponza1_${n}_${row}_${column}.png"
 
             if ! grep -q "${MODEL_NAME}" "${file_path}"; then
                 echo "Run computation for model ${MODEL_NAME}"
 
+                # Already computed..
                 #python make_dataset.py --n ${n} --each_row ${row} --each_column ${column}
-                python train_model_keras.py --data ${DATASET_NAME} --model ${model} &
+                python train_model_keras.py --data ${DATASET_NAME} --model_name ${MODEL_NAME}
 
                 # TODO : Add of reconstruct process for image ?
-                # python reconstruct_keras.py --n ${n} --model_path data/${model}
+                python reconstruct_keras.py --n ${n} --model_path saved_models/${MODEL_NAME}.json --scene Sponza1 --image_name ${IMAGE_RECONSTRUCTED}
+                python write_result_keras.py --n ${n} --model_path saved_models/${MODEL_NAME}.json --scene Sponza1 --image_path reconstructed/${IMAGE_RECONSTRUCTED} --data ${DATASET_NAME} --iqa mse &
             else
                 echo "${MODEL_NAME} results already computed.."
             fi

+ 5 - 15
train_model_keras.py

@@ -25,14 +25,13 @@ def train(_data_file, _model_name):
 
     y = dataset[:,0]
     X = dataset[:,1:]
-    print(X.shape)
     _, nb_elem = X.shape
 
     y=np.reshape(y, (-1,1))
     scaler = MinMaxScaler()
 
-    print(scaler.fit(X))
-    print(scaler.fit(y))
+    scaler.fit(X)
+    scaler.fit(y)
     
     xscale=scaler.transform(X)
     yscale=scaler.transform(y)
@@ -55,16 +54,7 @@ def train(_data_file, _model_name):
     # Set expected metrics
     # TODO : add coefficients of determination as metric ? Or always use MSE/MAE
     model.compile(loss='mse', optimizer='adam', metrics=['mse', 'mae'])
-    history = model.fit(X_train, y_train, epochs=150, batch_size=50,  verbose=1, validation_split=0.2)
-
-    # Save model 
-    print(history.history.keys())
-
-    y_predicted = model.predict(X_test)
-    len_shape, _ = y_predicted.shape
-    y_predicted = y_predicted.reshape(len_shape)
-
-    coeff = metrics.coefficient_of_determination(y_test, y_predicted)
+    history = model.fit(X_train, y_train, epochs=50, batch_size=50,  verbose=1, validation_split=0.2)
 
     # save the model into json/HDF5 file
     if not os.path.exists(cfg.saved_models_folder):
@@ -80,8 +70,8 @@ def train(_data_file, _model_name):
     model.save_weights(model_output_path.replace('.json', '.h5'))
 
     # save score into global_result.csv file
-    with open(cfg.global_result_filepath, "a") as f:
-       f.write(_model_name + ';' + str(len(y)) + ';' + str(coeff[0]) + ';\n')
+    # with open(cfg.global_result_filepath, "a") as f:
+    #   f.write(_model_name + ';' + str(len(y)) + ';' + str(coeff[0]) + ';\n')
 
 
     # Save plot info using model name

+ 118 - 0
write_result_keras.py

@@ -0,0 +1,118 @@
+import numpy as np
+import pandas as pd
+import json
+import os, sys, argparse, subprocess
+
+from keras.models import model_from_json
+
+from sklearn.model_selection import train_test_split
+from sklearn.preprocessing import MinMaxScaler
+
+import modules.config as cfg
+import modules.metrics as metrics
+
+from joblib import dump, load
+from PIL import Image
+
+import ipfml.iqa.fr as fr
+
+
+n_samples_image_name_postfix = "_samples_mean.png"
+reference_image_name_postfix = "_1000_samples_mean.png"
+
+def write_result(_scene_name, _data_file, _model_path, _n, _reconstructed_path, _iqa):
+    
+    # prepare data to get score information
+    dataset=np.loadtxt(_data_file, delimiter=';')
+
+    y = dataset[:,0]
+    X = dataset[:,1:]
+
+    y=np.reshape(y, (-1,1))
+    scaler = MinMaxScaler()
+
+    scaler.fit(X)
+    scaler.fit(y)
+
+    xscale=scaler.transform(X)
+    yscale=scaler.transform(y)
+
+    _, X_test, _, y_test = train_test_split(xscale, yscale)
+
+    # prepare image path to compare
+    n_samples_image_path = os.path.join(cfg.reconstructed_folder, _scene_name + '_' + _n + n_samples_image_name_postfix)
+    reference_image_path = os.path.join(cfg.reconstructed_folder, _scene_name + reference_image_name_postfix)
+
+    if not os.path.exists(n_samples_image_path):
+        # call sub process to create 'n' samples img
+        print("Creation of 'n' samples image : ", n_samples_image_path)
+        subprocess.run(["python", "reconstruct_scene_mean.py", "--scene", _scene_name, "--n", _n, "--image_name", n_samples_image_path.split('/')[-1]])
+
+    if not os.path.exists(reference_image_path):
+        # call sub process to create 'reference' img
+        print("Creation of reference image : ", reference_image_path)
+        subprocess.run(["python", "reconstruct_scene_mean.py", "--scene", _scene_name, "--n", 1000, "--image_name", reference_image_path.split('/')[-1]])
+
+
+    # load the trained model
+    with open(_model_path, 'r') as f:
+        json_model = json.load(f)
+        model = model_from_json(json_model)
+        model.load_weights(_model_path.replace('.json', '.h5'))
+
+        model.compile(loss='binary_crossentropy',
+                    optimizer='adam',
+                    metrics=['accuracy'])
+
+    
+    # get coefficient of determination score on test set
+    y_predicted = model.predict(X_test)
+    len_shape, _ = y_predicted.shape
+    y_predicted = y_predicted.reshape(len_shape)
+
+    coeff = metrics.coefficient_of_determination(y_test, y_predicted)
+
+    # Get data information
+    reference_image = Image.open(reference_image_path)
+    reconstructed_image = Image.open(_reconstructed_path)
+    n_samples_image = Image.open(n_samples_image_path)
+
+    # Load expected IQA comparison
+    try:
+        fr_iqa = getattr(fr, _iqa)
+    except AttributeError:
+        raise NotImplementedError("FR IQA `{}` not implement `{}`".format(fr.__name__, _iqa))
+
+    mse_ref_reconstructed_samples = fr_iqa(reference_image, reconstructed_image)
+    mse_reconstructed_n_samples = fr_iqa(n_samples_image, reconstructed_image)
+
+    model_name = _model_path.split('/')[-1].replace('.json', '')
+
+    # save score into models_comparisons_keras.csv file
+    with open(cfg.global_result_filepath_keras, "a") as f:
+       f.write(model_name + ';' + str(len(y)) + ';' + str(coeff[0]) + ';' + str(mse_reconstructed_n_samples) + ';' + str(mse_ref_reconstructed_samples) + '\n')
+
+def main():
+
+    parser = argparse.ArgumentParser(description="Train model and saved it")
+
+    parser.add_argument('--scene', type=str, help='Scene name to reconstruct', choices=cfg.scenes_list)
+    parser.add_argument('--data', type=str, help='Filename of dataset')
+    parser.add_argument('--model_path', type=str, help='Json model file path')
+    parser.add_argument('--n', type=str, help='Number of pixel values approximated to keep')
+    parser.add_argument('--image_path', type=str, help="The image reconstructed to compare with")
+    parser.add_argument('--iqa', type=str, help='Image to compare', choices=['ssim', 'mse', 'rmse', 'mae', 'psnr'])
+  
+    args = parser.parse_args()
+
+    param_scene_name = args.scene
+    param_data_file = args.data
+    param_n = args.n
+    param_model_path = args.model_path
+    param_image_path = args.image_path
+    param_iqa = args.iqa
+
+    write_result(param_scene_name, param_data_file, param_model_path, param_n, param_image_path, param_iqa)
+
+if __name__== "__main__":
+    main()