diff --git a/configs/train.yaml b/configs/train.yaml index 7ad438c..f556db2 100644 --- a/configs/train.yaml +++ b/configs/train.yaml @@ -6,7 +6,7 @@ GENERAL: TRAIN: LR: 1e-4 WEIGHT_DECAY: 0.00002 - BATCH_SIZE: 32 + BATCH_SIZE: 16 #Reduced batch size from 32 to 16 EPOCH: 2000 STEP: 1000000 LOG_STEPS: 10 diff --git a/data/inter_human_processed/ignore_list.txt b/data/inter_human_processed/ignore_list.txt new file mode 100644 index 0000000..cc89e52 --- /dev/null +++ b/data/inter_human_processed/ignore_list.txt @@ -0,0 +1,5 @@ +851 +6684 +269 +5575 +5366 diff --git a/data/inter_human_processed/train.txt b/data/inter_human_processed/train.txt new file mode 100644 index 0000000..324f20c --- /dev/null +++ b/data/inter_human_processed/train.txt @@ -0,0 +1,7772 @@ +5183 +4126 +6779 +3170 +4556 +5189 +2216 +2182 +1697 +4955 +2630 +2626 +382 +2225 +7665 +5212 +7028 +7661 +3893 +5074 +2120 +5625 +1226 +7367 +6204 +2614 +3153 +5666 +4475 +6534 +6198 +3147 +1980 +3072 +6663 +2731 +625 +6131 +4726 +929 +2819 +7598 +820 +6835 +2903 +448 +6334 +7129 +5240 +369 +6686 +2408 +3596 +3344 +4011 +1282 +1640 +5378 +2745 +2313 +3732 +2230 +3509 +2636 +4178 +1161 +1476 +7184 +2740 +570 +4410 +6150 +6642 +5538 +3380 +4060 +1823 +2298 +3284 +5066 +4549 +817 +1418 +7085 +3184 +4616 +1680 +2125 +3180 +7186 +5747 +4415 +3014 +3407 +4679 +3216 +405 +1005 +517 +83 +5155 +2004 +3588 +5785 +3346 +4900 +4597 +5615 +6347 +6333 +4864 +4964 +7522 +3625 +7345 +772 +6771 +2798 +6641 +6716 +1653 +1793 +792 +2985 +3801 +6120 +3260 +6331 +1312 +7614 +5692 +2669 +5548 +6187 +7183 +1228 +5474 +6754 +6098 +5418 +5117 +2851 +6354 +3478 +2224 +5169 +1170 +7631 +201 +238 +6290 +2523 +1621 +3993 +6390 +779 +3577 +910 +1599 +1953 +6435 +61 +4066 +1568 +1413 +6326 +887 +1973 +6531 +4424 +2705 +2456 +2384 +2560 +1068 +6816 +1596 +1076 +6899 +6915 +7374 +2038 +5820 +4473 +4571 +2610 +4785 +7059 +6741 +2110 +7609 +3400 +4028 +2390 +4553 +2286 +166 +4857 +7535 +4230 +3374 +6489 +176 +1214 +4653 +4242 +2605 +2144 +5283 +4360 +4841 +1352 +2147 +1221 +3528 +4026 +3367 +2714 +2171 +3586 +669 +3634 +4692 +5244 +4144 +6171 +292 +1390 +1625 +5892 +4739 +5485 +6989 +5488 +3838 +6085 +7557 +5067 +6712 +1087 +3227 +5410 +7444 +1443 +6394 +5016 +7422 +2113 +700 +6261 +1637 +1996 +5086 +2117 +4118 +3507 +3192 +2579 +4420 +1855 +2982 +2406 +3903 +2795 +4547 +1529 +3282 +7092 +7488 +6054 +7727 +2055 +209 +2584 +7437 +686 +4190 +4744 +204 +6323 +7351 +680 +1533 +3242 +3624 +3777 +5631 +3498 +7300 +5100 +6524 +656 +7443 +5679 +3459 +1681 +3149 +584 +1664 +3423 +3759 +6047 +1911 +1720 +5563 +6005 +5940 +2484 +1123 +1342 +5265 +3827 +6959 +4074 +389 +3990 +1796 +2389 +4007 +3201 +2030 +7128 +4699 +5466 +721 +7657 +4020 +5174 +84 +4714 +4335 +6233 +1351 +6936 +3611 +7033 +945 +6474 +4010 +210 +1480 +6325 +5703 +5840 +1622 +4414 +6335 +3387 +3606 +1457 +7355 +1581 +5475 +4507 +3055 +3307 +3456 +5933 +6419 +6543 +2421 +5662 +5520 +12 +1679 +3463 +2547 +1305 +2644 +4494 +2715 +3287 +3210 +7159 +6647 +1324 +3948 +2593 +1649 +1168 +5547 +5104 +4461 +5079 +2210 +5225 +3678 +3567 +439 +5870 +7370 +4753 +3978 +7755 +5877 +3080 +4575 +4891 +4094 +3337 +2341 +6981 +3186 +1079 +3179 +3365 +624 +744 +6362 +6061 +2860 +2417 +2369 +143 +3079 +5044 +4887 +5701 +1899 +3382 +7322 +4271 +7088 +3314 +124 +5619 +5510 +7140 +5814 +5858 +2897 +3786 +1115 +2072 +3621 +3496 +7226 +1383 +7281 +137 +6633 +5311 +4143 +4285 +7756 +6865 +6625 +24 +5032 +1164 +7030 +5617 +322 +2297 +1101 +734 +6617 +4247 +747 +4880 +6014 +6170 +2836 +1726 +2514 +6303 +852 +4981 +1293 +2557 +307 +3961 +1723 +4218 +4059 +6436 +6022 +5134 +2542 +4022 +6724 +2843 +4988 +249 +4649 +97 +3946 +2872 +7334 +1976 +2823 +375 +1097 +1136 +4501 +2684 +5817 +6554 +2641 +4416 +7411 +7775 +2698 +4001 +971 +3084 +2285 +6938 +6445 +5955 +3442 +7175 +3520 +7638 +7068 +5214 +919 +1216 +6200 +7386 +5295 +3099 +899 +5269 +7493 +683 +4882 +7268 +4255 +1570 +5328 +6673 +6514 +1595 +5862 +2718 +7271 +5848 +5695 +4951 +1445 +5620 +3556 +1803 +1632 +5276 +7569 +4295 +7362 +7545 +4651 +2983 +6048 +2915 +433 +3158 +4097 +5527 +2696 +5665 +3411 +3835 +1456 +1366 +7143 +5774 +6602 +4458 +1032 +1768 +3526 +6845 +2816 +3714 +4840 +6029 +2178 +5073 +5851 +4274 +4315 +4881 +2198 +3009 +2530 +3821 +5236 +5010 +5135 +647 +2627 +7279 +4706 +6541 +666 +301 +6677 +429 +4228 +2434 +2461 +407 +1929 +7264 +7132 +4390 +7192 +5206 +5772 +4389 +2112 +7648 +6777 +419 +2874 +3338 +1251 +1504 +3222 +3563 +2813 +3355 +454 +3235 +4722 +2392 +4004 +5368 +1469 +3357 +575 +462 +4795 +7325 +5152 +6804 +2396 +4922 +2991 +693 +4866 +6970 +1993 +7110 +5487 +4596 +2768 +6032 +1950 +1073 +41 +6969 +2914 +7613 +1207 +4817 +2725 +6917 +7372 +4067 +7540 +2960 +6978 +6492 +6263 +6827 +6306 +2537 +1718 +2247 +4350 +506 +3913 +2223 +4165 +4288 +4588 +7572 +6068 +5556 +3083 +514 +3924 +487 +5555 +2194 +5070 +2282 +4783 +6988 +6907 +2215 +876 +5118 +366 +2276 +883 +178 +5090 +4487 +3944 +1850 +2528 +2175 +2197 +2867 +5262 +1479 +3361 +6320 +5983 +6944 +6411 +3241 +961 +6789 +1318 +7125 +4323 +6184 +4846 +2195 +5925 +3402 +1839 +1630 +2200 +551 +5961 +864 +2388 +6814 +4806 +6568 +4877 +3045 +7007 +4987 +2080 +4287 +6740 +6224 +2549 +3701 +6612 +5506 +248 +6501 +7026 +3787 +243 +1065 +3443 +6229 +5178 +4374 +6431 +1942 +7292 +4705 +3976 +5823 +2883 +1341 +302 +5799 +1474 +3352 +7693 +6074 +5704 +598 +5145 +4670 +4820 +6497 +3552 +5745 +3250 +716 +1372 +1661 +5395 +2052 +4225 +34 +4610 +3114 +663 +2258 +1049 +15 +1323 +5231 +6231 +2628 +5709 +2969 +949 +6010 +3581 +6286 +470 +2922 +1960 +7319 +3956 +5798 +7160 +1620 +6887 +3731 +5312 +3454 +3031 +6183 +981 +5365 +6603 +3377 +7364 +6870 +4635 +2658 +7213 +6836 +4595 +2318 +2295 +101 +4656 +1791 +5443 +6206 +2324 +2472 +5188 +3445 +5057 +7327 +2334 +2550 +6566 +4540 +5524 +3837 +5655 +7713 +3127 +6421 +3600 +1798 +6267 +129 +7761 +5040 +1736 +7234 +3492 +6794 +2243 +2386 +3228 +4272 +224 +882 +3363 +7306 +5444 +7742 +260 +3970 +397 +6477 +807 +4348 +2518 +4830 +4309 +7765 +592 +2191 +4032 +3875 +1083 +5383 +3234 +3181 +5470 +3017 +5448 +3988 +5932 +2573 +5221 +4793 +5857 +859 +866 +2201 +2173 +5551 +4621 +6017 +2059 +2575 +935 +3839 +5255 +4954 +3849 +2046 +6041 +4018 +1628 +78 +1810 +649 +1785 +1567 +4502 +6040 +5699 +6077 +1270 +5355 +2157 +5380 +7646 +3859 +1253 +7072 +5663 +6857 +3638 +7278 +542 +40 +3190 +7199 +725 +5641 +7065 +4622 +2228 +815 +6466 +6738 +5323 +2859 +5673 +2837 +1805 +3124 +4843 +6795 +5160 +5906 +3860 +2958 +2314 +5069 +825 +7431 +2356 +576 +7645 +6636 +3727 +357 +1319 +6882 +5599 +5441 +3636 +1484 +3530 +4172 +327 +3534 +4366 +1124 +6154 +5773 +6630 +7415 +3703 +6447 +1047 +6812 +5068 +2689 +2166 +1742 +2649 +1611 +5198 +186 +615 +6080 +1934 +414 +2882 +7672 +4637 +5078 +3120 +3623 +1451 +1852 +2141 +2077 +5403 +2917 +3440 +1160 +6294 +5080 +3448 +3465 +7484 +2251 +2415 +7479 +21 +3711 +1526 +344 +3393 +1081 +4755 +2822 +840 +6721 +2763 +5479 +6578 +4929 +81 +3078 +2987 +1046 +5649 +2532 +6001 +6910 +1800 +5191 +5949 +7376 +4491 +133 +3319 +7120 +6446 +3743 +1682 +3317 +4193 +1248 +3654 +904 +3716 +6453 +7619 +4209 +359 +7732 +7448 +4728 +1772 +5853 +4422 +6126 +4061 +7273 +2975 +685 +7403 +5875 +4091 +5806 +5170 +4273 +5458 +1449 +2729 +5084 +4451 +4690 +4386 +7165 +7331 +3432 +6540 +94 +3383 +140 +5573 +1426 +7674 +6407 +6393 +681 +6059 +1107 +3366 +6058 +2552 +2545 +3982 +2319 +3969 +1026 +1424 +1175 +6697 +7427 +1288 +991 +242 +3868 +3733 +2012 +3143 +170 +2737 +6272 +1900 +7679 +3230 +3005 +2445 +7470 +401 +2998 +2043 +4000 +6353 +5867 +3840 +6442 +5181 +6502 +1231 +5484 +4766 +2128 +5652 +3326 +1478 +2726 +2865 +1284 +7724 +6149 +2901 +6587 +6479 +2242 +485 +6727 +1236 +6122 +6260 +1543 +3756 +3853 +3328 +5730 +2515 +6215 +5729 +381 +5838 +5523 +1882 +2516 +5285 +2024 +146 +2812 +1438 +2744 +4043 +2799 +1597 +7526 +1715 +597 +2657 +548 +4137 +1546 +5690 +7283 +3074 +1821 +5442 +907 +1274 +7583 +2511 +4279 +7407 +3060 +6219 +1725 +3736 +6800 +2432 +5076 +6640 +4927 +6015 +6236 +5053 +4269 +6576 +6788 +937 +400 +1836 +537 +1337 +471 +2869 +4040 +6700 +2109 +4729 +4488 +1756 +2720 +4291 +5797 +3173 +1060 +5462 +2784 +5571 +5700 +4174 +3723 +4252 +6577 +4517 +7036 +6790 +5154 +4431 +346 +5314 +2366 +5422 +5423 +6586 +6249 +1296 +2709 +5289 +3722 +403 +6567 +6408 +5453 +3327 +879 +1477 +3532 +6268 +996 +1454 +5935 +2929 +5981 +2336 +139 +1344 +2533 +6695 +7452 +6226 +5203 +6227 +4121 +1077 +5589 +49 +4802 +2062 +3979 +589 +788 +6939 +4123 +7209 +6367 +1119 +2343 +7490 +4333 +5399 +7624 +6300 +2465 +1495 +4327 +4786 +1884 +7303 +7719 +1455 +2162 +6743 +538 +5009 +239 +3490 +4223 +6283 +4087 +1986 +539 +6343 +1672 +6324 +7203 +5719 +6278 +2766 +5047 +1879 +1930 +886 +2307 +7082 +6202 +3433 +3223 +6186 +1088 +3469 +6561 +980 +2357 +5482 +794 +4768 +7478 +7541 +2096 +3629 +934 +6097 +1470 +1473 +1702 +5421 +5517 +6701 +32 +6305 +1807 +6410 +7233 +7591 +2880 +616 +2831 +3720 +3434 +2946 +1511 +5676 +7449 +5778 +1705 +7397 +4731 +240 +7435 +675 +871 +7302 +148 +5636 +2664 +5471 +1515 +6809 +2587 +6624 +4213 +2652 +4300 +3252 +4899 +6173 +2835 +7069 +1999 +900 +7528 +2679 +2035 +3169 +7196 +4815 +413 +3934 +5761 +6496 +6045 +270 +2331 +6661 +3061 +7197 +4325 +7520 +5748 +6232 +4678 +7307 +7417 +5735 +1585 +1020 +4153 +1178 +6133 +6052 +6813 +3290 +5098 +4526 +2061 +4725 +5246 +7720 +1027 +1577 +5737 +5512 +56 +4251 +6119 +3360 +4331 +3019 +3974 +3617 +759 +7594 +1607 +6878 +7779 +4544 +4628 +5945 +6385 +4552 +3806 +2920 +2037 +5333 +4322 +7169 +2344 +4698 +5315 +2893 +2753 +14 +533 +4662 +5639 +724 +7316 +3070 +6609 +2556 +4002 +151 +1801 +4133 +5728 +577 +593 +1822 +507 +555 +6494 +956 +3791 +1905 +3829 +5385 +2520 +326 +3297 +2435 +2625 +6454 +5257 +6358 +7055 +2240 +5963 +5107 +3994 +5715 +2489 +6101 +3156 +1348 +531 +3002 +4334 +2811 +6066 +7578 +1 +3566 +3185 +4382 +6711 +4646 +3538 +2899 +3766 +3023 +5199 +2761 +6175 +1869 +1519 +3271 +5710 +1037 +6698 +5025 +4754 +722 +2312 +5282 +2850 +7429 +6152 +2457 +7222 +3152 +4812 +5661 +634 +86 +520 +5398 +3902 +2367 +3298 +1498 +5163 +2620 +6776 +5746 +4421 +1740 +2232 +5859 +1308 +5528 +3431 +5242 +7593 +7377 +7044 +6572 +776 +990 +823 +5261 +2735 +3856 +3847 +6689 +623 +4219 +5672 +3183 +2662 +2328 +4282 +3967 +51 +4798 +7013 +806 +824 +6770 +5964 +5330 +7333 +7753 +5644 +2186 +3106 +6485 +3427 +257 +4379 +2017 +1370 +1204 +187 +7041 +2834 +7073 +1254 +7675 +3276 +6675 +5756 +3123 +2710 +1300 +2032 +2965 +7297 +3258 +3952 +6553 +865 +6437 +7090 +3487 +3041 +7721 +154 +1496 +1727 +165 +2471 +6116 +1365 +6158 +4601 +4518 +6146 +6060 +2252 +265 +6195 +2219 +6302 +4030 +365 +2571 +5834 +5051 +6282 +2259 +6365 +5768 +6448 +6401 +3368 +4996 +664 +2087 +6883 +3110 +5492 +7771 +2750 +6147 +4120 +3919 +3364 +3755 +1593 +2048 +7584 +6509 +29 +6034 +3738 +1272 +309 +5270 +3165 +7220 +4429 +2548 +5653 +653 +1142 +4625 +5344 +7446 +7456 +1425 +2084 +6346 +3404 +4266 +6717 +5923 +7669 +7075 +3842 +1802 +4036 +7475 +2933 +968 +2654 +458 +71 +1790 +3168 +5138 +2167 +6893 +556 +1196 +5248 +5596 +4574 +2050 +5841 +7406 +2207 +2820 +1114 +890 +7752 +3292 +6487 +5725 +347 +6611 +2427 +5544 +3489 +4743 +3112 +3157 +4712 +7424 +6245 +635 +16 +7534 +5637 +196 +2245 +4437 +2655 +3826 +6470 +227 +1918 +1721 +5149 +3986 +3871 +6631 +6364 +6118 +3652 +667 +5921 +5001 +6083 +290 +4551 +6377 +2372 +6127 +7098 +1315 +5056 +787 +7581 +6284 +569 +1692 +7527 +4495 +5821 +2637 +4959 +3294 +3414 +925 +1362 +7272 +4306 +4876 +1609 +4777 +4412 +622 +5564 +1122 +3932 +718 +7047 +7715 +1299 +7729 +3500 +4453 +2742 +7174 +3488 +1969 +4801 +6555 +7516 +3951 +2305 +6318 +1633 +1255 +6166 +4188 +3171 +7382 +1452 +3457 +5002 +2981 +1657 +3891 +335 +4346 +1782 +1587 +1762 +2781 +7677 +6210 +1683 +6067 +7141 +942 +5518 +540 +3568 +4166 +2000 +4064 +4535 +1549 +4606 +7002 +3886 +1623 +5954 +543 +5279 +2833 +2460 +3747 +2682 +2908 +4949 +5974 +6990 +2870 +2226 +6793 +1062 +7244 +1313 +7064 +4222 +2454 +6455 +1448 +1771 +4280 +6550 +483 +2640 +2792 +120 +640 +3264 +2010 +902 +2127 +7152 +7744 +5287 +2028 +2910 +1089 +4388 +4289 +7053 +844 +220 +7658 +1386 +4227 +7291 +7339 +3311 +4807 +7666 +970 +6998 +4789 +3551 +2599 +604 +6638 +2959 +2642 +7289 +6884 +4808 +6615 +6007 +3410 +1304 +1922 +3460 +5802 +468 +5167 +2513 +1481 +5787 +5767 +3513 +5251 +2221 +6218 +3597 +4246 +4150 +4290 +7639 +3626 +1730 +834 +2841 +2404 +2474 +3029 +3768 +5633 +1590 +5353 +2439 +1748 +4477 +2677 +5854 +6128 +4100 +6254 +1550 +3461 +2100 +2974 +5682 +4644 +938 +4839 +5093 +4464 +3481 +2095 +1141 +4608 +4358 +5175 +2203 +7620 +1328 +6095 +4688 +6240 +7315 +5091 +7733 +5012 +384 +1845 +132 +7218 +3857 +5881 +1488 +4911 +1957 +232 +915 +5713 +134 +3894 +96 +5738 +6063 +7447 +3268 +6979 +3279 +4859 +7587 +7260 +6125 +7570 +4156 +4989 +5105 +2326 +816 +4263 +710 +526 +6841 +2323 +5624 +6832 +5373 +1660 +7188 +4604 +7772 +6976 +2365 +5439 +6888 +4703 +821 +4611 +4264 +766 +1538 +1384 +5543 +3471 +4666 +7518 +2603 +1903 +5419 +626 +1045 +1292 +2723 +5386 +5736 +1635 +3901 +5211 +3880 +6954 +3690 +1213 +3693 +2504 +1343 +4837 +480 +1428 +6533 +4971 +6594 +4792 +7628 +2114 +7717 +6373 +6402 +4370 +2425 +181 +2597 +1432 +278 +3449 +7034 +578 +6360 +211 +368 +6246 +6871 +5815 +2400 +1137 +6628 +7655 +5342 +2139 +1639 +3213 +6545 +3178 +3968 +3554 +229 +4433 +1289 +748 +723 +7106 +1128 +6238 +5558 +1941 +3570 +5916 +1450 +3585 +7150 +733 +4336 +2541 +95 +2674 +3503 +308 +3305 +6791 +6687 +4871 +6943 +5481 +4796 +1360 +5795 +3395 +4250 +5562 +5450 +5565 +805 +5428 +7567 +3825 +221 +1132 +6761 +1158 +1225 +7654 +2719 +4664 +4769 +775 +4813 +3637 +6106 +3639 +4661 +3662 +1940 +3965 +6908 +3450 +545 +3142 +398 +7217 +674 +6934 +7181 +4238 +6199 +1177 +490 +1244 +169 +4530 +3702 +2332 +7375 +6039 +6542 +1165 +6991 +7455 +3726 +5683 +4736 +7172 +5822 +2659 +6135 +5354 +6653 +6517 +4305 +1699 +6021 +7502 +7173 +6537 +4631 +1246 +5335 +4169 +112 +4402 +180 +665 +2106 +3999 +284 +5885 +3912 +3536 +4470 +3512 +5958 +7051 +3905 +795 +4819 +4096 +5235 +388 +7115 +6035 +5364 +955 +1203 +3058 +2805 +7179 +5755 +4198 +519 +6151 +5425 +5980 +1209 +2617 +6395 +2170 +377 +2954 +1243 +4102 +7712 +4176 +4355 +1210 +5345 +5978 +1812 +2188 +367 +5734 +372 +5860 +3399 +587 +784 +7637 +7171 +1420 +7769 +6312 +1714 +4013 +699 +92 +2082 +3708 +1419 +6671 +5019 +1052 +1408 +2045 +6933 +3804 +5190 +6321 +1340 +4058 +1461 +2135 +1738 +6848 +4716 +4203 +2569 +6713 +3963 +393 +4995 +6380 +4090 +6703 +4365 +2325 +5989 +6869 +4676 +1167 +4527 +3082 +5660 +7342 +3332 +6595 +205 +6575 +3162 +7568 +690 +2027 +2491 +4450 +4663 +435 +5320 +6914 +7202 +7099 +7618 +5908 +5783 +3660 +2524 +6672 +4878 +5036 +1403 +313 +121 +3730 +2168 +2177 +7566 +7405 +348 +7224 +4742 +1829 +6508 +282 +4392 +6414 +5309 +1503 +6115 +6050 +7200 +856 +668 +3132 +6889 +5325 +7736 +7039 +1075 +4212 +2184 +1147 +932 +3502 +4831 +3941 +3436 +4590 +4173 +4973 +6942 +4498 +1708 +5144 +959 +109 +6906 +5843 +4220 +1116 +4756 +5101 +1405 +2395 +7009 +1847 +7388 +417 +3376 +5455 +7155 +122 +4683 +6464 +4642 +3705 +1218 +2775 +2294 +3008 +2827 +5184 +3848 +6660 +323 +3885 +159 +590 +4539 +5782 +2029 +4411 +4244 +1007 +1192 +5972 +467 +5371 +3043 +2555 +3422 +7255 +3579 +6518 +7686 +2608 +5634 +5507 +5392 +6252 +3658 +1645 +4583 +6562 +3844 +6891 +505 +1693 +4752 +4568 +4356 +655 +103 +7135 +965 +5606 +6709 +1467 +7387 +2411 +6964 +4183 +3533 +6651 +2577 +5413 +560 +6623 +5061 +5123 +4724 +7021 +7014 +5680 +5740 +2098 +6519 +1834 +1023 +3095 +3574 +6235 +5956 +7395 +1295 +3428 +1983 +1127 +2894 +2459 +4855 +6894 +2706 +2351 +2789 +31 +1235 +66 +7153 +5048 +1187 +5912 +5519 +3205 +3053 +857 +5805 +1252 +6806 +3437 +6688 +3324 +7465 +2424 +2693 +5200 +5457 +948 +3706 +6251 +2600 +2973 +2380 +4254 +3119 +5780 +5864 +3984 +5941 +420 +1208 +2385 +4889 +536 +7487 +7185 +1713 +2164 +7189 +5258 +2309 +2701 +5600 +2663 +2288 +4581 +1602 +3333 +7542 +2265 +7057 +4630 +4863 +3010 +6381 +7121 +5530 +1809 +7515 +1374 +5367 +5210 +6626 +2647 +7560 +4400 +7743 +5897 +6031 +5654 +4918 +2562 +4014 +5290 +3612 +337 +2594 +3335 +3064 +3518 +1198 +299 +3763 +7330 +2538 +3789 +2007 +3793 +6108 +5247 +4890 +1604 +1051 +7230 +2727 +1084 +6136 +4111 +4674 +659 +7684 +6342 +7763 +1792 +1588 +1979 +5256 +1878 +3174 +1741 +3497 +3330 +4129 +4051 +917 +6374 +283 +701 +422 +4490 +1363 +6042 +5064 +1239 +495 +5306 +6129 +2183 +7632 +4092 +6607 +6583 +2121 +7005 +2797 +7764 +2918 +2756 +4901 +2565 +3484 +5085 +4364 +4654 +928 +1848 +4258 +4268 +3391 +5332 +4838 +1690 +2442 +2840 +7556 +5896 +3746 +6733 +7304 +6992 +5837 +5511 +3850 +1563 +3244 +463 +5667 +1437 +5259 +3935 +1143 +854 +237 +3397 +6244 +7373 +442 +222 +3998 +3022 +7251 +676 +5850 +3409 +3867 +3765 +4456 +2131 +110 +1185 +2248 +7398 +7606 +1776 +3916 +2467 +1927 +6440 +7170 +4241 +320 +5811 +7127 +4200 +4216 +149 +1598 +5389 +4318 +4163 +7554 +2300 +617 +2015 +5607 +4509 +4033 +2777 +7728 +2661 +5014 +2016 +5792 +6084 +848 +4257 +2510 +3046 +6417 +4417 +98 +1901 +499 +215 +2383 +174 +7259 +4132 +7270 +3236 +2923 +6384 +5137 +2764 +1133 +3764 +331 +1256 +1842 +4531 +5348 +3887 +4659 +3071 +5566 +3803 +6751 +791 +6460 +6763 +5813 +305 +3176 +2672 +5720 +5702 +2422 +2673 +6412 +4567 +3595 +5516 +4790 +7100 +1397 +19 +259 +4612 +145 +5303 +4747 +6287 +1626 +6696 +5902 +3889 +108 +752 +3353 +4941 +3926 +7510 +2320 +782 +7058 +2512 +2480 +1368 +2440 +2794 +7221 +2506 +3378 +677 +3340 +5343 +1889 +6840 +5035 +3479 +1059 +2231 +1280 +7533 +2462 +2478 +6439 +6100 +4720 +3797 +5890 +255 +6400 +4522 +978 +6880 +3677 +785 +1544 +7 +2262 +4719 +6220 +319 +5944 +5114 +5302 +4658 +2370 +5394 +7621 +6488 +5241 +3334 +3672 +6350 +1671 +741 +3016 +7739 +5266 +6596 +7773 +3218 +1881 +7433 +4810 +3655 +2041 +2111 +7519 +6424 +1028 +2977 +5018 +208 +2716 +5446 +7246 +988 +5304 +5613 +6513 +6665 +708 +1534 +6379 +4799 +3955 +1998 +3262 +6511 +3975 +5931 +3811 +6207 +3877 +2217 +5317 +4362 +5310 +6974 +3587 +64 +4917 +6564 +2413 +1058 +1406 +2115 +3453 +7309 +7746 +4643 +3679 +1888 +7332 +6885 +6731 +810 +115 +2244 +4231 +155 +3739 +1547 +5950 +1815 +3482 +1465 +3499 +2266 +2163 +646 +107 +2375 +1954 +5900 +3666 +1867 +3272 +1102 +477 +1018 +4829 +601 +780 +944 +3771 +2418 +1608 +7412 +4931 +6826 +1925 +4879 +3379 +1931 +4448 +2852 +3697 +172 +760 +4308 +1262 +614 +1379 +6919 +6012 +819 +1670 +4447 +1275 +3495 +6563 +4339 +5029 +5930 +1703 +5161 +6897 +7154 +267 +7182 +5771 +7066 +1489 +7586 +7296 +6557 +6682 +197 +3035 +813 +171 +4261 +1826 +1580 +5159 +5268 +3347 +4383 +3136 +3349 +2148 +3068 +6473 +5711 +2817 +2287 +4304 +7699 +1789 +930 +4685 +3075 +500 +6765 +5490 +3050 +2989 +7133 +1648 +3485 +6462 +4493 +2296 +6982 +1525 +7573 +427 +2692 +2119 +3128 +6209 +3592 +4546 +7476 +1278 +5500 +6319 +562 +4823 +6262 +4932 +1361 +2455 +5166 +547 +1840 +1001 +4009 +3044 +7113 +5595 +2596 +2122 +2051 +3073 +4832 +1678 +280 +7604 +3620 +5124 +5127 +2126 +974 +4936 +1497 +755 +7498 +3980 +4513 +1230 +2026 +7239 +5856 +2803 +5404 +842 +3221 +652 +5250 +5499 +6639 +2927 +4825 +3413 +4015 +4844 +873 +7074 +1336 +3972 +286 +3193 +7571 +7590 +6928 +627 +2169 +7432 +650 +644 +6486 +4157 +1415 +385 +5412 +5502 +827 +6523 +5229 +6536 +7759 +3371 +312 +5731 +1728 +406 +4342 +2488 +2420 +1195 +4614 +252 +4003 +3467 +5472 +2078 +3674 +5049 +7597 +1327 +5226 +7718 +198 +1858 +5296 +4760 +869 +3710 +4492 +749 +2192 +2008 +4316 +7043 +3285 +150 +5514 +1896 +3105 +88 +567 +4344 +5277 +572 +5717 +2802 +3065 +2031 +3209 +7474 +2208 +5769 +3215 +4794 +1865 +6730 +7489 +5869 +7198 +875 +7389 +1325 +4543 +264 +2583 +5356 +1551 +2711 +5129 +6629 +2580 +7608 +7514 +7580 +2864 +7531 +6993 +4299 +5125 +2694 +291 +1126 +6023 +4749 +1561 +3669 +7346 +1120 +1688 +6963 +580 +3668 +1033 +1994 +6167 +3661 +7758 +6937 +954 +661 +6648 +6341 +7353 +6714 +1057 +4680 +5594 +5331 +6011 +711 +1247 +2239 +5924 +3781 +828 +125 +1641 +7605 +3898 +228 +1914 +3203 +3000 +6339 +355 +4071 +7668 +1237 +2997 +6849 +5939 +6705 +1212 +1951 +5486 +6165 +4620 +5204 +3315 +6357 +7379 +5550 +4084 +4647 +7341 +3475 +6569 +310 +5889 +135 +4784 +3511 +2919 +6957 +2206 +3879 +5865 +1907 +7602 +6134 +4912 +2624 +4641 +4738 +352 +6079 +832 +2895 +5532 +2358 +1130 +7762 +1055 +6427 +595 +3145 +5319 +2521 +1537 +5217 +5993 +3816 +6038 +6965 +7361 +6650 +3051 +6049 +2845 +3134 +5825 +5186 +858 +6124 +3369 +4554 +7776 +1493 +3836 +3452 +6429 +4292 +2966 +1447 +5020 +4180 +4727 +1644 +6415 +460 +4776 +295 +7180 +8 +3177 +5919 +7313 +7563 +1039 +4958 +4826 +1326 +1883 +4017 +5489 +7109 +7177 +7245 +3027 +6822 +5609 +3345 +77 +3056 +2738 +5812 +1486 +3280 +3633 +5326 +2791 +6723 +474 +1500 +7695 +7136 +5847 +4050 +3447 +5126 +5831 +702 +1820 +6259 +1631 +142 +1091 +2174 +6752 +6006 +5406 +3784 +694 +5537 +2199 +4541 +93 +3795 +3930 +4920 +2886 +3310 +3583 +7688 +4905 +160 +2526 +3605 +1034 +6117 +6824 +423 +3790 +2081 +3874 +818 +4037 +7691 +1518 +5438 +300 +1501 +2818 +7711 +7491 +6292 +3100 +5733 +1056 +3608 +703 +1897 +3737 +7328 +1582 +800 +5201 +3817 +4963 +3673 +6843 +6652 +3555 +7243 +4629 +1696 +2863 +6088 +4856 +1874 +80 +972 +2774 +3281 +4338 +7622 +4939 +2995 +1799 +488 +1014 +6977 +6248 +6722 +1754 +697 +288 +2058 +6768 +4140 +3904 +2540 +7420 +709 +4038 +3040 +1578 +3202 +5526 +2179 +3077 +2890 +6196 +7414 +2699 +6033 +3769 +2884 +6968 +6168 +1933 +1224 +1117 +5409 +1188 +6735 +3561 +5779 +3034 +5432 +756 +200 +1926 +720 +6876 +1920 +7257 +5962 +1939 +6016 +2322 +2327 +2044 +4896 +3483 +426 +1402 +3573 +2368 +296 +739 +2416 +926 +416 +3161 +1932 +4991 +1367 +1025 +1098 +637 +7369 +5094 +3772 +5467 +5402 +345 +5494 +7667 +2885 +1766 +3937 +7523 +5157 +3042 +1029 +3884 +6065 +2444 +7706 +2067 +6736 +2826 +7421 +936 +3076 +294 +2337 +3435 +4080 +3929 +1380 +7419 +6875 +5434 +6271 +4115 +2771 +6864 +1707 +4128 +2089 +18 +1171 +399 +2748 +6349 +4468 +5688 +743 +4961 +1095 +1944 +1002 +705 +3103 +4565 +4375 +1676 +4098 +5172 +798 +1572 +7194 +3521 +1832 +7299 +5081 +3796 +7236 +7506 +6107 +1199 +7494 +6614 +535 +20 +5898 +3059 +3104 +525 +4404 +2378 +5996 +985 +973 +2254 +4873 +7499 +1997 +5077 +1760 +4713 +2806 +5648 +330 +3562 +446 +235 +7703 +287 +4682 +3455 +3154 +6932 +5791 +5377 +1935 +908 +5557 +1067 +6823 +3594 +340 +4385 +3375 +6654 +6307 +6766 +7459 +2769 +1140 +3225 +5942 +682 +5176 +4034 +2757 +6495 +7032 +272 +1146 +1514 +5895 +7263 +1704 +963 +6923 +3416 +1717 +3873 +7496 +6289 +1946 +3088 +3006 +6026 +6132 +7168 +3167 +1389 +3116 +906 +2953 +4734 +177 +6926 +1100 +1156 +7157 +3401 +6264 +5915 +863 +5216 +3631 +5420 +5034 +4224 +5836 +4968 +3565 +4893 +3908 +6351 +2676 +5292 +5657 +5284 +4397 +3090 +7016 +4267 +4107 +6081 +3715 +59 +2633 +6103 +6559 +1364 +6679 +3900 +1919 +7461 +7495 +4505 +3007 +6927 +4952 +2539 +2680 +867 +1992 +5195 +2646 +6348 +5205 +596 +451 +4824 +2824 +3322 +5991 +5918 +7416 +479 +7145 +7462 +7392 +7625 +1257 +5147 +63 +1781 +6512 +6608 +5592 +2490 +1294 +6192 +1893 +1338 +7749 +6064 +7301 +1616 +3750 +7754 +737 +6659 +6521 +4164 +1335 +3274 +54 +4771 +2611 +7178 +5604 +515 +7678 +7611 +1943 +6748 +5039 +1701 +6573 +3798 +5580 +5449 +4962 +4618 +2994 +3614 +3584 +524 +5807 +5706 +5777 +349 +1090 +5501 +1866 +6811 +610 +5911 +3915 +3794 +5985 +1217 +1471 +3921 +2261 +5884 +2879 +2085 +2346 +3741 +4945 +2535 +2070 +5493 +7705 +4695 +3194 +5928 +1612 +1298 +1788 +4053 +7163 +4160 +2604 +2143 +6802 +1871 +6505 +225 +2431 +3603 +7347 +1734 +5572 +5007 +6500 +371 +2142 +5669 +4534 +3653 +7000 +3665 +3545 +4521 +1854 +3550 +516 +1249 +5015 +5379 +2529 +1194 +1197 +3834 +7097 +7615 +1761 +1371 +1666 +3799 +803 +2138 +4093 +4512 +4481 +456 +1396 +7507 +4913 +147 +306 +5427 +6352 +1750 +1227 +4187 +7450 +5642 +4459 +6929 +835 +7380 +6773 +7293 +1404 +870 +7158 +3348 +2090 +3760 +4112 +3243 +236 +3131 +3025 +1422 +1965 +7451 +621 +7063 +5112 +5232 +1410 +3354 +5000 +790 +1184 +7008 +4957 +6281 +6831 +962 +3117 +6370 +5097 +892 +7080 +2429 +6211 +7249 +6837 +860 +1859 +1329 +1035 +5451 +273 +4894 +7119 +5165 +4865 +740 +6092 +5337 +1407 +4500 +1093 +4791 +920 +2592 +5401 +7231 +4953 +1462 +6999 +630 +7714 +6295 +1358 +5776 +5391 +4281 +4740 +2447 +2519 +4870 +6526 +1182 +4006 +7317 +3350 +6667 +1576 +1634 +4233 +2906 +7676 +6148 +6359 +3647 +6089 +2564 +3675 +5464 +5872 +5938 +6600 +5716 +4833 +7481 +1520 +1431 +5712 +4600 +6817 +6304 +4805 +645 +253 +802 +5260 +1651 +5063 +3130 +7323 +628 +3981 +2804 +1589 +3325 +1665 +2629 +68 +6818 +1219 +7401 +5024 +5741 +5760 +3754 +1148 +5552 +7023 +2809 +7269 +4352 +4353 +912 +6443 +5893 +7312 +2590 +6956 +2828 +111 +1523 +1816 +184 +1106 +2892 +2559 +994 +7360 +1066 +1873 +7726 +3541 +5275 +1686 +4842 +4669 +7671 +5628 +5461 +2980 +2093 +3092 +2531 +3911 +862 +199 +6138 +6405 +3098 +4634 +1153 +1506 +4999 +7558 +2333 +7734 +4916 +7701 +894 +3444 +5187 +513 +3175 +5614 +2839 +3609 +2988 +4161 +256 +891 +329 +6461 +5369 +1729 +691 +2778 +3971 +5136 +3265 +7336 +2588 +3843 +5670 +1421 +4542 +7549 +1264 +4860 +789 +6605 +3253 +1711 +3256 +7329 +742 +6181 +3729 +5477 +679 +3257 +3508 +336 +5207 +1655 +3085 +5986 +1773 +2838 +3582 +1895 +7460 +1783 +6043 +1441 +3824 +2176 +4607 +7434 +5359 +3129 +3782 +7629 +2452 +574 +6078 +3523 +164 +7468 +6140 +2978 +1784 +5874 +5585 +5234 +2732 +5338 +318 +6819 +7750 +3229 +5910 +314 +3646 +719 +1894 +4191 +5376 +3553 +2329 +5362 +2310 +7265 +194 +969 +2155 +6340 +342 +5508 +4175 +2284 +3931 +608 +6853 +7166 +4072 +5274 +1330 +434 +778 +2410 +99 +5 +4168 +5903 +7101 +6322 +4538 +1912 +7477 +7453 +3778 +5651 +22 +7116 +1069 +2301 +2779 +3 +1739 +7441 +5122 +5431 +128 +7438 +4782 +4442 +7466 +7340 +5223 +629 +3246 +2063 +4858 +2691 +7400 +5233 +354 +3735 +5539 +1440 +1232 +4131 +657 +4787 +4671 +4307 +2612 +212 +1314 +1673 +1685 +7108 +6478 +7509 +3424 +3015 +1583 +1978 +1921 +7227 +2522 +7235 +4516 +162 +5341 +995 +7191 +7463 +4134 +2619 +2279 +7204 +2492 +5180 +223 +4324 +5724 +5253 +6872 +2770 +1011 +6606 +898 +6951 +1964 +3947 +5899 +7623 +5525 +1968 +5943 +829 +3101 +4135 +4966 +1307 +3987 +7473 +2925 +4081 +7040 +6036 +5130 +1385 +868 +5407 +1614 +123 +1309 +6785 +4603 +5192 +6851 +4380 +285 +1190 +1947 +1302 +6580 +4904 +1795 +233 +4708 +5591 +5577 +3372 +6924 +3093 +2124 +1063 +7103 +2042 +3421 +251 +977 +4141 +2450 +2800 +509 +5920 +2073 +5254 +2160 +5658 +688 +6230 +5133 +2921 +1774 +5153 +188 +878 +7311 +6469 +5238 +234 +4049 +6627 +3217 +1846 +7544 +2944 +4154 +7575 +4240 +4454 +7653 +3208 +4381 +5162 +6775 +602 +69 +7404 +46 +453 +4478 +2507 +5060 +6330 +7371 +2656 +2955 +2149 +1876 +4463 +1706 +2878 +2947 +2229 +7248 +2638 +6298 +801 +1030 +5156 +3220 +4990 +3133 +7242 +2615 +2468 +3992 +3635 +3601 +1722 +7287 +4886 +4537 +7709 +1938 +2362 +631 +2724 +3774 +4245 +5193 +2253 +4368 +2690 +4259 +7700 +5621 +6403 +4146 +846 +2962 +6130 +3977 +2945 +338 +1355 +2931 +4667 +1606 +3680 +2116 +1767 +1487 +544 +4471 +2854 +4730 +2570 +6216 +45 +2464 +5109 +924 +5810 +1909 +498 +206 +5031 +1601 +2315 +7256 +5459 +3159 +7685 +4746 +3928 +2829 +6911 +1737 +1173 +7267 +1377 +6237 +4950 +5561 +168 +4723 +6316 +7692 +3831 +6255 +1636 +4320 +1990 +1353 +1558 +3057 +5588 +6947 +58 +6178 +5454 +2525 +3472 +5689 +3066 +6527 +2414 +1656 +726 +1700 +1399 +3681 +247 +1423 +4398 +5603 +1104 +5668 +7745 +2808 +1553 +5004 +7647 +7015 +3881 +5426 +6208 +4986 +7124 +2009 +3922 +185 +6718 +4691 +2566 +1144 +6329 +2935 +4479 +518 +7641 +324 +7314 +6597 +5150 +4438 +2905 +2853 +2589 +6025 +6366 +7061 +946 +4935 +2486 +3959 +4781 +6338 +7359 +6468 +3815 +4148 +696 +2129 +2479 +2498 +3685 +4311 +654 +1490 +5003 +521 +512 +4933 +6164 +4211 +6786 +2382 +2403 +4472 +3087 +2990 +4885 +3684 +5622 +353 +3151 +1573 +5021 +2815 +395 +2189 +2335 +7670 +6525 +6433 +7365 +7538 +6201 +1429 +3182 +4055 +7777 +3451 +5574 +3751 +6391 +2536 +3604 +6980 +261 +5370 +4005 +6428 +6328 +1442 +3239 +6376 +5946 +6265 +449 +3267 +4440 +4741 +4125 +6247 +4779 +57 +7071 +984 +3038 +1181 +5568 +6784 +3580 +7482 +1395 +5647 +6807 +6862 +4317 +447 +5346 +4432 +2717 +5322 +1759 +1747 +1970 +3991 +4496 +4406 +450 +2099 +6444 +3418 +246 +5463 +6616 +6476 +1691 +7483 +1819 +5618 +7027 +7020 +4345 +4639 +2543 +7344 +5468 +1494 +573 +3615 +5515 +4474 +4599 +4940 +1524 +2140 +5534 +1982 +3897 +3649 +1505 +764 +1131 +1412 +1719 +7176 +4310 +4321 +618 +7288 +7368 +3247 +4868 +37 +6003 +1945 +1910 +2133 +6971 +2554 +7626 +3163 +5979 +642 +4319 +7574 +5054 +5546 +3081 +7126 +2363 +4689 +7778 +6558 +430 +1427 +558 +1460 +3514 +673 +4972 +2097 +7029 +6599 +6798 +5092 +7077 +3819 +3417 +2848 +3067 +7436 +5291 +2235 +4942 +5230 +7215 +6194 +2722 +2433 +4086 +7206 +3800 +3211 +1223 +6886 +5509 +2391 +1735 +4577 +4732 +3501 +6565 +6808 +6858 +2685 +1916 +5142 +1752 +4428 +4208 +1439 +4696 +131 +1013 +5148 +4774 +3822 +5300 +7644 +2821 +6311 +1391 +6560 +3695 +2785 +2666 +591 +4047 +6291 +4313 +3318 +6953 +1103 +4908 +3126 +3659 +5732 +3309 +5252 +7707 +6162 +1092 +4249 +1531 +1446 +5685 +1111 +3299 +1485 +2290 +3650 +2572 +461 +2002 +4506 +1463 +2645 +5215 +6450 +3683 +1535 +4710 +5917 +2094 +6137 +2482 +603 +481 +6745 +1885 +7410 +3925 +3195 +2561 +4638 +3749 +6694 +5393 +3342 +7748 +6185 +2888 +1600 +3069 +1241 +1638 +4283 +1205 +7247 +6409 +5059 +1652 +3557 +5796 +6313 +5243 +6574 +2374 +7250 +3645 +5374 +1985 +6556 +7094 +1811 +6829 +2020 +2283 +5480 +3757 +2993 +3331 +5536 +6241 +245 +6075 +3866 +1017 +4617 +811 +7232 +6191 +2234 +4101 +4764 +5478 +6250 +4697 +2810 +613 +1677 +7240 +6975 +4650 +4499 +7295 +486 +1915 +1394 +2703 +4302 +1317 +2394 +6657 +1769 +3438 +1019 +2875 +3687 +4700 +2470 +5570 +7497 +254 +3954 +4767 +1618 +6619 +5610 +5905 +4511 +4326 +3854 +173 +3920 +3018 +4515 +6655 +7052 +3263 +5177 +3745 +3983 +6000 +3663 +2502 +328 +3627 +298 +5809 +2236 +3446 +3062 +7253 +3773 +6905 +383 +2951 +4804 +643 +4633 +2237 +2609 +6742 +7683 +5372 +874 +7254 +6920 +5581 +2475 +4476 +3398 +1331 +6758 +7277 +4236 +6069 +90 +1751 +1610 +7308 +1732 +87 +2598 +136 +6310 +7084 +3888 +546 +6361 +3892 +1987 +5083 +6646 +473 +6547 +2494 +3293 +4975 +4214 +3529 +2405 +2667 +2150 +2281 +6213 +4363 +5013 +2338 +6378 +4423 +3704 +183 +4076 +1031 +636 +2787 +5005 +6881 +3540 +6796 +6904 +1977 +67 +6398 +5982 +5967 +7087 +5202 +2102 +3938 +939 +3547 +1584 +3415 +4425 +2868 +7167 +43 +1828 +5030 +501 +334 +7187 +5542 +6499 +74 +2291 +1958 +3320 +5387 +3212 +5219 +1464 +2686 +2407 +3618 +6457 +4550 +374 +1966 +4361 +3049 +1963 +5559 +5878 +5638 +3303 +452 +6516 +5567 +5684 +1831 +4077 +4378 +1668 +6833 +62 +1201 +478 +530 +3515 +4970 +7439 +1838 +7095 +905 +3012 +3670 +3899 +459 +3744 +7440 +1959 +7394 +3470 +4758 +6792 +5075 +2546 +4591 +1286 +2700 +7284 +175 +3610 +4182 +3823 +3950 +5071 +1048 +3089 +5901 +2957 +1603 +4852 +6986 +6256 +1369 +554 +5339 +182 +5871 +6658 +3384 +6430 +1468 +386 +379 +559 +1778 +5868 +2782 +217 +7123 +2606 +3776 +6593 +5110 +4780 +4582 +5045 +6315 +415 +2193 +5249 +5293 +1378 +421 +5529 +1984 +1906 +5456 +7664 +3537 +1658 +6706 +885 +612 +4559 +5218 +7601 +632 +1310 +5360 +7104 +1176 +7031 +2075 +1808 +3865 +3486 +2574 +1571 +4196 +6105 +5415 +3054 +3923 +952 +6588 +4569 +3140 +5829 +4585 +1183 +6382 +4778 +1864 +6051 +2308 +7740 +3864 +2381 +609 +979 +3296 +5041 +4572 +1054 +7642 +4136 +3740 +4997 +271 +901 +5008 +911 +6062 +6935 +2446 +4579 +1357 +3341 +6950 +7418 +5491 +2209 +3270 +6030 +4636 +4201 +339 +3590 +1517 +7681 +5832 +1138 +1521 +1763 +1560 +6860 +1392 +7565 +1234 +1273 +1215 +773 +1010 +4427 +1824 +5659 +594 +466 +7673 +7107 +5914 +5597 +2926 +241 +3390 +5033 +822 +7577 +1698 +428 +5664 +106 +1522 +5397 +436 +4312 +605 +2616 +276 +6163 +5336 +6055 +2871 +4149 +6670 +758 +1281 +3964 +1316 +321 +489 +2108 +5842 +5055 +7060 +4265 +6584 +511 +6009 +4775 +7003 +3882 +5182 +3682 +7393 +5696 +179 +117 +6203 +6465 +2660 +6463 +2483 +5327 +3091 +6484 +1880 +4937 +641 +4262 +6375 +2161 +2602 +1096 +3155 +6157 +5951 +6699 +4578 +1513 +5286 +1409 +1674 +786 +3940 +4925 +2350 +4332 +5103 +2563 +2675 +6297 +141 +3734 +4057 +3261 +1724 +761 +6110 +4715 +7616 +4707 +7089 +5037 +4367 +4376 +441 +3232 +6109 +3667 +2786 +3403 +4584 +6024 +10 +1669 +1710 +6285 +4270 +745 +6091 +1238 +7012 +6868 +5612 +5531 +6121 +2746 +6900 +6895 +2220 +1482 +6386 +6839 +4399 +4070 +6538 +1592 +4655 +7067 +6159 +7001 +4452 +4998 +216 +6332 +2936 +923 +2635 +304 +5808 +5630 +833 +3576 +2364 +4466 +5050 +2412 +607 +3995 +2493 +219 +5433 +2937 +5751 +804 +6879 +4373 +5578 +1078 +6145 +464 +2586 +2153 +6601 +5882 +7266 +1038 +1113 +5120 +552 +6156 +5569 +1109 +3491 +6141 +4480 +2272 +7630 +2376 +5744 +5151 +6094 +6769 +2123 +5497 +5263 +3477 +1554 +7457 +714 +7214 +4926 +5043 +5396 +4073 +1152 +5281 +4469 +2054 +4836 +3989 +1868 +7130 +7356 +3841 +6225 +4827 +1290 +38 +4337 +1311 +6189 +5988 +7612 +3468 +7592 +6441 +1099 +6931 +877 +6096 +5171 +1042 +2996 +6510 +4105 +5213 +4640 +3785 +2005 +7102 +982 +5579 +4371 +425 +6801 +1948 +4460 +6834 +796 +893 +75 +3569 +5522 +457 +5583 +2185 +4347 +3814 +2963 +2634 +4041 +6582 +960 +5835 +4158 +5726 +5671 +992 +2355 +5288 +2728 +70 +826 +4519 +1435 +5994 +4762 +586 +7551 +6406 +2932 +4711 +6846 +1654 +5922 +3233 +5758 +1716 +5934 +2274 +3962 +4130 +5382 +5873 +378 +6177 +5483 +3539 +1758 +2021 +411 +192 +7117 +1863 +6759 +1475 +4260 +5576 +5863 +1382 +4828 +2697 +2039 +7582 +396 +849 +3419 +4772 +2275 +7229 +7046 +7238 +7321 +1844 +2762 +6243 +6734 +4277 +1777 +2650 +6093 +3628 +3548 +5707 +5473 +4116 +5992 +6507 +2749 +2304 +1786 +4483 +2071 +1211 +3164 +3559 +6621 +268 +7396 +5128 +1516 +5698 +2402 +189 +5503 +7770 +5786 +1466 +3855 +1086 +2151 +529 +2508 +975 +2134 +6896 +7561 +4528 +7530 +5237 +5775 +2930 +4181 +195 +712 +4075 +3144 +1643 +4056 +4103 +4062 +6057 +6481 +684 +3277 +4632 +5476 +6099 +2950 +1624 +6056 +6522 +4078 +6153 +2928 +4923 +3519 +3121 +1297 +3273 +6760 +6037 +6750 +3097 +987 +4256 +193 +7164 +2399 +7640 +6925 +42 +7006 +7081 +1787 +1569 +4704 +670 +3808 +3598 +1015 +2036 +897 +2889 +4024 +7774 +7282 +5329 +5691 +4759 +4745 +3890 +1398 +5158 +2267 +7589 +7694 +4560 +7017 +1006 +4455 +2939 +967 +2825 +5750 +1650 +2349 +6223 +3141 +127 +4409 +1830 +5880 +391 +3957 +3694 +5351 +2249 +2423 +1393 +3676 +2419 +1301 +7262 +6111 +494 +6946 +769 +5681 +4919 +2222 +7767 +2681 +4974 +5965 +7492 +7690 +104 +5765 +3255 +390 +2631 +4202 +1733 +3304 +65 +3111 +1913 +7335 +781 +1333 +5816 +3728 +2025 +4008 +1875 +5143 +5298 +5131 +896 +213 +4275 +6071 +5739 +7048 +6821 +808 +6656 +6273 +765 +736 +4023 +3535 +3336 +7543 +3308 +6985 +6299 +5106 +5593 +5560 +5694 +2509 +5173 +4627 +7576 +4029 +2688 +3138 +1594 +6475 +6756 +3266 +1359 +4234 +3028 +4294 +3643 +350 +7274 +3575 +727 +3356 +5766 +5803 +2019 +4525 +5026 +5390 +7147 +6799 +2397 +2022 +4814 +2733 +5447 +5264 +4401 +4012 +2704 +3439 +6967 +6155 +6903 +909 +4104 +7730 +4215 +3936 +5598 +410 +6810 +6546 +5846 +3329 +2651 +4170 +5496 +4548 +2591 +7747 +1552 +167 +3717 +6645 +214 +6418 +358 +3713 +1375 +1267 +976 +126 +7019 +5697 +2463 +1502 +7735 +1975 +3137 +7384 +325 +4039 +6720 +4138 +5605 +3200 +889 +73 +999 +23 +3021 +6649 +3830 +3370 +4982 +2238 +3876 +2347 +3767 +3721 +1827 +3896 +2877 +2972 +7731 +7428 +4482 +1806 +4369 +2303 +202 +9 +1085 +648 +5102 +2371 +191 +4114 +7045 +1898 +1279 +1036 +7607 +6973 +3607 +3204 +2255 +6838 +402 +4159 +964 +5632 +5849 +5445 +1530 +4147 +2056 +6266 +6280 +2136 +6589 +1222 +850 +7659 +671 +4089 +6242 +3259 +7275 +316 +3237 +5297 +3313 +3024 +1453 +3780 +6504 +838 +5753 +6729 +1556 +7485 +7162 +6053 +4834 +830 +317 +4113 +2458 +1070 +6643 +7635 +7105 +7223 +2790 +6930 +2246 +1817 +1540 +4561 +3275 +2613 +5990 +3828 +1162 +1283 +3198 +5139 +3146 +445 +156 +7399 +472 +2018 +6182 +2940 +5096 +4443 +958 +5969 +6830 +6941 +568 +4956 +3558 +4035 +4751 +1617 +3833 +5553 +5801 +3862 +3788 +1459 +4510 +2092 +4668 +1936 +5220 +4883 +3544 +2844 +4947 +3351 +6086 +6958 +4652 +2466 +585 +5209 +2495 +6498 +1024 +4031 +2992 +7716 +6532 +6274 +5313 +7486 +6571 +2256 +4594 +4171 +1872 +4907 +6690 +3094 +6044 +6432 +3172 +5533 +5907 +777 +5347 +2001 +5375 +3231 +797 +7595 +751 +5227 +2273 +475 +4681 +4733 +361 +3589 +5108 +5495 +4884 +351 +2321 +3197 +5752 +6221 +3480 +6719 +1545 +1995 +1276 +5587 +2158 +2984 +3602 +5437 +6 +2567 +6104 +6082 +1266 +7149 +1430 +6962 +7022 +6622 +5608 +6013 +6490 +5948 +4221 +1962 +1186 +1339 +4069 +3709 +2348 +6644 +4862 +4449 +2496 +6815 +6787 +7018 +5616 +6873 +2033 +6767 +4921 +5429 +6269 +5743 +2451 +4434 +3102 +6160 +2916 +5626 +3316 +482 +2907 +7656 +3339 +6482 +767 +4354 +2643 +2595 +2956 +7663 +3358 +3278 +277 +4095 +5132 +1240 +6901 +2065 +1064 +4660 +444 +6850 +583 +39 +6520 +2487 +5027 +4439 +1753 +953 +6123 +6618 +6669 +5977 +7042 +6805 +1586 +6909 +341 +3047 +6552 +5640 +3656 +5824 +1129 +3474 +4809 +6996 +916 +496 +1605 +3869 +3189 +6529 +4888 +3300 +4068 +4119 +2476 +5545 +424 +5116 +3362 +6744 +7652 +4048 +1755 +6383 +921 +3226 +1094 +5141 +1684 +6892 +1434 +2340 +1121 +4763 +7600 +1981 +2842 +3719 +4570 +1687 +4296 +888 +6984 +4721 +5790 +5763 +4735 +5535 +4797 +1928 +2393 +7208 +1536 +564 +2049 +913 +3622 +6337 +4845 +6019 +3809 +2767 +5759 +5411 +2773 +6668 +7366 +4875 +376 +5627 +4110 +6451 +4446 +5678 +2477 +1269 +7146 +3188 +4330 +2979 +3003 +5140 +4586 +2469 +1887 +7276 +2855 +4205 +4016 +5987 +5164 +1022 +1245 +3269 +1527 +2091 +5168 +5146 +5196 +5452 +1320 +3792 +2948 +5179 +44 +4580 +3408 +5708 +541 +3321 +7766 +2964 +7011 +4910 +1349 +4557 +2607 +1849 +7651 +3807 +7555 +431 +3820 +17 +588 +3026 +6197 +1937 +1659 +5194 +707 +5308 +5052 +2040 +5121 +7134 +695 +4394 +1233 +2760 +4675 +6620 +2377 +6452 +2758 +4924 +4851 +3630 +1401 +771 +4811 +30 +1804 +2668 +2233 +2585 +651 +6188 +5087 +4536 +1629 +692 +476 +7144 +5046 +4765 +7324 +4151 +528 +1731 +440 +3032 +5340 +1675 +7757 +5754 +6369 +3845 +5023 +5363 +6142 +2942 +7698 +1557 +6293 +7472 +1663 +5789 +4207 +4122 +1615 +7525 +2856 +4693 +2551 +491 +1306 +1259 +2847 +4426 +1381 +2443 +1220 +2013 +6356 +5656 +6205 +4117 +2 +6916 +2912 +3295 +6877 +3861 +1433 +3810 +7083 +4384 +7037 +5111 +2807 +7548 +404 +1458 +7241 +3852 +7142 +130 +3224 +5405 +6715 +7649 +6746 +4605 +3718 +914 +5095 +2101 +3425 +7680 +3504 +4847 +5866 +1562 +7513 +11 +4391 +2289 +2832 +2409 +5388 +4232 +1118 +5460 +4694 +6363 +6308 +1261 +1709 +504 +6214 +4127 +845 +6691 +3632 +6861 +1250 +1414 +2311 +4928 +2558 +7660 +5804 +5222 +2205 +1908 +7337 +2088 +2881 +6847 +1040 +4184 +4441 +5861 +4598 +6161 +1917 +5998 +5435 +7363 +3642 +6144 +27 +4619 +113 +4892 +2695 +753 +7338 +13 +3160 +3686 +4897 +4976 +2534 +5349 +36 +5611 +55 +6275 +3245 +986 +2913 +1509 +5999 +3770 +5352 +2317 +493 +4349 +6549 +6388 +757 +1779 +5321 +2352 +6551 +343 +4341 +6172 +4351 +4983 +1334 +2104 +1260 +3591 +3644 +2707 +2754 +7454 +4853 +4645 +7383 +1074 +2373 +7469 +5185 +2214 +161 +1271 +3283 +600 +2159 +4930 +2909 +153 +3063 +4435 +5430 +6102 +7035 +5590 +1492 +5936 +5504 +3013 +356 +4145 +1287 +244 +3396 +7725 +6737 +2780 +231 +3462 +7627 +3783 +895 +4497 +7390 +4457 +1150 +1163 +3910 +5784 +4248 +6301 +5844 +563 +4558 +728 +4462 +1510 +387 +1483 +4592 +7025 +7464 +6922 +1155 +843 +6491 +5794 +4979 +7225 +4329 +412 +455 +557 +7357 +2639 +2801 +4872 +6471 +510 +7737 +941 +5827 +4162 +2316 +1499 +1743 +297 +2130 +469 +6018 +1564 +2213 +2180 +6472 +3996 +738 +4701 +4407 +5833 +4508 +2971 +2211 +3641 +5082 +4902 +3113 +1151 +3870 +2721 +5440 +6422 +4085 +5414 +53 +6090 +831 +5350 +1971 +4444 +6604 +7536 +1044 +633 +4 +7723 +6948 +5721 +3712 +2896 +6866 +6725 +4623 +1988 +7504 +3389 +1860 +6952 +6483 +4179 +3914 +7599 +6277 +7195 +6757 +4393 +7585 +100 +3388 +4818 +2793 +6309 +553 +6634 +4298 +6855 +6966 +4286 +6762 +7550 +1991 +7348 +7079 +5400 +5115 +1206 +2601 +4717 +2181 +2952 +3466 +82 +432 +279 +6423 +5089 +6828 +4684 +6918 +6585 +6296 +1837 +3872 +3651 +7190 +6317 +1528 +2292 +4835 +5436 +7704 +6420 +3960 +4328 +408 +6852 +3115 +5513 +6027 +5358 +262 +7409 +4737 +7521 +5540 +2302 +3725 +2961 +7086 +1268 +4484 +5361 +6327 +3707 +6664 +4021 +1265 +1974 +4874 +2687 +3343 +732 +5686 +3640 +281 +6314 +1667 +3525 +7408 +6072 +1172 +33 +6921 +5088 +4803 +6863 +4485 +5602 +7131 +3004 +2154 +1972 +2481 +5675 +1818 +6997 +5498 +5113 +2902 +5267 +4403 +47 +362 +1263 +2438 +7038 +5952 +729 +4589 +4867 +754 +7112 +7634 +4204 +7524 +5197 +2398 +5017 +6174 +3846 +4301 +4948 +4514 +4210 +6940 +2449 +1952 +6782 +2105 +6778 +4822 +6257 +947 +1072 +7702 +7280 +2271 +4750 +3699 +6960 +2204 +4524 +5305 +6570 +4045 +1532 +4177 +380 +1472 +6176 +1857 +2250 +7118 +4602 +1757 +6222 +2776 +4770 +7458 +3619 +7553 +2500 +2702 +3312 +2747 +2436 +1242 +7093 +4465 +3688 +3036 +1041 +3122 +266 +6387 +4869 +7426 +5582 +28 +6747 +1565 +5960 +998 +1989 +7024 +3323 +503 +698 +4903 +4665 +6854 +793 +5879 +2741 +2858 +289 +2623 +6493 +6753 +5099 +2866 +6632 +1646 +3052 +6228 +5058 +4757 +717 +6994 +2079 +3248 +4052 +7137 +6685 +619 +3531 +4199 +1021 +4109 +7687 +4576 +1647 +6515 +333 +76 +7610 +7062 +6217 +492 +7343 +6592 +6397 +2857 +3118 +5937 +1003 +4278 +5891 +6404 +1780 +6749 +4503 +2949 +2796 +3863 +4960 +7156 +5584 +4167 +114 +6425 +4672 +3238 +7760 +1512 +672 +6070 +1961 +5995 +2814 +2671 +3700 +4206 +508 +102 +7741 +1814 +3288 +660 +7562 +931 +6087 +275 +4985 +5318 +770 +5280 +4194 +4520 +5793 +2830 +3392 +918 +4943 +4563 +1159 +4994 +1764 +5966 +606 +2074 +5953 +7467 +1555 +4978 +1200 +3001 +3219 +7636 +6539 +3939 +6438 +293 +3527 +4436 +6169 +2437 +2137 +1575 +1619 +502 +2057 +6856 +4816 +4626 +3412 +7696 +836 +4343 +5749 +579 +3458 +1135 +5788 +6780 +2241 +394 +6666 +6867 +2103 +119 +6781 +750 +4486 +4748 +6212 +2306 +3522 +2581 +5687 +3997 +7445 +534 +5887 +6528 +1744 +6389 +1322 +2862 +3818 +1591 +1356 +85 +7511 +3030 +3752 +4993 +50 +3832 +565 +2448 +2900 +6336 +581 +3616 +7500 +6548 +5913 +1712 +6413 +4189 +4761 +2772 +4944 +1346 +582 +6591 +1285 +3214 +3359 +7423 +6020 +5038 +1770 +837 +3207 +6693 +7402 +2622 +6874 +5968 +4387 +4898 +5273 +5324 +5334 +1541 +3724 +6678 +2269 +2187 +2339 +4063 +2503 +1154 +7290 +2999 +4430 +7682 +6234 +2006 +157 +5119 +3187 +2401 +1174 +639 +3249 +7050 +3742 +1559 +2083 +7091 +152 +1387 +72 +5416 +4624 +6139 +7385 +5224 +4108 +5022 +3191 +2497 +4372 +4377 +3464 +4413 +4088 +3933 +1856 +6987 +1886 +2354 +7054 +3805 +5549 +1794 +2053 +4593 +5722 +7722 +218 +2047 +5970 +1835 +922 +1841 +1354 +2968 +5828 +5601 +4613 +1956 +2076 +60 +3973 +7138 +360 +5971 +3506 +1321 +5693 +5976 +1332 +7354 +7505 +1548 +7430 +1345 +7320 +2257 +5705 +6704 +762 +7352 +4237 +1166 +2086 +6253 +2670 +7547 +3753 +783 +1923 +3494 +2172 +1775 +3135 +4609 +6288 +6764 +6193 +1955 +2505 +4504 +2068 +1376 +4445 +7114 +2014 +1134 +2453 +2911 +1574 +4909 +6368 +5271 +4532 +3560 +527 +5818 +522 +4303 +5208 +3291 +5855 +1417 +6416 +7261 +5541 +5929 +3289 +4044 +5674 +4467 +927 +1902 +5800 +1400 +3240 +2517 +4687 +6898 +4139 +6590 +1350 +1745 +4054 +4340 +2970 +4895 +4152 +1662 +1891 +523 +6355 +6076 +190 +5465 +35 +79 +3166 +4850 +7228 +1843 +4977 +4967 +4082 +3033 +678 +6544 +5521 +1145 +1508 +6028 +3148 +1050 +6755 +5643 +2887 +2379 +2708 +163 +3906 +4065 +3664 +7139 +52 +4821 +2751 +3546 +1180 +7305 +274 +3762 +7211 +839 +6613 +3385 +2473 +6180 +2783 +497 +1579 +1851 +6708 +2145 +1542 +1258 +2527 +7559 +3918 +4142 +2876 +226 +903 +872 +3476 +4615 +3430 +7508 +943 +3301 +2941 +5883 +3599 +144 +1139 +2202 +6637 +5629 +2734 +1191 +3251 +4545 +5727 +1373 +5408 +6995 +5973 +4276 +853 +1004 +5228 +3505 +532 +4395 +951 +3473 +7596 +6912 +4555 +2578 +4418 +768 +3698 +7552 +7252 +5826 +6820 +7349 +5042 +263 +2132 +5072 +3572 +409 +418 +1179 +1105 +2428 +6674 +2713 +1416 +1862 +6002 +6610 +6503 +3895 +3199 +3108 +763 +6945 +6143 +7318 +6073 +4686 +6983 +118 +6710 +26 +1043 +4914 +2152 +5781 +3381 +933 +841 +2293 +7697 +363 +2156 +6702 +2430 +2846 +2353 +5272 +6844 +3020 +5888 +2268 +3613 +7193 +4297 +332 +7689 +2755 +437 +2730 +2891 +5714 +4083 +1904 +1890 +620 +3571 +7201 +3748 +5876 +7161 +6426 +6783 +2023 +940 +746 +1303 +2752 +4849 +881 +7285 +662 +4489 +1411 +6008 +2011 +5830 +2387 +2260 +1053 +1877 +3692 +7512 +7216 +2212 +6913 +2345 +7480 +4357 +2441 +3812 +5623 +3564 +2190 +2618 +3689 +116 +5469 +3107 +6961 +7294 +5307 +6480 +4235 +3373 +4124 +5904 +3426 +5926 +3086 +7078 +4155 +6114 +6399 +1746 +2582 +4027 +6635 +7004 +7537 +5299 +2632 +6662 +3648 +3942 +4195 +5975 +2330 +3696 +4657 +3048 +5384 +3125 +4523 +2264 +1110 +6113 +6739 +7643 +566 +6972 +2621 +4934 +997 +7151 +373 +561 +6774 +6258 +6681 +258 +812 +5645 +4314 +4861 +7617 +207 +3039 +1189 +3593 +884 +4992 +1613 +5357 +2986 +3286 +250 +7111 +4025 +6803 +1627 +2898 +3943 +4396 +6902 +3037 +2873 +5723 +5239 +4648 +993 +5586 +847 +3802 +7350 +3851 +2146 +303 +983 +6890 +730 +6732 +5764 +2544 +5886 +4217 +3917 +7501 +5505 +3927 +5424 +7751 +3953 +2499 +6046 +7579 +4099 +5245 +4239 +7650 +638 +2765 +4533 +7391 +3441 +2924 +4079 +6506 +1694 +3302 +5011 +3429 +2943 +799 +6676 +2361 +713 +3406 +3517 +3493 +1892 +2066 +2359 +2665 +6392 +855 +1507 +7237 +5294 +7207 +392 +1861 +1277 +1833 +2196 +6683 +5997 +7471 +6276 +4197 +5742 +3386 +4965 +1012 +1853 +4046 +3405 +203 +1797 +6581 +6692 +6004 +3761 +7532 +1193 +4984 +4677 +3109 +6112 +364 +2118 +6449 +861 +3758 +1016 +438 +465 +2003 +4359 +4419 +2938 +2678 +7056 +5718 +7503 +4405 +3206 +3966 +6279 +7738 +443 +1491 +311 +1008 +1436 +549 +5646 +4587 +6797 +370 +5062 +1967 +6842 +7205 +4019 +2904 +6859 +2739 +91 +3949 +2278 +6459 +2064 +7010 +809 +1689 +4709 +7219 +6949 +5927 +5316 +3907 +1080 +2553 +5909 +4408 +1157 +4906 +3011 +3858 +3985 +5757 +4854 +3878 +2849 +3096 +3549 +2967 +4253 +2568 +7588 +706 +7517 +2426 +3578 +7633 +48 +571 +6726 +4702 +4848 +2653 +5839 +7258 +6680 +315 +966 +1202 +658 +4229 +4915 +7070 +7425 +1765 +230 +7710 +6772 +704 +7413 +1924 +599 +6179 +7096 +7442 +138 +6598 +2060 +2501 +6371 +158 +4946 +989 +6955 +4788 +1108 +1082 +4980 +3958 +1071 +5947 +731 +6434 +484 +1229 +2277 +3306 +89 +3420 +5845 +7381 +2712 +4192 +2485 +5852 +715 +4564 +1291 +5957 +1539 +7148 +4293 +5677 +1813 +6396 +1566 +3657 +1749 +7212 +5381 +4529 +7122 +611 +7298 +7768 +1444 +5762 +5417 +7210 +4042 +4185 +880 +6190 +7310 +3542 +3254 +2165 +4969 +4284 +1061 +5065 +2736 +25 +6579 +1642 +2360 +4718 +5301 +5959 +6345 +2270 +735 +950 +3691 +3779 +3775 +2263 +2299 +3543 +3510 +6707 +2683 +7662 +5984 +7529 +2107 +6530 +1870 +3883 +1125 +7539 +1149 +689 +4226 +2280 +7326 +3671 +4566 +1169 +5819 +2034 +4562 +2788 +7076 +2934 +105 +7546 +1388 +3394 +4673 +1825 +6535 +7603 +5554 +5635 +550 +6270 +7049 +5006 +2069 +1347 +2976 +4773 +2227 +1000 +2576 +4800 +2861 +6456 +5650 +7708 +3909 +3150 +1009 +6372 +5278 +7358 +814 +6825 +2342 +7564 +2759 +5894 +1949 +6728 +957 +4573 +2648 +3139 +774 +7378 +2743 +5770 +3813 +4243 +2218 +5028 +6344 +3516 +6239 +7286 +1695 +4938 +4186 +6458 +6467 +687 +1112 +3196 +3524 diff --git a/tools/train.py b/tools/train.py index 2346eda..dd7e465 100644 --- a/tools/train.py +++ b/tools/train.py @@ -1,5 +1,7 @@ import sys sys.path.append(sys.path[0] + r"/../") +import os +import time import torch import lightning.pytorch as pl import torch.optim as optim @@ -9,6 +11,8 @@ from os.path import join as pjoin from torch.utils.tensorboard import SummaryWriter from models import * +import glob + os.environ['PL_TORCH_DISTRIBUTED_BACKEND'] = 'nccl' from lightning.pytorch.strategies import DDPStrategy @@ -103,7 +107,6 @@ def on_train_batch_end(self, outputs, batch, batch_idx): lr=self.trainer.optimizers[0].param_groups[0]['lr']) - def on_train_epoch_end(self): # pass sch = self.lr_schedulers() @@ -126,6 +129,13 @@ def build_models(cfg): model = InterGen(cfg) return model +def get_latest_checkpoint(checkpoint_dir): + list_of_files = glob.glob(f'{checkpoint_dir}/*.ckpt') # Get all checkpoint files + if not list_of_files: + return None # Return None if no files are found + latest_file = max(list_of_files, key=os.path.getctime) # Get the latest one + return latest_file + if __name__ == '__main__': print(os.getcwd()) @@ -136,6 +146,11 @@ def build_models(cfg): datamodule = DataModule(data_cfg, train_cfg.TRAIN.BATCH_SIZE, train_cfg.TRAIN.NUM_WORKERS) model = build_models(model_cfg) + if not train_cfg.TRAIN.RESUME: + checkpoint_dir = pjoin(train_cfg.GENERAL.CHECKPOINT, train_cfg.GENERAL.EXP_NAME, 'model') + latest_checkpoint = get_latest_checkpoint(checkpoint_dir) + if latest_checkpoint: + train_cfg.TRAIN.RESUME = latest_checkpoint if train_cfg.TRAIN.RESUME: ckpt = torch.load(train_cfg.TRAIN.RESUME, map_location="cpu") @@ -144,19 +159,24 @@ def build_models(cfg): ckpt["state_dict"][k.replace("model.", "")] = ckpt["state_dict"].pop(k) model.load_state_dict(ckpt["state_dict"], strict=True) print("checkpoint state loaded!") + litmodel = LitTrainModel(model, train_cfg) - - checkpoint_callback = pl.callbacks.ModelCheckpoint(dirpath=litmodel.model_dir, - every_n_epochs=train_cfg.TRAIN.SAVE_EPOCH) + checkpoint_callback = pl.callbacks.ModelCheckpoint( + dirpath=litmodel.model_dir, + filename='{epoch}', + save_top_k=1, # Keep the two most recent checkpoints + monitor=None, # Not monitoring any specific metric, always keep the latest + every_n_epochs=1 # Save every epoch + ) + trainer = pl.Trainer( default_root_dir=litmodel.model_dir, devices="auto", accelerator='gpu', max_epochs=train_cfg.TRAIN.EPOCH, strategy=DDPStrategy(find_unused_parameters=True), precision=32, - callbacks=[checkpoint_callback], - + callbacks=[checkpoint_callback] ) trainer.fit(model=litmodel, datamodule=datamodule) diff --git a/utils/clip_infer.py b/utils/clip_infer.py new file mode 100644 index 0000000..62897b4 --- /dev/null +++ b/utils/clip_infer.py @@ -0,0 +1,57 @@ +import torch +import clip +import os +from datetime import datetime +import re + +def sanitize_filename(text, default="output"): + # Remove invalid characters for filenames and limit length + sanitized_text = re.sub(r'[^a-zA-Z0-9]', '_', text) + sanitized_text = sanitized_text[:50] # Limit the length to 50 characters + return sanitized_text if sanitized_text else default + +def save_latent_text(raw_text): + device = "cuda" if torch.cuda.is_available() else "cpu" + clip_model, _ = clip.load("ViT-L/14@336px", device=device, jit=False) + + with torch.no_grad(): + text = clip.tokenize(raw_text, truncate=True).to(device) + token_embedding = clip_model.token_embedding(text).type(clip_model.dtype) # [batch_size, n_ctx, d_model] + positional_embedding = clip_model.positional_embedding.type(clip_model.dtype) + x = token_embedding + positional_embedding + x = x.permute(1, 0, 2) # NLD -> LND + x = clip_model.transformer(x) + x = x.permute(1, 0, 2) + clip_out = clip_model.ln_final(x).type(clip_model.dtype) + + # Take the embedding of the [EOS] token (the highest index) + latent_text = clip_out[torch.arange(x.shape[0]), text.argmax(dim=-1)] + + # Detach and convert to numpy + latent_text_numpy = latent_text.detach().cpu().numpy() + + # Print the 1D tensor to the console + print("1D Tensor for prompt '{}':".format(raw_text), latent_text_numpy) + + # Sanitize prompt text to create a valid filename + filename = sanitize_filename(raw_text) + + # Create output directory if it doesn't exist + os.makedirs("output/1D_tensor", exist_ok=True) + file_path = os.path.join("output/1D_tensor", f"{filename}.txt") + + with open(file_path, "w") as file: + file.write(str(latent_text_numpy)) + + print(f"Latent text for prompt '{raw_text}' saved to {file_path}") + +if __name__ == '__main__': + with open("prompts.txt") as f: + texts = f.readlines() + texts = [text.strip("\n") for text in texts] + + for text in texts: + if text.strip(): # Ensure the prompt is not empty + save_latent_text(text) + else: + print("Empty prompt detected, skipping.")