diff --git a/iris/tab_ddpm_concat/4/eval.csv b/iris/tab_ddpm_concat/4/eval.csv new file mode 100644 index 0000000000000000000000000000000000000000..fab0468fbb23ea960e6c94249c4c4b06c7330319 --- /dev/null +++ b/iris/tab_ddpm_concat/4/eval.csv @@ -0,0 +1,2 @@ +,avg_g_cos_loss,avg_g_mag_loss,avg_loss,grad_duration,grad_mae,grad_mape,grad_rmse,mean_pred_loss,pred_duration,pred_mae,pred_mape,pred_rmse,pred_std,std_loss,total_duration +tab_ddpm_concat,0.005717182978987694,0.005694084017013665,0.004939215765334666,0.1058657169342041,0.04102437570691109,0.8330724239349365,0.055286455899477005,5.9501770010683686e-05,0.1773972511291504,0.05129384994506836,0.09106289595365524,0.0702795535326004,0.23844757676124573,0.0016836776630952954,0.2832629680633545 diff --git a/iris/tab_ddpm_concat/4/history.csv b/iris/tab_ddpm_concat/4/history.csv new file mode 100644 index 0000000000000000000000000000000000000000..8dc55283183b667bfc65abf8342b004639ecb01a --- /dev/null +++ b/iris/tab_ddpm_concat/4/history.csv @@ -0,0 +1,33 @@ +,avg_role_model_loss_train,avg_role_model_std_loss_train,avg_role_model_mean_pred_loss_train,avg_role_model_g_mag_loss_train,avg_role_model_g_cos_loss_train,avg_non_role_model_g_mag_loss_train,avg_non_role_model_g_cos_loss_train,avg_non_role_model_embed_loss_train,avg_loss_train,n_size_train,n_batch_train,duration_train,duration_batch_train,duration_size_train,avg_pred_std_train,avg_role_model_loss_test,avg_role_model_std_loss_test,avg_role_model_mean_pred_loss_test,avg_role_model_g_mag_loss_test,avg_role_model_g_cos_loss_test,avg_non_role_model_g_mag_loss_test,avg_non_role_model_g_cos_loss_test,avg_non_role_model_embed_loss_test,avg_loss_test,n_size_test,n_batch_test,duration_test,duration_batch_test,duration_size_test,avg_pred_std_test +0,0.02768451595702064,9.358213113096127,0.0006260929628547971,0.007203349115049339,0.0,0.0,0.0,0.0,0.032347017407463576,805,101,81.60291051864624,0.8079496090955073,0.10137007517844253,0.14544998988564503,0.014216607138514518,0.9667907703481614,0.00028408130900075434,0.0,0.0,0.0,0.0,0.0,0.014216607138514518,200,25,20.48702335357666,0.8194809341430664,0.1024351167678833,0.19659922868013383 +1,0.012788288924056366,1.9426611673799772,0.00018292845285342564,0.0008112499773826288,0.0,0.0,0.0,0.0,0.02265268392479105,805,101,91.28189396858215,0.9037811284018035,0.11339365710382876,0.19415301588907985,0.0192581370100379,0.15096837179178693,0.00023672290268860862,0.0,0.0,0.0,0.0,0.0,0.0192581370100379,200,25,21.700913667678833,0.8680365467071534,0.10850456833839417,0.22857571125030518 +2,0.012207050934457075,1.03173016942678,0.0002013292339930976,0.0002692920005423312,0.0,0.0,0.0,0.0,0.05330562501254937,805,101,91.07849550247192,0.9017672822026923,0.11314098820182848,0.20507578652278327,0.007481199217727408,0.2356108459085226,0.0001188060213765496,0.0,0.0,0.0,0.0,0.0,0.007481199217727408,200,25,21.764752626419067,0.8705901050567627,0.10882376313209534,0.21393217921257018 +3,0.008088306364782664,0.43745157831131787,8.41250307961913e-05,0.0,0.0,0.0,0.0,0.0,0.008088306364782664,805,101,91.8075864315033,0.9089860042723099,0.11404669121925876,0.21690632605759225,0.007133655361831188,0.27229892956115803,5.3230496471314835e-05,0.0,0.0,0.0,0.0,0.0,0.007133655361831188,200,25,21.819910526275635,0.8727964210510254,0.10909955263137817,0.2123298615217209 +4,0.0072082148026096525,0.4391179985901671,0.00010888709911312063,3.558772172119399e-06,0.0,0.0,0.0,0.0,0.03611351358328269,805,101,91.56741237640381,0.9066080433307308,0.11374833835578113,0.21769916104835155,0.006240451545454562,0.18012931236033183,5.8749330378695677e-05,0.0,0.0,0.0,0.0,0.0,0.006240451545454562,200,25,22.07944345474243,0.8831777381896972,0.11039721727371216,0.22466177940368653 +5,0.006868989640660295,0.28342871665917624,7.188901986063536e-05,3.424051755703754e-05,0.0,0.0,0.0,0.0,0.010062051171065244,805,101,91.42711353302002,0.9052189458714853,0.11357405407828573,0.21837207505313477,0.006240606550127268,0.2115128413914499,4.711555360778163e-05,0.0,0.0,0.0,0.0,0.0,0.006240606550127268,200,25,21.850398540496826,0.8740159416198731,0.10925199270248413,0.22103530585765838 +6,0.007357299320330346,0.40163809852880705,0.00011199208807044489,1.8166965857055615e-05,0.0,0.0,0.0,0.0,0.029191811060567636,805,101,90.57951498031616,0.8968268809932294,0.11252113662151077,0.21378468240768012,0.006867902250960469,0.15485449237061402,8.573244572616545e-05,0.0,0.0,0.0,0.0,0.0,0.006867902250960469,200,25,21.79243564605713,0.8716974258422852,0.10896217823028564,0.23082700192928315 +7,0.0070344660610469605,0.3761535492684226,9.970865502207738e-05,0.0,0.0,0.0,0.0,0.0,0.0070344660610469605,805,101,91.03021001815796,0.9012892081005739,0.1130810062337366,0.21632754800859655,0.006249402621760964,0.1063890473358333,6.99766267416635e-05,0.0,0.0,0.0,0.0,0.0,0.006249402621760964,200,25,21.862650871276855,0.8745060348510743,0.10931325435638428,0.23488778948783876 +8,0.006304821248241463,0.44371367401016515,7.45642591284015e-05,2.1402616493450188e-05,0.0,0.0,0.0,0.0,0.009804922422128064,805,101,91.37668824195862,0.9047196855639467,0.11351141396516598,0.2195355011205567,0.005649843728169799,0.1278961787582375,5.713646878145795e-05,0.0,0.0,0.0,0.0,0.0,0.005649843728169799,200,25,21.11397886276245,0.844559154510498,0.10556989431381225,0.23113981187343596 +9,0.006317903084379638,0.24471715618363143,8.345217247664753e-05,1.6097419010186047e-05,0.0,0.0,0.0,0.0,0.00639822689602325,805,101,89.65480852127075,0.8876713714977302,0.11137243294567795,0.21449829881439114,0.00821263626217842,0.32878700550150824,6.504059621789793e-05,0.0,0.0,0.0,0.0,0.0,0.00821263626217842,200,25,21.27569341659546,0.8510277366638184,0.1063784670829773,0.20993319690227508 +10,0.006396798543076707,0.41127316822513044,7.509765246554966e-05,2.1553592559713755e-05,0.0,0.0,0.0,0.0,0.006753228950713362,805,101,88.9093246459961,0.8802903430296642,0.11044636601987093,0.21412578793150364,0.005823843185789883,0.14180781402224965,6.761518911137188e-05,0.0,0.0,0.0,0.0,0.0,0.005823843185789883,200,25,21.45542049407959,0.8582168197631836,0.10727710247039796,0.22983413100242614 +11,0.0069507269486669245,0.31742345890649115,6.924937210063852e-05,0.0001588194729378505,0.0,0.0,0.0,0.0,0.06565096500584196,805,101,89.66476655006409,0.8877699658422187,0.11138480316778147,0.21586559805096966,0.00570961891207844,0.19548024699703093,4.909529088308773e-05,0.0,0.0,0.0,0.0,0.0,0.00570961891207844,200,25,21.806634426116943,0.8722653770446778,0.10903317213058472,0.2195821535587311 +12,0.006335544190514162,0.4148375095810026,9.179174083537262e-05,1.0347450788346876e-05,0.0,0.0,0.0,0.0,0.009384353667127419,805,101,89.68968391418457,0.888016672417669,0.11141575641513611,0.21473711529875747,0.006132762115448713,0.08343712894478812,9.896848159498539e-05,0.0,0.0,0.0,0.0,0.0,0.006132762115448713,200,25,21.780441761016846,0.8712176704406738,0.10890220880508422,0.24145807087421417 +13,0.006535357203166816,0.28958624746233136,7.427734736577406e-05,1.9930312352150865e-05,0.0,0.0,0.0,0.0,0.013669711667089867,805,101,91.33589291572571,0.9043157714428288,0.11346073654127417,0.2153837282653197,0.0064414950693026185,0.1068398380640474,7.60509929255937e-05,0.0,0.0,0.0,0.0,0.0,0.0064414950693026185,200,25,22.317506551742554,0.8927002620697021,0.11158753275871276,0.23641093969345092 +14,0.006502306725691009,0.20075760639159818,0.00010858184960735804,9.911029559114705e-05,0.0,0.0,0.0,0.0,0.014118992097051062,805,101,93.05297946929932,0.9213166284089042,0.11559376331589977,0.22296780513802378,0.006120046712458134,0.23848346265126794,5.1449191288952534e-05,0.0,0.0,0.0,0.0,0.0,0.006120046712458134,200,25,22.377435207366943,0.8950974082946778,0.11188717603683472,0.21742919087409973 +15,0.005750608693530656,0.33303868707196216,8.962634720881629e-05,0.0,0.0,0.0,0.0,0.0,0.005750608693530656,805,101,92.95799088478088,0.9203761473740681,0.11547576507426197,0.2198474559342802,0.00547780548222363,0.13732151518015598,5.4017485289445945e-05,0.0,0.0,0.0,0.0,0.0,0.00547780548222363,200,25,22.27390432357788,0.8909561729431152,0.1113695216178894,0.2293907332420349 +16,0.006005020252926425,0.23018331214172288,8.49492962727547e-05,6.234205084974352e-05,0.0,0.0,0.0,0.0,0.013669535664187871,805,101,93.09992170333862,0.9217814030033527,0.1156520766501101,0.21871939950650282,0.008693840028718114,0.7027616799855605,1.9866766979461657e-05,0.0,0.0,0.0,0.0,0.0,0.008693840028718114,200,25,22.333920001983643,0.8933568000793457,0.11166960000991821,0.18863298654556274 +17,0.006081980427362673,0.2446992650615715,0.00010017756599086168,5.1933910512591e-06,0.0,0.0,0.0,0.0,0.010356320479959944,805,101,92.73267722129822,0.9181453190227546,0.11519587232459406,0.22129526483540488,0.005397165697067976,0.17403937994693477,5.448993424373327e-05,0.0,0.0,0.0,0.0,0.0,0.005397165697067976,200,25,21.33505344390869,0.8534021377563477,0.10667526721954346,0.22487431406974792 +18,0.005533240378331046,0.3570544389624479,6.431949337190052e-05,1.1352819870717777e-05,0.0,0.0,0.0,0.0,0.005796129713760492,805,101,89.8192925453186,0.8892999261912733,0.11157676092586162,0.21356249753717738,0.007514530089683831,0.07911720391795825,0.00012563675734939217,0.0,0.0,0.0,0.0,0.0,0.007514530089683831,200,25,21.740798234939575,0.869631929397583,0.10870399117469788,0.24350051760673522 +19,0.006791888846096045,0.22819204692926195,9.195982071473991e-05,0.00026959271823860106,0.0,0.0,0.0,0.0,0.012555749263174786,805,101,90.93472671508789,0.9003438288622564,0.11296239343489178,0.21752739039314264,0.008620325196534395,0.45271152415312826,3.763549942704003e-05,0.0,0.0,0.0,0.0,0.0,0.008620325196534395,200,25,21.877052783966064,0.8750821113586426,0.10938526391983032,0.2019707268476486 +20,0.006227198813503944,0.3063655586036925,9.688862191256383e-05,1.3184288273686948e-07,0.0,0.0,0.0,0.0,0.034846017876443286,805,101,90.31259799003601,0.8941841385152081,0.11218956272054163,0.2174905706565864,0.005125884902663529,0.12200781043917232,6.3531672896886e-05,0.0,0.0,0.0,0.0,0.0,0.005125884902663529,200,25,21.58434534072876,0.8633738136291504,0.1079217267036438,0.23218394815921783 +21,0.005548517863838847,0.21934010131341813,6.26239857931001e-05,1.3356382802406453e-05,0.0,0.0,0.0,0.0,0.010354715006958162,805,101,88.40247750282288,0.8752720544833948,0.10981674223953153,0.21587782998633856,0.005417209481820464,0.13942289895450813,4.625512937060705e-05,0.0,0.0,0.0,0.0,0.0,0.005417209481820464,200,25,21.399763822555542,0.8559905529022217,0.10699881911277771,0.22927487075328826 +22,0.005747681532434032,0.1272754809645061,0.00011265363581397934,1.4597121973215422e-06,0.0,0.0,0.0,0.0,1.279175217762251,805,101,87.12156343460083,0.8625897369762459,0.10822554463925568,0.22103275893495813,0.005486278529278934,0.2218146825362055,3.643048681867267e-05,0.0,0.0,0.0,0.0,0.0,0.005486278529278934,200,25,21.365365743637085,0.8546146297454834,0.10682682871818543,0.2180305862426758 +23,0.0055476776561381655,0.32748539977648145,7.017293471650732e-05,5.3312245363034077e-05,0.0,0.0,0.0,0.0,0.005971885740942096,805,101,89.34160041809082,0.8845703011692161,0.11098335455663456,0.21413740781274174,0.007511304141953588,0.09401300334866391,0.00011923739120987875,0.0,0.0,0.0,0.0,0.0,0.007511304141953588,200,25,21.58778166770935,0.863511266708374,0.10793890833854675,0.23834557116031646 +24,0.005528737366219739,0.1303454312197744,6.742322914309517e-05,3.114034369680452e-06,0.0,0.0,0.0,0.0,0.009155590933970297,805,101,88.56836199760437,0.8769144752238056,0.11002280993491226,0.2233861573409326,0.0052726257871836425,0.12618017424456426,5.749187312716231e-05,0.0,0.0,0.0,0.0,0.0,0.0052726257871836425,200,25,21.53865957260132,0.8615463829040527,0.10769329786300659,0.2310938411951065 +25,0.005761149434245522,0.2781787275740765,8.137457192243001e-05,8.173622885105772e-05,0.0,0.0,0.0,0.0,0.006208720128775013,805,101,87.93706607818604,0.8706640205760994,0.10923859140147334,0.22028684326548978,0.005650409492664039,0.0771926953739603,6.198529247257167e-05,0.0,0.0,0.0,0.0,0.0,0.005650409492664039,200,25,21.522745609283447,0.8609098243713379,0.10761372804641724,0.24230126440525054 +26,0.005445758624129599,0.27172335771233475,8.577585451755653e-05,3.970280197096167e-05,0.0,0.0,0.0,0.0,0.0057203052467117025,805,101,87.5566246509552,0.8668972737718337,0.10876599335522386,0.21845043461659167,0.005356438243761658,0.12474976066732779,5.013778592015683e-05,0.0,0.0,0.0,0.0,0.0,0.005356438243761658,200,25,21.511472940444946,0.8604589176177978,0.10755736470222473,0.23125485479831695 +27,0.005081101923151324,0.1675353699499535,5.812898050338236e-05,3.594058270780196e-06,0.0,0.0,0.0,0.0,0.005485425449572272,805,101,88.452969789505,0.8757719781139109,0.10987946557702485,0.22321680265635546,0.006086462363600731,0.10333134334316128,8.738786271081267e-05,0.0,0.0,0.0,0.0,0.0,0.006086462363600731,200,25,21.65699815750122,0.8662799263000488,0.1082849907875061,0.23591170072555542 +28,0.0052087890412311376,0.20628788776629434,6.154808049404857e-05,6.017644212853094e-06,0.0,0.0,0.0,0.0,0.005626151865776281,805,101,85.52421545982361,0.846774410493303,0.10624126144077467,0.2194081702371045,0.00557473658118397,0.23143272440647705,4.15715374742831e-05,0.0,0.0,0.0,0.0,0.0,0.00557473658118397,200,25,19.099186897277832,0.7639674758911132,0.09549593448638916,0.21782068014144898 +29,0.005231465882280413,0.16361986913805163,7.672585915737478e-05,1.077884056183122e-05,0.0,0.0,0.0,0.0,0.005762255425501314,805,101,80.11557865142822,0.7932235510042398,0.09952245795208475,0.21797401190615526,0.006650901986286044,0.12659563487861306,4.9554965830651554e-05,0.0,0.0,0.0,0.0,0.0,0.006650901986286044,200,25,18.92792320251465,0.757116928100586,0.09463961601257324,0.2312470942735672 +30,0.00519270687450811,0.279995267643539,4.654781782288666e-05,6.451771033476599e-05,0.0,0.0,0.0,0.0,0.0056830557971406055,805,101,79.10502314567566,0.7832180509472838,0.09826710949773373,0.2165812872866593,0.0058985058171674605,0.16594135333492888,5.6070893757294014e-05,0.0,0.0,0.0,0.0,0.0,0.0058985058171674605,200,25,18.99995994567871,0.7599983978271484,0.09499979972839355,0.22666034638881682 +31,0.00525653311246659,0.2036635784316237,8.030619830907732e-05,6.635558693120199e-05,0.0,0.0,0.0,0.0,0.0091450711295026,805,101,80.25686001777649,0.7946223764136287,0.09969796275500185,0.2217137933441318,0.006656655007973313,0.413153967380058,3.531901041284868e-05,0.0,0.0,0.0,0.0,0.0,0.006656655007973313,200,25,19.31869602203369,0.7727478408813476,0.09659348011016845,0.20416920363903046 diff --git a/iris/tab_ddpm_concat/4/logs/avg_loss_train/events.out.tfevents.1721742744.0e0da8a72f77.2743.17 b/iris/tab_ddpm_concat/4/logs/avg_loss_train/events.out.tfevents.1721742744.0e0da8a72f77.2743.17 new file mode 100644 index 0000000000000000000000000000000000000000..656b8044d6e6908f2d9e9c1164ca941d92ad614d --- /dev/null +++ b/iris/tab_ddpm_concat/4/logs/avg_loss_train/events.out.tfevents.1721742744.0e0da8a72f77.2743.17 @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:8b4cf3da95c64369caab28a8011cb71ed3547fda8b2d52d7cea784c52082912a +size 1558 diff --git a/iris/tab_ddpm_concat/4/logs/avg_loss_val/events.out.tfevents.1721742744.0e0da8a72f77.2743.18 b/iris/tab_ddpm_concat/4/logs/avg_loss_val/events.out.tfevents.1721742744.0e0da8a72f77.2743.18 new file mode 100644 index 0000000000000000000000000000000000000000..047c27263a1e692ec941ea515ed2fddbfb7d8e45 --- /dev/null +++ b/iris/tab_ddpm_concat/4/logs/avg_loss_val/events.out.tfevents.1721742744.0e0da8a72f77.2743.18 @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:2f097ca264748dcdb0ab546325e9ccd7ebc46ac6acfe8953faeae1079c72a48d +size 1558 diff --git a/iris/tab_ddpm_concat/4/logs/avg_non_role_model_embed_loss_train/events.out.tfevents.1721742744.0e0da8a72f77.2743.15 b/iris/tab_ddpm_concat/4/logs/avg_non_role_model_embed_loss_train/events.out.tfevents.1721742744.0e0da8a72f77.2743.15 new file mode 100644 index 0000000000000000000000000000000000000000..90ac1a197c1f9ecb60527c80d539bb15ff056ac6 --- /dev/null +++ b/iris/tab_ddpm_concat/4/logs/avg_non_role_model_embed_loss_train/events.out.tfevents.1721742744.0e0da8a72f77.2743.15 @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:2396847fee6a2abcce56637d52399fe345be94fdc0be7f0862d521764caeecc7 +size 2230 diff --git a/iris/tab_ddpm_concat/4/logs/avg_non_role_model_embed_loss_val/events.out.tfevents.1721742744.0e0da8a72f77.2743.16 b/iris/tab_ddpm_concat/4/logs/avg_non_role_model_embed_loss_val/events.out.tfevents.1721742744.0e0da8a72f77.2743.16 new file mode 100644 index 0000000000000000000000000000000000000000..acf1bfed6affe526f0ef7fbe59569ef3ed41e0ed --- /dev/null +++ b/iris/tab_ddpm_concat/4/logs/avg_non_role_model_embed_loss_val/events.out.tfevents.1721742744.0e0da8a72f77.2743.16 @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:f89124f9f2a19d6efae24d213a5173213bb5717f9a13b227b29e1ef7cd86d296 +size 2230 diff --git a/iris/tab_ddpm_concat/4/logs/avg_non_role_model_g_cos_loss_train/events.out.tfevents.1721742744.0e0da8a72f77.2743.13 b/iris/tab_ddpm_concat/4/logs/avg_non_role_model_g_cos_loss_train/events.out.tfevents.1721742744.0e0da8a72f77.2743.13 new file mode 100644 index 0000000000000000000000000000000000000000..50e5e03da0a8d4dfc6291901cc534ca68c24226b --- /dev/null +++ b/iris/tab_ddpm_concat/4/logs/avg_non_role_model_g_cos_loss_train/events.out.tfevents.1721742744.0e0da8a72f77.2743.13 @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:f5e7be800a9e71394ae5d43c9cc0b9d7510541c0cf3597c8e624a7dff830ad14 +size 2230 diff --git a/iris/tab_ddpm_concat/4/logs/avg_non_role_model_g_cos_loss_val/events.out.tfevents.1721742744.0e0da8a72f77.2743.14 b/iris/tab_ddpm_concat/4/logs/avg_non_role_model_g_cos_loss_val/events.out.tfevents.1721742744.0e0da8a72f77.2743.14 new file mode 100644 index 0000000000000000000000000000000000000000..5d0673c7c2462c547a00ce34b02f7f645c6780f1 --- /dev/null +++ b/iris/tab_ddpm_concat/4/logs/avg_non_role_model_g_cos_loss_val/events.out.tfevents.1721742744.0e0da8a72f77.2743.14 @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:f529737b1a00b1ef8c268e90596b8a88df0326a6bac55d9782c540b06769e673 +size 2230 diff --git a/iris/tab_ddpm_concat/4/logs/avg_non_role_model_g_mag_loss_train/events.out.tfevents.1721742744.0e0da8a72f77.2743.11 b/iris/tab_ddpm_concat/4/logs/avg_non_role_model_g_mag_loss_train/events.out.tfevents.1721742744.0e0da8a72f77.2743.11 new file mode 100644 index 0000000000000000000000000000000000000000..e18e4b2a7cc1fd843086b25feb1f53bb38c0277d --- /dev/null +++ b/iris/tab_ddpm_concat/4/logs/avg_non_role_model_g_mag_loss_train/events.out.tfevents.1721742744.0e0da8a72f77.2743.11 @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:4f358996dba02bb6518fd2613071f37fe8e39633b4ae87ca1c69d27fa594c224 +size 2230 diff --git a/iris/tab_ddpm_concat/4/logs/avg_non_role_model_g_mag_loss_val/events.out.tfevents.1721742744.0e0da8a72f77.2743.12 b/iris/tab_ddpm_concat/4/logs/avg_non_role_model_g_mag_loss_val/events.out.tfevents.1721742744.0e0da8a72f77.2743.12 new file mode 100644 index 0000000000000000000000000000000000000000..17256d7c005de70c770f6a06031d3415fb754637 --- /dev/null +++ b/iris/tab_ddpm_concat/4/logs/avg_non_role_model_g_mag_loss_val/events.out.tfevents.1721742744.0e0da8a72f77.2743.12 @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:a986f7225b55dc08e64a4574e9159348c6f50ad3a92d88f1b40da6ad2ee71bda +size 2230 diff --git a/iris/tab_ddpm_concat/4/logs/avg_pred_std_train/events.out.tfevents.1721742744.0e0da8a72f77.2743.29 b/iris/tab_ddpm_concat/4/logs/avg_pred_std_train/events.out.tfevents.1721742744.0e0da8a72f77.2743.29 new file mode 100644 index 0000000000000000000000000000000000000000..50f23ff710a315f1dd67531538baaca92be1c5e4 --- /dev/null +++ b/iris/tab_ddpm_concat/4/logs/avg_pred_std_train/events.out.tfevents.1721742744.0e0da8a72f77.2743.29 @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:bce9b20452df4f2477b23d0f47247446e1dbabfc899f527fbe49ac6f6dfaf619 +size 1686 diff --git a/iris/tab_ddpm_concat/4/logs/avg_pred_std_val/events.out.tfevents.1721742744.0e0da8a72f77.2743.30 b/iris/tab_ddpm_concat/4/logs/avg_pred_std_val/events.out.tfevents.1721742744.0e0da8a72f77.2743.30 new file mode 100644 index 0000000000000000000000000000000000000000..6a5c41e3b5546d916f4954d7b72bf7f710a0b73b --- /dev/null +++ b/iris/tab_ddpm_concat/4/logs/avg_pred_std_val/events.out.tfevents.1721742744.0e0da8a72f77.2743.30 @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:9df869eaa51c1ab371618a66fa87beaf40de907ada9fd2e915e7bd0c5f50ca1f +size 1686 diff --git a/iris/tab_ddpm_concat/4/logs/avg_role_model_g_cos_loss_train/events.out.tfevents.1721742744.0e0da8a72f77.2743.9 b/iris/tab_ddpm_concat/4/logs/avg_role_model_g_cos_loss_train/events.out.tfevents.1721742744.0e0da8a72f77.2743.9 new file mode 100644 index 0000000000000000000000000000000000000000..3297f0664986e7aad153c7d133b7c5d6aeb76943 --- /dev/null +++ b/iris/tab_ddpm_concat/4/logs/avg_role_model_g_cos_loss_train/events.out.tfevents.1721742744.0e0da8a72f77.2743.9 @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:21f99c96d338c8c670c134ca59ffa80034e50b1194fa7c8953cb916fab2627bd +size 2102 diff --git a/iris/tab_ddpm_concat/4/logs/avg_role_model_g_cos_loss_val/events.out.tfevents.1721742744.0e0da8a72f77.2743.10 b/iris/tab_ddpm_concat/4/logs/avg_role_model_g_cos_loss_val/events.out.tfevents.1721742744.0e0da8a72f77.2743.10 new file mode 100644 index 0000000000000000000000000000000000000000..dad02b753ec4f68b809bde4213932d81023688e2 --- /dev/null +++ b/iris/tab_ddpm_concat/4/logs/avg_role_model_g_cos_loss_val/events.out.tfevents.1721742744.0e0da8a72f77.2743.10 @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:06b49308c08ffd41b42bbb6a8e7456e966f6d6564892b8fc8544125753fd933a +size 2102 diff --git a/iris/tab_ddpm_concat/4/logs/avg_role_model_g_mag_loss_train/events.out.tfevents.1721742744.0e0da8a72f77.2743.7 b/iris/tab_ddpm_concat/4/logs/avg_role_model_g_mag_loss_train/events.out.tfevents.1721742744.0e0da8a72f77.2743.7 new file mode 100644 index 0000000000000000000000000000000000000000..f47b6eda8f3d37c5cf4e5b8e37642c76c72b50b2 --- /dev/null +++ b/iris/tab_ddpm_concat/4/logs/avg_role_model_g_mag_loss_train/events.out.tfevents.1721742744.0e0da8a72f77.2743.7 @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:2328e5756955955323917bdbed0e026ad09d5c2dcf616fad8cabe7fd1f56add1 +size 2102 diff --git a/iris/tab_ddpm_concat/4/logs/avg_role_model_g_mag_loss_val/events.out.tfevents.1721742744.0e0da8a72f77.2743.8 b/iris/tab_ddpm_concat/4/logs/avg_role_model_g_mag_loss_val/events.out.tfevents.1721742744.0e0da8a72f77.2743.8 new file mode 100644 index 0000000000000000000000000000000000000000..d13bdf46a219a84908c536201e46153affa86864 --- /dev/null +++ b/iris/tab_ddpm_concat/4/logs/avg_role_model_g_mag_loss_val/events.out.tfevents.1721742744.0e0da8a72f77.2743.8 @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:e8bcb8265fa7a982c7b8c49ce321f3f3a28088cf69d4f4cdd98ec7c1a0db3968 +size 2102 diff --git a/iris/tab_ddpm_concat/4/logs/avg_role_model_loss_train/events.out.tfevents.1721742744.0e0da8a72f77.2743.1 b/iris/tab_ddpm_concat/4/logs/avg_role_model_loss_train/events.out.tfevents.1721742744.0e0da8a72f77.2743.1 new file mode 100644 index 0000000000000000000000000000000000000000..2f99b5bc879bf8ef4bbd342e29fada45691507d0 --- /dev/null +++ b/iris/tab_ddpm_concat/4/logs/avg_role_model_loss_train/events.out.tfevents.1721742744.0e0da8a72f77.2743.1 @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:440955c2f171f2b778f11c8c35f0a8f318ae26f273a986c434f63ec0825ac7b3 +size 1910 diff --git a/iris/tab_ddpm_concat/4/logs/avg_role_model_loss_val/events.out.tfevents.1721742744.0e0da8a72f77.2743.2 b/iris/tab_ddpm_concat/4/logs/avg_role_model_loss_val/events.out.tfevents.1721742744.0e0da8a72f77.2743.2 new file mode 100644 index 0000000000000000000000000000000000000000..66153db60fc14fe66172715c055e21e7f2b296bc --- /dev/null +++ b/iris/tab_ddpm_concat/4/logs/avg_role_model_loss_val/events.out.tfevents.1721742744.0e0da8a72f77.2743.2 @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:e64c8013f259c5c384d0a2718d23aac5aa7e71f7f2e3aee0bc8f0abf46ca5dc2 +size 1910 diff --git a/iris/tab_ddpm_concat/4/logs/avg_role_model_mean_pred_loss_train/events.out.tfevents.1721742744.0e0da8a72f77.2743.5 b/iris/tab_ddpm_concat/4/logs/avg_role_model_mean_pred_loss_train/events.out.tfevents.1721742744.0e0da8a72f77.2743.5 new file mode 100644 index 0000000000000000000000000000000000000000..44dff1654f9a83cc467b8ebe07db2f2719facc6b --- /dev/null +++ b/iris/tab_ddpm_concat/4/logs/avg_role_model_mean_pred_loss_train/events.out.tfevents.1721742744.0e0da8a72f77.2743.5 @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:f6e571cf59882288423f93412094062845c327ba07105f3c7c776c621da40f51 +size 2230 diff --git a/iris/tab_ddpm_concat/4/logs/avg_role_model_mean_pred_loss_val/events.out.tfevents.1721742744.0e0da8a72f77.2743.6 b/iris/tab_ddpm_concat/4/logs/avg_role_model_mean_pred_loss_val/events.out.tfevents.1721742744.0e0da8a72f77.2743.6 new file mode 100644 index 0000000000000000000000000000000000000000..d7a795f1acabc66aab20390f62e18d1a862c886b --- /dev/null +++ b/iris/tab_ddpm_concat/4/logs/avg_role_model_mean_pred_loss_val/events.out.tfevents.1721742744.0e0da8a72f77.2743.6 @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:f967ef718f733aa6023dd5173b9dc71074f7ec6ee1bc9b235824ac4063ec997d +size 2230 diff --git a/iris/tab_ddpm_concat/4/logs/avg_role_model_std_loss_train/events.out.tfevents.1721742744.0e0da8a72f77.2743.3 b/iris/tab_ddpm_concat/4/logs/avg_role_model_std_loss_train/events.out.tfevents.1721742744.0e0da8a72f77.2743.3 new file mode 100644 index 0000000000000000000000000000000000000000..3ff0a2740376226dbe9566e26dcda5b0f12ac606 --- /dev/null +++ b/iris/tab_ddpm_concat/4/logs/avg_role_model_std_loss_train/events.out.tfevents.1721742744.0e0da8a72f77.2743.3 @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:ded1dd2cb0e354b5f6bc72b9ae0a7bf3769f2c4435805a61443f7cce83652852 +size 2038 diff --git a/iris/tab_ddpm_concat/4/logs/avg_role_model_std_loss_val/events.out.tfevents.1721742744.0e0da8a72f77.2743.4 b/iris/tab_ddpm_concat/4/logs/avg_role_model_std_loss_val/events.out.tfevents.1721742744.0e0da8a72f77.2743.4 new file mode 100644 index 0000000000000000000000000000000000000000..2dff240094683c180ab1215c6b6f98d6383ff3e5 --- /dev/null +++ b/iris/tab_ddpm_concat/4/logs/avg_role_model_std_loss_val/events.out.tfevents.1721742744.0e0da8a72f77.2743.4 @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:07ac76195803d5676b1f877e3d2110331ff28893d27b60934caf48c5d28baee4 +size 2038 diff --git a/iris/tab_ddpm_concat/4/logs/duration_batch_train/events.out.tfevents.1721742744.0e0da8a72f77.2743.25 b/iris/tab_ddpm_concat/4/logs/duration_batch_train/events.out.tfevents.1721742744.0e0da8a72f77.2743.25 new file mode 100644 index 0000000000000000000000000000000000000000..d1aaf384b65b757e52059ceac8d8de2e4951ac00 --- /dev/null +++ b/iris/tab_ddpm_concat/4/logs/duration_batch_train/events.out.tfevents.1721742744.0e0da8a72f77.2743.25 @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:f6edfb043c73e6f8fd580ec05061560b5eaeb9ec981e96e7565a371bfae687a6 +size 1750 diff --git a/iris/tab_ddpm_concat/4/logs/duration_batch_val/events.out.tfevents.1721742744.0e0da8a72f77.2743.26 b/iris/tab_ddpm_concat/4/logs/duration_batch_val/events.out.tfevents.1721742744.0e0da8a72f77.2743.26 new file mode 100644 index 0000000000000000000000000000000000000000..eaadacc78b48d963c7fcf64ba021444ce0c0dc90 --- /dev/null +++ b/iris/tab_ddpm_concat/4/logs/duration_batch_val/events.out.tfevents.1721742744.0e0da8a72f77.2743.26 @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:ea6cbbccfa892bca4191cc159e7ace3ef1ed60e7acd8d245404573dd646f121e +size 1750 diff --git a/iris/tab_ddpm_concat/4/logs/duration_size_train/events.out.tfevents.1721742744.0e0da8a72f77.2743.27 b/iris/tab_ddpm_concat/4/logs/duration_size_train/events.out.tfevents.1721742744.0e0da8a72f77.2743.27 new file mode 100644 index 0000000000000000000000000000000000000000..2dab45a04fe2163981c1531814d21b1d9c5584b5 --- /dev/null +++ b/iris/tab_ddpm_concat/4/logs/duration_size_train/events.out.tfevents.1721742744.0e0da8a72f77.2743.27 @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:dbf29cd035c1933d2baab0b92be28a6b8bca0a5ce7d1a9cc32b8c5a17da6de7c +size 1718 diff --git a/iris/tab_ddpm_concat/4/logs/duration_size_val/events.out.tfevents.1721742744.0e0da8a72f77.2743.28 b/iris/tab_ddpm_concat/4/logs/duration_size_val/events.out.tfevents.1721742744.0e0da8a72f77.2743.28 new file mode 100644 index 0000000000000000000000000000000000000000..328a91e3df08475faac2beaf50a5c839f9b6664a --- /dev/null +++ b/iris/tab_ddpm_concat/4/logs/duration_size_val/events.out.tfevents.1721742744.0e0da8a72f77.2743.28 @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:b1667f95c43a4cd55a49dd52dab2a616a334fcbebd7377463a139115735179fe +size 1718 diff --git a/iris/tab_ddpm_concat/4/logs/duration_train/events.out.tfevents.1721742744.0e0da8a72f77.2743.23 b/iris/tab_ddpm_concat/4/logs/duration_train/events.out.tfevents.1721742744.0e0da8a72f77.2743.23 new file mode 100644 index 0000000000000000000000000000000000000000..6bda8525c9926b91ffa93ba3dbb60a5556ba50d8 --- /dev/null +++ b/iris/tab_ddpm_concat/4/logs/duration_train/events.out.tfevents.1721742744.0e0da8a72f77.2743.23 @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:2c3ed88a7ca31e810e7abe8740c2d10985fbf47c45f13948055fd944979c410b +size 1558 diff --git a/iris/tab_ddpm_concat/4/logs/duration_val/events.out.tfevents.1721742744.0e0da8a72f77.2743.24 b/iris/tab_ddpm_concat/4/logs/duration_val/events.out.tfevents.1721742744.0e0da8a72f77.2743.24 new file mode 100644 index 0000000000000000000000000000000000000000..9062f7c2c892a2b3543f77f4726e55fda8ce5166 --- /dev/null +++ b/iris/tab_ddpm_concat/4/logs/duration_val/events.out.tfevents.1721742744.0e0da8a72f77.2743.24 @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:7a851d3fac0b575b9e1ba813ede6cc3fa3d36558ecdca1ee39ec598f70a687cc +size 1558 diff --git a/iris/tab_ddpm_concat/4/logs/events.out.tfevents.1721742641.0e0da8a72f77.2743.0 b/iris/tab_ddpm_concat/4/logs/events.out.tfevents.1721742641.0e0da8a72f77.2743.0 new file mode 100644 index 0000000000000000000000000000000000000000..e7e72b96f84c5fd88bdab7792e160767c0a11254 --- /dev/null +++ b/iris/tab_ddpm_concat/4/logs/events.out.tfevents.1721742641.0e0da8a72f77.2743.0 @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:62a48ec95c762f831c2f457dc7eafae0846ad960e343a64907701af6fd9732ed +size 88 diff --git a/iris/tab_ddpm_concat/4/logs/n_batch_train/events.out.tfevents.1721742744.0e0da8a72f77.2743.21 b/iris/tab_ddpm_concat/4/logs/n_batch_train/events.out.tfevents.1721742744.0e0da8a72f77.2743.21 new file mode 100644 index 0000000000000000000000000000000000000000..f704fb1a01ae203691523a94da40a6440169adc6 --- /dev/null +++ b/iris/tab_ddpm_concat/4/logs/n_batch_train/events.out.tfevents.1721742744.0e0da8a72f77.2743.21 @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:9f42d2a36872d413754bcfc491d8d1a6b05d0f81f320c13acc6093f8d9743318 +size 1526 diff --git a/iris/tab_ddpm_concat/4/logs/n_batch_val/events.out.tfevents.1721742744.0e0da8a72f77.2743.22 b/iris/tab_ddpm_concat/4/logs/n_batch_val/events.out.tfevents.1721742744.0e0da8a72f77.2743.22 new file mode 100644 index 0000000000000000000000000000000000000000..d2b10729aced24294d8e599082aa4b93d653c5e9 --- /dev/null +++ b/iris/tab_ddpm_concat/4/logs/n_batch_val/events.out.tfevents.1721742744.0e0da8a72f77.2743.22 @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:45e046f5c44eb76f46ad7e6bc1a378227785ddfc97b252e643f8b49d9c58a832 +size 1526 diff --git a/iris/tab_ddpm_concat/4/logs/n_size_train/events.out.tfevents.1721742744.0e0da8a72f77.2743.19 b/iris/tab_ddpm_concat/4/logs/n_size_train/events.out.tfevents.1721742744.0e0da8a72f77.2743.19 new file mode 100644 index 0000000000000000000000000000000000000000..f3504dac3052c81d9979bcc02dce474ebb45e3ba --- /dev/null +++ b/iris/tab_ddpm_concat/4/logs/n_size_train/events.out.tfevents.1721742744.0e0da8a72f77.2743.19 @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:05c3e9057f2d9bd2b80249577e09ff9bb2f04daa165d18b636c474806f424aab +size 1494 diff --git a/iris/tab_ddpm_concat/4/logs/n_size_val/events.out.tfevents.1721742744.0e0da8a72f77.2743.20 b/iris/tab_ddpm_concat/4/logs/n_size_val/events.out.tfevents.1721742744.0e0da8a72f77.2743.20 new file mode 100644 index 0000000000000000000000000000000000000000..a550f654c9927b26f437f29b146b261b816c5f7d --- /dev/null +++ b/iris/tab_ddpm_concat/4/logs/n_size_val/events.out.tfevents.1721742744.0e0da8a72f77.2743.20 @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:8a8b5006573edbd7ca062dd55ab53b1d4730999439117bb2332569a2539fafa8 +size 1494 diff --git a/iris/tab_ddpm_concat/4/logs/train_avg_loss/events.out.tfevents.1721742744.0e0da8a72f77.2743.39 b/iris/tab_ddpm_concat/4/logs/train_avg_loss/events.out.tfevents.1721742744.0e0da8a72f77.2743.39 new file mode 100644 index 0000000000000000000000000000000000000000..619d55b90d77700d0daae59b1f7e1f5b37dc35c6 --- /dev/null +++ b/iris/tab_ddpm_concat/4/logs/train_avg_loss/events.out.tfevents.1721742744.0e0da8a72f77.2743.39 @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:52d4df878f2937def32c5e25c90ddc14ae57a2b7ee684b021335146d315675e4 +size 1462 diff --git a/iris/tab_ddpm_concat/4/logs/train_avg_non_role_model_embed_loss/events.out.tfevents.1721742744.0e0da8a72f77.2743.38 b/iris/tab_ddpm_concat/4/logs/train_avg_non_role_model_embed_loss/events.out.tfevents.1721742744.0e0da8a72f77.2743.38 new file mode 100644 index 0000000000000000000000000000000000000000..540f192fb1cf5567bd40f739fe0782d054af074c --- /dev/null +++ b/iris/tab_ddpm_concat/4/logs/train_avg_non_role_model_embed_loss/events.out.tfevents.1721742744.0e0da8a72f77.2743.38 @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:06508d44eb80770a1b491b65960b41d9b97e1680915b65995f1136db651b122e +size 1462 diff --git a/iris/tab_ddpm_concat/4/logs/train_avg_non_role_model_g_cos_loss/events.out.tfevents.1721742744.0e0da8a72f77.2743.37 b/iris/tab_ddpm_concat/4/logs/train_avg_non_role_model_g_cos_loss/events.out.tfevents.1721742744.0e0da8a72f77.2743.37 new file mode 100644 index 0000000000000000000000000000000000000000..7771c27c73b116c71a1a0686b85757ded8c32644 --- /dev/null +++ b/iris/tab_ddpm_concat/4/logs/train_avg_non_role_model_g_cos_loss/events.out.tfevents.1721742744.0e0da8a72f77.2743.37 @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:6b38f556a5cf41e623cee41ee2dd6b3b81c335bfdadc1c65048793321c453af8 +size 1462 diff --git a/iris/tab_ddpm_concat/4/logs/train_avg_non_role_model_g_mag_loss/events.out.tfevents.1721742744.0e0da8a72f77.2743.36 b/iris/tab_ddpm_concat/4/logs/train_avg_non_role_model_g_mag_loss/events.out.tfevents.1721742744.0e0da8a72f77.2743.36 new file mode 100644 index 0000000000000000000000000000000000000000..df23a1ff38c67d20ac17bcba2d28d92e1fcdef5f --- /dev/null +++ b/iris/tab_ddpm_concat/4/logs/train_avg_non_role_model_g_mag_loss/events.out.tfevents.1721742744.0e0da8a72f77.2743.36 @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:8ba2bd9ca69d82c407221e1293c61095630a1b38fe2bffee02e9177a1f006259 +size 1462 diff --git a/iris/tab_ddpm_concat/4/logs/train_avg_pred_std/events.out.tfevents.1721742744.0e0da8a72f77.2743.45 b/iris/tab_ddpm_concat/4/logs/train_avg_pred_std/events.out.tfevents.1721742744.0e0da8a72f77.2743.45 new file mode 100644 index 0000000000000000000000000000000000000000..5fb3749871a14cbdce46ff107c0b550093808ba0 --- /dev/null +++ b/iris/tab_ddpm_concat/4/logs/train_avg_pred_std/events.out.tfevents.1721742744.0e0da8a72f77.2743.45 @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:dc2184abdbb2053b44b13cd8111bc56ebcd43d4ec980a05c4612ac2ac2a5d3fe +size 1462 diff --git a/iris/tab_ddpm_concat/4/logs/train_avg_role_model_g_cos_loss/events.out.tfevents.1721742744.0e0da8a72f77.2743.35 b/iris/tab_ddpm_concat/4/logs/train_avg_role_model_g_cos_loss/events.out.tfevents.1721742744.0e0da8a72f77.2743.35 new file mode 100644 index 0000000000000000000000000000000000000000..bfb0f9d81ebe580b0e9c1bb289a96fba530dc2bc --- /dev/null +++ b/iris/tab_ddpm_concat/4/logs/train_avg_role_model_g_cos_loss/events.out.tfevents.1721742744.0e0da8a72f77.2743.35 @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:0f334ec94e2c314b5a4bff1dc7e858b71098647c384dc1b7a0731bd834888fde +size 1462 diff --git a/iris/tab_ddpm_concat/4/logs/train_avg_role_model_g_mag_loss/events.out.tfevents.1721742744.0e0da8a72f77.2743.34 b/iris/tab_ddpm_concat/4/logs/train_avg_role_model_g_mag_loss/events.out.tfevents.1721742744.0e0da8a72f77.2743.34 new file mode 100644 index 0000000000000000000000000000000000000000..7909e042d3574d6b24935ce8ea9d69e942996107 --- /dev/null +++ b/iris/tab_ddpm_concat/4/logs/train_avg_role_model_g_mag_loss/events.out.tfevents.1721742744.0e0da8a72f77.2743.34 @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:42b59075d5a7bb8a16d8c24f5cc4bdc771c7b6e81474f5f2fb8c3d85bee50a43 +size 1462 diff --git a/iris/tab_ddpm_concat/4/logs/train_avg_role_model_loss/events.out.tfevents.1721742744.0e0da8a72f77.2743.31 b/iris/tab_ddpm_concat/4/logs/train_avg_role_model_loss/events.out.tfevents.1721742744.0e0da8a72f77.2743.31 new file mode 100644 index 0000000000000000000000000000000000000000..fb9aebeb8c335adc66124b0f827fb87667e74f20 --- /dev/null +++ b/iris/tab_ddpm_concat/4/logs/train_avg_role_model_loss/events.out.tfevents.1721742744.0e0da8a72f77.2743.31 @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:51ef031c3e7161ec9b0461f2c0c71f4c6cbc49196eb0c6e716cbf7c1e0fbc524 +size 1462 diff --git a/iris/tab_ddpm_concat/4/logs/train_avg_role_model_mean_pred_loss/events.out.tfevents.1721742744.0e0da8a72f77.2743.33 b/iris/tab_ddpm_concat/4/logs/train_avg_role_model_mean_pred_loss/events.out.tfevents.1721742744.0e0da8a72f77.2743.33 new file mode 100644 index 0000000000000000000000000000000000000000..a1d3b895d03ce59580e9cf6eeb5332c89de30242 --- /dev/null +++ b/iris/tab_ddpm_concat/4/logs/train_avg_role_model_mean_pred_loss/events.out.tfevents.1721742744.0e0da8a72f77.2743.33 @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:db9578cdb1a3e3ff0c5c6124e0db7554548eb1b5de5e3c0aab741f5b78127818 +size 1462 diff --git a/iris/tab_ddpm_concat/4/logs/train_avg_role_model_std_loss/events.out.tfevents.1721742744.0e0da8a72f77.2743.32 b/iris/tab_ddpm_concat/4/logs/train_avg_role_model_std_loss/events.out.tfevents.1721742744.0e0da8a72f77.2743.32 new file mode 100644 index 0000000000000000000000000000000000000000..79cc0095b73734933bcd1e62d529fc3146e19745 --- /dev/null +++ b/iris/tab_ddpm_concat/4/logs/train_avg_role_model_std_loss/events.out.tfevents.1721742744.0e0da8a72f77.2743.32 @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:74a65230f15360ed8c20139e0436536580928bf64c3b15026e31b9c4f9d0d41a +size 1462 diff --git a/iris/tab_ddpm_concat/4/logs/train_duration/events.out.tfevents.1721742744.0e0da8a72f77.2743.42 b/iris/tab_ddpm_concat/4/logs/train_duration/events.out.tfevents.1721742744.0e0da8a72f77.2743.42 new file mode 100644 index 0000000000000000000000000000000000000000..ba191f50ba3490e417b9c6b372287c4ac0e7b235 --- /dev/null +++ b/iris/tab_ddpm_concat/4/logs/train_duration/events.out.tfevents.1721742744.0e0da8a72f77.2743.42 @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:8259aeb955548d7dc4cdc3dc1d547ee52a18499b20cb265e687c68807fc326d0 +size 1462 diff --git a/iris/tab_ddpm_concat/4/logs/train_duration_batch/events.out.tfevents.1721742744.0e0da8a72f77.2743.43 b/iris/tab_ddpm_concat/4/logs/train_duration_batch/events.out.tfevents.1721742744.0e0da8a72f77.2743.43 new file mode 100644 index 0000000000000000000000000000000000000000..b2c08527a13e817a0afb1d21420241cce80fb1ef --- /dev/null +++ b/iris/tab_ddpm_concat/4/logs/train_duration_batch/events.out.tfevents.1721742744.0e0da8a72f77.2743.43 @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:75ff6241f083102d74f8e27b302fb68dd38f9356617e27d2ad288bfd92894d07 +size 1462 diff --git a/iris/tab_ddpm_concat/4/logs/train_duration_size/events.out.tfevents.1721742744.0e0da8a72f77.2743.44 b/iris/tab_ddpm_concat/4/logs/train_duration_size/events.out.tfevents.1721742744.0e0da8a72f77.2743.44 new file mode 100644 index 0000000000000000000000000000000000000000..3fcef57451fcd1491b8bac43e2818d821b945ffb --- /dev/null +++ b/iris/tab_ddpm_concat/4/logs/train_duration_size/events.out.tfevents.1721742744.0e0da8a72f77.2743.44 @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:dda068fb60867651f261b986cbb38f35321187a4f468ec5c91a10bf772a53486 +size 1462 diff --git a/iris/tab_ddpm_concat/4/logs/train_n_batch/events.out.tfevents.1721742744.0e0da8a72f77.2743.41 b/iris/tab_ddpm_concat/4/logs/train_n_batch/events.out.tfevents.1721742744.0e0da8a72f77.2743.41 new file mode 100644 index 0000000000000000000000000000000000000000..816672681224bcbced8ca80bd8491038aeb7fda0 --- /dev/null +++ b/iris/tab_ddpm_concat/4/logs/train_n_batch/events.out.tfevents.1721742744.0e0da8a72f77.2743.41 @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:bfe29719d7053e13dc46c4765191207f58ddb45f26b8ad41f86f0d6a499f83a6 +size 1462 diff --git a/iris/tab_ddpm_concat/4/logs/train_n_size/events.out.tfevents.1721742744.0e0da8a72f77.2743.40 b/iris/tab_ddpm_concat/4/logs/train_n_size/events.out.tfevents.1721742744.0e0da8a72f77.2743.40 new file mode 100644 index 0000000000000000000000000000000000000000..64c8542cc6d854eb2f3fe4fff717efe93c1ce96f --- /dev/null +++ b/iris/tab_ddpm_concat/4/logs/train_n_size/events.out.tfevents.1721742744.0e0da8a72f77.2743.40 @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:dc5c06c1bc3ced24912749e3560e1f3c4671af86857f8390b5458f741c990f7f +size 1462 diff --git a/iris/tab_ddpm_concat/4/logs/val_avg_loss/events.out.tfevents.1721742744.0e0da8a72f77.2743.54 b/iris/tab_ddpm_concat/4/logs/val_avg_loss/events.out.tfevents.1721742744.0e0da8a72f77.2743.54 new file mode 100644 index 0000000000000000000000000000000000000000..d5cc0ed46f3d50eb5b10c8fa4a06b8cbc3ad5beb --- /dev/null +++ b/iris/tab_ddpm_concat/4/logs/val_avg_loss/events.out.tfevents.1721742744.0e0da8a72f77.2743.54 @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:07235bc33b9c0459a543e727e18a847600a276a332b61e5fea3f48c8e71af049 +size 1398 diff --git a/iris/tab_ddpm_concat/4/logs/val_avg_non_role_model_embed_loss/events.out.tfevents.1721742744.0e0da8a72f77.2743.53 b/iris/tab_ddpm_concat/4/logs/val_avg_non_role_model_embed_loss/events.out.tfevents.1721742744.0e0da8a72f77.2743.53 new file mode 100644 index 0000000000000000000000000000000000000000..2986fbd39a6209f42e4fe70bf2725862bb6d3d1b --- /dev/null +++ b/iris/tab_ddpm_concat/4/logs/val_avg_non_role_model_embed_loss/events.out.tfevents.1721742744.0e0da8a72f77.2743.53 @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:0182a91d217303e058c9ec62dffc3c27c40e55ae2044d76080694cb07d90209f +size 1398 diff --git a/iris/tab_ddpm_concat/4/logs/val_avg_non_role_model_g_cos_loss/events.out.tfevents.1721742744.0e0da8a72f77.2743.52 b/iris/tab_ddpm_concat/4/logs/val_avg_non_role_model_g_cos_loss/events.out.tfevents.1721742744.0e0da8a72f77.2743.52 new file mode 100644 index 0000000000000000000000000000000000000000..59d16e69840ca94811b669db01c96710219cd6e4 --- /dev/null +++ b/iris/tab_ddpm_concat/4/logs/val_avg_non_role_model_g_cos_loss/events.out.tfevents.1721742744.0e0da8a72f77.2743.52 @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:f7b21ee0ecd6065165aa76c9eb9b25338584c933db8128496fb64db5037b5492 +size 1398 diff --git a/iris/tab_ddpm_concat/4/logs/val_avg_non_role_model_g_mag_loss/events.out.tfevents.1721742744.0e0da8a72f77.2743.51 b/iris/tab_ddpm_concat/4/logs/val_avg_non_role_model_g_mag_loss/events.out.tfevents.1721742744.0e0da8a72f77.2743.51 new file mode 100644 index 0000000000000000000000000000000000000000..580f42f120cdef239e58dc28eaf8bb9914cfab38 --- /dev/null +++ b/iris/tab_ddpm_concat/4/logs/val_avg_non_role_model_g_mag_loss/events.out.tfevents.1721742744.0e0da8a72f77.2743.51 @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:2d5b9c354565f69c381b2e0993d9a7fccd446cfe19908fd51d52fe752b00022d +size 1398 diff --git a/iris/tab_ddpm_concat/4/logs/val_avg_pred_std/events.out.tfevents.1721742744.0e0da8a72f77.2743.60 b/iris/tab_ddpm_concat/4/logs/val_avg_pred_std/events.out.tfevents.1721742744.0e0da8a72f77.2743.60 new file mode 100644 index 0000000000000000000000000000000000000000..f96b8380abd50f9cfa981d1ff29267ab2036e400 --- /dev/null +++ b/iris/tab_ddpm_concat/4/logs/val_avg_pred_std/events.out.tfevents.1721742744.0e0da8a72f77.2743.60 @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:6474f4e489d83059d2823976096cb4c33b4b722e582bd5235bb661e2d0bc9403 +size 1398 diff --git a/iris/tab_ddpm_concat/4/logs/val_avg_role_model_g_cos_loss/events.out.tfevents.1721742744.0e0da8a72f77.2743.50 b/iris/tab_ddpm_concat/4/logs/val_avg_role_model_g_cos_loss/events.out.tfevents.1721742744.0e0da8a72f77.2743.50 new file mode 100644 index 0000000000000000000000000000000000000000..0e6b48afd30f577d621d199b606b89e7b154531d --- /dev/null +++ b/iris/tab_ddpm_concat/4/logs/val_avg_role_model_g_cos_loss/events.out.tfevents.1721742744.0e0da8a72f77.2743.50 @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:ac1cc2828a7cd786397c78a97f4551635c5fd4bb8c4555fc25955133917e4c81 +size 1398 diff --git a/iris/tab_ddpm_concat/4/logs/val_avg_role_model_g_mag_loss/events.out.tfevents.1721742744.0e0da8a72f77.2743.49 b/iris/tab_ddpm_concat/4/logs/val_avg_role_model_g_mag_loss/events.out.tfevents.1721742744.0e0da8a72f77.2743.49 new file mode 100644 index 0000000000000000000000000000000000000000..b5e17f867e7d6600d09765f145d31e156c49e0ca --- /dev/null +++ b/iris/tab_ddpm_concat/4/logs/val_avg_role_model_g_mag_loss/events.out.tfevents.1721742744.0e0da8a72f77.2743.49 @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:571ea688af3729e92e747ba96dcb02a4d2bc4404cc67fdaf95fa5c33d477f9f1 +size 1398 diff --git a/iris/tab_ddpm_concat/4/logs/val_avg_role_model_loss/events.out.tfevents.1721742744.0e0da8a72f77.2743.46 b/iris/tab_ddpm_concat/4/logs/val_avg_role_model_loss/events.out.tfevents.1721742744.0e0da8a72f77.2743.46 new file mode 100644 index 0000000000000000000000000000000000000000..4e36baf66f9316dcd953009f2a8cf2ce4436db16 --- /dev/null +++ b/iris/tab_ddpm_concat/4/logs/val_avg_role_model_loss/events.out.tfevents.1721742744.0e0da8a72f77.2743.46 @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:c84112b3e85b4f7df3ade52ec199bc1ee5b9a68dc5bcb7740e54dd933e035852 +size 1398 diff --git a/iris/tab_ddpm_concat/4/logs/val_avg_role_model_mean_pred_loss/events.out.tfevents.1721742744.0e0da8a72f77.2743.48 b/iris/tab_ddpm_concat/4/logs/val_avg_role_model_mean_pred_loss/events.out.tfevents.1721742744.0e0da8a72f77.2743.48 new file mode 100644 index 0000000000000000000000000000000000000000..b9846d7776fb7064bc31fc1177ef7db996184e32 --- /dev/null +++ b/iris/tab_ddpm_concat/4/logs/val_avg_role_model_mean_pred_loss/events.out.tfevents.1721742744.0e0da8a72f77.2743.48 @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:8c2ab7d7404f5bacbd4e636f20b7ad7175a947ea8717f94912f5754b11bf5fed +size 1398 diff --git a/iris/tab_ddpm_concat/4/logs/val_avg_role_model_std_loss/events.out.tfevents.1721742744.0e0da8a72f77.2743.47 b/iris/tab_ddpm_concat/4/logs/val_avg_role_model_std_loss/events.out.tfevents.1721742744.0e0da8a72f77.2743.47 new file mode 100644 index 0000000000000000000000000000000000000000..bb18203da433617d44f3d8b8875c63585b601a02 --- /dev/null +++ b/iris/tab_ddpm_concat/4/logs/val_avg_role_model_std_loss/events.out.tfevents.1721742744.0e0da8a72f77.2743.47 @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:32d71288ff7d7193022da473f6c62706339cbf38aa7db38f3e26e6aa3f5f9fb7 +size 1398 diff --git a/iris/tab_ddpm_concat/4/logs/val_duration/events.out.tfevents.1721742744.0e0da8a72f77.2743.57 b/iris/tab_ddpm_concat/4/logs/val_duration/events.out.tfevents.1721742744.0e0da8a72f77.2743.57 new file mode 100644 index 0000000000000000000000000000000000000000..7774f0b6f210052fca1d03a3d2132e0e0cd37fac --- /dev/null +++ b/iris/tab_ddpm_concat/4/logs/val_duration/events.out.tfevents.1721742744.0e0da8a72f77.2743.57 @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:320950b49ca5833b65da4c9a28172d0cf10f58292e86adcc1c276c585e0db78f +size 1398 diff --git a/iris/tab_ddpm_concat/4/logs/val_duration_batch/events.out.tfevents.1721742744.0e0da8a72f77.2743.58 b/iris/tab_ddpm_concat/4/logs/val_duration_batch/events.out.tfevents.1721742744.0e0da8a72f77.2743.58 new file mode 100644 index 0000000000000000000000000000000000000000..f62474d48bbd7558978977c7d9f99b6c686b73b6 --- /dev/null +++ b/iris/tab_ddpm_concat/4/logs/val_duration_batch/events.out.tfevents.1721742744.0e0da8a72f77.2743.58 @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:289cef66cea5d69e91a334239e1775fba40705366dedcb8dee63d052524a1bcd +size 1398 diff --git a/iris/tab_ddpm_concat/4/logs/val_duration_size/events.out.tfevents.1721742744.0e0da8a72f77.2743.59 b/iris/tab_ddpm_concat/4/logs/val_duration_size/events.out.tfevents.1721742744.0e0da8a72f77.2743.59 new file mode 100644 index 0000000000000000000000000000000000000000..0bc8d75b4d2e84af6a3c836cff01c2cbb19d2889 --- /dev/null +++ b/iris/tab_ddpm_concat/4/logs/val_duration_size/events.out.tfevents.1721742744.0e0da8a72f77.2743.59 @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:33e932ae7a2bca87e94a2703c0d1be4f2d5151c607bfb48ca5e9d0a9961b6891 +size 1398 diff --git a/iris/tab_ddpm_concat/4/logs/val_n_batch/events.out.tfevents.1721742744.0e0da8a72f77.2743.56 b/iris/tab_ddpm_concat/4/logs/val_n_batch/events.out.tfevents.1721742744.0e0da8a72f77.2743.56 new file mode 100644 index 0000000000000000000000000000000000000000..a5167546fccb558a16102be0039db13e5af85588 --- /dev/null +++ b/iris/tab_ddpm_concat/4/logs/val_n_batch/events.out.tfevents.1721742744.0e0da8a72f77.2743.56 @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:01352033bab2b11afbaa58c0f60c9b82e7143f1c0246a6b0b3264e59bfb5289e +size 1398 diff --git a/iris/tab_ddpm_concat/4/logs/val_n_size/events.out.tfevents.1721742744.0e0da8a72f77.2743.55 b/iris/tab_ddpm_concat/4/logs/val_n_size/events.out.tfevents.1721742744.0e0da8a72f77.2743.55 new file mode 100644 index 0000000000000000000000000000000000000000..fc8e6cd8476839d4a5fe5937c11f5dc682014b5d --- /dev/null +++ b/iris/tab_ddpm_concat/4/logs/val_n_size/events.out.tfevents.1721742744.0e0da8a72f77.2743.55 @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:6a45f40229a3e41618f6b8bf739082f49fe2d8b90226a72cb927fbc24e9c4359 +size 1398 diff --git a/iris/tab_ddpm_concat/4/mlu-eval.ipynb b/iris/tab_ddpm_concat/4/mlu-eval.ipynb new file mode 100644 index 0000000000000000000000000000000000000000..ac427b9c9f8e456a81dede04bd92d2bf586d9423 --- /dev/null +++ b/iris/tab_ddpm_concat/4/mlu-eval.ipynb @@ -0,0 +1,2502 @@ +{ + "cells": [ + { + "cell_type": "code", + "execution_count": 1, + "id": "982e76f5", + "metadata": { + "execution": { + "iopub.execute_input": "2024-07-23T13:50:11.534205Z", + "iopub.status.busy": "2024-07-23T13:50:11.533831Z", + "iopub.status.idle": "2024-07-23T13:50:11.565684Z", + "shell.execute_reply": "2024-07-23T13:50:11.564744Z" + }, + "papermill": { + "duration": 0.04798, + "end_time": "2024-07-23T13:50:11.568826", + "exception": false, + "start_time": "2024-07-23T13:50:11.520846", + "status": "completed" + }, + "tags": [] + }, + "outputs": [], + "source": [ + "import joblib\n", + "\n", + "#joblib.parallel_backend(\"threading\")" + ] + }, + { + "cell_type": "code", + "execution_count": 2, + "id": "675f0b41", + "metadata": { + "execution": { + "iopub.execute_input": "2024-07-23T13:50:11.594316Z", + "iopub.status.busy": "2024-07-23T13:50:11.594010Z", + "iopub.status.idle": "2024-07-23T13:50:11.600755Z", + "shell.execute_reply": "2024-07-23T13:50:11.599883Z" + }, + "papermill": { + "duration": 0.021598, + "end_time": "2024-07-23T13:50:11.602679", + "exception": false, + "start_time": "2024-07-23T13:50:11.581081", + "status": "completed" + }, + "tags": [] + }, + "outputs": [ + { + "data": { + "text/plain": [ + "'\\n%cd /kaggle/working\\n#!git clone https://github.com/R-N/ml-utility-loss --depth=1 --single-branch --branch=main\\n%cd ml-utility-loss\\n!git pull\\n#!pip install .\\n!pip install . --no-deps --force-reinstall --upgrade\\n#'" + ] + }, + "execution_count": 2, + "metadata": {}, + "output_type": "execute_result" + } + ], + "source": [ + "\"\"\"\n", + "%cd /kaggle/working\n", + "#!git clone https://github.com/R-N/ml-utility-loss --depth=1 --single-branch --branch=main\n", + "%cd ml-utility-loss\n", + "!git pull\n", + "#!pip install .\n", + "!pip install . --no-deps --force-reinstall --upgrade\n", + "#\"\"\"" + ] + }, + { + "cell_type": "code", + "execution_count": 3, + "id": "5ae30f5c", + "metadata": { + "execution": { + "iopub.execute_input": "2024-07-23T13:50:11.626281Z", + "iopub.status.busy": "2024-07-23T13:50:11.625984Z", + "iopub.status.idle": "2024-07-23T13:50:11.630124Z", + "shell.execute_reply": "2024-07-23T13:50:11.629262Z" + }, + "papermill": { + "duration": 0.018159, + "end_time": "2024-07-23T13:50:11.632005", + "exception": false, + "start_time": "2024-07-23T13:50:11.613846", + "status": "completed" + }, + "tags": [] + }, + "outputs": [], + "source": [ + "import matplotlib.pyplot as plt\n", + "plt.rcParams['figure.figsize'] = [3,3]" + ] + }, + { + "cell_type": "code", + "execution_count": 4, + "id": "9f42c810", + "metadata": { + "execution": { + "iopub.execute_input": "2024-07-23T13:50:11.655602Z", + "iopub.status.busy": "2024-07-23T13:50:11.655332Z", + "iopub.status.idle": "2024-07-23T13:50:11.659200Z", + "shell.execute_reply": "2024-07-23T13:50:11.658412Z" + }, + "executionInfo": { + "elapsed": 678, + "status": "ok", + "timestamp": 1696841022168, + "user": { + "displayName": "Rizqi Nur", + "userId": "09644007964068789560" + }, + "user_tz": -420 + }, + "id": "ns5hFcVL2yvs", + "papermill": { + "duration": 0.018135, + "end_time": "2024-07-23T13:50:11.661133", + "exception": false, + "start_time": "2024-07-23T13:50:11.642998", + "status": "completed" + }, + "tags": [] + }, + "outputs": [], + "source": [ + "datasets = [\n", + " \"insurance\",\n", + " \"treatment\",\n", + " \"contraceptive\"\n", + "]\n", + "\n", + "study_dir = \"./\"" + ] + }, + { + "cell_type": "code", + "execution_count": 5, + "id": "85d0c8ce", + "metadata": { + "execution": { + "iopub.execute_input": "2024-07-23T13:50:11.684746Z", + "iopub.status.busy": "2024-07-23T13:50:11.684266Z", + "iopub.status.idle": "2024-07-23T13:50:11.690184Z", + "shell.execute_reply": "2024-07-23T13:50:11.689286Z" + }, + "papermill": { + "duration": 0.019867, + "end_time": "2024-07-23T13:50:11.692037", + "exception": false, + "start_time": "2024-07-23T13:50:11.672170", + "status": "completed" + }, + "tags": [ + "parameters" + ] + }, + "outputs": [], + "source": [ + "#Parameters\n", + "import os\n", + "\n", + "path_prefix = \"../../../../\"\n", + "\n", + "dataset_dir = os.path.join(path_prefix, \"ml-utility-loss/datasets\")\n", + "dataset_name = \"treatment\"\n", + "model_name=\"ml_utility_2\"\n", + "models = [\"tvae\", \"realtabformer\", \"lct_gan\", \"tab_ddpm_concat\"]\n", + "single_model = \"lct_gan\"\n", + "random_seed = 42\n", + "gp = True\n", + "gp_multiply = True\n", + "folder = \"eval\"\n", + "debug = False\n", + "path = None\n", + "param_index = 0\n", + "allow_same_prediction = True\n", + "log_wandb = False" + ] + }, + { + "cell_type": "code", + "execution_count": 6, + "id": "6e160a33", + "metadata": { + "execution": { + "iopub.execute_input": "2024-07-23T13:50:11.718138Z", + "iopub.status.busy": "2024-07-23T13:50:11.717470Z", + "iopub.status.idle": "2024-07-23T13:50:11.723082Z", + "shell.execute_reply": "2024-07-23T13:50:11.722255Z" + }, + "papermill": { + "duration": 0.020632, + "end_time": "2024-07-23T13:50:11.724948", + "exception": false, + "start_time": "2024-07-23T13:50:11.704316", + "status": "completed" + }, + "tags": [ + "injected-parameters" + ] + }, + "outputs": [], + "source": [ + "# Parameters\n", + "dataset = \"iris\"\n", + "dataset_name = \"iris\"\n", + "single_model = \"tab_ddpm_concat\"\n", + "gp = True\n", + "gp_multiply = True\n", + "random_seed = 4\n", + "debug = False\n", + "folder = \"eval\"\n", + "path_prefix = \"../../../../\"\n", + "path = \"eval/iris/tab_ddpm_concat/4\"\n", + "param_index = 0\n", + "allow_same_prediction = True\n", + "log_wandb = False\n" + ] + }, + { + "cell_type": "code", + "execution_count": null, + "id": "bd7c02d6", + "metadata": { + "papermill": { + "duration": 0.011242, + "end_time": "2024-07-23T13:50:11.747282", + "exception": false, + "start_time": "2024-07-23T13:50:11.736040", + "status": "completed" + }, + "tags": [] + }, + "outputs": [], + "source": [] + }, + { + "cell_type": "code", + "execution_count": 7, + "id": "5f45b1d0", + "metadata": { + "execution": { + "iopub.execute_input": "2024-07-23T13:50:11.770684Z", + "iopub.status.busy": "2024-07-23T13:50:11.770383Z", + "iopub.status.idle": "2024-07-23T13:50:11.779815Z", + "shell.execute_reply": "2024-07-23T13:50:11.778930Z" + }, + "executionInfo": { + "elapsed": 7, + "status": "ok", + "timestamp": 1696841022169, + "user": { + "displayName": "Rizqi Nur", + "userId": "09644007964068789560" + }, + "user_tz": -420 + }, + "id": "UdvXYv3c3LXy", + "papermill": { + "duration": 0.023502, + "end_time": "2024-07-23T13:50:11.781827", + "exception": false, + "start_time": "2024-07-23T13:50:11.758325", + "status": "completed" + }, + "tags": [] + }, + "outputs": [ + { + "name": "stdout", + "output_type": "stream", + "text": [ + "/kaggle/working\n", + "/kaggle/working/eval/iris/tab_ddpm_concat/4\n" + ] + } + ], + "source": [ + "from pathlib import Path\n", + "import os\n", + "\n", + "%cd /kaggle/working/\n", + "\n", + "if path is None:\n", + " path = os.path.join(folder, dataset_name, single_model, random_seed)\n", + "Path(path).mkdir(parents=True, exist_ok=True)\n", + "\n", + "%cd {path}" + ] + }, + { + "cell_type": "code", + "execution_count": 8, + "id": "f85bf540", + "metadata": { + "execution": { + "iopub.execute_input": "2024-07-23T13:50:11.806054Z", + "iopub.status.busy": "2024-07-23T13:50:11.805548Z", + "iopub.status.idle": "2024-07-23T13:50:13.764372Z", + "shell.execute_reply": "2024-07-23T13:50:13.763416Z" + }, + "papermill": { + "duration": 1.973383, + "end_time": "2024-07-23T13:50:13.766519", + "exception": false, + "start_time": "2024-07-23T13:50:11.793136", + "status": "completed" + }, + "tags": [] + }, + "outputs": [ + { + "name": "stdout", + "output_type": "stream", + "text": [ + "Set seed to \n" + ] + } + ], + "source": [ + "from ml_utility_loss.util import seed\n", + "if single_model:\n", + " model_name=f\"{model_name}_{single_model}\"\n", + "if random_seed is not None:\n", + " seed(random_seed)\n", + " print(\"Set seed to\", seed)" + ] + }, + { + "cell_type": "code", + "execution_count": 9, + "id": "8489feae", + "metadata": { + "execution": { + "iopub.execute_input": "2024-07-23T13:50:13.792305Z", + "iopub.status.busy": "2024-07-23T13:50:13.791882Z", + "iopub.status.idle": "2024-07-23T13:50:13.802031Z", + "shell.execute_reply": "2024-07-23T13:50:13.801097Z" + }, + "papermill": { + "duration": 0.025099, + "end_time": "2024-07-23T13:50:13.803971", + "exception": false, + "start_time": "2024-07-23T13:50:13.778872", + "status": "completed" + }, + "tags": [] + }, + "outputs": [], + "source": [ + "import pandas as pd\n", + "import numpy as np\n", + "import json\n", + "import os\n", + "\n", + "df = pd.read_csv(os.path.join(dataset_dir, f\"{dataset_name}.csv\"))\n", + "with open(os.path.join(dataset_dir, f\"{dataset_name}.json\")) as f:\n", + " info = json.load(f)" + ] + }, + { + "cell_type": "code", + "execution_count": 10, + "id": "debcc684", + "metadata": { + "execution": { + "iopub.execute_input": "2024-07-23T13:50:13.827712Z", + "iopub.status.busy": "2024-07-23T13:50:13.827454Z", + "iopub.status.idle": "2024-07-23T13:50:13.834047Z", + "shell.execute_reply": "2024-07-23T13:50:13.833204Z" + }, + "executionInfo": { + "elapsed": 6, + "status": "ok", + "timestamp": 1696841022169, + "user": { + "displayName": "Rizqi Nur", + "userId": "09644007964068789560" + }, + "user_tz": -420 + }, + "id": "Vrl2QkoV3o_8", + "papermill": { + "duration": 0.020645, + "end_time": "2024-07-23T13:50:13.835959", + "exception": false, + "start_time": "2024-07-23T13:50:13.815314", + "status": "completed" + }, + "tags": [] + }, + "outputs": [], + "source": [ + "task = info[\"task\"]\n", + "target = info[\"target\"]\n", + "cat_features = info[\"cat_features\"]\n", + "mixed_features = info[\"mixed_features\"]\n", + "longtail_features = info[\"longtail_features\"]\n", + "integer_features = info[\"integer_features\"]\n", + "\n", + "test = df.sample(frac=0.2, random_state=42)\n", + "train = df[~df.index.isin(test.index)]" + ] + }, + { + "cell_type": "code", + "execution_count": 11, + "id": "7538184a", + "metadata": { + "execution": { + "iopub.execute_input": "2024-07-23T13:50:13.859485Z", + "iopub.status.busy": "2024-07-23T13:50:13.859216Z", + "iopub.status.idle": "2024-07-23T13:50:13.957744Z", + "shell.execute_reply": "2024-07-23T13:50:13.956725Z" + }, + "executionInfo": { + "elapsed": 6, + "status": "ok", + "timestamp": 1696841022169, + "user": { + "displayName": "Rizqi Nur", + "userId": "09644007964068789560" + }, + "user_tz": -420 + }, + "id": "TilUuFk9vqMb", + "papermill": { + "duration": 0.112938, + "end_time": "2024-07-23T13:50:13.960044", + "exception": false, + "start_time": "2024-07-23T13:50:13.847106", + "status": "completed" + }, + "tags": [] + }, + "outputs": [], + "source": [ + "import ml_utility_loss.synthesizers.tab_ddpm.params as TAB_DDPM_PARAMS\n", + "import ml_utility_loss.synthesizers.lct_gan.params as LCT_GAN_PARAMS\n", + "import ml_utility_loss.synthesizers.realtabformer.params as RTF_PARAMS\n", + "from ml_utility_loss.synthesizers.realtabformer.params.default import GPT2_PARAMS, REALTABFORMER_PARAMS\n", + "from ml_utility_loss.util import filter_dict_2, filter_dict\n", + "\n", + "tab_ddpm_params = getattr(TAB_DDPM_PARAMS, dataset_name).BEST\n", + "lct_gan_params = getattr(LCT_GAN_PARAMS, dataset_name).BEST\n", + "lct_ae_params = filter_dict_2(lct_gan_params, LCT_GAN_PARAMS.default.AE_PARAMS)\n", + "rtf_params = getattr(RTF_PARAMS, dataset_name).BEST\n", + "rtf_params = filter_dict(rtf_params, REALTABFORMER_PARAMS)\n", + "\n", + "lct_ae_embedding_size=lct_gan_params[\"embedding_size\"]\n", + "tab_ddpm_normalization=\"quantile\"\n", + "tab_ddpm_cat_encoding=tab_ddpm_params[\"cat_encoding\"]\n", + "#tab_ddpm_cat_encoding=\"one-hot\"\n", + "tab_ddpm_y_policy=\"default\"\n", + "tab_ddpm_is_y_cond=True" + ] + }, + { + "cell_type": "code", + "execution_count": 12, + "id": "cca61838", + "metadata": { + "execution": { + "iopub.execute_input": "2024-07-23T13:50:13.986011Z", + "iopub.status.busy": "2024-07-23T13:50:13.985711Z", + "iopub.status.idle": "2024-07-23T13:50:18.315356Z", + "shell.execute_reply": "2024-07-23T13:50:18.314321Z" + }, + "executionInfo": { + "elapsed": 3113, + "status": "ok", + "timestamp": 1696841025277, + "user": { + "displayName": "Rizqi Nur", + "userId": "09644007964068789560" + }, + "user_tz": -420 + }, + "id": "7Abt8nStvr9Z", + "papermill": { + "duration": 4.345331, + "end_time": "2024-07-23T13:50:18.317958", + "exception": false, + "start_time": "2024-07-23T13:50:13.972627", + "status": "completed" + }, + "tags": [] + }, + "outputs": [ + { + "name": "stderr", + "output_type": "stream", + "text": [ + "2024-07-23 13:50:15.715265: E external/local_xla/xla/stream_executor/cuda/cuda_dnn.cc:9261] Unable to register cuDNN factory: Attempting to register factory for plugin cuDNN when one has already been registered\n", + "2024-07-23 13:50:15.715326: E external/local_xla/xla/stream_executor/cuda/cuda_fft.cc:607] Unable to register cuFFT factory: Attempting to register factory for plugin cuFFT when one has already been registered\n", + "2024-07-23 13:50:15.716890: E external/local_xla/xla/stream_executor/cuda/cuda_blas.cc:1515] Unable to register cuBLAS factory: Attempting to register factory for plugin cuBLAS when one has already been registered\n" + ] + } + ], + "source": [ + "from ml_utility_loss.loss_learning.estimator.pipeline import load_lct_ae\n", + "\n", + "# lct_ae = load_lct_ae(\n", + "# dataset_name=dataset_name,\n", + "# model_dir=os.path.join(path_prefix, \"ml-utility-loss/models\"),\n", + "# model_name=\"lct_ae\",\n", + "# df_name=\"df\",\n", + "# )\n", + "lct_ae = None" + ] + }, + { + "cell_type": "code", + "execution_count": 13, + "id": "6f83b7b6", + "metadata": { + "execution": { + "iopub.execute_input": "2024-07-23T13:50:18.343665Z", + "iopub.status.busy": "2024-07-23T13:50:18.342624Z", + "iopub.status.idle": "2024-07-23T13:50:18.349446Z", + "shell.execute_reply": "2024-07-23T13:50:18.348742Z" + }, + "papermill": { + "duration": 0.021343, + "end_time": "2024-07-23T13:50:18.351303", + "exception": false, + "start_time": "2024-07-23T13:50:18.329960", + "status": "completed" + }, + "tags": [] + }, + "outputs": [], + "source": [ + "from ml_utility_loss.loss_learning.estimator.pipeline import load_rtf_embed\n", + "\n", + "rtf_embed = load_rtf_embed(\n", + " dataset_name=dataset_name,\n", + " model_dir=os.path.join(path_prefix, \"ml-utility-loss/models\"),\n", + " model_name=\"realtabformer\",\n", + " df_name=\"df\",\n", + " ckpt_type=\"best-disc-model\"\n", + ")" + ] + }, + { + "cell_type": "code", + "execution_count": 14, + "id": "0026de74", + "metadata": { + "execution": { + "iopub.execute_input": "2024-07-23T13:50:18.377638Z", + "iopub.status.busy": "2024-07-23T13:50:18.376849Z", + "iopub.status.idle": "2024-07-23T13:50:21.065134Z", + "shell.execute_reply": "2024-07-23T13:50:21.064337Z" + }, + "executionInfo": { + "elapsed": 20137, + "status": "ok", + "timestamp": 1696841045408, + "user": { + "displayName": "Rizqi Nur", + "userId": "09644007964068789560" + }, + "user_tz": -420 + }, + "id": "tbaguWxAvtPi", + "papermill": { + "duration": 2.704147, + "end_time": "2024-07-23T13:50:21.067598", + "exception": false, + "start_time": "2024-07-23T13:50:18.363451", + "status": "completed" + }, + "tags": [] + }, + "outputs": [ + { + "name": "stderr", + "output_type": "stream", + "text": [ + "/opt/conda/lib/python3.10/site-packages/sklearn/mixture/_base.py:274: ConvergenceWarning: Initialization 1 did not converge. Try different init parameters, or increase max_iter, tol or check for degenerate data.\n", + " warnings.warn(\n" + ] + }, + { + "name": "stderr", + "output_type": "stream", + "text": [ + "/opt/conda/lib/python3.10/site-packages/sklearn/mixture/_base.py:274: ConvergenceWarning: Initialization 1 did not converge. Try different init parameters, or increase max_iter, tol or check for degenerate data.\n", + " warnings.warn(\n" + ] + } + ], + "source": [ + "from ml_utility_loss.loss_learning.estimator.preprocessing import DataPreprocessor\n", + "\n", + "preprocessor = DataPreprocessor(\n", + " task,\n", + " target=target,\n", + " cat_features=cat_features,\n", + " mixed_features=mixed_features,\n", + " longtail_features=longtail_features,\n", + " integer_features=integer_features,\n", + " lct_ae_embedding_size=lct_ae_embedding_size,\n", + " lct_ae_params=lct_ae_params,\n", + " lct_ae=lct_ae,\n", + " tab_ddpm_normalization=tab_ddpm_normalization,\n", + " tab_ddpm_cat_encoding=tab_ddpm_cat_encoding,\n", + " tab_ddpm_y_policy=tab_ddpm_y_policy,\n", + " tab_ddpm_is_y_cond=tab_ddpm_is_y_cond,\n", + " realtabformer_embedding=rtf_embed,\n", + " realtabformer_params=rtf_params,\n", + ")\n", + "preprocessor.fit(df)" + ] + }, + { + "cell_type": "code", + "execution_count": 15, + "id": "a9c9b110", + "metadata": { + "colab": { + "base_uri": "https://localhost:8080/" + }, + "execution": { + "iopub.execute_input": "2024-07-23T13:50:21.095600Z", + "iopub.status.busy": "2024-07-23T13:50:21.094711Z", + "iopub.status.idle": "2024-07-23T13:50:21.101817Z", + "shell.execute_reply": "2024-07-23T13:50:21.100895Z" + }, + "executionInfo": { + "elapsed": 13, + "status": "ok", + "timestamp": 1696841045411, + "user": { + "displayName": "Rizqi Nur", + "userId": "09644007964068789560" + }, + "user_tz": -420 + }, + "id": "OxUH_GBEv2qK", + "outputId": "76464c90-3baf-4bdc-a955-6f4fddc16b9c", + "papermill": { + "duration": 0.022958, + "end_time": "2024-07-23T13:50:21.103710", + "exception": false, + "start_time": "2024-07-23T13:50:21.080752", + "status": "completed" + }, + "tags": [] + }, + "outputs": [ + { + "data": { + "text/plain": [ + "{'tvae': 24,\n", + " 'realtabformer': (31, 89, Embedding(89, 864), True),\n", + " 'lct_gan': 14,\n", + " 'tab_ddpm_concat': 5}" + ] + }, + "execution_count": 15, + "metadata": {}, + "output_type": "execute_result" + } + ], + "source": [ + "preprocessor.adapter_sizes" + ] + }, + { + "cell_type": "code", + "execution_count": 16, + "id": "3cb9ed90", + "metadata": { + "execution": { + "iopub.execute_input": "2024-07-23T13:50:21.128008Z", + "iopub.status.busy": "2024-07-23T13:50:21.127732Z", + "iopub.status.idle": "2024-07-23T13:50:21.132575Z", + "shell.execute_reply": "2024-07-23T13:50:21.131677Z" + }, + "papermill": { + "duration": 0.019277, + "end_time": "2024-07-23T13:50:21.134613", + "exception": false, + "start_time": "2024-07-23T13:50:21.115336", + "status": "completed" + }, + "tags": [] + }, + "outputs": [], + "source": [ + "from ml_utility_loss.loss_learning.estimator.pipeline import load_dataset_3_factory\n", + "\n", + "datasetsn = load_dataset_3_factory(\n", + " dataset_dir=os.path.join(path_prefix, \"ml-utility-loss/\"),\n", + " dataset_name=dataset_name,\n", + " preprocessor=preprocessor,\n", + " cache_dir=path_prefix,\n", + " #synth_dir=f\"synthetics2/{single_model}\",\n", + " synth_dir=\"synthetics\",\n", + " real_step=1,\n", + ")\n" + ] + }, + { + "cell_type": "code", + "execution_count": 17, + "id": "ad1eb833", + "metadata": { + "execution": { + "iopub.execute_input": "2024-07-23T13:50:21.159319Z", + "iopub.status.busy": "2024-07-23T13:50:21.158833Z", + "iopub.status.idle": "2024-07-23T13:50:24.298817Z", + "shell.execute_reply": "2024-07-23T13:50:24.297741Z" + }, + "papermill": { + "duration": 3.154577, + "end_time": "2024-07-23T13:50:24.300965", + "exception": false, + "start_time": "2024-07-23T13:50:21.146388", + "status": "completed" + }, + "tags": [] + }, + "outputs": [ + { + "name": "stdout", + "output_type": "stream", + "text": [ + "../../../../ml-utility-loss/ synthetics iris\n", + "Caching in ../../../../iris/_cache_aug_test/tab_ddpm_concat/all inf False\n", + "../../../../ml-utility-loss/aug_test/iris 0\n", + "Caching in ../../../../iris/_cache_bs_test/tab_ddpm_concat/all inf False\n", + "../../../../ml-utility-loss/bs_test/iris 0\n", + "Caching in ../../../../iris/_cache_synth_test/tab_ddpm_concat/all inf False\n" + ] + }, + { + "name": "stdout", + "output_type": "stream", + "text": [ + "../../../../ml-utility-loss/synthetics/iris 200\n", + "200\n" + ] + } + ], + "source": [ + "from ml_utility_loss.loss_learning.estimator.pipeline import load_dataset_4\n", + "\n", + "test_set = load_dataset_4(\n", + " dataset_dir=os.path.join(path_prefix, \"ml-utility-loss/\"),\n", + " dataset_name=dataset_name,\n", + " preprocessor=preprocessor,\n", + " model=single_model,\n", + " cache_dir=path_prefix,\n", + " #synth_dir=f\"synthetics2/{single_model}\",\n", + " synth_dir=\"synthetics\",\n", + ")" + ] + }, + { + "cell_type": "code", + "execution_count": 18, + "id": "14ff8b40", + "metadata": { + "execution": { + "iopub.execute_input": "2024-07-23T13:50:24.328442Z", + "iopub.status.busy": "2024-07-23T13:50:24.328111Z", + "iopub.status.idle": "2024-07-23T13:50:24.894085Z", + "shell.execute_reply": "2024-07-23T13:50:24.893139Z" + }, + "executionInfo": { + "elapsed": 588, + "status": "ok", + "timestamp": 1696841049215, + "user": { + "displayName": "Rizqi Nur", + "userId": "09644007964068789560" + }, + "user_tz": -420 + }, + "id": "NgahtU1q9uLO", + "papermill": { + "duration": 0.582372, + "end_time": "2024-07-23T13:50:24.896324", + "exception": false, + "start_time": "2024-07-23T13:50:24.313952", + "status": "completed" + }, + "tags": [] + }, + "outputs": [ + { + "data": { + "text/plain": [ + "{'bias_weight_decay': 0.05,\n", + " 'Body': 'twin_encoder',\n", + " 'loss_balancer_meta': True,\n", + " 'loss_balancer_log': False,\n", + " 'loss_balancer_lbtw': False,\n", + " 'pma_skip_small': False,\n", + " 'isab_skip_small': False,\n", + " 'layer_norm': False,\n", + " 'pma_layer_norm': False,\n", + " 'attn_residual': True,\n", + " 'tf_n_layers_dec': False,\n", + " 'tf_isab_rank': 0,\n", + " 'tf_layer_norm': False,\n", + " 'tf_pma_start': -1,\n", + " 'head_n_seeds': 0,\n", + " 'dropout': 0,\n", + " 'combine_mode': 'diff_left',\n", + " 'tf_isab_mode': 'separate',\n", + " 'grad_loss_fn': torch.Tensor>,\n", + " 'bias': True,\n", + " 'bias_final': True,\n", + " 'pma_ffn_mode': 'none',\n", + " 'gradient_penalty_mode': {'gradient_penalty': True,\n", + " 'forward_once': False,\n", + " 'calc_grad_m': False,\n", + " 'avg_non_role_model_m': False,\n", + " 'inverse_avg_non_role_model_m': False},\n", + " 'single_model': True,\n", + " 'tf_pma_low': 8,\n", + " 'patience': 10,\n", + " 'grad_clip': 0.7999999999999999,\n", + " 'bias_lr_mul': 1.0,\n", + " 'synth_data': 2,\n", + " 'inds_init_mode': 'fixnorm',\n", + " 'head_activation': ml_utility_loss.activations.LeakyHardsigmoid,\n", + " 'tf_activation': ml_utility_loss.activations.LeakyHardtanh,\n", + " 'loss_balancer_beta': 0.7,\n", + " 'loss_balancer_r': 0.96,\n", + " 'aug_train': 0,\n", + " 'bs_train': 0,\n", + " 'real_train': 5,\n", + " 'dataset_size': 256,\n", + " 'batch_size': 8,\n", + " 'epochs': 100,\n", + " 'lr_mul': 0.09999999999999999,\n", + " 'n_warmup_steps': 60,\n", + " 'Optim': functools.partial(, amsgrad=True),\n", + " 'g_loss_mul': 0.2,\n", + " 'd_model': 128,\n", + " 'attn_activation': torch.nn.modules.activation.LeakyReLU,\n", + " 'tf_d_inner': 4,\n", + " 'tf_n_layers_enc': 1,\n", + " 'tf_n_head': 8,\n", + " 'tf_activation_final': ml_utility_loss.activations.LeakyHardtanh,\n", + " 'ada_d_hid': 256,\n", + " 'ada_n_layers': 2,\n", + " 'ada_activation': torch.nn.modules.activation.SELU,\n", + " 'ada_activation_final': ml_utility_loss.activations.LeakyHardtanh,\n", + " 'head_d_hid': 128,\n", + " 'head_n_layers': 7,\n", + " 'head_n_head': 16,\n", + " 'head_activation_final': torch.nn.modules.activation.Sigmoid,\n", + " 'models': ['tab_ddpm_concat'],\n", + " 'fixed_role_model': 'tab_ddpm_concat',\n", + " 'max_seconds': 3600,\n", + " 'tf_lora': False,\n", + " 'tf_num_inds': 4,\n", + " 'ada_n_seeds': 0,\n", + " 'gradient_penalty_kwargs': {'mag_loss': True,\n", + " 'mse_mag': True,\n", + " 'mag_corr': False,\n", + " 'seq_mag': False,\n", + " 'cos_loss': False,\n", + " 'mag_corr_kwargs': {'only_sign': False},\n", + " 'cos_loss_kwargs': {'only_sign': True, 'cos_matrix': False},\n", + " 'mse_mag_kwargs': {'target': 0.5, 'multiply': True, 'forgive_over': True}}}" + ] + }, + "execution_count": 18, + "metadata": {}, + "output_type": "execute_result" + } + ], + "source": [ + "import ml_utility_loss.loss_learning.estimator.params2 as PARAMS\n", + "from ml_utility_loss.tuning import map_parameters\n", + "from ml_utility_loss.loss_learning.estimator.params.default import update_param_space, update_param_space_2\n", + "import wandb\n", + "\n", + "#\"\"\"\n", + "param_space = {\n", + " **getattr(PARAMS, dataset_name).PARAM_SPACE,\n", + "}\n", + "# params = {\n", + "# **getattr(PARAMS, dataset_name).BESTS[param_index],\n", + "# }\n", + "params = getattr(PARAMS, dataset_name).BEST_DICT[gp][gp_multiply][single_model]\n", + "if isinstance(params, (list, tuple)):\n", + " params = params[param_index]\n", + "params = {\n", + " **getattr(PARAMS, dataset_name).DEFAULTS,\n", + " **params,\n", + "}\n", + "if gp:\n", + " params[\"gradient_penalty_mode\"] = \"ALL\"\n", + " params[\"mse_mag\"] = True\n", + " if gp_multiply:\n", + " params[\"mse_mag_multiply\"] = True\n", + " #params[\"mse_mag_target\"] = 1.0\n", + " else:\n", + " params[\"mse_mag_multiply\"] = False\n", + " #params[\"mse_mag_target\"] = 0.1\n", + "else:\n", + " params[\"gradient_penalty_mode\"] = \"NONE\"\n", + " params[\"mse_mag\"] = False\n", + "params[\"single_model\"] = False\n", + "if models:\n", + " params[\"models\"] = models\n", + "if single_model:\n", + " params[\"fixed_role_model\"] = single_model\n", + " params[\"single_model\"] = True\n", + " params[\"models\"] = [single_model]\n", + "# if params[\"fixed_role_model\"] == \"realtabformer\" and dataset_name == \"treatment\":\n", + "# params[\"batch_size\"] = 2\n", + "params[\"max_seconds\"] = 3600\n", + "params[\"patience\"] = 10\n", + "params[\"epochs\"] = 100\n", + "if debug:\n", + " params[\"epochs\"] = 2\n", + "with open(\"params.json\", \"w\") as f:\n", + " json.dump(params, f)\n", + "params = map_parameters(params, param_space=param_space)\n", + "params" + ] + }, + { + "cell_type": "code", + "execution_count": 19, + "id": "a48bd9e9", + "metadata": { + "execution": { + "iopub.execute_input": "2024-07-23T13:50:24.924039Z", + "iopub.status.busy": "2024-07-23T13:50:24.923709Z", + "iopub.status.idle": "2024-07-23T13:50:40.568816Z", + "shell.execute_reply": "2024-07-23T13:50:40.567824Z" + }, + "papermill": { + "duration": 15.661589, + "end_time": "2024-07-23T13:50:40.571035", + "exception": false, + "start_time": "2024-07-23T13:50:24.909446", + "status": "completed" + }, + "tags": [] + }, + "outputs": [ + { + "name": "stdout", + "output_type": "stream", + "text": [ + "../../../../ml-utility-loss/ synthetics iris\n", + "Caching in ../../../../iris/_cache_aug_train/tab_ddpm_concat/all inf False\n", + "split df ratio is 0\n", + "../../../../ml-utility-loss/aug_train/iris [0, 0]\n", + "Caching in ../../../../iris/_cache_aug_val/tab_ddpm_concat/all inf False\n", + "split df ratio is 1\n", + "../../../../ml-utility-loss/aug_val/iris [0, 0]\n", + "Caching in ../../../../iris/_cache_bs_train/tab_ddpm_concat/all inf False\n", + "split df ratio is 0\n", + "../../../../ml-utility-loss/bs_train/iris [0, 0]\n", + "Caching in ../../../../iris/_cache_bs_val/tab_ddpm_concat/all inf False\n", + "split df ratio is 1\n", + "../../../../ml-utility-loss/bs_val/iris [0, 0]\n", + "Caching in ../../../../iris/_cache_synth/tab_ddpm_concat/all inf False\n" + ] + }, + { + "name": "stderr", + "output_type": "stream", + "text": [ + "/opt/conda/lib/python3.10/site-packages/ml_utility_loss/loss_learning/estimator/data.py:174: FutureWarning: The default dtype for empty Series will be 'object' instead of 'float64' in a future version. Specify a dtype explicitly to silence this warning.\n", + " index = pd.Series(self.index)\n", + "/opt/conda/lib/python3.10/site-packages/ml_utility_loss/loss_learning/estimator/data.py:174: FutureWarning: The default dtype for empty Series will be 'object' instead of 'float64' in a future version. Specify a dtype explicitly to silence this warning.\n", + " index = pd.Series(self.index)\n", + "/opt/conda/lib/python3.10/site-packages/ml_utility_loss/loss_learning/estimator/data.py:174: FutureWarning: The default dtype for empty Series will be 'object' instead of 'float64' in a future version. Specify a dtype explicitly to silence this warning.\n", + " index = pd.Series(self.index)\n", + "/opt/conda/lib/python3.10/site-packages/ml_utility_loss/loss_learning/estimator/data.py:174: FutureWarning: The default dtype for empty Series will be 'object' instead of 'float64' in a future version. Specify a dtype explicitly to silence this warning.\n", + " index = pd.Series(self.index)\n" + ] + }, + { + "name": "stdout", + "output_type": "stream", + "text": [ + "Splitting without random!\n", + "Split with reverse index!\n", + "../../../../ml-utility-loss/synthetics/iris [800, 200]\n", + "Caching in ../../../../iris/_cache_real/tab_ddpm_concat/all inf False\n", + "split df ratio is 0\n", + "../../../../ml-utility-loss/synthetics/iris [5, 0]\n", + "[805, 200]\n", + "[805, 200]\n" + ] + } + ], + "source": [ + "train_set, val_set = datasetsn(model=params[\"fixed_role_model\"], synth_data=params[\"synth_data\"])" + ] + }, + { + "cell_type": "code", + "execution_count": 20, + "id": "2fcb1418", + "metadata": { + "colab": { + "base_uri": "https://localhost:8080/", + "height": 1000 + }, + "execution": { + "iopub.execute_input": "2024-07-23T13:50:40.599479Z", + "iopub.status.busy": "2024-07-23T13:50:40.599155Z", + "iopub.status.idle": "2024-07-23T13:50:40.887782Z", + "shell.execute_reply": "2024-07-23T13:50:40.886898Z" + }, + "executionInfo": { + "elapsed": 396850, + "status": "error", + "timestamp": 1696841446059, + "user": { + "displayName": "Rizqi Nur", + "userId": "09644007964068789560" + }, + "user_tz": -420 + }, + "id": "_bt1MQc5kpSk", + "outputId": "01c1d3e5-ac64-461d-835a-b76f4a66e6d6", + "papermill": { + "duration": 0.305091, + "end_time": "2024-07-23T13:50:40.889679", + "exception": false, + "start_time": "2024-07-23T13:50:40.584588", + "status": "completed" + }, + "tags": [] + }, + "outputs": [ + { + "name": "stdout", + "output_type": "stream", + "text": [ + "Creating model of type \n" + ] + }, + { + "name": "stdout", + "output_type": "stream", + "text": [ + "[*] Embedding False True\n", + "['tab_ddpm_concat'] 1\n" + ] + } + ], + "source": [ + "from ml_utility_loss.loss_learning.estimator.model.pipeline import remove_non_model_params\n", + "from ml_utility_loss.loss_learning.estimator.pipeline import create_model\n", + "from ml_utility_loss.util import filter_dict, clear_memory\n", + "\n", + "clear_memory()\n", + "\n", + "params2 = remove_non_model_params(params)\n", + "adapters = filter_dict(preprocessor.adapter_sizes, params[\"models\"])\n", + "\n", + "model = create_model(\n", + " adapters=adapters,\n", + " #Body=\"twin_encoder\",\n", + " **params2,\n", + ")\n", + "#cf.apply_weight_standardization(model, n_last_layers_ignore=0)\n", + "print(model.models, len(model.adapters))" + ] + }, + { + "cell_type": "code", + "execution_count": 21, + "id": "938f94fc", + "metadata": { + "execution": { + "iopub.execute_input": "2024-07-23T13:50:40.919276Z", + "iopub.status.busy": "2024-07-23T13:50:40.918958Z", + "iopub.status.idle": "2024-07-23T13:50:40.923098Z", + "shell.execute_reply": "2024-07-23T13:50:40.922198Z" + }, + "papermill": { + "duration": 0.0219, + "end_time": "2024-07-23T13:50:40.925125", + "exception": false, + "start_time": "2024-07-23T13:50:40.903225", + "status": "completed" + }, + "tags": [] + }, + "outputs": [], + "source": [ + "study_name=f\"{model_name}_{dataset_name}\"" + ] + }, + { + "cell_type": "code", + "execution_count": 22, + "id": "12fb613e", + "metadata": { + "execution": { + "iopub.execute_input": "2024-07-23T13:50:40.951261Z", + "iopub.status.busy": "2024-07-23T13:50:40.950969Z", + "iopub.status.idle": "2024-07-23T13:50:40.957521Z", + "shell.execute_reply": "2024-07-23T13:50:40.956633Z" + }, + "papermill": { + "duration": 0.021931, + "end_time": "2024-07-23T13:50:40.959501", + "exception": false, + "start_time": "2024-07-23T13:50:40.937570", + "status": "completed" + }, + "tags": [] + }, + "outputs": [ + { + "data": { + "text/plain": [ + "448005" + ] + }, + "execution_count": 22, + "metadata": {}, + "output_type": "execute_result" + } + ], + "source": [ + "def count_parameters(model):\n", + " return sum(p.numel() for p in model.parameters() if p.requires_grad)\n", + "\n", + "count_parameters(model)" + ] + }, + { + "cell_type": "code", + "execution_count": 23, + "id": "bd386e57", + "metadata": { + "execution": { + "iopub.execute_input": "2024-07-23T13:50:40.985580Z", + "iopub.status.busy": "2024-07-23T13:50:40.985305Z", + "iopub.status.idle": "2024-07-23T13:50:41.024810Z", + "shell.execute_reply": "2024-07-23T13:50:41.023979Z" + }, + "papermill": { + "duration": 0.054791, + "end_time": "2024-07-23T13:50:41.026750", + "exception": false, + "start_time": "2024-07-23T13:50:40.971959", + "status": "completed" + }, + "tags": [] + }, + "outputs": [ + { + "data": { + "text/plain": [ + "========================================================================================================================\n", + "Layer (type:depth-idx) Output Shape Param #\n", + "========================================================================================================================\n", + "MLUtilitySingle [2, 120, 5] --\n", + "├─Adapter: 1-1 [2, 120, 5] --\n", + "│ └─Sequential: 2-1 [2, 120, 128] --\n", + "│ │ └─FeedForward: 3-1 [2, 120, 256] --\n", + "│ │ │ └─Linear: 4-1 [2, 120, 256] 1,536\n", + "│ │ │ └─SELU: 4-2 [2, 120, 256] --\n", + "│ │ └─FeedForward: 3-2 [2, 120, 128] --\n", + "│ │ │ └─Linear: 4-3 [2, 120, 128] 32,896\n", + "│ │ │ └─LeakyHardtanh: 4-4 [2, 120, 128] --\n", + "├─Adapter: 1-2 [2, 30, 5] (recursive)\n", + "│ └─Sequential: 2-2 [2, 30, 128] (recursive)\n", + "│ │ └─FeedForward: 3-3 [2, 30, 256] (recursive)\n", + "│ │ │ └─Linear: 4-5 [2, 30, 256] (recursive)\n", + "│ │ │ └─SELU: 4-6 [2, 30, 256] --\n", + "│ │ └─FeedForward: 3-4 [2, 30, 128] (recursive)\n", + "│ │ │ └─Linear: 4-7 [2, 30, 128] (recursive)\n", + "│ │ │ └─LeakyHardtanh: 4-8 [2, 30, 128] --\n", + "├─TwinEncoder: 1-3 [2, 1024] --\n", + "│ └─Encoder: 2-3 [2, 8, 128] --\n", + "│ │ └─ModuleList: 3-6 -- (recursive)\n", + "│ │ │ └─EncoderLayer: 4-9 [2, 8, 128] --\n", + "│ │ │ │ └─SimpleInducedSetAttention: 5-1 [2, 120, 128] --\n", + "│ │ │ │ │ └─TensorInductionPoint: 6-1 [2, 4, 128] 512\n", + "│ │ │ │ │ └─MultiHeadAttention: 6-2 [2, 4, 128] --\n", + "│ │ │ │ │ │ └─Linear: 7-1 [2, 4, 128] 16,384\n", + "│ │ │ │ │ │ └─Linear: 7-2 [2, 120, 128] 16,384\n", + "│ │ │ │ │ │ └─Linear: 7-3 [2, 120, 128] 16,384\n", + "│ │ │ │ │ │ └─ScaledDotProductAttention: 7-4 [2, 8, 4, 16] --\n", + "│ │ │ │ │ │ │ └─Softmax: 8-1 [2, 8, 4, 120] --\n", + "│ │ │ │ │ │ └─Linear: 7-5 [2, 4, 128] 16,512\n", + "│ │ │ │ │ │ └─LeakyReLU: 7-6 [2, 4, 128] --\n", + "│ │ │ │ │ └─MultiHeadAttention: 6-3 [2, 120, 128] --\n", + "│ │ │ │ │ │ └─Linear: 7-7 [2, 120, 128] 16,384\n", + "│ │ │ │ │ │ └─Linear: 7-8 [2, 4, 128] 16,384\n", + "│ │ │ │ │ │ └─Linear: 7-9 [2, 4, 128] 16,384\n", + "│ │ │ │ │ │ └─ScaledDotProductAttention: 7-10 [2, 8, 120, 16] --\n", + "│ │ │ │ │ │ │ └─Softmax: 8-2 [2, 8, 120, 4] --\n", + "│ │ │ │ │ │ └─Linear: 7-11 [2, 120, 128] 16,512\n", + "│ │ │ │ │ │ └─LeakyReLU: 7-12 [2, 120, 128] --\n", + "│ │ │ │ └─DoubleFeedForward: 5-2 [2, 120, 128] --\n", + "│ │ │ │ │ └─Linear: 6-4 [2, 120, 4] 516\n", + "│ │ │ │ │ └─LeakyHardtanh: 6-5 [2, 120, 4] --\n", + "│ │ │ │ │ └─Linear: 6-6 [2, 120, 128] 640\n", + "│ │ │ │ └─PoolingByMultiheadAttention: 5-3 [2, 8, 128] --\n", + "│ │ │ │ │ └─TensorInductionPoint: 6-7 [2, 8, 128] 1,024\n", + "│ │ │ │ │ └─SimpleMultiHeadAttention: 6-8 [2, 8, 128] --\n", + "│ │ │ │ │ │ └─Linear: 7-13 [2, 8, 128] 16,384\n", + "│ │ │ │ │ │ └─Linear: 7-14 [2, 120, 128] 16,384\n", + "│ │ │ │ │ │ └─Linear: 7-15 [2, 120, 128] 16,384\n", + "│ │ │ │ │ │ └─ScaledDotProductAttention: 7-16 [2, 8, 8, 16] --\n", + "│ │ │ │ │ │ │ └─Softmax: 8-3 [2, 8, 8, 120] --\n", + "│ │ │ │ │ │ └─Linear: 7-17 [2, 8, 128] 16,512\n", + "│ │ │ │ │ │ └─LeakyReLU: 7-18 [2, 8, 128] --\n", + "│ └─Encoder: 2-4 [2, 8, 128] (recursive)\n", + "│ │ └─ModuleList: 3-6 -- (recursive)\n", + "│ │ │ └─EncoderLayer: 4-10 [2, 8, 128] (recursive)\n", + "│ │ │ │ └─SimpleInducedSetAttention: 5-4 [2, 30, 128] (recursive)\n", + "│ │ │ │ │ └─TensorInductionPoint: 6-9 [2, 4, 128] (recursive)\n", + "│ │ │ │ │ └─MultiHeadAttention: 6-10 [2, 4, 128] (recursive)\n", + "│ │ │ │ │ │ └─Linear: 7-19 [2, 4, 128] (recursive)\n", + "│ │ │ │ │ │ └─Linear: 7-20 [2, 30, 128] (recursive)\n", + "│ │ │ │ │ │ └─Linear: 7-21 [2, 30, 128] (recursive)\n", + "│ │ │ │ │ │ └─ScaledDotProductAttention: 7-22 [2, 8, 4, 16] --\n", + "│ │ │ │ │ │ │ └─Softmax: 8-4 [2, 8, 4, 30] --\n", + "│ │ │ │ │ │ └─Linear: 7-23 [2, 4, 128] (recursive)\n", + "│ │ │ │ │ │ └─LeakyReLU: 7-24 [2, 4, 128] --\n", + "│ │ │ │ │ └─MultiHeadAttention: 6-11 [2, 30, 128] (recursive)\n", + "│ │ │ │ │ │ └─Linear: 7-25 [2, 30, 128] (recursive)\n", + "│ │ │ │ │ │ └─Linear: 7-26 [2, 4, 128] (recursive)\n", + "│ │ │ │ │ │ └─Linear: 7-27 [2, 4, 128] (recursive)\n", + "│ │ │ │ │ │ └─ScaledDotProductAttention: 7-28 [2, 8, 30, 16] --\n", + "│ │ │ │ │ │ │ └─Softmax: 8-5 [2, 8, 30, 4] --\n", + "│ │ │ │ │ │ └─Linear: 7-29 [2, 30, 128] (recursive)\n", + "│ │ │ │ │ │ └─LeakyReLU: 7-30 [2, 30, 128] --\n", + "│ │ │ │ └─DoubleFeedForward: 5-5 [2, 30, 128] (recursive)\n", + "│ │ │ │ │ └─Linear: 6-12 [2, 30, 4] (recursive)\n", + "│ │ │ │ │ └─LeakyHardtanh: 6-13 [2, 30, 4] --\n", + "│ │ │ │ │ └─Linear: 6-14 [2, 30, 128] (recursive)\n", + "│ │ │ │ └─PoolingByMultiheadAttention: 5-6 [2, 8, 128] (recursive)\n", + "│ │ │ │ │ └─TensorInductionPoint: 6-15 [2, 8, 128] (recursive)\n", + "│ │ │ │ │ └─SimpleMultiHeadAttention: 6-16 [2, 8, 128] (recursive)\n", + "│ │ │ │ │ │ └─Linear: 7-31 [2, 8, 128] (recursive)\n", + "│ │ │ │ │ │ └─Linear: 7-32 [2, 30, 128] (recursive)\n", + "│ │ │ │ │ │ └─Linear: 7-33 [2, 30, 128] (recursive)\n", + "│ │ │ │ │ │ └─ScaledDotProductAttention: 7-34 [2, 8, 8, 16] --\n", + "│ │ │ │ │ │ │ └─Softmax: 8-6 [2, 8, 8, 30] --\n", + "│ │ │ │ │ │ └─Linear: 7-35 [2, 8, 128] (recursive)\n", + "│ │ │ │ │ │ └─LeakyReLU: 7-36 [2, 8, 128] --\n", + "├─Head: 1-4 [2] --\n", + "│ └─Sequential: 2-5 [2, 1] --\n", + "│ │ └─FeedForward: 3-7 [2, 128] --\n", + "│ │ │ └─Linear: 4-11 [2, 128] 131,200\n", + "│ │ │ └─LeakyHardsigmoid: 4-12 [2, 128] --\n", + "│ │ └─FeedForward: 3-8 [2, 128] --\n", + "│ │ │ └─Linear: 4-13 [2, 128] 16,512\n", + "│ │ │ └─LeakyHardsigmoid: 4-14 [2, 128] --\n", + "│ │ └─FeedForward: 3-9 [2, 128] --\n", + "│ │ │ └─Linear: 4-15 [2, 128] 16,512\n", + "│ │ │ └─LeakyHardsigmoid: 4-16 [2, 128] --\n", + "│ │ └─FeedForward: 3-10 [2, 128] --\n", + "│ │ │ └─Linear: 4-17 [2, 128] 16,512\n", + "│ │ │ └─LeakyHardsigmoid: 4-18 [2, 128] --\n", + "│ │ └─FeedForward: 3-11 [2, 128] --\n", + "│ │ │ └─Linear: 4-19 [2, 128] 16,512\n", + "│ │ │ └─LeakyHardsigmoid: 4-20 [2, 128] --\n", + "│ │ └─FeedForward: 3-12 [2, 128] --\n", + "│ │ │ └─Linear: 4-21 [2, 128] 16,512\n", + "│ │ │ └─LeakyHardsigmoid: 4-22 [2, 128] --\n", + "│ │ └─FeedForward: 3-13 [2, 1] --\n", + "│ │ │ └─Linear: 4-23 [2, 1] 129\n", + "│ │ │ └─Sigmoid: 4-24 [2, 1] --\n", + "========================================================================================================================\n", + "Total params: 448,005\n", + "Trainable params: 448,005\n", + "Non-trainable params: 0\n", + "Total mult-adds (M): 1.36\n", + "========================================================================================================================\n", + "Input size (MB): 0.01\n", + "Forward/backward pass size (MB): 3.27\n", + "Params size (MB): 1.79\n", + "Estimated Total Size (MB): 5.07\n", + "========================================================================================================================" + ] + }, + "execution_count": 23, + "metadata": {}, + "output_type": "execute_result" + } + ], + "source": [ + "from torchinfo import summary\n", + "\n", + "role_model = params[\"fixed_role_model\"]\n", + "s = train_set[0][role_model]\n", + "summary(model[role_model], input_size=((2, *s[0].shape), (2, *s[1].shape)), depth=9) # 8 max" + ] + }, + { + "cell_type": "code", + "execution_count": 24, + "id": "0f42c4d1", + "metadata": { + "execution": { + "iopub.execute_input": "2024-07-23T13:50:41.055262Z", + "iopub.status.busy": "2024-07-23T13:50:41.054986Z", + "iopub.status.idle": "2024-07-23T14:51:50.483582Z", + "shell.execute_reply": "2024-07-23T14:51:50.482650Z" + }, + "papermill": { + "duration": 3669.445107, + "end_time": "2024-07-23T14:51:50.485596", + "exception": false, + "start_time": "2024-07-23T13:50:41.040489", + "status": "completed" + }, + "tags": [] + }, + "outputs": [ + { + "name": "stdout", + "output_type": "stream", + "text": [ + "3 datasets [805, 200, 200]\n", + "Creating model of type \n", + "[*] Embedding False True\n", + "g_loss_mul 0.2\n", + "Epoch 0\n" + ] + }, + { + "name": "stdout", + "output_type": "stream", + "text": [ + "Train loss {'avg_role_model_loss': 0.02768451595702064, 'avg_role_model_std_loss': 9.358213113096127, 'avg_role_model_mean_pred_loss': 0.0006260929628547971, 'avg_role_model_g_mag_loss': 0.007203349115049339, 'avg_role_model_g_cos_loss': 0.0, 'avg_non_role_model_g_mag_loss': 0.0, 'avg_non_role_model_g_cos_loss': 0.0, 'avg_non_role_model_embed_loss': 0.0, 'avg_loss': 0.032347017407463576, 'n_size': 805, 'n_batch': 101, 'duration': 81.60291051864624, 'duration_batch': 0.8079496090955073, 'duration_size': 0.10137007517844253, 'avg_pred_std': 0.14544998988564503}\n" + ] + }, + { + "name": "stdout", + "output_type": "stream", + "text": [ + "Val loss {'avg_role_model_loss': 0.014216607138514518, 'avg_role_model_std_loss': 0.9667907703481614, 'avg_role_model_mean_pred_loss': 0.00028408130900075434, 'avg_role_model_g_mag_loss': 0.0, 'avg_role_model_g_cos_loss': 0.0, 'avg_non_role_model_g_mag_loss': 0.0, 'avg_non_role_model_g_cos_loss': 0.0, 'avg_non_role_model_embed_loss': 0.0, 'avg_loss': 0.014216607138514518, 'n_size': 200, 'n_batch': 25, 'duration': 20.48702335357666, 'duration_batch': 0.8194809341430664, 'duration_size': 0.1024351167678833, 'avg_pred_std': 0.19659922868013383}\n", + "Epoch 1\n" + ] + }, + { + "name": "stdout", + "output_type": "stream", + "text": [ + "Train loss {'avg_role_model_loss': 0.012788288924056366, 'avg_role_model_std_loss': 1.9426611673799772, 'avg_role_model_mean_pred_loss': 0.00018292845285342564, 'avg_role_model_g_mag_loss': 0.0008112499773826288, 'avg_role_model_g_cos_loss': 0.0, 'avg_non_role_model_g_mag_loss': 0.0, 'avg_non_role_model_g_cos_loss': 0.0, 'avg_non_role_model_embed_loss': 0.0, 'avg_loss': 0.02265268392479105, 'n_size': 805, 'n_batch': 101, 'duration': 91.28189396858215, 'duration_batch': 0.9037811284018035, 'duration_size': 0.11339365710382876, 'avg_pred_std': 0.19415301588907985}\n" + ] + }, + { + "name": "stdout", + "output_type": "stream", + "text": [ + "Val loss {'avg_role_model_loss': 0.0192581370100379, 'avg_role_model_std_loss': 0.15096837179178693, 'avg_role_model_mean_pred_loss': 0.00023672290268860862, 'avg_role_model_g_mag_loss': 0.0, 'avg_role_model_g_cos_loss': 0.0, 'avg_non_role_model_g_mag_loss': 0.0, 'avg_non_role_model_g_cos_loss': 0.0, 'avg_non_role_model_embed_loss': 0.0, 'avg_loss': 0.0192581370100379, 'n_size': 200, 'n_batch': 25, 'duration': 21.700913667678833, 'duration_batch': 0.8680365467071534, 'duration_size': 0.10850456833839417, 'avg_pred_std': 0.22857571125030518}\n", + "Epoch 2\n" + ] + }, + { + "name": "stdout", + "output_type": "stream", + "text": [ + "Train loss {'avg_role_model_loss': 0.012207050934457075, 'avg_role_model_std_loss': 1.03173016942678, 'avg_role_model_mean_pred_loss': 0.0002013292339930976, 'avg_role_model_g_mag_loss': 0.0002692920005423312, 'avg_role_model_g_cos_loss': 0.0, 'avg_non_role_model_g_mag_loss': 0.0, 'avg_non_role_model_g_cos_loss': 0.0, 'avg_non_role_model_embed_loss': 0.0, 'avg_loss': 0.05330562501254937, 'n_size': 805, 'n_batch': 101, 'duration': 91.07849550247192, 'duration_batch': 0.9017672822026923, 'duration_size': 0.11314098820182848, 'avg_pred_std': 0.20507578652278327}\n" + ] + }, + { + "name": "stdout", + "output_type": "stream", + "text": [ + "Val loss {'avg_role_model_loss': 0.007481199217727408, 'avg_role_model_std_loss': 0.2356108459085226, 'avg_role_model_mean_pred_loss': 0.0001188060213765496, 'avg_role_model_g_mag_loss': 0.0, 'avg_role_model_g_cos_loss': 0.0, 'avg_non_role_model_g_mag_loss': 0.0, 'avg_non_role_model_g_cos_loss': 0.0, 'avg_non_role_model_embed_loss': 0.0, 'avg_loss': 0.007481199217727408, 'n_size': 200, 'n_batch': 25, 'duration': 21.764752626419067, 'duration_batch': 0.8705901050567627, 'duration_size': 0.10882376313209534, 'avg_pred_std': 0.21393217921257018}\n", + "Epoch 3\n" + ] + }, + { + "name": "stdout", + "output_type": "stream", + "text": [ + "Train loss {'avg_role_model_loss': 0.008088306364782664, 'avg_role_model_std_loss': 0.43745157831131787, 'avg_role_model_mean_pred_loss': 8.41250307961913e-05, 'avg_role_model_g_mag_loss': 0.0, 'avg_role_model_g_cos_loss': 0.0, 'avg_non_role_model_g_mag_loss': 0.0, 'avg_non_role_model_g_cos_loss': 0.0, 'avg_non_role_model_embed_loss': 0.0, 'avg_loss': 0.008088306364782664, 'n_size': 805, 'n_batch': 101, 'duration': 91.8075864315033, 'duration_batch': 0.9089860042723099, 'duration_size': 0.11404669121925876, 'avg_pred_std': 0.21690632605759225}\n" + ] + }, + { + "name": "stdout", + "output_type": "stream", + "text": [ + "Val loss {'avg_role_model_loss': 0.007133655361831188, 'avg_role_model_std_loss': 0.27229892956115803, 'avg_role_model_mean_pred_loss': 5.3230496471314835e-05, 'avg_role_model_g_mag_loss': 0.0, 'avg_role_model_g_cos_loss': 0.0, 'avg_non_role_model_g_mag_loss': 0.0, 'avg_non_role_model_g_cos_loss': 0.0, 'avg_non_role_model_embed_loss': 0.0, 'avg_loss': 0.007133655361831188, 'n_size': 200, 'n_batch': 25, 'duration': 21.819910526275635, 'duration_batch': 0.8727964210510254, 'duration_size': 0.10909955263137817, 'avg_pred_std': 0.2123298615217209}\n", + "Epoch 4\n" + ] + }, + { + "name": "stdout", + "output_type": "stream", + "text": [ + "Train loss {'avg_role_model_loss': 0.0072082148026096525, 'avg_role_model_std_loss': 0.4391179985901671, 'avg_role_model_mean_pred_loss': 0.00010888709911312063, 'avg_role_model_g_mag_loss': 3.558772172119399e-06, 'avg_role_model_g_cos_loss': 0.0, 'avg_non_role_model_g_mag_loss': 0.0, 'avg_non_role_model_g_cos_loss': 0.0, 'avg_non_role_model_embed_loss': 0.0, 'avg_loss': 0.03611351358328269, 'n_size': 805, 'n_batch': 101, 'duration': 91.56741237640381, 'duration_batch': 0.9066080433307308, 'duration_size': 0.11374833835578113, 'avg_pred_std': 0.21769916104835155}\n" + ] + }, + { + "name": "stdout", + "output_type": "stream", + "text": [ + "Val loss {'avg_role_model_loss': 0.006240451545454562, 'avg_role_model_std_loss': 0.18012931236033183, 'avg_role_model_mean_pred_loss': 5.8749330378695677e-05, 'avg_role_model_g_mag_loss': 0.0, 'avg_role_model_g_cos_loss': 0.0, 'avg_non_role_model_g_mag_loss': 0.0, 'avg_non_role_model_g_cos_loss': 0.0, 'avg_non_role_model_embed_loss': 0.0, 'avg_loss': 0.006240451545454562, 'n_size': 200, 'n_batch': 25, 'duration': 22.07944345474243, 'duration_batch': 0.8831777381896972, 'duration_size': 0.11039721727371216, 'avg_pred_std': 0.22466177940368653}\n", + "Epoch 5\n" + ] + }, + { + "name": "stdout", + "output_type": "stream", + "text": [ + "Train loss {'avg_role_model_loss': 0.006868989640660295, 'avg_role_model_std_loss': 0.28342871665917624, 'avg_role_model_mean_pred_loss': 7.188901986063536e-05, 'avg_role_model_g_mag_loss': 3.424051755703754e-05, 'avg_role_model_g_cos_loss': 0.0, 'avg_non_role_model_g_mag_loss': 0.0, 'avg_non_role_model_g_cos_loss': 0.0, 'avg_non_role_model_embed_loss': 0.0, 'avg_loss': 0.010062051171065244, 'n_size': 805, 'n_batch': 101, 'duration': 91.42711353302002, 'duration_batch': 0.9052189458714853, 'duration_size': 0.11357405407828573, 'avg_pred_std': 0.21837207505313477}\n" + ] + }, + { + "name": "stdout", + "output_type": "stream", + "text": [ + "Val loss {'avg_role_model_loss': 0.006240606550127268, 'avg_role_model_std_loss': 0.2115128413914499, 'avg_role_model_mean_pred_loss': 4.711555360778163e-05, 'avg_role_model_g_mag_loss': 0.0, 'avg_role_model_g_cos_loss': 0.0, 'avg_non_role_model_g_mag_loss': 0.0, 'avg_non_role_model_g_cos_loss': 0.0, 'avg_non_role_model_embed_loss': 0.0, 'avg_loss': 0.006240606550127268, 'n_size': 200, 'n_batch': 25, 'duration': 21.850398540496826, 'duration_batch': 0.8740159416198731, 'duration_size': 0.10925199270248413, 'avg_pred_std': 0.22103530585765838}\n", + "Epoch 6\n" + ] + }, + { + "name": "stdout", + "output_type": "stream", + "text": [ + "Train loss {'avg_role_model_loss': 0.007357299320330346, 'avg_role_model_std_loss': 0.40163809852880705, 'avg_role_model_mean_pred_loss': 0.00011199208807044489, 'avg_role_model_g_mag_loss': 1.8166965857055615e-05, 'avg_role_model_g_cos_loss': 0.0, 'avg_non_role_model_g_mag_loss': 0.0, 'avg_non_role_model_g_cos_loss': 0.0, 'avg_non_role_model_embed_loss': 0.0, 'avg_loss': 0.029191811060567636, 'n_size': 805, 'n_batch': 101, 'duration': 90.57951498031616, 'duration_batch': 0.8968268809932294, 'duration_size': 0.11252113662151077, 'avg_pred_std': 0.21378468240768012}\n" + ] + }, + { + "name": "stdout", + "output_type": "stream", + "text": [ + "Val loss {'avg_role_model_loss': 0.006867902250960469, 'avg_role_model_std_loss': 0.15485449237061402, 'avg_role_model_mean_pred_loss': 8.573244572616545e-05, 'avg_role_model_g_mag_loss': 0.0, 'avg_role_model_g_cos_loss': 0.0, 'avg_non_role_model_g_mag_loss': 0.0, 'avg_non_role_model_g_cos_loss': 0.0, 'avg_non_role_model_embed_loss': 0.0, 'avg_loss': 0.006867902250960469, 'n_size': 200, 'n_batch': 25, 'duration': 21.79243564605713, 'duration_batch': 0.8716974258422852, 'duration_size': 0.10896217823028564, 'avg_pred_std': 0.23082700192928315}\n", + "Epoch 7\n" + ] + }, + { + "name": "stdout", + "output_type": "stream", + "text": [ + "Train loss {'avg_role_model_loss': 0.0070344660610469605, 'avg_role_model_std_loss': 0.3761535492684226, 'avg_role_model_mean_pred_loss': 9.970865502207738e-05, 'avg_role_model_g_mag_loss': 0.0, 'avg_role_model_g_cos_loss': 0.0, 'avg_non_role_model_g_mag_loss': 0.0, 'avg_non_role_model_g_cos_loss': 0.0, 'avg_non_role_model_embed_loss': 0.0, 'avg_loss': 0.0070344660610469605, 'n_size': 805, 'n_batch': 101, 'duration': 91.03021001815796, 'duration_batch': 0.9012892081005739, 'duration_size': 0.1130810062337366, 'avg_pred_std': 0.21632754800859655}\n" + ] + }, + { + "name": "stdout", + "output_type": "stream", + "text": [ + "Val loss {'avg_role_model_loss': 0.006249402621760964, 'avg_role_model_std_loss': 0.1063890473358333, 'avg_role_model_mean_pred_loss': 6.99766267416635e-05, 'avg_role_model_g_mag_loss': 0.0, 'avg_role_model_g_cos_loss': 0.0, 'avg_non_role_model_g_mag_loss': 0.0, 'avg_non_role_model_g_cos_loss': 0.0, 'avg_non_role_model_embed_loss': 0.0, 'avg_loss': 0.006249402621760964, 'n_size': 200, 'n_batch': 25, 'duration': 21.862650871276855, 'duration_batch': 0.8745060348510743, 'duration_size': 0.10931325435638428, 'avg_pred_std': 0.23488778948783876}\n", + "Epoch 8\n" + ] + }, + { + "name": "stdout", + "output_type": "stream", + "text": [ + "Train loss {'avg_role_model_loss': 0.006304821248241463, 'avg_role_model_std_loss': 0.44371367401016515, 'avg_role_model_mean_pred_loss': 7.45642591284015e-05, 'avg_role_model_g_mag_loss': 2.1402616493450188e-05, 'avg_role_model_g_cos_loss': 0.0, 'avg_non_role_model_g_mag_loss': 0.0, 'avg_non_role_model_g_cos_loss': 0.0, 'avg_non_role_model_embed_loss': 0.0, 'avg_loss': 0.009804922422128064, 'n_size': 805, 'n_batch': 101, 'duration': 91.37668824195862, 'duration_batch': 0.9047196855639467, 'duration_size': 0.11351141396516598, 'avg_pred_std': 0.2195355011205567}\n" + ] + }, + { + "name": "stdout", + "output_type": "stream", + "text": [ + "Val loss {'avg_role_model_loss': 0.005649843728169799, 'avg_role_model_std_loss': 0.1278961787582375, 'avg_role_model_mean_pred_loss': 5.713646878145795e-05, 'avg_role_model_g_mag_loss': 0.0, 'avg_role_model_g_cos_loss': 0.0, 'avg_non_role_model_g_mag_loss': 0.0, 'avg_non_role_model_g_cos_loss': 0.0, 'avg_non_role_model_embed_loss': 0.0, 'avg_loss': 0.005649843728169799, 'n_size': 200, 'n_batch': 25, 'duration': 21.11397886276245, 'duration_batch': 0.844559154510498, 'duration_size': 0.10556989431381225, 'avg_pred_std': 0.23113981187343596}\n", + "Epoch 9\n" + ] + }, + { + "name": "stdout", + "output_type": "stream", + "text": [ + "Train loss {'avg_role_model_loss': 0.006317903084379638, 'avg_role_model_std_loss': 0.24471715618363143, 'avg_role_model_mean_pred_loss': 8.345217247664753e-05, 'avg_role_model_g_mag_loss': 1.6097419010186047e-05, 'avg_role_model_g_cos_loss': 0.0, 'avg_non_role_model_g_mag_loss': 0.0, 'avg_non_role_model_g_cos_loss': 0.0, 'avg_non_role_model_embed_loss': 0.0, 'avg_loss': 0.00639822689602325, 'n_size': 805, 'n_batch': 101, 'duration': 89.65480852127075, 'duration_batch': 0.8876713714977302, 'duration_size': 0.11137243294567795, 'avg_pred_std': 0.21449829881439114}\n" + ] + }, + { + "name": "stdout", + "output_type": "stream", + "text": [ + "Val loss {'avg_role_model_loss': 0.00821263626217842, 'avg_role_model_std_loss': 0.32878700550150824, 'avg_role_model_mean_pred_loss': 6.504059621789793e-05, 'avg_role_model_g_mag_loss': 0.0, 'avg_role_model_g_cos_loss': 0.0, 'avg_non_role_model_g_mag_loss': 0.0, 'avg_non_role_model_g_cos_loss': 0.0, 'avg_non_role_model_embed_loss': 0.0, 'avg_loss': 0.00821263626217842, 'n_size': 200, 'n_batch': 25, 'duration': 21.27569341659546, 'duration_batch': 0.8510277366638184, 'duration_size': 0.1063784670829773, 'avg_pred_std': 0.20993319690227508}\n", + "Epoch 10\n" + ] + }, + { + "name": "stdout", + "output_type": "stream", + "text": [ + "Train loss {'avg_role_model_loss': 0.006396798543076707, 'avg_role_model_std_loss': 0.41127316822513044, 'avg_role_model_mean_pred_loss': 7.509765246554966e-05, 'avg_role_model_g_mag_loss': 2.1553592559713755e-05, 'avg_role_model_g_cos_loss': 0.0, 'avg_non_role_model_g_mag_loss': 0.0, 'avg_non_role_model_g_cos_loss': 0.0, 'avg_non_role_model_embed_loss': 0.0, 'avg_loss': 0.006753228950713362, 'n_size': 805, 'n_batch': 101, 'duration': 88.9093246459961, 'duration_batch': 0.8802903430296642, 'duration_size': 0.11044636601987093, 'avg_pred_std': 0.21412578793150364}\n" + ] + }, + { + "name": "stdout", + "output_type": "stream", + "text": [ + "Val loss {'avg_role_model_loss': 0.005823843185789883, 'avg_role_model_std_loss': 0.14180781402224965, 'avg_role_model_mean_pred_loss': 6.761518911137188e-05, 'avg_role_model_g_mag_loss': 0.0, 'avg_role_model_g_cos_loss': 0.0, 'avg_non_role_model_g_mag_loss': 0.0, 'avg_non_role_model_g_cos_loss': 0.0, 'avg_non_role_model_embed_loss': 0.0, 'avg_loss': 0.005823843185789883, 'n_size': 200, 'n_batch': 25, 'duration': 21.45542049407959, 'duration_batch': 0.8582168197631836, 'duration_size': 0.10727710247039796, 'avg_pred_std': 0.22983413100242614}\n", + "Epoch 11\n" + ] + }, + { + "name": "stdout", + "output_type": "stream", + "text": [ + "Train loss {'avg_role_model_loss': 0.0069507269486669245, 'avg_role_model_std_loss': 0.31742345890649115, 'avg_role_model_mean_pred_loss': 6.924937210063852e-05, 'avg_role_model_g_mag_loss': 0.0001588194729378505, 'avg_role_model_g_cos_loss': 0.0, 'avg_non_role_model_g_mag_loss': 0.0, 'avg_non_role_model_g_cos_loss': 0.0, 'avg_non_role_model_embed_loss': 0.0, 'avg_loss': 0.06565096500584196, 'n_size': 805, 'n_batch': 101, 'duration': 89.66476655006409, 'duration_batch': 0.8877699658422187, 'duration_size': 0.11138480316778147, 'avg_pred_std': 0.21586559805096966}\n" + ] + }, + { + "name": "stdout", + "output_type": "stream", + "text": [ + "Val loss {'avg_role_model_loss': 0.00570961891207844, 'avg_role_model_std_loss': 0.19548024699703093, 'avg_role_model_mean_pred_loss': 4.909529088308773e-05, 'avg_role_model_g_mag_loss': 0.0, 'avg_role_model_g_cos_loss': 0.0, 'avg_non_role_model_g_mag_loss': 0.0, 'avg_non_role_model_g_cos_loss': 0.0, 'avg_non_role_model_embed_loss': 0.0, 'avg_loss': 0.00570961891207844, 'n_size': 200, 'n_batch': 25, 'duration': 21.806634426116943, 'duration_batch': 0.8722653770446778, 'duration_size': 0.10903317213058472, 'avg_pred_std': 0.2195821535587311}\n", + "Epoch 12\n" + ] + }, + { + "name": "stdout", + "output_type": "stream", + "text": [ + "Train loss {'avg_role_model_loss': 0.006335544190514162, 'avg_role_model_std_loss': 0.4148375095810026, 'avg_role_model_mean_pred_loss': 9.179174083537262e-05, 'avg_role_model_g_mag_loss': 1.0347450788346876e-05, 'avg_role_model_g_cos_loss': 0.0, 'avg_non_role_model_g_mag_loss': 0.0, 'avg_non_role_model_g_cos_loss': 0.0, 'avg_non_role_model_embed_loss': 0.0, 'avg_loss': 0.009384353667127419, 'n_size': 805, 'n_batch': 101, 'duration': 89.68968391418457, 'duration_batch': 0.888016672417669, 'duration_size': 0.11141575641513611, 'avg_pred_std': 0.21473711529875747}\n" + ] + }, + { + "name": "stdout", + "output_type": "stream", + "text": [ + "Val loss {'avg_role_model_loss': 0.006132762115448713, 'avg_role_model_std_loss': 0.08343712894478812, 'avg_role_model_mean_pred_loss': 9.896848159498539e-05, 'avg_role_model_g_mag_loss': 0.0, 'avg_role_model_g_cos_loss': 0.0, 'avg_non_role_model_g_mag_loss': 0.0, 'avg_non_role_model_g_cos_loss': 0.0, 'avg_non_role_model_embed_loss': 0.0, 'avg_loss': 0.006132762115448713, 'n_size': 200, 'n_batch': 25, 'duration': 21.780441761016846, 'duration_batch': 0.8712176704406738, 'duration_size': 0.10890220880508422, 'avg_pred_std': 0.24145807087421417}\n", + "Epoch 13\n" + ] + }, + { + "name": "stdout", + "output_type": "stream", + "text": [ + "Train loss {'avg_role_model_loss': 0.006535357203166816, 'avg_role_model_std_loss': 0.28958624746233136, 'avg_role_model_mean_pred_loss': 7.427734736577406e-05, 'avg_role_model_g_mag_loss': 1.9930312352150865e-05, 'avg_role_model_g_cos_loss': 0.0, 'avg_non_role_model_g_mag_loss': 0.0, 'avg_non_role_model_g_cos_loss': 0.0, 'avg_non_role_model_embed_loss': 0.0, 'avg_loss': 0.013669711667089867, 'n_size': 805, 'n_batch': 101, 'duration': 91.33589291572571, 'duration_batch': 0.9043157714428288, 'duration_size': 0.11346073654127417, 'avg_pred_std': 0.2153837282653197}\n" + ] + }, + { + "name": "stdout", + "output_type": "stream", + "text": [ + "Val loss {'avg_role_model_loss': 0.0064414950693026185, 'avg_role_model_std_loss': 0.1068398380640474, 'avg_role_model_mean_pred_loss': 7.60509929255937e-05, 'avg_role_model_g_mag_loss': 0.0, 'avg_role_model_g_cos_loss': 0.0, 'avg_non_role_model_g_mag_loss': 0.0, 'avg_non_role_model_g_cos_loss': 0.0, 'avg_non_role_model_embed_loss': 0.0, 'avg_loss': 0.0064414950693026185, 'n_size': 200, 'n_batch': 25, 'duration': 22.317506551742554, 'duration_batch': 0.8927002620697021, 'duration_size': 0.11158753275871276, 'avg_pred_std': 0.23641093969345092}\n", + "Epoch 14\n" + ] + }, + { + "name": "stdout", + "output_type": "stream", + "text": [ + "Train loss {'avg_role_model_loss': 0.006502306725691009, 'avg_role_model_std_loss': 0.20075760639159818, 'avg_role_model_mean_pred_loss': 0.00010858184960735804, 'avg_role_model_g_mag_loss': 9.911029559114705e-05, 'avg_role_model_g_cos_loss': 0.0, 'avg_non_role_model_g_mag_loss': 0.0, 'avg_non_role_model_g_cos_loss': 0.0, 'avg_non_role_model_embed_loss': 0.0, 'avg_loss': 0.014118992097051062, 'n_size': 805, 'n_batch': 101, 'duration': 93.05297946929932, 'duration_batch': 0.9213166284089042, 'duration_size': 0.11559376331589977, 'avg_pred_std': 0.22296780513802378}\n" + ] + }, + { + "name": "stdout", + "output_type": "stream", + "text": [ + "Val loss {'avg_role_model_loss': 0.006120046712458134, 'avg_role_model_std_loss': 0.23848346265126794, 'avg_role_model_mean_pred_loss': 5.1449191288952534e-05, 'avg_role_model_g_mag_loss': 0.0, 'avg_role_model_g_cos_loss': 0.0, 'avg_non_role_model_g_mag_loss': 0.0, 'avg_non_role_model_g_cos_loss': 0.0, 'avg_non_role_model_embed_loss': 0.0, 'avg_loss': 0.006120046712458134, 'n_size': 200, 'n_batch': 25, 'duration': 22.377435207366943, 'duration_batch': 0.8950974082946778, 'duration_size': 0.11188717603683472, 'avg_pred_std': 0.21742919087409973}\n", + "Epoch 15\n" + ] + }, + { + "name": "stdout", + "output_type": "stream", + "text": [ + "Train loss {'avg_role_model_loss': 0.005750608693530656, 'avg_role_model_std_loss': 0.33303868707196216, 'avg_role_model_mean_pred_loss': 8.962634720881629e-05, 'avg_role_model_g_mag_loss': 0.0, 'avg_role_model_g_cos_loss': 0.0, 'avg_non_role_model_g_mag_loss': 0.0, 'avg_non_role_model_g_cos_loss': 0.0, 'avg_non_role_model_embed_loss': 0.0, 'avg_loss': 0.005750608693530656, 'n_size': 805, 'n_batch': 101, 'duration': 92.95799088478088, 'duration_batch': 0.9203761473740681, 'duration_size': 0.11547576507426197, 'avg_pred_std': 0.2198474559342802}\n" + ] + }, + { + "name": "stdout", + "output_type": "stream", + "text": [ + "Val loss {'avg_role_model_loss': 0.00547780548222363, 'avg_role_model_std_loss': 0.13732151518015598, 'avg_role_model_mean_pred_loss': 5.4017485289445945e-05, 'avg_role_model_g_mag_loss': 0.0, 'avg_role_model_g_cos_loss': 0.0, 'avg_non_role_model_g_mag_loss': 0.0, 'avg_non_role_model_g_cos_loss': 0.0, 'avg_non_role_model_embed_loss': 0.0, 'avg_loss': 0.00547780548222363, 'n_size': 200, 'n_batch': 25, 'duration': 22.27390432357788, 'duration_batch': 0.8909561729431152, 'duration_size': 0.1113695216178894, 'avg_pred_std': 0.2293907332420349}\n", + "Epoch 16\n" + ] + }, + { + "name": "stdout", + "output_type": "stream", + "text": [ + "Train loss {'avg_role_model_loss': 0.006005020252926425, 'avg_role_model_std_loss': 0.23018331214172288, 'avg_role_model_mean_pred_loss': 8.49492962727547e-05, 'avg_role_model_g_mag_loss': 6.234205084974352e-05, 'avg_role_model_g_cos_loss': 0.0, 'avg_non_role_model_g_mag_loss': 0.0, 'avg_non_role_model_g_cos_loss': 0.0, 'avg_non_role_model_embed_loss': 0.0, 'avg_loss': 0.013669535664187871, 'n_size': 805, 'n_batch': 101, 'duration': 93.09992170333862, 'duration_batch': 0.9217814030033527, 'duration_size': 0.1156520766501101, 'avg_pred_std': 0.21871939950650282}\n" + ] + }, + { + "name": "stdout", + "output_type": "stream", + "text": [ + "Val loss {'avg_role_model_loss': 0.008693840028718114, 'avg_role_model_std_loss': 0.7027616799855605, 'avg_role_model_mean_pred_loss': 1.9866766979461657e-05, 'avg_role_model_g_mag_loss': 0.0, 'avg_role_model_g_cos_loss': 0.0, 'avg_non_role_model_g_mag_loss': 0.0, 'avg_non_role_model_g_cos_loss': 0.0, 'avg_non_role_model_embed_loss': 0.0, 'avg_loss': 0.008693840028718114, 'n_size': 200, 'n_batch': 25, 'duration': 22.333920001983643, 'duration_batch': 0.8933568000793457, 'duration_size': 0.11166960000991821, 'avg_pred_std': 0.18863298654556274}\n", + "Epoch 17\n" + ] + }, + { + "name": "stdout", + "output_type": "stream", + "text": [ + "Train loss {'avg_role_model_loss': 0.006081980427362673, 'avg_role_model_std_loss': 0.2446992650615715, 'avg_role_model_mean_pred_loss': 0.00010017756599086168, 'avg_role_model_g_mag_loss': 5.1933910512591e-06, 'avg_role_model_g_cos_loss': 0.0, 'avg_non_role_model_g_mag_loss': 0.0, 'avg_non_role_model_g_cos_loss': 0.0, 'avg_non_role_model_embed_loss': 0.0, 'avg_loss': 0.010356320479959944, 'n_size': 805, 'n_batch': 101, 'duration': 92.73267722129822, 'duration_batch': 0.9181453190227546, 'duration_size': 0.11519587232459406, 'avg_pred_std': 0.22129526483540488}\n" + ] + }, + { + "name": "stdout", + "output_type": "stream", + "text": [ + "Val loss {'avg_role_model_loss': 0.005397165697067976, 'avg_role_model_std_loss': 0.17403937994693477, 'avg_role_model_mean_pred_loss': 5.448993424373327e-05, 'avg_role_model_g_mag_loss': 0.0, 'avg_role_model_g_cos_loss': 0.0, 'avg_non_role_model_g_mag_loss': 0.0, 'avg_non_role_model_g_cos_loss': 0.0, 'avg_non_role_model_embed_loss': 0.0, 'avg_loss': 0.005397165697067976, 'n_size': 200, 'n_batch': 25, 'duration': 21.33505344390869, 'duration_batch': 0.8534021377563477, 'duration_size': 0.10667526721954346, 'avg_pred_std': 0.22487431406974792}\n", + "Epoch 18\n" + ] + }, + { + "name": "stdout", + "output_type": "stream", + "text": [ + "Train loss {'avg_role_model_loss': 0.005533240378331046, 'avg_role_model_std_loss': 0.3570544389624479, 'avg_role_model_mean_pred_loss': 6.431949337190052e-05, 'avg_role_model_g_mag_loss': 1.1352819870717777e-05, 'avg_role_model_g_cos_loss': 0.0, 'avg_non_role_model_g_mag_loss': 0.0, 'avg_non_role_model_g_cos_loss': 0.0, 'avg_non_role_model_embed_loss': 0.0, 'avg_loss': 0.005796129713760492, 'n_size': 805, 'n_batch': 101, 'duration': 89.8192925453186, 'duration_batch': 0.8892999261912733, 'duration_size': 0.11157676092586162, 'avg_pred_std': 0.21356249753717738}\n" + ] + }, + { + "name": "stdout", + "output_type": "stream", + "text": [ + "Val loss {'avg_role_model_loss': 0.007514530089683831, 'avg_role_model_std_loss': 0.07911720391795825, 'avg_role_model_mean_pred_loss': 0.00012563675734939217, 'avg_role_model_g_mag_loss': 0.0, 'avg_role_model_g_cos_loss': 0.0, 'avg_non_role_model_g_mag_loss': 0.0, 'avg_non_role_model_g_cos_loss': 0.0, 'avg_non_role_model_embed_loss': 0.0, 'avg_loss': 0.007514530089683831, 'n_size': 200, 'n_batch': 25, 'duration': 21.740798234939575, 'duration_batch': 0.869631929397583, 'duration_size': 0.10870399117469788, 'avg_pred_std': 0.24350051760673522}\n", + "Epoch 19\n" + ] + }, + { + "name": "stdout", + "output_type": "stream", + "text": [ + "Train loss {'avg_role_model_loss': 0.006791888846096045, 'avg_role_model_std_loss': 0.22819204692926195, 'avg_role_model_mean_pred_loss': 9.195982071473991e-05, 'avg_role_model_g_mag_loss': 0.00026959271823860106, 'avg_role_model_g_cos_loss': 0.0, 'avg_non_role_model_g_mag_loss': 0.0, 'avg_non_role_model_g_cos_loss': 0.0, 'avg_non_role_model_embed_loss': 0.0, 'avg_loss': 0.012555749263174786, 'n_size': 805, 'n_batch': 101, 'duration': 90.93472671508789, 'duration_batch': 0.9003438288622564, 'duration_size': 0.11296239343489178, 'avg_pred_std': 0.21752739039314264}\n" + ] + }, + { + "name": "stdout", + "output_type": "stream", + "text": [ + "Val loss {'avg_role_model_loss': 0.008620325196534395, 'avg_role_model_std_loss': 0.45271152415312826, 'avg_role_model_mean_pred_loss': 3.763549942704003e-05, 'avg_role_model_g_mag_loss': 0.0, 'avg_role_model_g_cos_loss': 0.0, 'avg_non_role_model_g_mag_loss': 0.0, 'avg_non_role_model_g_cos_loss': 0.0, 'avg_non_role_model_embed_loss': 0.0, 'avg_loss': 0.008620325196534395, 'n_size': 200, 'n_batch': 25, 'duration': 21.877052783966064, 'duration_batch': 0.8750821113586426, 'duration_size': 0.10938526391983032, 'avg_pred_std': 0.2019707268476486}\n", + "Epoch 20\n" + ] + }, + { + "name": "stdout", + "output_type": "stream", + "text": [ + "Train loss {'avg_role_model_loss': 0.006227198813503944, 'avg_role_model_std_loss': 0.3063655586036925, 'avg_role_model_mean_pred_loss': 9.688862191256383e-05, 'avg_role_model_g_mag_loss': 1.3184288273686948e-07, 'avg_role_model_g_cos_loss': 0.0, 'avg_non_role_model_g_mag_loss': 0.0, 'avg_non_role_model_g_cos_loss': 0.0, 'avg_non_role_model_embed_loss': 0.0, 'avg_loss': 0.034846017876443286, 'n_size': 805, 'n_batch': 101, 'duration': 90.31259799003601, 'duration_batch': 0.8941841385152081, 'duration_size': 0.11218956272054163, 'avg_pred_std': 0.2174905706565864}\n" + ] + }, + { + "name": "stdout", + "output_type": "stream", + "text": [ + "Val loss {'avg_role_model_loss': 0.005125884902663529, 'avg_role_model_std_loss': 0.12200781043917232, 'avg_role_model_mean_pred_loss': 6.3531672896886e-05, 'avg_role_model_g_mag_loss': 0.0, 'avg_role_model_g_cos_loss': 0.0, 'avg_non_role_model_g_mag_loss': 0.0, 'avg_non_role_model_g_cos_loss': 0.0, 'avg_non_role_model_embed_loss': 0.0, 'avg_loss': 0.005125884902663529, 'n_size': 200, 'n_batch': 25, 'duration': 21.58434534072876, 'duration_batch': 0.8633738136291504, 'duration_size': 0.1079217267036438, 'avg_pred_std': 0.23218394815921783}\n", + "Epoch 21\n" + ] + }, + { + "name": "stdout", + "output_type": "stream", + "text": [ + "Train loss {'avg_role_model_loss': 0.005548517863838847, 'avg_role_model_std_loss': 0.21934010131341813, 'avg_role_model_mean_pred_loss': 6.26239857931001e-05, 'avg_role_model_g_mag_loss': 1.3356382802406453e-05, 'avg_role_model_g_cos_loss': 0.0, 'avg_non_role_model_g_mag_loss': 0.0, 'avg_non_role_model_g_cos_loss': 0.0, 'avg_non_role_model_embed_loss': 0.0, 'avg_loss': 0.010354715006958162, 'n_size': 805, 'n_batch': 101, 'duration': 88.40247750282288, 'duration_batch': 0.8752720544833948, 'duration_size': 0.10981674223953153, 'avg_pred_std': 0.21587782998633856}\n" + ] + }, + { + "name": "stdout", + "output_type": "stream", + "text": [ + "Val loss {'avg_role_model_loss': 0.005417209481820464, 'avg_role_model_std_loss': 0.13942289895450813, 'avg_role_model_mean_pred_loss': 4.625512937060705e-05, 'avg_role_model_g_mag_loss': 0.0, 'avg_role_model_g_cos_loss': 0.0, 'avg_non_role_model_g_mag_loss': 0.0, 'avg_non_role_model_g_cos_loss': 0.0, 'avg_non_role_model_embed_loss': 0.0, 'avg_loss': 0.005417209481820464, 'n_size': 200, 'n_batch': 25, 'duration': 21.399763822555542, 'duration_batch': 0.8559905529022217, 'duration_size': 0.10699881911277771, 'avg_pred_std': 0.22927487075328826}\n", + "Epoch 22\n" + ] + }, + { + "name": "stdout", + "output_type": "stream", + "text": [ + "Train loss {'avg_role_model_loss': 0.005747681532434032, 'avg_role_model_std_loss': 0.1272754809645061, 'avg_role_model_mean_pred_loss': 0.00011265363581397934, 'avg_role_model_g_mag_loss': 1.4597121973215422e-06, 'avg_role_model_g_cos_loss': 0.0, 'avg_non_role_model_g_mag_loss': 0.0, 'avg_non_role_model_g_cos_loss': 0.0, 'avg_non_role_model_embed_loss': 0.0, 'avg_loss': 1.279175217762251, 'n_size': 805, 'n_batch': 101, 'duration': 87.12156343460083, 'duration_batch': 0.8625897369762459, 'duration_size': 0.10822554463925568, 'avg_pred_std': 0.22103275893495813}\n" + ] + }, + { + "name": "stdout", + "output_type": "stream", + "text": [ + "Val loss {'avg_role_model_loss': 0.005486278529278934, 'avg_role_model_std_loss': 0.2218146825362055, 'avg_role_model_mean_pred_loss': 3.643048681867267e-05, 'avg_role_model_g_mag_loss': 0.0, 'avg_role_model_g_cos_loss': 0.0, 'avg_non_role_model_g_mag_loss': 0.0, 'avg_non_role_model_g_cos_loss': 0.0, 'avg_non_role_model_embed_loss': 0.0, 'avg_loss': 0.005486278529278934, 'n_size': 200, 'n_batch': 25, 'duration': 21.365365743637085, 'duration_batch': 0.8546146297454834, 'duration_size': 0.10682682871818543, 'avg_pred_std': 0.2180305862426758}\n", + "Epoch 23\n" + ] + }, + { + "name": "stdout", + "output_type": "stream", + "text": [ + "Train loss {'avg_role_model_loss': 0.0055476776561381655, 'avg_role_model_std_loss': 0.32748539977648145, 'avg_role_model_mean_pred_loss': 7.017293471650732e-05, 'avg_role_model_g_mag_loss': 5.3312245363034077e-05, 'avg_role_model_g_cos_loss': 0.0, 'avg_non_role_model_g_mag_loss': 0.0, 'avg_non_role_model_g_cos_loss': 0.0, 'avg_non_role_model_embed_loss': 0.0, 'avg_loss': 0.005971885740942096, 'n_size': 805, 'n_batch': 101, 'duration': 89.34160041809082, 'duration_batch': 0.8845703011692161, 'duration_size': 0.11098335455663456, 'avg_pred_std': 0.21413740781274174}\n" + ] + }, + { + "name": "stdout", + "output_type": "stream", + "text": [ + "Val loss {'avg_role_model_loss': 0.007511304141953588, 'avg_role_model_std_loss': 0.09401300334866391, 'avg_role_model_mean_pred_loss': 0.00011923739120987875, 'avg_role_model_g_mag_loss': 0.0, 'avg_role_model_g_cos_loss': 0.0, 'avg_non_role_model_g_mag_loss': 0.0, 'avg_non_role_model_g_cos_loss': 0.0, 'avg_non_role_model_embed_loss': 0.0, 'avg_loss': 0.007511304141953588, 'n_size': 200, 'n_batch': 25, 'duration': 21.58778166770935, 'duration_batch': 0.863511266708374, 'duration_size': 0.10793890833854675, 'avg_pred_std': 0.23834557116031646}\n", + "Epoch 24\n" + ] + }, + { + "name": "stdout", + "output_type": "stream", + "text": [ + "Train loss {'avg_role_model_loss': 0.005528737366219739, 'avg_role_model_std_loss': 0.1303454312197744, 'avg_role_model_mean_pred_loss': 6.742322914309517e-05, 'avg_role_model_g_mag_loss': 3.114034369680452e-06, 'avg_role_model_g_cos_loss': 0.0, 'avg_non_role_model_g_mag_loss': 0.0, 'avg_non_role_model_g_cos_loss': 0.0, 'avg_non_role_model_embed_loss': 0.0, 'avg_loss': 0.009155590933970297, 'n_size': 805, 'n_batch': 101, 'duration': 88.56836199760437, 'duration_batch': 0.8769144752238056, 'duration_size': 0.11002280993491226, 'avg_pred_std': 0.2233861573409326}\n" + ] + }, + { + "name": "stdout", + "output_type": "stream", + "text": [ + "Val loss {'avg_role_model_loss': 0.0052726257871836425, 'avg_role_model_std_loss': 0.12618017424456426, 'avg_role_model_mean_pred_loss': 5.749187312716231e-05, 'avg_role_model_g_mag_loss': 0.0, 'avg_role_model_g_cos_loss': 0.0, 'avg_non_role_model_g_mag_loss': 0.0, 'avg_non_role_model_g_cos_loss': 0.0, 'avg_non_role_model_embed_loss': 0.0, 'avg_loss': 0.0052726257871836425, 'n_size': 200, 'n_batch': 25, 'duration': 21.53865957260132, 'duration_batch': 0.8615463829040527, 'duration_size': 0.10769329786300659, 'avg_pred_std': 0.2310938411951065}\n", + "Epoch 25\n" + ] + }, + { + "name": "stdout", + "output_type": "stream", + "text": [ + "Train loss {'avg_role_model_loss': 0.005761149434245522, 'avg_role_model_std_loss': 0.2781787275740765, 'avg_role_model_mean_pred_loss': 8.137457192243001e-05, 'avg_role_model_g_mag_loss': 8.173622885105772e-05, 'avg_role_model_g_cos_loss': 0.0, 'avg_non_role_model_g_mag_loss': 0.0, 'avg_non_role_model_g_cos_loss': 0.0, 'avg_non_role_model_embed_loss': 0.0, 'avg_loss': 0.006208720128775013, 'n_size': 805, 'n_batch': 101, 'duration': 87.93706607818604, 'duration_batch': 0.8706640205760994, 'duration_size': 0.10923859140147334, 'avg_pred_std': 0.22028684326548978}\n" + ] + }, + { + "name": "stdout", + "output_type": "stream", + "text": [ + "Val loss {'avg_role_model_loss': 0.005650409492664039, 'avg_role_model_std_loss': 0.0771926953739603, 'avg_role_model_mean_pred_loss': 6.198529247257167e-05, 'avg_role_model_g_mag_loss': 0.0, 'avg_role_model_g_cos_loss': 0.0, 'avg_non_role_model_g_mag_loss': 0.0, 'avg_non_role_model_g_cos_loss': 0.0, 'avg_non_role_model_embed_loss': 0.0, 'avg_loss': 0.005650409492664039, 'n_size': 200, 'n_batch': 25, 'duration': 21.522745609283447, 'duration_batch': 0.8609098243713379, 'duration_size': 0.10761372804641724, 'avg_pred_std': 0.24230126440525054}\n", + "Epoch 26\n" + ] + }, + { + "name": "stdout", + "output_type": "stream", + "text": [ + "Train loss {'avg_role_model_loss': 0.005445758624129599, 'avg_role_model_std_loss': 0.27172335771233475, 'avg_role_model_mean_pred_loss': 8.577585451755653e-05, 'avg_role_model_g_mag_loss': 3.970280197096167e-05, 'avg_role_model_g_cos_loss': 0.0, 'avg_non_role_model_g_mag_loss': 0.0, 'avg_non_role_model_g_cos_loss': 0.0, 'avg_non_role_model_embed_loss': 0.0, 'avg_loss': 0.0057203052467117025, 'n_size': 805, 'n_batch': 101, 'duration': 87.5566246509552, 'duration_batch': 0.8668972737718337, 'duration_size': 0.10876599335522386, 'avg_pred_std': 0.21845043461659167}\n" + ] + }, + { + "name": "stdout", + "output_type": "stream", + "text": [ + "Val loss {'avg_role_model_loss': 0.005356438243761658, 'avg_role_model_std_loss': 0.12474976066732779, 'avg_role_model_mean_pred_loss': 5.013778592015683e-05, 'avg_role_model_g_mag_loss': 0.0, 'avg_role_model_g_cos_loss': 0.0, 'avg_non_role_model_g_mag_loss': 0.0, 'avg_non_role_model_g_cos_loss': 0.0, 'avg_non_role_model_embed_loss': 0.0, 'avg_loss': 0.005356438243761658, 'n_size': 200, 'n_batch': 25, 'duration': 21.511472940444946, 'duration_batch': 0.8604589176177978, 'duration_size': 0.10755736470222473, 'avg_pred_std': 0.23125485479831695}\n", + "Epoch 27\n" + ] + }, + { + "name": "stdout", + "output_type": "stream", + "text": [ + "Train loss {'avg_role_model_loss': 0.005081101923151324, 'avg_role_model_std_loss': 0.1675353699499535, 'avg_role_model_mean_pred_loss': 5.812898050338236e-05, 'avg_role_model_g_mag_loss': 3.594058270780196e-06, 'avg_role_model_g_cos_loss': 0.0, 'avg_non_role_model_g_mag_loss': 0.0, 'avg_non_role_model_g_cos_loss': 0.0, 'avg_non_role_model_embed_loss': 0.0, 'avg_loss': 0.005485425449572272, 'n_size': 805, 'n_batch': 101, 'duration': 88.452969789505, 'duration_batch': 0.8757719781139109, 'duration_size': 0.10987946557702485, 'avg_pred_std': 0.22321680265635546}\n" + ] + }, + { + "name": "stdout", + "output_type": "stream", + "text": [ + "Val loss {'avg_role_model_loss': 0.006086462363600731, 'avg_role_model_std_loss': 0.10333134334316128, 'avg_role_model_mean_pred_loss': 8.738786271081267e-05, 'avg_role_model_g_mag_loss': 0.0, 'avg_role_model_g_cos_loss': 0.0, 'avg_non_role_model_g_mag_loss': 0.0, 'avg_non_role_model_g_cos_loss': 0.0, 'avg_non_role_model_embed_loss': 0.0, 'avg_loss': 0.006086462363600731, 'n_size': 200, 'n_batch': 25, 'duration': 21.65699815750122, 'duration_batch': 0.8662799263000488, 'duration_size': 0.1082849907875061, 'avg_pred_std': 0.23591170072555542}\n", + "Epoch 28\n" + ] + }, + { + "name": "stdout", + "output_type": "stream", + "text": [ + "Train loss {'avg_role_model_loss': 0.0052087890412311376, 'avg_role_model_std_loss': 0.20628788776629434, 'avg_role_model_mean_pred_loss': 6.154808049404857e-05, 'avg_role_model_g_mag_loss': 6.017644212853094e-06, 'avg_role_model_g_cos_loss': 0.0, 'avg_non_role_model_g_mag_loss': 0.0, 'avg_non_role_model_g_cos_loss': 0.0, 'avg_non_role_model_embed_loss': 0.0, 'avg_loss': 0.005626151865776281, 'n_size': 805, 'n_batch': 101, 'duration': 85.52421545982361, 'duration_batch': 0.846774410493303, 'duration_size': 0.10624126144077467, 'avg_pred_std': 0.2194081702371045}\n" + ] + }, + { + "name": "stdout", + "output_type": "stream", + "text": [ + "Val loss {'avg_role_model_loss': 0.00557473658118397, 'avg_role_model_std_loss': 0.23143272440647705, 'avg_role_model_mean_pred_loss': 4.15715374742831e-05, 'avg_role_model_g_mag_loss': 0.0, 'avg_role_model_g_cos_loss': 0.0, 'avg_non_role_model_g_mag_loss': 0.0, 'avg_non_role_model_g_cos_loss': 0.0, 'avg_non_role_model_embed_loss': 0.0, 'avg_loss': 0.00557473658118397, 'n_size': 200, 'n_batch': 25, 'duration': 19.099186897277832, 'duration_batch': 0.7639674758911132, 'duration_size': 0.09549593448638916, 'avg_pred_std': 0.21782068014144898}\n", + "Epoch 29\n" + ] + }, + { + "name": "stdout", + "output_type": "stream", + "text": [ + "Train loss {'avg_role_model_loss': 0.005231465882280413, 'avg_role_model_std_loss': 0.16361986913805163, 'avg_role_model_mean_pred_loss': 7.672585915737478e-05, 'avg_role_model_g_mag_loss': 1.077884056183122e-05, 'avg_role_model_g_cos_loss': 0.0, 'avg_non_role_model_g_mag_loss': 0.0, 'avg_non_role_model_g_cos_loss': 0.0, 'avg_non_role_model_embed_loss': 0.0, 'avg_loss': 0.005762255425501314, 'n_size': 805, 'n_batch': 101, 'duration': 80.11557865142822, 'duration_batch': 0.7932235510042398, 'duration_size': 0.09952245795208475, 'avg_pred_std': 0.21797401190615526}\n" + ] + }, + { + "name": "stdout", + "output_type": "stream", + "text": [ + "Val loss {'avg_role_model_loss': 0.006650901986286044, 'avg_role_model_std_loss': 0.12659563487861306, 'avg_role_model_mean_pred_loss': 4.9554965830651554e-05, 'avg_role_model_g_mag_loss': 0.0, 'avg_role_model_g_cos_loss': 0.0, 'avg_non_role_model_g_mag_loss': 0.0, 'avg_non_role_model_g_cos_loss': 0.0, 'avg_non_role_model_embed_loss': 0.0, 'avg_loss': 0.006650901986286044, 'n_size': 200, 'n_batch': 25, 'duration': 18.92792320251465, 'duration_batch': 0.757116928100586, 'duration_size': 0.09463961601257324, 'avg_pred_std': 0.2312470942735672}\n", + "Epoch 30\n" + ] + }, + { + "name": "stdout", + "output_type": "stream", + "text": [ + "Train loss {'avg_role_model_loss': 0.00519270687450811, 'avg_role_model_std_loss': 0.279995267643539, 'avg_role_model_mean_pred_loss': 4.654781782288666e-05, 'avg_role_model_g_mag_loss': 6.451771033476599e-05, 'avg_role_model_g_cos_loss': 0.0, 'avg_non_role_model_g_mag_loss': 0.0, 'avg_non_role_model_g_cos_loss': 0.0, 'avg_non_role_model_embed_loss': 0.0, 'avg_loss': 0.0056830557971406055, 'n_size': 805, 'n_batch': 101, 'duration': 79.10502314567566, 'duration_batch': 0.7832180509472838, 'duration_size': 0.09826710949773373, 'avg_pred_std': 0.2165812872866593}\n" + ] + }, + { + "name": "stdout", + "output_type": "stream", + "text": [ + "Val loss {'avg_role_model_loss': 0.0058985058171674605, 'avg_role_model_std_loss': 0.16594135333492888, 'avg_role_model_mean_pred_loss': 5.6070893757294014e-05, 'avg_role_model_g_mag_loss': 0.0, 'avg_role_model_g_cos_loss': 0.0, 'avg_non_role_model_g_mag_loss': 0.0, 'avg_non_role_model_g_cos_loss': 0.0, 'avg_non_role_model_embed_loss': 0.0, 'avg_loss': 0.0058985058171674605, 'n_size': 200, 'n_batch': 25, 'duration': 18.99995994567871, 'duration_batch': 0.7599983978271484, 'duration_size': 0.09499979972839355, 'avg_pred_std': 0.22666034638881682}\n", + "Epoch 31\n" + ] + }, + { + "name": "stdout", + "output_type": "stream", + "text": [ + "Train loss {'avg_role_model_loss': 0.00525653311246659, 'avg_role_model_std_loss': 0.2036635784316237, 'avg_role_model_mean_pred_loss': 8.030619830907732e-05, 'avg_role_model_g_mag_loss': 6.635558693120199e-05, 'avg_role_model_g_cos_loss': 0.0, 'avg_non_role_model_g_mag_loss': 0.0, 'avg_non_role_model_g_cos_loss': 0.0, 'avg_non_role_model_embed_loss': 0.0, 'avg_loss': 0.0091450711295026, 'n_size': 805, 'n_batch': 101, 'duration': 80.25686001777649, 'duration_batch': 0.7946223764136287, 'duration_size': 0.09969796275500185, 'avg_pred_std': 0.2217137933441318}\n" + ] + }, + { + "name": "stdout", + "output_type": "stream", + "text": [ + "Val loss {'avg_role_model_loss': 0.006656655007973313, 'avg_role_model_std_loss': 0.413153967380058, 'avg_role_model_mean_pred_loss': 3.531901041284868e-05, 'avg_role_model_g_mag_loss': 0.0, 'avg_role_model_g_cos_loss': 0.0, 'avg_non_role_model_g_mag_loss': 0.0, 'avg_non_role_model_g_cos_loss': 0.0, 'avg_non_role_model_embed_loss': 0.0, 'avg_loss': 0.006656655007973313, 'n_size': 200, 'n_batch': 25, 'duration': 19.31869602203369, 'duration_batch': 0.7727478408813476, 'duration_size': 0.09659348011016845, 'avg_pred_std': 0.20416920363903046}\n", + "Epoch 32\n" + ] + }, + { + "name": "stdout", + "output_type": "stream", + "text": [ + "Train loss {'avg_role_model_loss': 0.005155752808642313, 'avg_role_model_std_loss': 0.34677651360336537, 'avg_role_model_mean_pred_loss': 7.578693243470644e-05, 'avg_role_model_g_mag_loss': 3.6752695992866657e-06, 'avg_role_model_g_cos_loss': 0.0, 'avg_non_role_model_g_mag_loss': 0.0, 'avg_non_role_model_g_cos_loss': 0.0, 'avg_non_role_model_embed_loss': 0.0, 'avg_loss': 0.0053992889809960165, 'n_size': 805, 'n_batch': 101, 'duration': 81.86502957344055, 'duration_batch': 0.8105448472617877, 'duration_size': 0.10169568891110628, 'avg_pred_std': 0.21696588937377576}\n", + "Time out: 3649.0538268089294/3600\n" + ] + }, + { + "name": "stdout", + "output_type": "stream", + "text": [ + "Eval loss {'role_model': 'tab_ddpm_concat', 'n_size': 200, 'n_batch': 25, 'role_model_metrics': {'avg_loss': 0.004939215686172247, 'avg_g_mag_loss': 0.004158038770165149, 'avg_g_cos_loss': 0.008857870299398201, 'pred_duration': 0.17403936386108398, 'grad_duration': 0.11011123657226562, 'total_duration': 0.2841506004333496, 'pred_std': 0.23844757676124573, 'std_loss': 0.0016836776630952954, 'mean_pred_loss': 5.9501770010683686e-05, 'pred_rmse': 0.0702795535326004, 'pred_mae': 0.05129384994506836, 'pred_mape': 0.09106289595365524, 'grad_rmse': 0.055286455899477005, 'grad_mae': 0.04102437570691109, 'grad_mape': 0.8330724835395813}, 'non_role_model_metrics': {'avg_loss': 0, 'avg_g_mag_loss': 0, 'avg_g_cos_loss': 0, 'avg_pred_duration': 0, 'avg_grad_duration': 0, 'avg_total_duration': 0, 'avg_pred_std': 0, 'avg_std_loss': 0, 'avg_mean_pred_loss': 0}, 'avg_metrics': {'avg_loss': 0.004939215686172247, 'avg_g_mag_loss': 0.004158038770165149, 'avg_g_cos_loss': 0.008857870299398201, 'avg_pred_duration': 0.17403936386108398, 'avg_grad_duration': 0.11011123657226562, 'avg_total_duration': 0.2841506004333496, 'avg_pred_std': 0.23844757676124573, 'avg_std_loss': 0.0016836776630952954, 'avg_mean_pred_loss': 5.9501770010683686e-05}, 'min_metrics': {'avg_loss': 0.004939215686172247, 'avg_g_mag_loss': 0.004158038770165149, 'avg_g_cos_loss': 0.008857870299398201, 'pred_duration': 0.17403936386108398, 'grad_duration': 0.11011123657226562, 'total_duration': 0.2841506004333496, 'pred_std': 0.23844757676124573, 'std_loss': 0.0016836776630952954, 'mean_pred_loss': 5.9501770010683686e-05, 'pred_rmse': 0.0702795535326004, 'pred_mae': 0.05129384994506836, 'pred_mape': 0.09106289595365524, 'grad_rmse': 0.055286455899477005, 'grad_mae': 0.04102437570691109, 'grad_mape': 0.8330724835395813}, 'model_metrics': {'tab_ddpm_concat': {'avg_loss': 0.004939215686172247, 'avg_g_mag_loss': 0.004158038770165149, 'avg_g_cos_loss': 0.008857870299398201, 'pred_duration': 0.17403936386108398, 'grad_duration': 0.11011123657226562, 'total_duration': 0.2841506004333496, 'pred_std': 0.23844757676124573, 'std_loss': 0.0016836776630952954, 'mean_pred_loss': 5.9501770010683686e-05, 'pred_rmse': 0.0702795535326004, 'pred_mae': 0.05129384994506836, 'pred_mape': 0.09106289595365524, 'grad_rmse': 0.055286455899477005, 'grad_mae': 0.04102437570691109, 'grad_mape': 0.8330724835395813}}}\n" + ] + } + ], + "source": [ + "import torch\n", + "from ml_utility_loss.loss_learning.estimator.pipeline import train, train_2\n", + "from ml_utility_loss.loss_learning.estimator.process_simple import train_epoch, eval as _eval\n", + "from ml_utility_loss.params import GradientPenaltyMode\n", + "from ml_utility_loss.util import clear_memory\n", + "import time\n", + "#torch.autograd.set_detect_anomaly(True)\n", + "\n", + "del model\n", + "clear_memory()\n", + "\n", + "#opt = params[\"Optim\"](model.parameters())\n", + "loss = train_2(\n", + " [train_set, val_set, test_set],\n", + " preprocessor=preprocessor,\n", + " #whole_model=model,\n", + " #optim=opt,\n", + " log_dir=\"logs\",\n", + " checkpoint_dir=None,\n", + " verbose=True,\n", + " allow_same_prediction=allow_same_prediction,\n", + " wandb=wandb if log_wandb else None,\n", + " study_name=study_name,\n", + " **params\n", + ")" + ] + }, + { + "cell_type": "code", + "execution_count": 25, + "id": "9b514a07", + "metadata": { + "execution": { + "iopub.execute_input": "2024-07-23T14:51:50.526907Z", + "iopub.status.busy": "2024-07-23T14:51:50.526522Z", + "iopub.status.idle": "2024-07-23T14:51:50.531333Z", + "shell.execute_reply": "2024-07-23T14:51:50.530419Z" + }, + "papermill": { + "duration": 0.027968, + "end_time": "2024-07-23T14:51:50.533185", + "exception": false, + "start_time": "2024-07-23T14:51:50.505217", + "status": "completed" + }, + "tags": [] + }, + "outputs": [], + "source": [ + "model = loss[\"whole_model\"]\n", + "opt = loss[\"optim\"]" + ] + }, + { + "cell_type": "code", + "execution_count": 26, + "id": "331a49e1", + "metadata": { + "execution": { + "iopub.execute_input": "2024-07-23T14:51:50.571349Z", + "iopub.status.busy": "2024-07-23T14:51:50.571043Z", + "iopub.status.idle": "2024-07-23T14:51:50.588636Z", + "shell.execute_reply": "2024-07-23T14:51:50.587944Z" + }, + "papermill": { + "duration": 0.039157, + "end_time": "2024-07-23T14:51:50.590530", + "exception": false, + "start_time": "2024-07-23T14:51:50.551373", + "status": "completed" + }, + "tags": [] + }, + "outputs": [], + "source": [ + "import torch\n", + "from copy import deepcopy\n", + "\n", + "torch.save(deepcopy(model.state_dict()), \"model.pt\")\n", + "#torch.save(deepcopy(opt.state_dict()), \"optim.pt\")" + ] + }, + { + "cell_type": "code", + "execution_count": 27, + "id": "123b4b17", + "metadata": { + "execution": { + "iopub.execute_input": "2024-07-23T14:51:50.630210Z", + "iopub.status.busy": "2024-07-23T14:51:50.629908Z", + "iopub.status.idle": "2024-07-23T14:51:50.906419Z", + "shell.execute_reply": "2024-07-23T14:51:50.905543Z" + }, + "papermill": { + "duration": 0.298845, + "end_time": "2024-07-23T14:51:50.908569", + "exception": false, + "start_time": "2024-07-23T14:51:50.609724", + "status": "completed" + }, + "tags": [] + }, + "outputs": [ + { + "data": { + "text/plain": [ + "" + ] + }, + "execution_count": 27, + "metadata": {}, + "output_type": "execute_result" + }, + { + "data": { + "image/png": "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wD3NxsyZM3nrrbeora0lKyuLa665hmuuuabNr5mv1q1bR25uLhMmTGDjxo0MHjyYTz75BHC2nXz55ZdMnjyZjz/+mGHDhrFp06aAzucZ/AByc3OZOXMmt912G++99x779+/n8ccfv+C0JE1v7TRN83lmAclw2pbuDGfSpElMmjTJ5/JNGzCXL1/Ou+++y7/+9S/GjBmj9/RdxnfffUd+fj5r1qxx3zLt3LmzUZk777yT+fPns2XLFrKyspg1a5Z739VXX01dXR379+9n7NixABw9epTvv//er/oMHTqU9evXY7FY3L/o//73vzEYDFx99dXucmPGjGHMmDEsXryY5ORksrKy+MEPfgDA4MGDGTx4MIsWLeKee+5h3bp1TJs2rdXzmkwm9/NwF7Jr1y4GDBjA448/7n7N1WjdXmpqG+ombTiB6/BeKofDQUVFBT169GixjNVqpby8vNHW1URHR9OzZ09eeeUVjh49yscff0x6enqjMmFhYUydOpWlS5dy+PBh7rnnHve+IUOGkJKSwvz589mzZw/79+9n/vz5dOvWza/nymbOnElISAizZ8/miy++YNu2bfz617/m3nvvJSYmhoKCAhYvXkxubi4nT57kww8/5Ouvv2bo0KFUV1eTlpZGTk4OJ0+e5N///jeffvppozaeliQmJlJZWUl2djalpaVUVVW1WHbQoEEUFhayYcMGjh07xosvvhhwFnUhnkHGM/gI/3R4wHn++eeprKzk7rvvbrFMZmYmkZGR7q0rrkllMBjYsGEDeXl5jBgxgkWLFvHcc881Kzdz5kw+++wzrrvuOvr3799o32uvvUZMTAzXX38906ZNc/fYhISE6K5PaGgoH3zwAefOnePaa6/lJz/5CTfffDMvvfSSe/+RI0eYPn06gwcPZv78+SxcuJD//M//xGg08t133zFr1iwGDx7M3XffzaRJk3jyyScveN4JEyawYMECZsyYQe/evXn22WdbLHvHHXewaNEi0tLSGD16NLt27WLp0qW6P6sekuG0LU3pHTziebCmXbDR2FNWVhbz5s3j3XffJSUlpcVyVqsVq9Xq/t617k1ZWVmzBsKamhoKCgoYOHCgX79oXck333xDQkICH330ETfffHNnV+eS5fkzdbCoip+uzgVgWFwEmx+4rpNrd/EpLy8nMjLS6+9nUx3WLb5hwwbmzp3Lm2++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", + "text/plain": [ + "
" + ] + }, + "metadata": {}, + "output_type": "display_data" + } + ], + "source": [ + "history = loss[\"history\"]\n", + "history.to_csv(\"history.csv\")\n", + "history[[\"avg_loss_train\", \"avg_loss_test\"]].plot()" + ] + }, + { + "cell_type": "code", + "execution_count": 28, + "id": "2586ba0a", + "metadata": { + "execution": { + "iopub.execute_input": "2024-07-23T14:51:50.948132Z", + "iopub.status.busy": "2024-07-23T14:51:50.947788Z", + "iopub.status.idle": "2024-07-23T14:52:11.180679Z", + "shell.execute_reply": "2024-07-23T14:52:11.179797Z" + }, + "papermill": { + "duration": 20.255331, + "end_time": "2024-07-23T14:52:11.183132", + "exception": false, + "start_time": "2024-07-23T14:51:50.927801", + "status": "completed" + }, + "tags": [] + }, + "outputs": [], + "source": [ + "\n", + "from ml_utility_loss.loss_learning.estimator.pipeline import eval\n", + "#eval_loss = loss[\"eval_loss\"]\n", + "\n", + "batch_size = params[\"batch_size_low\"] if \"batch_size_low\" in params else params[\"batch_size\"]\n", + "\n", + "eval_loss = eval(\n", + " test_set, model,\n", + " batch_size=batch_size,\n", + ")" + ] + }, + { + "cell_type": "code", + "execution_count": 29, + "id": "187137f6", + "metadata": { + "execution": { + "iopub.execute_input": "2024-07-23T14:52:11.224413Z", + "iopub.status.busy": "2024-07-23T14:52:11.224010Z", + "iopub.status.idle": "2024-07-23T14:52:11.243580Z", + "shell.execute_reply": "2024-07-23T14:52:11.242684Z" + }, + "papermill": { + "duration": 0.042402, + "end_time": "2024-07-23T14:52:11.245395", + "exception": false, + "start_time": "2024-07-23T14:52:11.202993", + "status": "completed" + }, + "tags": [] + }, + "outputs": [ + { + "data": { + "text/html": [ + "
\n", + "\n", + "\n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
avg_g_cos_lossavg_g_mag_lossavg_lossgrad_durationgrad_maegrad_mapegrad_rmsemean_pred_losspred_durationpred_maepred_mapepred_rmsepred_stdstd_losstotal_duration
tab_ddpm_concat0.0057170.0056940.0049390.1058660.0410240.8330720.0552860.000060.1773970.0512940.0910630.070280.2384480.0016840.283263
\n", + "
" + ], + "text/plain": [ + " avg_g_cos_loss avg_g_mag_loss avg_loss grad_duration \\\n", + "tab_ddpm_concat 0.005717 0.005694 0.004939 0.105866 \n", + "\n", + " grad_mae grad_mape grad_rmse mean_pred_loss \\\n", + "tab_ddpm_concat 0.041024 0.833072 0.055286 0.00006 \n", + "\n", + " pred_duration pred_mae pred_mape pred_rmse pred_std \\\n", + "tab_ddpm_concat 0.177397 0.051294 0.091063 0.07028 0.238448 \n", + "\n", + " std_loss total_duration \n", + "tab_ddpm_concat 0.001684 0.283263 " + ] + }, + "execution_count": 29, + "metadata": {}, + "output_type": "execute_result" + } + ], + "source": [ + "import pandas as pd\n", + "\n", + "metrics = pd.DataFrame(eval_loss[\"model_metrics\"]).T\n", + "metrics.to_csv(\"eval.csv\")\n", + "metrics" + ] + }, + { + "cell_type": "code", + "execution_count": 30, + "id": "123d305b", + "metadata": { + "execution": { + "iopub.execute_input": "2024-07-23T14:52:11.284406Z", + "iopub.status.busy": "2024-07-23T14:52:11.284139Z", + "iopub.status.idle": "2024-07-23T14:52:11.549001Z", + "shell.execute_reply": "2024-07-23T14:52:11.548021Z" + }, + "papermill": { + "duration": 0.286853, + "end_time": "2024-07-23T14:52:11.551083", + "exception": false, + "start_time": "2024-07-23T14:52:11.264230", + "status": "completed" + }, + "tags": [] + }, + "outputs": [], + "source": [ + "from ml_utility_loss.util import clear_memory\n", + "clear_memory()" + ] + }, + { + "cell_type": "code", + "execution_count": 31, + "id": "a3eecc2a", + "metadata": { + "execution": { + "iopub.execute_input": "2024-07-23T14:52:11.593119Z", + "iopub.status.busy": "2024-07-23T14:52:11.592794Z", + "iopub.status.idle": "2024-07-23T14:52:32.053381Z", + "shell.execute_reply": "2024-07-23T14:52:32.052315Z" + }, + "papermill": { + "duration": 20.484424, + "end_time": "2024-07-23T14:52:32.055841", + "exception": false, + "start_time": "2024-07-23T14:52:11.571417", + "status": "completed" + }, + "tags": [] + }, + "outputs": [ + { + "name": "stdout", + "output_type": "stream", + "text": [ + "Caching in ../../../../iris/_cache_aug_test/tab_ddpm_concat/all inf False\n", + "Caching in ../../../../iris/_cache_bs_test/tab_ddpm_concat/all inf False\n", + "Caching in ../../../../iris/_cache_synth_test/tab_ddpm_concat/all inf False\n" + ] + } + ], + "source": [ + "#\"\"\"\n", + "from ml_utility_loss.loss_learning.estimator.process import pred, pred_2\n", + "from ml_utility_loss.util import stack_samples\n", + "\n", + "#samples = test_set[list(range(len(test_set)))]\n", + "#y = {m: pred(model[m], s) for m, s in samples.items()}\n", + "y = pred_2(model, test_set, batch_size=batch_size)\n", + "#\"\"\"" + ] + }, + { + "cell_type": "code", + "execution_count": 32, + "id": "6ab51db8", + "metadata": { + "execution": { + "iopub.execute_input": "2024-07-23T14:52:32.099184Z", + "iopub.status.busy": "2024-07-23T14:52:32.098316Z", + "iopub.status.idle": "2024-07-23T14:52:32.112491Z", + "shell.execute_reply": "2024-07-23T14:52:32.111776Z" + }, + "papermill": { + "duration": 0.038035, + "end_time": "2024-07-23T14:52:32.114341", + "exception": false, + "start_time": "2024-07-23T14:52:32.076306", + "status": "completed" + }, + "tags": [] + }, + "outputs": [], + "source": [ + "import os\n", + "import pandas as pd\n", + "from ml_utility_loss.util import transpose_dict\n", + "\n", + "os.makedirs(\"pred\", exist_ok=True)\n", + "y2 = transpose_dict(y)\n", + "for k, v in y2.items():\n", + " df = pd.DataFrame(v)\n", + " df.to_csv(f\"pred/{k}.csv\")" + ] + }, + { + "cell_type": "code", + "execution_count": 33, + "id": "d81a30f1", + "metadata": { + "execution": { + "iopub.execute_input": "2024-07-23T14:52:32.154531Z", + "iopub.status.busy": "2024-07-23T14:52:32.154167Z", + "iopub.status.idle": "2024-07-23T14:52:32.159908Z", + "shell.execute_reply": "2024-07-23T14:52:32.158995Z" + }, + "papermill": { + "duration": 0.028158, + "end_time": "2024-07-23T14:52:32.161828", + "exception": false, + "start_time": "2024-07-23T14:52:32.133670", + "status": "completed" + }, + "tags": [] + }, + "outputs": [ + { + "name": "stdout", + "output_type": "stream", + "text": [ + "{'tab_ddpm_concat': 0.7423851902037859}\n" + ] + } + ], + "source": [ + "print({k: sum(v[\"pred\"])/len(v[\"pred\"]) for k, v in y.items()})" + ] + }, + { + "cell_type": "code", + "execution_count": 34, + "id": "3b3ff322", + "metadata": { + "execution": { + "iopub.execute_input": "2024-07-23T14:52:32.204887Z", + "iopub.status.busy": "2024-07-23T14:52:32.204518Z", + "iopub.status.idle": "2024-07-23T14:52:32.533098Z", + "shell.execute_reply": "2024-07-23T14:52:32.532123Z" + }, + "papermill": { + "duration": 0.352407, + "end_time": "2024-07-23T14:52:32.535145", + "exception": false, + "start_time": "2024-07-23T14:52:32.182738", + "status": "completed" + }, + "tags": [] + }, + "outputs": [ + { + "data": { + "image/png": "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", + "text/plain": [ + "
" + ] + }, + "metadata": {}, + "output_type": "display_data" + } + ], + "source": [ + "from ml_utility_loss.loss_learning.visualization import plot_pred_density_2\n", + "\n", + "_ = plot_pred_density_2(y)" + ] + }, + { + "cell_type": "code", + "execution_count": 35, + "id": "e79e4b0f", + "metadata": { + "execution": { + "iopub.execute_input": "2024-07-23T14:52:32.576943Z", + "iopub.status.busy": "2024-07-23T14:52:32.576559Z", + "iopub.status.idle": "2024-07-23T14:52:32.890640Z", + "shell.execute_reply": "2024-07-23T14:52:32.889735Z" + }, + "papermill": { + "duration": 0.337445, + "end_time": "2024-07-23T14:52:32.892736", + "exception": false, + "start_time": "2024-07-23T14:52:32.555291", + "status": "completed" + }, + "tags": [] + }, + "outputs": [ + { + "data": { + "image/png": "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", + "text/plain": [ + "
" + ] + }, + "metadata": {}, + "output_type": "display_data" + } + ], + "source": [ + "from ml_utility_loss.loss_learning.visualization import plot_density_3\n", + "\n", + "_ = plot_density_3(y2[\"pred\"], next(iter(y2[\"y\"].values())))" + ] + }, + { + "cell_type": "code", + "execution_count": 36, + "id": "745adde1", + "metadata": { + "execution": { + "iopub.execute_input": "2024-07-23T14:52:32.937962Z", + "iopub.status.busy": "2024-07-23T14:52:32.937107Z", + "iopub.status.idle": "2024-07-23T14:52:33.175528Z", + "shell.execute_reply": "2024-07-23T14:52:33.174597Z" + }, + "papermill": { + "duration": 0.263606, + "end_time": "2024-07-23T14:52:33.177655", + "exception": false, + "start_time": "2024-07-23T14:52:32.914049", + "status": "completed" + }, + "tags": [] + }, + "outputs": [ + { + "data": { + "image/png": "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", + "text/plain": [ + "
" + ] + }, + "metadata": {}, + "output_type": "display_data" + } + ], + "source": [ + "from ml_utility_loss.loss_learning.visualization import plot_box_3\n", + "\n", + "_ = plot_box_3(y2[\"pred\"], next(iter(y2[\"y\"].values())))" + ] + }, + { + "cell_type": "code", + "execution_count": 37, + "id": "eabe1bab", + "metadata": { + "execution": { + "iopub.execute_input": "2024-07-23T14:52:33.223712Z", + "iopub.status.busy": "2024-07-23T14:52:33.222752Z", + "iopub.status.idle": "2024-07-23T14:52:33.470300Z", + "shell.execute_reply": "2024-07-23T14:52:33.469350Z" + }, + "papermill": { + "duration": 0.272774, + "end_time": "2024-07-23T14:52:33.472473", + "exception": false, + "start_time": "2024-07-23T14:52:33.199699", + "status": "completed" + }, + "tags": [] + }, + "outputs": [ + { + "data": { + "image/png": "iVBORw0KGgoAAAANSUhEUgAAATgAAAEnCAYAAAA9/18kAAAAOXRFWHRTb2Z0d2FyZQBNYXRwbG90bGliIHZlcnNpb24zLjcuNSwgaHR0cHM6Ly9tYXRwbG90bGliLm9yZy/xnp5ZAAAACXBIWXMAAA9hAAAPYQGoP6dpAABmv0lEQVR4nO2dd3xTVf/H3xlNultmB6vsvQRaQBSR+hRBEccDIiIgjxNwIFsEFRUeBR9UEB59RFwIivOniEIFZJQ9BBlC2dCW3T0yzu+P29wmbdomJW3act688iK599x7T26aT77nnO/QCCEEEolEUg3RersDEolEUl5IgZNIJNUWKXASiaTaIgVOIpFUW6TASSSSaosUOIlEUm2RAieRSKotUuAkEkm1RQqcRCKptui93YHKiNVq5fz58wQFBaHRaLzdHYlEUgghBOnp6URGRqLVlmCnCS+zYMEC0ahRI2E0GkV0dLTYtm1bie2/+uor0bJlS2E0GkW7du3Ezz//7LA/PT1djBkzRtSrV0/4+vqK1q1bi0WLFrnVpzNnzghAPuRDPir548yZMyV+l71qwa1YsYLx48ezePFiYmJimD9/PnFxcRw5coS6desWab9lyxaGDh3K7Nmzueuuu1i2bBmDBg1i9+7dtGvXDoDx48fz+++/8/nnnxMVFcVvv/3G008/TWRkJAMHDnSpX0FBQQCcOXOG4OBgz71hiUTiEdLS0mjQoIH6XS0Wt0wbDxMdHS3GjBmjvrZYLCIyMlLMnj3bafvBgweLAQMGOGyLiYkRTzzxhPq6bdu24tVXX3Voc9NNN4kXX3zR5X6lpqYKQKSmprp8jEQiqThc/Y56bZEhLy+PXbt2ERsbq27TarXExsaSkJDg9JiEhASH9gBxcXEO7Xv27MmPP/7IuXPnEEKwbt06/v77b/7xj38U25fc3FzS0tIcHhKJpOrjNYG7dOkSFouFsLAwh+1hYWEkJyc7PSY5ObnU9u+99x5t2rShfv36GAwG+vXrx8KFC7n11luL7cvs2bMJCQlRHw0aNLiOdyaRSCoL1c5N5L333mPr1q38+OOP7Nq1i3nz5jFmzBjWrl1b7DFTp04lNTVVfZw5c6YCeyyRSMoLry0y1K5dG51OR0pKisP2lJQUwsPDnR4THh5eYvvs7GymTZvGd999x4ABAwDo0KEDe/fuZe7cuUWGtzaMRiNGo9Gt/gshMJvNWCwWt46TSCQF6HQ69Hp9ubljeU3gDAYDXbp0IT4+nkGDBgGK/1l8fDxjx451ekyPHj2Ij4/nueeeU7etWbOGHj16AGAymTCZTEX8YnQ6HVar1WN9z8vLIykpiaysLI+dUyK5UfH39yciIgKDweDxc3vVTWT8+PGMGDGCrl27Eh0dzfz588nMzGTUqFEAPPLII9SrV4/Zs2cD8Oyzz9K7d2/mzZvHgAEDWL58OTt37uSDDz4AIDg4mN69ezNx4kT8/Pxo1KgRGzZs4NNPP+Xtt9/2SJ+tVisnTpxAp9MRGRmJwWCQzsASSRkQQpCXl8fFixc5ceIEzZs3L9lpt4wX8SrvvfeeaNiwoTAYDCI6Olps3bpV3de7d28xYsQIh/ZfffWVaNGihTAYDKJt27ZFHH2TkpLEyJEjRWRkpPD19RUtW7YU8+bNE1ar1eU+lbQEnZ2dLQ4ePCgyMzPde6MSSSUmOTVbHDyfKi6l51T4tTMzM8XBgwdFdna2y8e46iaiEUIWnSlMWloaISEhpKamFnH0zcnJ4cSJEzRu3BhfX18v9VAi8RxWITiclI7ZasWg09IqomKd28vynSrpO2pPtVtFlUgkbiKgRoAPeq2WOkHuLbZVdmSwvURygyOAED8fQvx88DdUL0mQFpykREaOHKmucnuK2267zWEl3BlRUVHMnz/fo9eVOMd+lqo8Zqxc+bzLCylwNxDe/EOTlA8vv/wynTp18nY3Ki1S4CSSGxxXbDaTyVTu/SgPpMDdIIwcOZINGzbwzjvvoNFo0Gg0JCYmMnr0aBo3boyfnx8tW7bknXfecXr8K6+8Qp06dQgODubJJ58kLy/PpetmZmbyyCOPEBgYSEREBPPmzSvS5sKFC9x99934+fnRuHFjvvjiiyJtNBoNixYt4s4778TPz48mTZqwcuVKdf/JkyfRaDR89dVX3HLLLfj5+dGtWzf+/vtvduzYQdeuXQkMDOTOO+/k4sWLLt41WLJkCW3btsVoNBIREeHghH769GnuueceAgMDCQ4OZvDgwQ6RNjbr6rPPPiMqKoqQkBAefPBB0tPT1TZWq5U333yTZs2aYTQaadiwIa+//rq6f/LkybRo0QJ/f3+aNGnCSy+9pIrN0qVLeeWVV9i3b5/6mS5durTU93T48GF69eqFr68vbdq0IX7tWgKMPvzfDz843MsVK1bQu3dvfH19+eKLL7h8+TJDhw6lXr16+Pv70759e7788kuHc7vyeVco1+O/Ul1xxQ/OHZ+dysC1a9dEjx49xGOPPSaSkpJEUlKSyMnJETNmzBA7duwQx48fF59//rnw9/cXK1asUI8bMWKECAwMFEOGDBEHDhwQP/30k6hTp46YNm2aS9d96qmnRMOGDcXatWvFn3/+Ke666y4RFBQknn32WbXNnXfeKTp27CgSEhLEzp07Rc+ePYWfn5/4z3/+o7YBRK1atcSHH34ojhw5IqZPny50Op04ePCgEEKIEydOCEC0atVKrF69Whw8eFB0795ddOnSRdx2221i06ZNYvfu3aJZs2biySefdKnv77//vvD19RXz588XR44cEdu3b1f7ZLFYRKdOnUSvXr3Ezp07xdatW0WXLl1E79691eNnzpwpAgMDxX333Sf2798v/vjjDxEeHu5w7yZNmiRq1Kghli5dKo4dOyY2btwoPvzwQ3X/rFmzxObNm8WJEyfEjz/+KMLCwsS///1vIYQQWVlZ4oUXXhBt27ZVP9OsrKwS35PZbBYtW7YUd9xxh9i7d6/YuHGj6NYtWgBi+VcrhdVqVe9lVFSU+Oabb8Tx48fF+fPnxdmzZ8Vbb70l9uzZIxITE8W7774rdDqdQ5JaVz7vwpTlO+WqH5wUOCdUR4ETQnGcLukPTQghxowZI+6//3719YgRI0TNmjUdHJsXLVokAgMDhcViKfFc6enpwmAwiK+++krddvnyZeHn56f248iRIwIQ27dvV9scOnRIAEUErrAwxcTEiKeeekoIUSBw//vf/9T9X375pQBEfHy8um327NmiZcuWJfbbRmRkZLF5BH/77Teh0+nE6dOn1W1//fWXw3uZOXOm8Pf3F2lpaWqbiRMnipiYGCGEEGlpacJoNDoIWmm89dZbokuXLurrmTNnio4dO7p8/C+//CL0er1ISkpSt61avdqpwM2fP7/U8w0YMEC88MILQgjXPm9nlKfAySGqF/l86ylunvM7n2895bU+LFy4kC5dulCnTh0CAwP54IMPOH36tEObjh074u/vr77u0aMHGRkZpWZdSUxMJC8vj5iYGHVbzZo1admypfr60KFD6PV6unTpom5r1aoVoaGhRc5nizm2f33o0CGHbR06dFCf21JrtW/f3mHbhQsXSuw3KMPm8+fP07dvX6f7Dx06RIMGDRxSa7Vp04bQ0FCHPkVFRTlknY2IiFCvf+jQIXJzc4u9BihZr2+++WbCw8MJDAxk+vTpRT4fdzhy5AgNGjRwSGjRtWu007Zdu3Z1eG2xWJg1axbt27enZs2aBAYG8uuvv6r9ceXzrmikwHmRResTOXctm0XrE71y/eXLlzNhwgRGjx7Nb7/9xt69exk1apTL82uVER8fH/W5LUa48DZXEi/4+fl5vD+Fr1/aNRISEhg2bBj9+/fnp59+Ys+ePbz44ose/3xEMc8DAgIc2r311lu88847TJ48mXXr1rF3717i4uIq9d+LFDgv8tRtTakX6sdTtzWtkOsZDAaH9E6bN2+mZ8+ePP3003Tu3JlmzZqRmFhUbPft20d2drb6euvWrQQGBpaaGLRp06b4+Piwbds2ddvVq1f5+++/1detWrXCbDaza9cudduRI0e4du1akfNt3bq1yOvWrVuX2IeyEhQURFRUFPHx8U73t27dmjNnzjhYsQcPHuTatWu0adPGpWs0b94cPz+/Yq+xZcsWGjVqxIsvvkjXrl1p3rw5p045WvuFP9PSaNmyJWfOnHFYDNm1c4dLx27evJl77rmHhx9+mI4dO9KkSROHz9KVz7uiqV5uy1WMh7s34uHujSrselFRUWzbto2TJ08SGBhI8+bN+fTTT/n1119p3Lgxn332GTt27KBx48YOx+Xl5TF69GimT5/OyZMnmTlzJmPHji0180NgYCCjR49m4sSJ1KpVi7p16/Liiy86HNeyZUv69evHE088waJFi9Dr9Tz33HNOrZuvv/6arl270qtXL7744gu2b9/ORx995Jmb44SXX36ZJ598krp163LnnXeSnp7O5s2bGTduHLGxsbRv355hw4Yxf/58zGYzTz/9NL179y4ytCsOX19fJk+ezKRJkzAYDNx8881cvHiRv/76i9GjR9O8eXNOnz7N8uXL6datGz///DPfffedwzmioqI4ceIEe/fupX79+gQFBZWY2/COO+6gadOmjBgxgjfffJP09HRenjkDoNSsOM2bN2flypVs2bKFGjVq8Pbbb5OSkqIKuiufd0UjLbgbiAkTJqDT6WjTpg116tQhLi6O++67jyFDhhATE8Ply5d5+umnixzXt29fmjdvzq233sqQIUMYOHAgL7/8skvXfOutt7jlllu4++67iY2NpVevXg7zbQAff/wxkZGR9O7dm/vuu4/HH3/caVW1V155heXLl9OhQwc+/fRTvvzyS5etpbIwYsQI5s+fz/vvv0/btm256667OHr0KKCIwQ8//ECNGjW49dZbiY2NpUmTJqxYscKta7z00ku88MILzJgxg9atWzNkyBB1jm7gwIE8//zzjB07lk6dOrFlyxZeeuklh+Pvv/9++vXrR58+fahTp04Rt43C6HQ6vv/+ezIyMujWrRv/+te/mDR5KgDGUgLdp0+fzk033URcXBy33XYb4eHhRaJcXPm8KxKZTcQJMptI5UOj0fDdd995PGzsRkcIwe8b/iC2z23sP3iYNq1aoK3g/IblmU1EDlElkhuM7777Tp2i+PvoUZ579jl69OxJk6YVMxdckcghqqTMnD59msDAwGIf1+POUBGU1PeNGzd6u3tl4osvvij2PbVt2xaA9PR0xowZQ6tWrXh01Chu6tqFFSu/VU5QzcZz0oKTlJnIyEj27t1b4n5PUR4zKSX1vV69eh6/XkUwcOBABz80e2wuK4888giPPPIIABarINdcfQsnSYGTlBm9Xk+zZs283Y0yU5X7XhxBQUEOjsWlU81MtkLIIapEcgNT3ZcYpcBJJDcw1VzfpMBJJJICqpvgSYGTSG5g5BBVIpFUY6q3wkmBk5SILDpTvakIeZNFZyQVgiw6U/247qIz1duAkwInkdzIFNU354oni87c4FitosIf7iCLzsiiMzbsi8507tCe3+PjK0XRmcw8M2ZL6clI3UFGMngAq1Xw1/m0Cr9u28hgtFrXMj+88847/P3337Rr145XX30VgBo1alC/fn2+/vpratWqxZYtW3j88ceJiIhg8ODB6rHx8fH4+vqyfv16Tp48yahRo6hVq5bDF7E4Jk6cyIYNG/jhhx+oW7cu06ZNY/fu3Q7DqpEjR3L+/HnWrVuHj48PzzzzjNO04i+99BJz5szhnXfe4bPPPuPBBx9k//79DkkvZ86cyfz582nYsCGPPvooDz30EEFBQbzzzjv4+/szePBgZsyYwaJFi0rt+6JFixg/fjxz5szhzjvvJDU1lc2bNwOKMNnEbcOGDZjNZsaMGcOQIUNYv369eo7ExES+//57fvrpJ65evcrgwYOZM2eOeu+mTp3Khx9+yH/+8x969epFUlIShw8fVo8PCgpi6dKlREZGsn//fh57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", + "text/plain": [ + "
" + ] + }, + "metadata": {}, + "output_type": "display_data" + } + ], + "source": [ + "#\"\"\"\n", + "from ml_utility_loss.loss_learning.visualization import plot_grad, plot_grad_2, plot_grad_3\n", + "import matplotlib.pyplot as plt\n", + "\n", + "#plot_grad_2(y, model.models)\n", + "for m in model.models:\n", + " ym = y[m]\n", + " fig, ax = plt.subplots()\n", + " plot_grad_3(ym[\"error\"], ym[\"grad\"], name=f\"{m}_grad\", fig=fig, ax=ax)\n", + "#\"\"\"" + ] + }, + { + "cell_type": "code", + "execution_count": null, + "id": "54c0e9f3", + "metadata": { + "papermill": { + "duration": 0.022023, + "end_time": "2024-07-23T14:52:33.516600", + "exception": false, + "start_time": "2024-07-23T14:52:33.494577", + "status": "completed" + }, + "tags": [] + }, + "outputs": [], + "source": [] + } + ], + "metadata": { + "accelerator": "GPU", + "celltoolbar": "Tags", + "colab": { + "authorship_tag": "ABX9TyOOVfelovKP9fLGU7SvvRie", + "gpuType": "T4", + "mount_file_id": "17POSGAvge8y9DW9WGs2jLkibaRjToayg", + "provenance": [] + }, + "kaggle": { + "accelerator": "gpu", + "dataSources": [], + "dockerImageVersionId": 30648, + "isGpuEnabled": true, + "isInternetEnabled": true, + "language": "python", + "sourceType": "notebook" + }, + "kernelspec": { + "display_name": "Python 3 (ipykernel)", + "language": "python", + "name": "python3" + }, + "language_info": { + "codemirror_mode": { + "name": "ipython", + "version": 3 + }, + "file_extension": ".py", + "mimetype": "text/x-python", + "name": "python", + "nbconvert_exporter": "python", + "pygments_lexer": "ipython3", + "version": "3.10.13" + }, + "papermill": { + "default_parameters": {}, + "duration": 3745.81969, + "end_time": "2024-07-23T14:52:35.922428", + "environment_variables": {}, + "exception": null, + "input_path": "eval/iris/tab_ddpm_concat/4/mlu-eval.ipynb", + "output_path": "eval/iris/tab_ddpm_concat/4/mlu-eval.ipynb", + "parameters": { + "allow_same_prediction": true, + "dataset": "iris", + "dataset_name": "iris", + "debug": false, + "folder": "eval", + "gp": true, + "gp_multiply": true, + "log_wandb": false, + "param_index": 0, + "path": "eval/iris/tab_ddpm_concat/4", + "path_prefix": "../../../../", + "random_seed": 4, + "single_model": "tab_ddpm_concat" + }, + "start_time": "2024-07-23T13:50:10.102738", + "version": "2.5.0" + }, + "toc": { + "base_numbering": 1, + "nav_menu": {}, + "number_sections": true, + "sideBar": true, + "skip_h1_title": false, + "title_cell": "Table of Contents", + "title_sidebar": "Contents", + "toc_cell": false, + "toc_position": {}, + "toc_section_display": true, + "toc_window_display": false + } + }, + "nbformat": 4, + "nbformat_minor": 5 +} \ No newline at end of file diff --git a/iris/tab_ddpm_concat/4/model.pt b/iris/tab_ddpm_concat/4/model.pt new file mode 100644 index 0000000000000000000000000000000000000000..da8f0dfa807ed3e165548fb0c46c6b7e99a7c609 --- /dev/null +++ b/iris/tab_ddpm_concat/4/model.pt @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:2f83b275e4c08acc19f914317c8072bea24d0808cbb3893ba9adcfd96de40a0b +size 1811678 diff --git a/iris/tab_ddpm_concat/4/params.json b/iris/tab_ddpm_concat/4/params.json new file mode 100644 index 0000000000000000000000000000000000000000..f7d9d222aa88f08a148fe83399adc6f657cab573 --- /dev/null +++ b/iris/tab_ddpm_concat/4/params.json @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:d3f4c9fb8a783ba2afd862721012e99b0875b9e45c40935f3eecf2f741aba8ad +size 1938 diff --git a/iris/tab_ddpm_concat/4/pred/error.csv b/iris/tab_ddpm_concat/4/pred/error.csv new file mode 100644 index 0000000000000000000000000000000000000000..d1c4053008fc1965dc19956648cca29b975ad914 --- /dev/null +++ b/iris/tab_ddpm_concat/4/pred/error.csv @@ -0,0 +1,201 @@ +,tab_ddpm_concat +0,-0.020743296 +1,0.11831477 +2,0.017351747 +3,-0.07961458 +4,-0.014573023 +5,0.11451337 +6,-0.03146875 +7,-0.08343989 +8,-0.009809494 +9,-0.10739535 +10,-0.01702863 +11,-0.019498229 +12,-0.008467779 +13,-0.048335016 +14,0.08363342 +15,0.051629245 +16,-0.008740917 +17,-0.035164684 +18,0.0033529997 +19,-0.0749135 +20,-0.020743221 +21,0.29220217 +22,0.008195639 +23,-0.0017793775 +24,-0.014321744 +25,0.06256127 +26,-0.03333032 +27,-0.074843824 +28,-0.00980635 +29,0.003162682 +30,0.023525178 +31,-0.021636248 +32,-0.008486941 +33,0.08538699 +34,-0.09349781 +35,-0.048579454 +36,-0.008741006 +37,0.101361334 +38,0.019557118 +39,-0.076351166 +40,0.027876288 +41,-0.02191782 +42,-0.024194658 +43,0.14436024 +44,-0.015767232 +45,0.04951477 +46,-0.0657205 +47,-0.0814026 +48,-0.008654475 +49,0.0662263 +50,-0.037798643 +51,0.056838095 +52,-0.008486941 +53,0.06156534 +54,-0.10288948 +55,0.015183985 +56,0.1724375 +57,0.13704282 +58,-0.05771309 +59,0.04335785 +60,0.00037807226 +61,-0.02335924 +62,-0.027830243 +63,-0.050997257 +64,-0.047305167 +65,0.04365778 +66,0.00019836426 +67,-0.050319493 +68,-0.053125232 +69,-0.017875552 +70,0.02552706 +71,0.12912256 +72,-0.0026096106 +73,-0.05689621 +74,-0.04837507 +75,-0.15300655 +76,-0.07383135 +77,0.0032082796 +78,0.015707314 +79,-0.033959866 +80,-0.034341335 +81,-0.012557566 +82,-0.03232342 +83,-0.028302848 +84,0.06438318 +85,0.011692524 +86,0.010601044 +87,-0.010338426 +88,0.11200477 +89,-0.073883235 +90,-0.008143365 +91,0.0036451817 +92,-0.0028296113 +93,-0.065644145 +94,-0.07208902 +95,-0.11814153 +96,-0.03335908 +97,-0.019960225 +98,0.0016946793 +99,-0.072784185 +100,-0.04284221 +101,-0.011615753 +102,-0.03413242 +103,-0.02086109 +104,0.042648107 +105,0.04983598 +106,-0.059673786 +107,-0.010544181 +108,0.12942441 +109,0.047378898 +110,0.022522569 +111,0.03578645 +112,-0.02767688 +113,-0.04037875 +114,-0.1162585 +115,-0.10068631 +116,0.20039572 +117,0.03404361 +118,0.016287804 +119,-0.0738706 +120,-0.05920744 +121,-0.01081866 +122,-0.026905894 +123,-0.017735124 +124,-0.024360657 +125,0.047030628 +126,0.04197955 +127,0.030646741 +128,-0.1339933 +129,-0.06210482 +130,-0.033610404 +131,-0.07620919 +132,-0.018856347 +133,-0.036607325 +134,-0.054843307 +135,-0.018540561 +136,-0.11109197 +137,-0.0064588785 +138,-0.019677043 +139,0.17637736 +140,-0.058660477 +141,0.093991816 +142,0.049148798 +143,-0.055419505 +144,-0.013466358 +145,-0.007506728 +146,-0.030285537 +147,0.120718956 +148,0.10713376 +149,0.0034571886 +150,-0.03479737 +151,-0.04349345 +152,0.00019574165 +153,-0.10209596 +154,-0.08268976 +155,-0.10433942 +156,0.08418423 +157,-0.0034717321 +158,0.005310178 +159,0.012067854 +160,-0.07620278 +161,0.11684668 +162,-0.028048038 +163,-0.024187922 +164,-0.016783714 +165,0.0044561625 +166,-0.061997056 +167,0.009970903 +168,0.14663756 +169,0.050736725 +170,-0.044599652 +171,-0.068117976 +172,0.005033016 +173,-0.05919653 +174,-0.09596479 +175,-0.06690514 +176,0.12500042 +177,-0.0067566037 +178,-0.02321744 +179,0.010637283 +180,0.038602352 +181,0.20524144 +182,-0.027077198 +183,-0.023521781 +184,-0.024087071 +185,0.033875525 +186,-0.06161356 +187,0.04642123 +188,-0.11425835 +189,-0.0017995834 +190,-0.037492514 +191,-0.10059309 +192,0.027952254 +193,-0.08199471 +194,0.007688403 +195,0.023153245 +196,-0.29537088 +197,-0.029718459 +198,-0.04432428 +199,0.055316865 diff --git a/iris/tab_ddpm_concat/4/pred/g.csv b/iris/tab_ddpm_concat/4/pred/g.csv new file mode 100644 index 0000000000000000000000000000000000000000..1300eba9b4e394dd3d0bccacf9292b08a16140a9 --- /dev/null +++ b/iris/tab_ddpm_concat/4/pred/g.csv @@ -0,0 +1,201 @@ +,tab_ddpm_concat +0,0.020743296 +1,0.11831477 +2,0.017351747 +3,0.07961458 +4,0.014573023 +5,0.11451337 +6,0.03146875 +7,0.08343989 +8,0.009809494 +9,0.10739535 +10,0.01702863 +11,0.019498229 +12,0.008467779 +13,0.048335016 +14,0.08363342 +15,0.051629245 +16,0.008740917 +17,0.035164684 +18,0.0033529997 +19,0.0749135 +20,0.020743221 +21,0.29220217 +22,0.008195639 +23,0.0017793775 +24,0.014321744 +25,0.06256127 +26,0.03333032 +27,0.074843824 +28,0.00980635 +29,0.003162682 +30,0.023525178 +31,0.021636248 +32,0.008486941 +33,0.08538699 +34,0.09349781 +35,0.048579454 +36,0.008741006 +37,0.101361334 +38,0.019557118 +39,0.076351166 +40,0.027876288 +41,0.02191782 +42,0.024194658 +43,0.14436024 +44,0.015767232 +45,0.04951477 +46,0.0657205 +47,0.0814026 +48,0.008654475 +49,0.0662263 +50,0.037798643 +51,0.056838095 +52,0.008486941 +53,0.06156534 +54,0.10288948 +55,0.015183985 +56,0.1724375 +57,0.13704282 +58,0.05771309 +59,0.04335785 +60,0.00037807226 +61,0.02335924 +62,0.027830243 +63,0.050997257 +64,0.047305167 +65,0.04365778 +66,0.00019836426 +67,0.050319493 +68,0.053125232 +69,0.017875552 +70,0.02552706 +71,0.12912256 +72,0.0026096106 +73,0.05689621 +74,0.04837507 +75,0.15300655 +76,0.07383135 +77,0.0032082796 +78,0.015707314 +79,0.033959866 +80,0.034341335 +81,0.012557566 +82,0.03232342 +83,0.028302848 +84,0.06438318 +85,0.011692524 +86,0.010601044 +87,0.010338426 +88,0.11200477 +89,0.073883235 +90,0.008143365 +91,0.0036451817 +92,0.0028296113 +93,0.065644145 +94,0.07208902 +95,0.11814153 +96,0.03335908 +97,0.019960225 +98,0.0016946793 +99,0.072784185 +100,0.04284221 +101,0.011615753 +102,0.03413242 +103,0.02086109 +104,0.042648107 +105,0.04983598 +106,0.059673786 +107,0.010544181 +108,0.12942441 +109,0.047378898 +110,0.022522569 +111,0.03578645 +112,0.02767688 +113,0.04037875 +114,0.1162585 +115,0.10068631 +116,0.20039572 +117,0.03404361 +118,0.016287804 +119,0.0738706 +120,0.05920744 +121,0.01081866 +122,0.026905894 +123,0.017735124 +124,0.024360657 +125,0.047030628 +126,0.04197955 +127,0.030646741 +128,0.1339933 +129,0.06210482 +130,0.033610404 +131,0.07620919 +132,0.018856347 +133,0.036607325 +134,0.054843307 +135,0.018540561 +136,0.11109197 +137,0.0064588785 +138,0.019677043 +139,0.17637736 +140,0.058660477 +141,0.093991816 +142,0.049148798 +143,0.055419505 +144,0.013466358 +145,0.007506728 +146,0.030285537 +147,0.120718956 +148,0.10713376 +149,0.0034571886 +150,0.03479737 +151,0.04349345 +152,0.00019574165 +153,0.10209596 +154,0.08268976 +155,0.10433942 +156,0.08418423 +157,0.0034717321 +158,0.005310178 +159,0.012067854 +160,0.07620278 +161,0.11684668 +162,0.028048038 +163,0.024187922 +164,0.016783714 +165,0.0044561625 +166,0.061997056 +167,0.009970903 +168,0.14663756 +169,0.050736725 +170,0.044599652 +171,0.068117976 +172,0.005033016 +173,0.05919653 +174,0.09596479 +175,0.06690514 +176,0.12500042 +177,0.0067566037 +178,0.02321744 +179,0.010637283 +180,0.038602352 +181,0.20524144 +182,0.027077198 +183,0.023521781 +184,0.024087071 +185,0.033875525 +186,0.06161356 +187,0.04642123 +188,0.11425835 +189,0.0017995834 +190,0.037492514 +191,0.10059309 +192,0.027952254 +193,0.08199471 +194,0.007688403 +195,0.023153245 +196,0.29537088 +197,0.029718459 +198,0.04432428 +199,0.055316865 diff --git a/iris/tab_ddpm_concat/4/pred/grad.csv b/iris/tab_ddpm_concat/4/pred/grad.csv new file mode 100644 index 0000000000000000000000000000000000000000..68d3b800d9736294f05d84ca283f9243a4070387 --- /dev/null +++ b/iris/tab_ddpm_concat/4/pred/grad.csv @@ -0,0 +1,201 @@ +,tab_ddpm_concat +0,0.00016333914 +1,0.031721026 +2,0.0013704709 +3,0.016861819 +4,0.00082706945 +5,0.03719449 +6,0.0018365401 +7,0.015696231 +8,4.1781048e-05 +9,0.02081516 +10,0.0026425763 +11,0.006330362 +12,0.0001421716 +13,0.0051353956 +14,0.014354712 +15,0.010092291 +16,6.876094e-05 +17,0.007661507 +18,0.00051230815 +19,0.021458888 +20,0.0001633385 +21,0.06706245 +22,0.0007115631 +23,0.00020901035 +24,0.0008322852 +25,0.009260712 +26,0.0016374039 +27,0.012219412 +28,4.1850493e-05 +29,0.0007377834 +30,0.0031083915 +31,0.003723703 +32,0.0001444292 +33,0.021344714 +34,0.021482533 +35,0.006267707 +36,6.876115e-05 +37,0.026764538 +38,0.0030371929 +39,0.009502641 +40,0.006846543 +41,0.0020490221 +42,0.0024639936 +43,0.025594134 +44,0.000316528 +45,0.0026358622 +46,0.0033092995 +47,0.01863754 +48,6.829541e-05 +49,0.0077358154 +50,0.0052027404 +51,0.017824193 +52,0.00014446452 +53,0.0125918165 +54,0.02453421 +55,0.0062250174 +56,0.042772815 +57,0.031356994 +58,0.006994242 +59,0.014931112 +60,0.00011581919 +61,0.0031735548 +62,0.0026714841 +63,0.010002997 +64,0.011083468 +65,0.002678988 +66,1.1353171e-05 +67,0.0076246927 +68,0.01861792 +69,0.0023115238 +70,0.003580037 +71,0.031614613 +72,0.0007318031 +73,0.009778252 +74,0.009996546 +75,0.048614692 +76,0.028440205 +77,0.0005554443 +78,0.0020937247 +79,0.005143491 +80,0.008549716 +81,0.0014475682 +82,0.0034167268 +83,0.004124725 +84,0.020802429 +85,0.0005893334 +86,0.000422947 +87,0.0014319592 +88,0.039832167 +89,0.009114113 +90,0.0011783773 +91,0.00075111794 +92,0.0007981449 +93,0.008942853 +94,0.011950233 +95,0.01807995 +96,0.012245651 +97,0.0022113807 +98,0.00022113757 +99,0.011438729 +100,0.010057526 +101,0.00092258066 +102,0.0032910772 +103,0.0012523781 +104,0.017205171 +105,0.0020129385 +106,0.0025410268 +107,0.0015834413 +108,0.04817774 +109,0.007089749 +110,0.0030028615 +111,0.0040468173 +112,0.0073226625 +113,0.00508517 +114,0.0231655 +115,0.022018513 +116,0.07765854 +117,0.0031613845 +118,0.0020557968 +119,0.014867168 +120,0.012795457 +121,0.00092523894 +122,0.0028096854 +123,0.0020517905 +124,0.008806849 +125,0.004897829 +126,0.0018709373 +127,0.0025327045 +128,0.050141707 +129,0.008361954 +130,0.0041722227 +131,0.014811912 +132,0.0049532107 +133,0.004768071 +134,0.0110023515 +135,0.001883924 +136,0.040706124 +137,0.0005977232 +138,0.0029360345 +139,0.02813368 +140,0.014993722 +141,0.009967099 +142,0.004422059 +143,0.0028928453 +144,0.002752082 +145,0.0009382086 +146,0.0012309373 +147,0.012906544 +148,0.046153996 +149,0.0006130895 +150,0.0048528095 +151,0.010565626 +152,5.108199e-05 +153,0.019087011 +154,0.017820682 +155,0.018267527 +156,0.02883291 +157,0.0002538488 +158,0.0008387826 +159,0.0025026617 +160,0.02772637 +161,0.01052979 +162,0.0027174975 +163,0.0015877079 +164,0.0033987113 +165,0.00026653198 +166,0.0033627634 +167,0.0010506018 +168,0.03815508 +169,0.010230179 +170,0.006434331 +171,0.01412328 +172,0.0013482239 +173,0.013549562 +174,0.019121405 +175,0.012584606 +176,0.041698866 +177,0.0006461748 +178,0.002464631 +179,0.0021804804 +180,0.009685128 +181,0.01905135 +182,0.0022008438 +183,0.001865926 +184,0.0047299583 +185,0.0040254965 +186,0.002854001 +187,0.0041711587 +188,0.04384535 +189,0.00021451006 +190,0.00484036 +191,0.015007872 +192,0.0067899292 +193,0.010676449 +194,0.0015882464 +195,0.0042187907 +196,0.051302534 +197,0.0025257026 +198,0.006265868 +199,0.0073657683 diff --git a/iris/tab_ddpm_concat/4/pred/pred.csv b/iris/tab_ddpm_concat/4/pred/pred.csv new file mode 100644 index 0000000000000000000000000000000000000000..7d40d48bb42804ce3b12e54eb398c2200a1f24aa --- /dev/null +++ b/iris/tab_ddpm_concat/4/pred/pred.csv @@ -0,0 +1,201 @@ +,tab_ddpm_concat +0,0.15811849 +1,0.46916017 +2,0.9197327 +3,0.8533674 +4,0.16428876 +5,0.5240372 +6,0.9351144 +7,0.8824595 +8,0.15685718 +9,0.55130935 +10,0.88088924 +11,0.8268414 +12,0.1581989 +13,0.5795616 +14,0.80218416 +15,0.8373435 +16,0.15792575 +17,0.40856 +18,0.86934626 +19,0.82755655 +20,0.15811856 +21,0.8053335 +22,0.9112986 +23,0.90060157 +24,0.16454004 +25,0.8920583 +26,0.93492365 +27,0.8896753 +28,0.15686032 +29,0.809079 +30,0.88932735 +31,0.85906553 +32,0.15817973 +33,0.6804867 +34,0.78610086 +35,0.85140336 +36,0.15792567 +37,0.768028 +38,0.85132253 +39,0.8609708 +40,0.44454294 +41,0.8904631 +42,0.91772455 +43,0.89160824 +44,0.16309455 +45,0.9428481 +46,0.9342795 +47,0.88518053 +48,0.1580122 +49,0.8721426 +50,0.8908813 +51,0.83068866 +52,0.15817973 +53,0.78061295 +54,0.79294914 +55,0.85116285 +56,0.39465973 +57,0.86125976 +58,0.87960887 +59,0.84874505 +60,0.41704473 +61,0.8890217 +62,0.91408896 +63,0.8819847 +64,0.5225873 +65,0.9386582 +66,0.93344814 +67,0.91626364 +68,0.31738758 +69,0.9027594 +70,0.8913292 +71,0.8621468 +72,0.568819 +73,0.8288181 +74,0.7876038 +75,0.77199346 +76,0.36778995 +77,0.88098603 +78,0.8817006 +79,0.87494284 +80,0.44714016 +81,0.89982337 +82,0.9095958 +83,0.91361636 +84,0.510537 +85,0.94435245 +86,0.9448171 +87,0.9223215 +88,0.334227 +89,0.8846027 +90,0.8897745 +91,0.8758674 +92,0.568599 +93,0.81395453 +94,0.80007803 +95,0.81296957 +96,0.3475933 +97,0.8889425 +98,0.8658341 +99,0.86660975 +100,0.43863928 +101,0.9007652 +102,0.9077868 +103,0.9210581 +104,0.20931478 +105,0.9448364 +106,0.9403262 +107,0.9206728 +108,0.35164663 +109,0.8899715 +110,0.88832474 +111,0.90644175 +112,0.5437517 +113,0.84533554 +114,0.7795801 +115,0.7951523 +116,0.35725847 +117,0.90429085 +118,0.88042724 +119,0.86552334 +120,0.4462998 +121,0.9015623 +122,0.9150133 +123,0.9241841 +124,0.5455318 +125,0.942031 +126,0.9401416 +127,0.92564714 +128,0.37185463 +129,0.89638114 +130,0.89506954 +131,0.8822768 +132,0.55257225 +133,0.816726 +134,0.81732374 +135,0.8722655 +136,0.35853037 +137,0.9024438 +138,0.8505702 +139,0.87494195 +140,0.42282102 +141,0.91148806 +142,0.91200817 +143,0.915595 +144,0.5564261 +145,0.9237102 +146,0.93796843 +147,0.93582654 +148,0.32935598 +149,0.88581014 +150,0.8938826 +151,0.88722914 +152,0.57162434 +153,0.82382995 +154,0.7894773 +155,0.8206606 +156,0.40771365 +157,0.905431 +158,0.8694496 +159,0.87838596 +160,0.4052787 +161,0.9139481 +162,0.91387117 +163,0.9177313 +164,0.55310875 +165,0.9324865 +166,0.93800294 +167,0.93793845 +168,0.41915217 +169,0.8705957 +170,0.8840803 +171,0.890368 +172,0.5764616 +173,0.82651776 +174,0.7948413 +175,0.83307767 +176,0.41071472 +177,0.9021461 +178,0.87271017 +179,0.8769554 +180,0.42816758 +181,0.91727424 +182,0.914842 +183,0.9183974 +184,0.5458054 +185,0.9288759 +186,0.93838644 +187,0.9414216 +188,0.34712973 +189,0.8961183 +190,0.8911874 +191,0.8994069 +192,0.59938085 +193,0.8439312 +194,0.7895066 +195,0.82341677 +196,0.5035709 +197,0.9076035 +198,0.8516033 +199,0.8924342 diff --git a/iris/tab_ddpm_concat/4/pred/y.csv b/iris/tab_ddpm_concat/4/pred/y.csv new file mode 100644 index 0000000000000000000000000000000000000000..a4860b935caf8f38b1c0c7f88a821071be8182e5 --- /dev/null +++ b/iris/tab_ddpm_concat/4/pred/y.csv @@ -0,0 +1,201 @@ +,tab_ddpm_concat +0,0.17886178 +1,0.3508454 +2,0.90238094 +3,0.93298197 +4,0.17886178 +5,0.40952381 +6,0.96658313 +7,0.9658994 +8,0.16666667 +9,0.6587047 +10,0.89791787 +11,0.84633964 +12,0.16666667 +13,0.6278966 +14,0.71855074 +15,0.78571427 +16,0.16666667 +17,0.4437247 +18,0.86599326 +19,0.90247005 +20,0.17886178 +21,0.5131313 +22,0.90310293 +23,0.90238094 +24,0.17886178 +25,0.82949704 +26,0.96825397 +27,0.96451914 +28,0.16666667 +29,0.8059163 +30,0.86580217 +31,0.8807018 +32,0.16666667 +33,0.5950997 +34,0.8795987 +35,0.8999828 +36,0.16666667 +37,0.6666667 +38,0.8317654 +39,0.93732196 +40,0.41666666 +41,0.91238093 +42,0.9419192 +43,0.747248 +44,0.17886178 +45,0.8933333 +46,1.0 +47,0.96658313 +48,0.16666667 +49,0.8059163 +50,0.92867994 +51,0.77385056 +52,0.16666667 +53,0.7190476 +54,0.8958386 +55,0.83597887 +56,0.22222222 +57,0.72421694 +58,0.93732196 +59,0.8053872 +60,0.41666666 +61,0.91238093 +62,0.9419192 +63,0.93298197 +64,0.56989247 +65,0.8950004 +66,0.9332498 +67,0.96658313 +68,0.3705128 +69,0.9206349 +70,0.86580217 +71,0.73302424 +72,0.5714286 +73,0.8857143 +74,0.83597887 +75,0.925 +76,0.4416213 +77,0.87777776 +78,0.86599326 +79,0.9089027 +80,0.4814815 +81,0.91238093 +82,0.9419192 +83,0.9419192 +84,0.44615385 +85,0.9326599 +86,0.9342161 +87,0.9326599 +88,0.22222222 +89,0.95848596 +90,0.89791787 +91,0.87222224 +92,0.5714286 +93,0.8795987 +94,0.87216705 +95,0.9311111 +96,0.3809524 +97,0.9089027 +98,0.86413944 +99,0.93939394 +100,0.4814815 +101,0.91238093 +102,0.9419192 +103,0.9419192 +104,0.16666667 +105,0.8950004 +106,1.0 +107,0.93121696 +108,0.22222222 +109,0.8425926 +110,0.86580217 +111,0.8706553 +112,0.5714286 +113,0.8857143 +114,0.8958386 +115,0.8958386 +116,0.15686275 +117,0.87024724 +118,0.86413944 +119,0.93939394 +120,0.50550723 +121,0.91238093 +122,0.9419192 +123,0.9419192 +124,0.56989247 +125,0.8950004 +126,0.89816207 +127,0.8950004 +128,0.50584793 +129,0.95848596 +130,0.92867994 +131,0.95848596 +132,0.5714286 +133,0.85333335 +134,0.87216705 +135,0.8908061 +136,0.46962234 +137,0.9089027 +138,0.87024724 +139,0.6985646 +140,0.4814815 +141,0.81749624 +142,0.86285937 +143,0.9710145 +144,0.56989247 +145,0.93121696 +146,0.96825397 +147,0.8151076 +148,0.22222222 +149,0.88235295 +150,0.92867994 +151,0.9307226 +152,0.5714286 +153,0.9259259 +154,0.87216705 +155,0.925 +156,0.32352942 +157,0.9089027 +158,0.86413944 +159,0.8663181 +160,0.4814815 +161,0.79710144 +162,0.9419192 +163,0.9419192 +164,0.56989247 +165,0.9280303 +166,1.0 +167,0.92796755 +168,0.2725146 +169,0.81985897 +170,0.92867994 +171,0.95848596 +172,0.5714286 +173,0.8857143 +174,0.8908061 +175,0.8999828 +176,0.2857143 +177,0.9089027 +178,0.8959276 +179,0.8663181 +180,0.38956523 +181,0.7120328 +182,0.9419192 +183,0.9419192 +184,0.56989247 +185,0.8950004 +186,1.0 +187,0.8950004 +188,0.46138808 +189,0.89791787 +190,0.92867994 +191,1.0 +192,0.5714286 +193,0.9259259 +194,0.7818182 +195,0.8002635 +196,0.7989418 +197,0.93732196 +198,0.8959276 +199,0.8371173 diff --git a/iris/tab_ddpm_concat/4/pred/y_real.csv b/iris/tab_ddpm_concat/4/pred/y_real.csv new file mode 100644 index 0000000000000000000000000000000000000000..801e9d3b6ff5f40b4dd0446f34f75e97566c0832 --- /dev/null +++ b/iris/tab_ddpm_concat/4/pred/y_real.csv @@ -0,0 +1,201 @@ +,tab_ddpm_concat +0,0.9419192 +1,0.9419192 +2,0.9419192 +3,0.9419192 +4,0.9658994 +5,0.9658994 +6,0.9658994 +7,0.9658994 +8,1.0 +9,1.0 +10,1.0 +11,1.0 +12,0.9259259 +13,0.9259259 +14,0.9259259 +15,0.9259259 +16,0.9073684 +17,0.9073684 +18,0.9073684 +19,0.9073684 +20,0.9419192 +21,0.9419192 +22,0.9419192 +23,0.9419192 +24,0.9658994 +25,0.9658994 +26,0.9658994 +27,0.9658994 +28,1.0 +29,1.0 +30,1.0 +31,1.0 +32,0.9259259 +33,0.9259259 +34,0.9259259 +35,0.9259259 +36,0.9073684 +37,0.9073684 +38,0.9073684 +39,0.9073684 +40,0.9419192 +41,0.9419192 +42,0.9419192 +43,0.9419192 +44,0.9658994 +45,0.9658994 +46,0.9658994 +47,0.9658994 +48,1.0 +49,1.0 +50,1.0 +51,1.0 +52,0.9259259 +53,0.9259259 +54,0.9259259 +55,0.9259259 +56,0.9073684 +57,0.9073684 +58,0.9073684 +59,0.9073684 +60,0.9419192 +61,0.9419192 +62,0.9419192 +63,0.9419192 +64,0.9658994 +65,0.9658994 +66,0.9658994 +67,0.9658994 +68,1.0 +69,1.0 +70,1.0 +71,1.0 +72,0.9259259 +73,0.9259259 +74,0.9259259 +75,0.9259259 +76,0.9073684 +77,0.9073684 +78,0.9073684 +79,0.9073684 +80,0.9419192 +81,0.9419192 +82,0.9419192 +83,0.9419192 +84,0.9658994 +85,0.9658994 +86,0.9658994 +87,0.9658994 +88,1.0 +89,1.0 +90,1.0 +91,1.0 +92,0.9259259 +93,0.9259259 +94,0.9259259 +95,0.9259259 +96,0.9073684 +97,0.9073684 +98,0.9073684 +99,0.9073684 +100,0.9419192 +101,0.9419192 +102,0.9419192 +103,0.9419192 +104,0.9658994 +105,0.9658994 +106,0.9658994 +107,0.9658994 +108,1.0 +109,1.0 +110,1.0 +111,1.0 +112,0.9259259 +113,0.9259259 +114,0.9259259 +115,0.9259259 +116,0.9073684 +117,0.9073684 +118,0.9073684 +119,0.9073684 +120,0.9419192 +121,0.9419192 +122,0.9419192 +123,0.9419192 +124,0.9658994 +125,0.9658994 +126,0.9658994 +127,0.9658994 +128,1.0 +129,1.0 +130,1.0 +131,1.0 +132,0.9259259 +133,0.9259259 +134,0.9259259 +135,0.9259259 +136,0.9073684 +137,0.9073684 +138,0.9073684 +139,0.9073684 +140,0.9419192 +141,0.9419192 +142,0.9419192 +143,0.9419192 +144,0.9658994 +145,0.9658994 +146,0.9658994 +147,0.9658994 +148,1.0 +149,1.0 +150,1.0 +151,1.0 +152,0.9259259 +153,0.9259259 +154,0.9259259 +155,0.9259259 +156,0.9073684 +157,0.9073684 +158,0.9073684 +159,0.9073684 +160,0.9419192 +161,0.9419192 +162,0.9419192 +163,0.9419192 +164,0.9658994 +165,0.9658994 +166,0.9658994 +167,0.9658994 +168,1.0 +169,1.0 +170,1.0 +171,1.0 +172,0.9259259 +173,0.9259259 +174,0.9259259 +175,0.9259259 +176,0.9073684 +177,0.9073684 +178,0.9073684 +179,0.9073684 +180,0.9419192 +181,0.9419192 +182,0.9419192 +183,0.9419192 +184,0.9658994 +185,0.9658994 +186,0.9658994 +187,0.9658994 +188,1.0 +189,1.0 +190,1.0 +191,1.0 +192,0.9259259 +193,0.9259259 +194,0.9259259 +195,0.9259259 +196,0.9073684 +197,0.9073684 +198,0.9073684 +199,0.9073684