[{"data":1,"prerenderedAt":-1},["ShallowReactive",2],{"summary-fix-randomness-first-for-stable-ml-pipelines-summary":3,"summaries-facets-categories":152,"summary-related-fix-randomness-first-for-stable-ml-pipelines-summary":3737},{"id":4,"title":5,"ai":6,"body":13,"categories":132,"created_at":134,"date_modified":134,"description":38,"extension":135,"faq":134,"featured":136,"kicker_label":134,"meta":137,"navigation":67,"path":138,"published_at":139,"question":134,"scraped_at":134,"seo":140,"sitemap":141,"source_id":142,"source_name":143,"source_type":144,"source_url":145,"stem":146,"tags":147,"thumbnail_url":134,"tldr":149,"tweet":134,"unknown_tags":150,"__hash__":151},"summaries\u002Fsummaries\u002Ffix-randomness-first-for-stable-ml-pipelines-summary.md","Fix Randomness First for Stable ML Pipelines",{"provider":7,"model":8,"input_tokens":9,"output_tokens":10,"processing_time_ms":11,"cost_usd":12},"openrouter","x-ai\u002Fgrok-4.1-fast",3629,1311,12564,0.0013588,{"type":14,"value":15,"toc":128},"minimark",[16,21,25,29,32,110,118,124],[17,18,20],"h2",{"id":19},"pipelines-not-models-break-ml-systems","Pipelines, Not Models, Break ML Systems",[22,23,24],"p",{},"After 4+ years building ML systems, the core failure mode isn't weak models but unstable pipelines that produce inconsistent results. A one-time success turns into quiet failures without disciplined stability practices. Treat stability as a non-negotiable discipline, not an afterthought.",[17,26,28],{"id":27},"enforce-reproducibility-by-seeding-everything","Enforce Reproducibility by Seeding Everything",[22,30,31],{},"Randomness turns models into unreliable slot machines—results vary per run, undermining debugging and deployment. Fix it with a global seed function covering all sources:",[33,34,39],"pre",{"className":35,"code":36,"language":37,"meta":38,"style":38},"language-python shiki shiki-themes github-light github-dark","import random\nimport numpy as np\nimport torch\n\ndef set_seed(seed=42):\n    random.seed(seed)\n    np.random.seed(seed)\n    torch.manual_seed(seed)\n    torch.cuda.manual_seed_all(seed)\n\nset_seed(42)\n","python","",[40,41,42,50,56,62,69,75,81,87,93,99,104],"code",{"__ignoreMap":38},[43,44,47],"span",{"class":45,"line":46},"line",1,[43,48,49],{},"import random\n",[43,51,53],{"class":45,"line":52},2,[43,54,55],{},"import numpy as np\n",[43,57,59],{"class":45,"line":58},3,[43,60,61],{},"import torch\n",[43,63,65],{"class":45,"line":64},4,[43,66,68],{"emptyLinePlaceholder":67},true,"\n",[43,70,72],{"class":45,"line":71},5,[43,73,74],{},"def set_seed(seed=42):\n",[43,76,78],{"class":45,"line":77},6,[43,79,80],{},"    random.seed(seed)\n",[43,82,84],{"class":45,"line":83},7,[43,85,86],{},"    np.random.seed(seed)\n",[43,88,90],{"class":45,"line":89},8,[43,91,92],{},"    torch.manual_seed(seed)\n",[43,94,96],{"class":45,"line":95},9,[43,97,98],{},"    torch.cuda.manual_seed_all(seed)\n",[43,100,102],{"class":45,"line":101},10,[43,103,68],{"emptyLinePlaceholder":67},[43,105,107],{"class":45,"line":106},11,[43,108,109],{},"set_seed(42)\n",[22,111,112,113,117],{},"Call this early. ",[114,115,116],"strong",{},"Key caveat:"," Seeds don't fully eliminate non-determinism in some GPU operations—explicitly configure those for true reproducibility.",[22,119,120],{},[121,122,123],"em",{},"Note: Article outlines 9 rules total but details only the first here.",[125,126,127],"style",{},"html .default .shiki span {color: var(--shiki-default);background: var(--shiki-default-bg);font-style: var(--shiki-default-font-style);font-weight: var(--shiki-default-font-weight);text-decoration: var(--shiki-default-text-decoration);}html .shiki span {color: var(--shiki-default);background: var(--shiki-default-bg);font-style: var(--shiki-default-font-style);font-weight: var(--shiki-default-font-weight);text-decoration: var(--shiki-default-text-decoration);}html .dark .shiki span {color: var(--shiki-dark);background: var(--shiki-dark-bg);font-style: var(--shiki-dark-font-style);font-weight: var(--shiki-dark-font-weight);text-decoration: var(--shiki-dark-text-decoration);}html.dark .shiki span {color: var(--shiki-dark);background: var(--shiki-dark-bg);font-style: var(--shiki-dark-font-style);font-weight: var(--shiki-dark-font-weight);text-decoration: var(--shiki-dark-text-decoration);}",{"title":38,"searchDepth":52,"depth":52,"links":129},[130,131],{"id":19,"depth":52,"text":20},{"id":27,"depth":52,"text":28},[133],"Data Science & Visualization",null,"md",false,{},"\u002Fsummaries\u002Ffix-randomness-first-for-stable-ml-pipelines-summary","2026-04-08 21:21:17",{"title":5,"description":38},{"loc":138},"ed293f2ee2f46e73","Python in Plain English","article","https:\u002F\u002Funknown","summaries\u002Ffix-randomness-first-for-stable-ml-pipelines-summary",[37,148],"machine-learning","ML systems fail from unstable pipelines, not bad models—control randomness by setting seeds across random, NumPy, and PyTorch to ensure reproducible results.",[],"w_GpfcH_eP9a4oHynSujBQl1BptGg4S_T_nFYUIStoo",[153,156,159,162,165,168,170,172,174,176,178,180,183,185,187,189,191,193,195,197,199,201,204,206,208,210,213,215,217,220,222,224,226,228,230,232,234,236,238,240,242,244,246,248,250,252,254,256,258,260,262,264,266,268,270,272,274,276,278,280,282,284,286,288,290,292,294,296,298,300,302,304,306,308,310,312,314,316,318,320,322,324,326,328,330,332,334,336,338,340,342,344,346,348,350,352,354,356,358,360,362,364,366,368,370,372,374,376,378,380,382,384,386,388,390,392,394,396,398,400,402,404,406,408,410,412,414,416,418,420,422,424,426,428,430,432,434,436,438,440,442,444,446,448,450,452,454,456,458,460,462,464,466,468,470,472,474,477,479,481,483,485,487,489,491,493,495,497,499,501,503,505,507,509,511,513,515,517,519,521,523,525,527,529,531,533,535,537,539,541,543,545,547,549,551,553,555,557,559,561,563,565,567,569,571,573,575,577,579,581,583,585,587,589,591,593,595,597,599,601,603,605,607,609,611,613,615,617,619,621,623,625,627,629,631,633,635,637,639,641,643,645,647,649,651,653,655,657,659,661,663,665,667,669,671,673,675,677,679,681,683,685,687,689,691,693,695,697,699,701,703,705,707,709,711,713,715,717,719,721,723,725,727,729,731,733,735,737,739,741,743,745,747,749,751,753,755,757,759,761,763,765,767,769,771,773,775,777,779,781,783,785,787,789,791,793,795,797,799,801,803,805,807,809,811,813,815,817,819,821,823,825,827,829,831,833,835,837,839,841,843,845,847,849,851,853,855,857,859,861,863,865,867,869,871,873,875,877,879,881,883,885,887,889,891,893,895,897,899,901,903,905,907,909,911,913,915,917,919,921,923,925,927,929,931,933,935,937,939,941,943,945,947,949,951,953,955,957,959,961,963,965,967,969,971,973,975,977,979,981,983,985,987,989,991,993,995,997,999,1001,1003,1005,1007,1009,1011,1013,1015,1017,1019,1021,1023,1025,1027,1029,1031,1033,1035,1037,1039,1041,1043,1045,1047,1049,1051,1053,1055,1057,1059,1061,1063,1065,1067,1069,1071,1073,1075,1077,1079,1081,1083,1085,1087,1089,1091,1093,1095,1097,1099,1101,1103,1105,1107,1109,1111,1113,1115,1117,1119,1121,1123,1125,1127,1129,1131,1133,1135,1137,1139,1141,1143,1145,1147,1149,1151,1153,1155,1157,1159,1161,1163,1165,1167,1169,1171,1173,1175,1177,1179,1181,1183,1185,1187,1189,1191,1193,1195,1197,1199,1201,1203,1205,1207,1209,1211,1213,1215,1217,1219,1221,1223,1225,1227,1229,1231,1233,1235,1237,1239,1241,1243,1245,1247,1249,1251,1253,1255,1257,1259,1261,1263,1265,1267,1269,1271,1273,1275,1277,1279,1281,1283,1285,1287,1289,1291,1293,1295,1297,1299,1301,1303,1305,1307,1309,1311,1313,1315,1317,1319,1321,1323,1325,1327,1329,1331,1333,1335,1337,1339,1341,1343,1345,1347,1349,1351,1353,1355,1357,1359,1361,1363,1365,1367,1369,1371,1373,1375,1377,1379,1381,1383,1385,1387,1389,1391,1393,1395,1397,1399,1401,1403,1405,1407,1409,1411,1413,1415,1417,1419,1421,1423,1425,1427,1429,1431,1433,1435,1437,1439,1441,1443,1445,1447,1449,1451,1453,1455,1457,1459,1461,1463,1465,1467,1469,1471,1473,1475,1477,1479,1481,1483,1485,1487,1489,1491,1493,1495,1497,1499,1501,1503,1505,1507,1509,1511,1513,1515,1517,1519,1521,1523,1525,1527,1529,1531,1533,1535,1537,1539,1541,1543,1545,1547,1549,1551,1553,1555,1557,1559,1561,1563,1565,1567,1569,1571,1573,1575,1577,1579,1581,1583,1585,1587,1589,1591,1593,1595,1597,1599,1601,1603,1605,1607,1609,1611,1613,1615,1617,1619,1621,1623,1625,1627,1629,1631,1633,1635,1637,1639,1641,1643,1645,1647,1649,1651,1653,1655,1657,1659,1661,1663,1665,1667,1669,1671,1673,1675,1677,1679,1681,1683,1685,1687,1689,1691,1693,1695,1697,1699,1701,1703,1705,1707,1709,1711,1713,1715,1717,1719,1721,1723,1725,1727,1729,1731,1733,1735,1737,1739,1741,1743,1745,1747,1749,1751,1753,1755,1757,1759,1761,1763,1765,1767,1769,1771,1773,1775,1777,1779,1781,1783,1785,1787,1789,1791,1793,1795,1797,1799,1801,1803,1805,1807,1809,1811,1813,1815,1817,1819,1821,1823,1825,1827,1829,1831,1833,1835,1837,1839,1841,1843,1845,1847,1849,1851,1853,1855,1857,1859,1861,1863,1865,1867,1869,1871,1873,1875,1877,1879,1881,1883,1885,1887,1889,1891,1893,1895,1897,1899,1901,1903,1905,1907,1909,1911,1913,1915,1917,1919,1921,1923,1925,1927,1929,1931,1933,1935,1937,1939,1941,1943,1945,1947,1949,1951,1953,1955,1957,1959,1961,1963,1965,1967,1969,1971,1973,1975,1977,1979,1981,1983,1985,1987,1989,1991,1993,1995,1997,1999,2001,2003,2005,2007,2009,2011,2013,2015,2017,2019,2021,2023,2025,2027,2029,2031,2033,2035,2037,2039,2041,2043,2045,2047,2049,2051,2053,2055,2057,2059,2061,2063,2065,2067,2069,2071,2073,2075,2077,2079,2081,2083,2085,2087,2089,2091,2093,2095,2097,2099,2101,2103,2105,2107,2109,2111,2113,2115,2117,2119,2121,2123,2125,2127,2129,2131,2133,2135,2137,2139,2141,2143,2145,2147,2149,2151,2153,2155,2157,2159,2161,2163,2165,2167,2169,2171,2173,2175,2177,2179,2181,2183,2185,2187,2189,2191,2193,2195,2197,2199,2201,2203,2205,2207,2209,2211,2213,2215,2217,2219,2221,2223,2225,2227,2229,2231,2233,2235,2237,2239,2241,2243,2245,2247,2249,2251,2253,2255,2257,2259,2261,2263,2265,2267,2269,2271,2273,2275,2277,2279,2281,2283,2285,2287,2289,2291,2293,2295,2297,2299,2301,2303,2305,2307,2309,2311,2313,2315,2317,2319,2321,2323,2325,2327,2329,2331,2333,2335,2337,2339,2341,2343,2345,2347,2349,2351,2353,2355,2357,2359,2361,2363,2365,2367,2369,2371,2373,2375,2377,2379,2381,2383,2385,2387,2389,2391,2393,2395,2397,2399,2401,2403,2405,2407,2409,2411,2413,2415,2417,2419,2421,2423,2425,2427,2429,2431,2433,2435,2437,2439,2441,2443,2445,2447,2449,2451,2453,2455,2457,2459,2461,2463,2465,2467,2469,2471,2473,2475,2477,2479,2481,2483,2485,2487,2489,2491,2493,2495,2497,2499,2501,2503,2505,2507,2509,2511,2513,2515,2517,2519,2521,2523,2525,2527,2529,2531,2533,2535,2537,2539,2541,2543,2545,2547,2549,2551,2553,2555,2557,2559,2561,2563,2565,2567,2569,2571,2573,2575,2577,2579,2581,2583,2585,2587,2589,2591,2593,2595,2597,2599,2601,2603,2605,2607,2609,2611,2613,2615,2617,2619,2621,2623,2625,2627,2629,2631,2633,2635,2637,2639,2641,2643,2645,2647,2649,2651,2653,2655,2657,2659,2661,2663,2665,2667,2669,2671,2673,2675,2677,2679,2681,2683,2685,2687,2689,2691,2693,2695,2697,2699,2701,2703,2705,2707,2709,2711,2713,2715,2717,2719,2721,2723,2725,2727,2729,2731,2733,2735,2737,2739,2741,2743,2745,2747,2749,2751,2753,2755,2757,2759,2761,2763,2765,2767,2769,2771,2773,2775,2777,2779,2781,2783,2785,2787,2789,2791,2793,2795,2797,2799,2801,2803,2805,2807,2809,2811,2813,2815,2817,2819,2821,2823,2825,2827,2829,2831,2833,2835,2837,2839,2841,2843,2845,2847,2849,2851,2853,2855,2857,2859,2861,2863,2865,2867,2869,2871,2873,2875,2877,2879,2881,2883,2885,2887,2889,2891,2893,2895,2897,2899,2901,2903,2905,2907,2909,2911,2913,2915,2917,2919,2921,2923,2925,2927,2929,2931,2933,2935,2937,2939,2941,2943,2945,2947,2949,2951,2953,2955,2957,2959,2961,2963,2965,2967,2969,2971,2973,2975,2977,2979,2981,2983,2985,2987,2989,2991,2993,2995,2997,2999,3001,3003,3005,3007,3009,3011,3013,3015,3017,3019,3021,3023,3025,3027,3029,3031,3033,3035,3037,3039,3041,3043,3045,3047,3049,3051,3053,3055,3057,3059,3061,3063,3065,3067,3069,3071,3073,3075,3077,3079,3081,3083,3085,3087,3089,3091,3093,3095,3097,3099,3101,3103,3105,3107,3109,3111,3113,3115,3117,3119,3121,3123,3125,3127,3129,3131,3133,3135,3137,3139,3141,3143,3145,3147,3149,3151,3153,3155,3157,3159,3161,3163,3165,3167,3169,3171,3173,3175,3177,3179,3181,3183,3185,3187,3189,3191,3193,3195,3197,3199,3201,3203,3205,3207,3209,3211,3213,3215,3217,3219,3221,3223,3225,3227,3229,3231,3233,3235,3237,3239,3241,3243,3245,3247,3249,3251,3253,3255,3257,3259,3261,3263,3265,3267,3269,3271,3273,3275,3277,3279,3281,3283,3285,3287,3289,3291,3293,3295,3297,3299,3301,3303,3305,3307,3309,3311,3313,3315,3317,3319,3321,3323,3325,3327,3329,3331,3333,3335,3337,3339,3341,3343,3345,3347,3349,3351,3353,3355,3357,3359,3361,3363,3365,3367,3369,3371,3373,3375,3377,3379,3381,3383,3385,3387,3389,3391,3393,3395,3397,3399,3401,3403,3405,3407,3409,3411,3413,3415,3417,3419,3421,3423,3425,3427,3429,3431,3433,3435,3437,3439,3441,3443,3445,3447,3449,3451,3453,3455,3457,3459,3461,3463,3465,3467,3469,3471,3473,3475,3477,3479,3481,3483,3485,3487,3489,3491,3493,3495,3497,3499,3501,3503,3505,3507,3509,3511,3513,3515,3517,3519,3521,3523,3525,3527,3529,3531,3533,3535,3537,3539,3541,3543,3545,3547,3549,3551,3553,3555,3557,3559,3561,3563,3565,3567,3569,3571,3573,3575,3577,3579,3581,3583,3585,3587,3589,3591,3593,3595,3597,3599,3601,3603,3605,3607,3609,3611,3613,3615,3617,3619,3621,3623,3625,3627,3629,3631,3633,3635,3637,3639,3641,3643,3645,3647,3649,3651,3653,3655,3657,3659,3661,3663,3665,3667,3669,3671,3673,3675,3677,3679,3681,3683,3685,3687,3689,3691,3693,3695,3697,3699,3701,3703,3705,3707,3709,3711,3713,3715,3717,3719,3721,3723,3725,3727,3729,3731,3733,3735],{"categories":154},[155],"Developer Productivity",{"categories":157},[158],"Business & SaaS",{"categories":160},[161],"AI & LLMs",{"categories":163},[164],"AI Automation",{"categories":166},[167],"Product Strategy",{"categories":169},[161],{"categories":171},[155],{"categories":173},[158],{"categories":175},[],{"categories":177},[161],{"categories":179},[],{"categories":181},[182],"AI News & Trends",{"categories":184},[164],{"categories":186},[182],{"categories":188},[164],{"categories":190},[164],{"categories":192},[161],{"categories":194},[161],{"categories":196},[182],{"categories":198},[161],{"categories":200},[],{"categories":202},[203],"Design & Frontend",{"categories":205},[133],{"categories":207},[182],{"categories":209},[],{"categories":211},[212],"Software Engineering",{"categories":214},[161],{"categories":216},[164],{"categories":218},[219],"Marketing & Growth",{"categories":221},[161],{"categories":223},[164],{"categories":225},[],{"categories":227},[],{"categories":229},[203],{"categories":231},[164],{"categories":233},[155],{"categories":235},[203],{"categories":237},[161],{"categories":239},[164],{"categories":241},[182],{"categories":243},[],{"categories":245},[],{"categories":247},[164],{"categories":249},[212],{"categories":251},[],{"categories":253},[158],{"categories":255},[],{"categories":257},[],{"categories":259},[164],{"categories":261},[164],{"categories":263},[161],{"categories":265},[],{"categories":267},[212],{"categories":269},[],{"categories":271},[],{"categories":273},[],{"categories":275},[161],{"categories":277},[219],{"categories":279},[203],{"categories":281},[203],{"categories":283},[161],{"categories":285},[164],{"categories":287},[161],{"categories":289},[161],{"categories":291},[164],{"categories":293},[164],{"categories":295},[133],{"categories":297},[182],{"categories":299},[164],{"categories":301},[219],{"categories":303},[164],{"categories":305},[167],{"categories":307},[],{"categories":309},[164],{"categories":311},[],{"categories":313},[164],{"categories":315},[212],{"categories":317},[203],{"categories":319},[161],{"categories":321},[],{"categories":323},[],{"categories":325},[164],{"categories":327},[],{"categories":329},[161],{"categories":331},[],{"categories":333},[155],{"categories":335},[212],{"categories":337},[158],{"categories":339},[182],{"categories":341},[161],{"categories":343},[],{"categories":345},[161],{"categories":347},[],{"categories":349},[212],{"categories":351},[133],{"categories":353},[],{"categories":355},[161],{"categories":357},[203],{"categories":359},[],{"categories":361},[203],{"categories":363},[164],{"categories":365},[],{"categories":367},[164],{"categories":369},[182],{"categories":371},[158],{"categories":373},[161],{"categories":375},[],{"categories":377},[164],{"categories":379},[161],{"categories":381},[167],{"categories":383},[],{"categories":385},[161],{"categories":387},[164],{"categories":389},[164],{"categories":391},[],{"categories":393},[133],{"categories":395},[161],{"categories":397},[],{"categories":399},[155],{"categories":401},[158],{"categories":403},[161],{"categories":405},[164],{"categories":407},[212],{"categories":409},[161],{"categories":411},[],{"categories":413},[],{"categories":415},[161],{"categories":417},[],{"categories":419},[203],{"categories":421},[],{"categories":423},[161],{"categories":425},[],{"categories":427},[164],{"categories":429},[161],{"categories":431},[203],{"categories":433},[],{"categories":435},[161],{"categories":437},[161],{"categories":439},[158],{"categories":441},[164],{"categories":443},[161],{"categories":445},[203],{"categories":447},[164],{"categories":449},[],{"categories":451},[],{"categories":453},[182],{"categories":455},[],{"categories":457},[161],{"categories":459},[158,219],{"categories":461},[],{"categories":463},[161],{"categories":465},[],{"categories":467},[],{"categories":469},[161],{"categories":471},[],{"categories":473},[161],{"categories":475},[476],"DevOps & Cloud",{"categories":478},[],{"categories":480},[182],{"categories":482},[203],{"categories":484},[],{"categories":486},[182],{"categories":488},[182],{"categories":490},[161],{"categories":492},[219],{"categories":494},[],{"categories":496},[158],{"categories":498},[],{"categories":500},[161,476],{"categories":502},[161],{"categories":504},[161],{"categories":506},[164],{"categories":508},[161,212],{"categories":510},[133],{"categories":512},[161],{"categories":514},[219],{"categories":516},[164],{"categories":518},[164],{"categories":520},[],{"categories":522},[164],{"categories":524},[161,158],{"categories":526},[],{"categories":528},[203],{"categories":530},[203],{"categories":532},[],{"categories":534},[],{"categories":536},[182],{"categories":538},[],{"categories":540},[155],{"categories":542},[212],{"categories":544},[161],{"categories":546},[203],{"categories":548},[164],{"categories":550},[212],{"categories":552},[182],{"categories":554},[203],{"categories":556},[],{"categories":558},[161],{"categories":560},[161],{"categories":562},[161],{"categories":564},[182],{"categories":566},[155],{"categories":568},[161],{"categories":570},[164],{"categories":572},[476],{"categories":574},[203],{"categories":576},[164],{"categories":578},[],{"categories":580},[],{"categories":582},[203],{"categories":584},[182],{"categories":586},[133],{"categories":588},[],{"categories":590},[161],{"categories":592},[161],{"categories":594},[158],{"categories":596},[161],{"categories":598},[161],{"categories":600},[182],{"categories":602},[],{"categories":604},[164],{"categories":606},[212],{"categories":608},[],{"categories":610},[161],{"categories":612},[161],{"categories":614},[164],{"categories":616},[],{"categories":618},[],{"categories":620},[161],{"categories":622},[],{"categories":624},[158],{"categories":626},[164],{"categories":628},[],{"categories":630},[155],{"categories":632},[161],{"categories":634},[158],{"categories":636},[182],{"categories":638},[],{"categories":640},[],{"categories":642},[],{"categories":644},[182],{"categories":646},[182],{"categories":648},[],{"categories":650},[],{"categories":652},[158],{"categories":654},[],{"categories":656},[],{"categories":658},[155],{"categories":660},[],{"categories":662},[219],{"categories":664},[164],{"categories":666},[158],{"categories":668},[164],{"categories":670},[212],{"categories":672},[],{"categories":674},[167],{"categories":676},[203],{"categories":678},[212],{"categories":680},[161],{"categories":682},[164],{"categories":684},[158],{"categories":686},[161],{"categories":688},[],{"categories":690},[],{"categories":692},[212],{"categories":694},[133],{"categories":696},[167],{"categories":698},[164],{"categories":700},[161],{"categories":702},[],{"categories":704},[476],{"categories":706},[],{"categories":708},[164],{"categories":710},[],{"categories":712},[],{"categories":714},[161],{"categories":716},[203],{"categories":718},[219],{"categories":720},[164],{"categories":722},[],{"categories":724},[155],{"categories":726},[],{"categories":728},[182],{"categories":730},[161,476],{"categories":732},[182],{"categories":734},[161],{"categories":736},[158],{"categories":738},[161],{"categories":740},[],{"categories":742},[158],{"categories":744},[],{"categories":746},[212],{"categories":748},[203],{"categories":750},[182],{"categories":752},[133],{"categories":754},[155],{"categories":756},[161],{"categories":758},[212],{"categories":760},[],{"categories":762},[],{"categories":764},[167],{"categories":766},[],{"categories":768},[161],{"categories":770},[],{"categories":772},[203],{"categories":774},[203],{"categories":776},[203],{"categories":778},[],{"categories":780},[],{"categories":782},[182],{"categories":784},[164],{"categories":786},[161],{"categories":788},[161],{"categories":790},[161],{"categories":792},[158],{"categories":794},[161],{"categories":796},[],{"categories":798},[212],{"categories":800},[212],{"categories":802},[158],{"categories":804},[],{"categories":806},[161],{"categories":808},[161],{"categories":810},[158],{"categories":812},[182],{"categories":814},[219],{"categories":816},[164],{"categories":818},[],{"categories":820},[203],{"categories":822},[],{"categories":824},[161],{"categories":826},[],{"categories":828},[158],{"categories":830},[164],{"categories":832},[],{"categories":834},[476],{"categories":836},[133],{"categories":838},[212],{"categories":840},[219],{"categories":842},[212],{"categories":844},[164],{"categories":846},[],{"categories":848},[],{"categories":850},[164],{"categories":852},[155],{"categories":854},[164],{"categories":856},[167],{"categories":858},[158],{"categories":860},[],{"categories":862},[161],{"categories":864},[167],{"categories":866},[161],{"categories":868},[161],{"categories":870},[219],{"categories":872},[203],{"categories":874},[164],{"categories":876},[],{"categories":878},[],{"categories":880},[476],{"categories":882},[212],{"categories":884},[],{"categories":886},[164],{"categories":888},[161],{"categories":890},[203,161],{"categories":892},[155],{"categories":894},[],{"categories":896},[161],{"categories":898},[155],{"categories":900},[203],{"categories":902},[164],{"categories":904},[212],{"categories":906},[],{"categories":908},[161],{"categories":910},[],{"categories":912},[155],{"categories":914},[],{"categories":916},[164],{"categories":918},[167],{"categories":920},[161],{"categories":922},[161],{"categories":924},[203],{"categories":926},[164],{"categories":928},[476],{"categories":930},[203],{"categories":932},[164],{"categories":934},[161],{"categories":936},[161],{"categories":938},[161],{"categories":940},[182],{"categories":942},[],{"categories":944},[167],{"categories":946},[164],{"categories":948},[203],{"categories":950},[164],{"categories":952},[212],{"categories":954},[203],{"categories":956},[164],{"categories":958},[182],{"categories":960},[],{"categories":962},[161],{"categories":964},[203],{"categories":966},[161],{"categories":968},[155],{"categories":970},[182],{"categories":972},[161],{"categories":974},[219],{"categories":976},[161],{"categories":978},[161],{"categories":980},[164],{"categories":982},[164],{"categories":984},[161],{"categories":986},[164],{"categories":988},[203],{"categories":990},[161],{"categories":992},[],{"categories":994},[],{"categories":996},[212],{"categories":998},[],{"categories":1000},[155],{"categories":1002},[476],{"categories":1004},[],{"categories":1006},[155],{"categories":1008},[158],{"categories":1010},[219],{"categories":1012},[],{"categories":1014},[158],{"categories":1016},[],{"categories":1018},[],{"categories":1020},[],{"categories":1022},[],{"categories":1024},[],{"categories":1026},[161],{"categories":1028},[164],{"categories":1030},[476],{"categories":1032},[155],{"categories":1034},[161],{"categories":1036},[212],{"categories":1038},[167],{"categories":1040},[161],{"categories":1042},[219],{"categories":1044},[161],{"categories":1046},[161],{"categories":1048},[161],{"categories":1050},[161,155],{"categories":1052},[212],{"categories":1054},[212],{"categories":1056},[203],{"categories":1058},[161],{"categories":1060},[],{"categories":1062},[],{"categories":1064},[],{"categories":1066},[212],{"categories":1068},[133],{"categories":1070},[182],{"categories":1072},[203],{"categories":1074},[],{"categories":1076},[161],{"categories":1078},[161],{"categories":1080},[],{"categories":1082},[],{"categories":1084},[164],{"categories":1086},[161],{"categories":1088},[158],{"categories":1090},[],{"categories":1092},[155],{"categories":1094},[161],{"categories":1096},[155],{"categories":1098},[161],{"categories":1100},[212],{"categories":1102},[219],{"categories":1104},[161,203],{"categories":1106},[182],{"categories":1108},[203],{"categories":1110},[],{"categories":1112},[476],{"categories":1114},[203],{"categories":1116},[164],{"categories":1118},[],{"categories":1120},[],{"categories":1122},[],{"categories":1124},[],{"categories":1126},[212],{"categories":1128},[164],{"categories":1130},[164],{"categories":1132},[476],{"categories":1134},[161],{"categories":1136},[161],{"categories":1138},[161],{"categories":1140},[],{"categories":1142},[203],{"categories":1144},[],{"categories":1146},[],{"categories":1148},[164],{"categories":1150},[],{"categories":1152},[],{"categories":1154},[219],{"categories":1156},[219],{"categories":1158},[164],{"categories":1160},[],{"categories":1162},[161],{"categories":1164},[161],{"categories":1166},[212],{"categories":1168},[203],{"categories":1170},[203],{"categories":1172},[164],{"categories":1174},[155],{"categories":1176},[161],{"categories":1178},[203],{"categories":1180},[203],{"categories":1182},[164],{"categories":1184},[164],{"categories":1186},[161],{"categories":1188},[],{"categories":1190},[],{"categories":1192},[161],{"categories":1194},[164],{"categories":1196},[182],{"categories":1198},[212],{"categories":1200},[155],{"categories":1202},[161],{"categories":1204},[],{"categories":1206},[164],{"categories":1208},[164],{"categories":1210},[],{"categories":1212},[155],{"categories":1214},[161],{"categories":1216},[155],{"categories":1218},[155],{"categories":1220},[],{"categories":1222},[],{"categories":1224},[164],{"categories":1226},[164],{"categories":1228},[161],{"categories":1230},[161],{"categories":1232},[182],{"categories":1234},[133],{"categories":1236},[167],{"categories":1238},[182],{"categories":1240},[203],{"categories":1242},[],{"categories":1244},[182],{"categories":1246},[],{"categories":1248},[],{"categories":1250},[],{"categories":1252},[],{"categories":1254},[212],{"categories":1256},[133],{"categories":1258},[],{"categories":1260},[161],{"categories":1262},[161],{"categories":1264},[133],{"categories":1266},[212],{"categories":1268},[],{"categories":1270},[],{"categories":1272},[164],{"categories":1274},[182],{"categories":1276},[182],{"categories":1278},[164],{"categories":1280},[155],{"categories":1282},[161,476],{"categories":1284},[],{"categories":1286},[203],{"categories":1288},[155],{"categories":1290},[164],{"categories":1292},[203],{"categories":1294},[],{"categories":1296},[164],{"categories":1298},[164],{"categories":1300},[161],{"categories":1302},[219],{"categories":1304},[212],{"categories":1306},[203],{"categories":1308},[],{"categories":1310},[164],{"categories":1312},[161],{"categories":1314},[164],{"categories":1316},[164],{"categories":1318},[164],{"categories":1320},[219],{"categories":1322},[164],{"categories":1324},[161],{"categories":1326},[],{"categories":1328},[219],{"categories":1330},[182],{"categories":1332},[164],{"categories":1334},[],{"categories":1336},[],{"categories":1338},[161],{"categories":1340},[164],{"categories":1342},[182],{"categories":1344},[164],{"categories":1346},[],{"categories":1348},[],{"categories":1350},[],{"categories":1352},[164],{"categories":1354},[],{"categories":1356},[],{"categories":1358},[133],{"categories":1360},[161],{"categories":1362},[133],{"categories":1364},[182],{"categories":1366},[161],{"categories":1368},[161],{"categories":1370},[164],{"categories":1372},[161],{"categories":1374},[],{"categories":1376},[],{"categories":1378},[476],{"categories":1380},[],{"categories":1382},[],{"categories":1384},[155],{"categories":1386},[],{"categories":1388},[],{"categories":1390},[],{"categories":1392},[],{"categories":1394},[212],{"categories":1396},[182],{"categories":1398},[219],{"categories":1400},[158],{"categories":1402},[161],{"categories":1404},[161],{"categories":1406},[158],{"categories":1408},[],{"categories":1410},[203],{"categories":1412},[164],{"categories":1414},[158],{"categories":1416},[161],{"categories":1418},[161],{"categories":1420},[155],{"categories":1422},[],{"categories":1424},[155],{"categories":1426},[161],{"categories":1428},[219],{"categories":1430},[164],{"categories":1432},[182],{"categories":1434},[158],{"categories":1436},[161],{"categories":1438},[164],{"categories":1440},[],{"categories":1442},[161],{"categories":1444},[155],{"categories":1446},[161],{"categories":1448},[],{"categories":1450},[182],{"categories":1452},[161],{"categories":1454},[],{"categories":1456},[158],{"categories":1458},[161],{"categories":1460},[],{"categories":1462},[],{"categories":1464},[],{"categories":1466},[161],{"categories":1468},[],{"categories":1470},[476],{"categories":1472},[161],{"categories":1474},[],{"categories":1476},[161],{"categories":1478},[161],{"categories":1480},[161],{"categories":1482},[161,476],{"categories":1484},[161],{"categories":1486},[161],{"categories":1488},[203],{"categories":1490},[164],{"categories":1492},[],{"categories":1494},[164],{"categories":1496},[161],{"categories":1498},[161],{"categories":1500},[161],{"categories":1502},[155],{"categories":1504},[155],{"categories":1506},[212],{"categories":1508},[203],{"categories":1510},[164],{"categories":1512},[],{"categories":1514},[161],{"categories":1516},[182],{"categories":1518},[161],{"categories":1520},[158],{"categories":1522},[],{"categories":1524},[476],{"categories":1526},[203],{"categories":1528},[203],{"categories":1530},[164],{"categories":1532},[182],{"categories":1534},[164],{"categories":1536},[161],{"categories":1538},[],{"categories":1540},[161],{"categories":1542},[],{"categories":1544},[],{"categories":1546},[161],{"categories":1548},[161],{"categories":1550},[161],{"categories":1552},[164],{"categories":1554},[161],{"categories":1556},[],{"categories":1558},[133],{"categories":1560},[164],{"categories":1562},[],{"categories":1564},[],{"categories":1566},[161],{"categories":1568},[182],{"categories":1570},[],{"categories":1572},[203],{"categories":1574},[476],{"categories":1576},[182],{"categories":1578},[212],{"categories":1580},[212],{"categories":1582},[182],{"categories":1584},[182],{"categories":1586},[476],{"categories":1588},[],{"categories":1590},[182],{"categories":1592},[161],{"categories":1594},[155],{"categories":1596},[182],{"categories":1598},[],{"categories":1600},[133],{"categories":1602},[182],{"categories":1604},[212],{"categories":1606},[182],{"categories":1608},[476],{"categories":1610},[161],{"categories":1612},[161],{"categories":1614},[],{"categories":1616},[158],{"categories":1618},[],{"categories":1620},[],{"categories":1622},[161],{"categories":1624},[161],{"categories":1626},[161],{"categories":1628},[161],{"categories":1630},[],{"categories":1632},[133],{"categories":1634},[155],{"categories":1636},[],{"categories":1638},[161],{"categories":1640},[161],{"categories":1642},[476],{"categories":1644},[476],{"categories":1646},[],{"categories":1648},[164],{"categories":1650},[182],{"categories":1652},[182],{"categories":1654},[161],{"categories":1656},[164],{"categories":1658},[],{"categories":1660},[203],{"categories":1662},[161],{"categories":1664},[161],{"categories":1666},[],{"categories":1668},[],{"categories":1670},[476],{"categories":1672},[161],{"categories":1674},[212],{"categories":1676},[158],{"categories":1678},[161],{"categories":1680},[],{"categories":1682},[164],{"categories":1684},[155],{"categories":1686},[155],{"categories":1688},[],{"categories":1690},[161],{"categories":1692},[203],{"categories":1694},[164],{"categories":1696},[],{"categories":1698},[161],{"categories":1700},[161],{"categories":1702},[164],{"categories":1704},[],{"categories":1706},[164],{"categories":1708},[212],{"categories":1710},[],{"categories":1712},[161],{"categories":1714},[],{"categories":1716},[161],{"categories":1718},[],{"categories":1720},[161],{"categories":1722},[161],{"categories":1724},[],{"categories":1726},[161],{"categories":1728},[182],{"categories":1730},[161],{"categories":1732},[161],{"categories":1734},[155],{"categories":1736},[161],{"categories":1738},[182],{"categories":1740},[164],{"categories":1742},[],{"categories":1744},[161],{"categories":1746},[219],{"categories":1748},[],{"categories":1750},[],{"categories":1752},[],{"categories":1754},[155],{"categories":1756},[182],{"categories":1758},[164],{"categories":1760},[161],{"categories":1762},[203],{"categories":1764},[164],{"categories":1766},[],{"categories":1768},[164],{"categories":1770},[],{"categories":1772},[161],{"categories":1774},[164],{"categories":1776},[161],{"categories":1778},[],{"categories":1780},[161],{"categories":1782},[161],{"categories":1784},[182],{"categories":1786},[203],{"categories":1788},[164],{"categories":1790},[203],{"categories":1792},[158],{"categories":1794},[],{"categories":1796},[],{"categories":1798},[161],{"categories":1800},[155],{"categories":1802},[182],{"categories":1804},[],{"categories":1806},[],{"categories":1808},[212],{"categories":1810},[203],{"categories":1812},[],{"categories":1814},[161],{"categories":1816},[],{"categories":1818},[219],{"categories":1820},[161],{"categories":1822},[476],{"categories":1824},[212],{"categories":1826},[],{"categories":1828},[164],{"categories":1830},[161],{"categories":1832},[164],{"categories":1834},[164],{"categories":1836},[161],{"categories":1838},[],{"categories":1840},[155],{"categories":1842},[161],{"categories":1844},[158],{"categories":1846},[212],{"categories":1848},[203],{"categories":1850},[],{"categories":1852},[],{"categories":1854},[],{"categories":1856},[164],{"categories":1858},[203],{"categories":1860},[182],{"categories":1862},[161],{"categories":1864},[182],{"categories":1866},[203],{"categories":1868},[],{"categories":1870},[203],{"categories":1872},[182],{"categories":1874},[158],{"categories":1876},[161],{"categories":1878},[182],{"categories":1880},[219],{"categories":1882},[],{"categories":1884},[],{"categories":1886},[133],{"categories":1888},[161,212],{"categories":1890},[182],{"categories":1892},[161],{"categories":1894},[164],{"categories":1896},[164],{"categories":1898},[161],{"categories":1900},[],{"categories":1902},[212],{"categories":1904},[161],{"categories":1906},[133],{"categories":1908},[164],{"categories":1910},[219],{"categories":1912},[476],{"categories":1914},[],{"categories":1916},[155],{"categories":1918},[164],{"categories":1920},[164],{"categories":1922},[212],{"categories":1924},[161],{"categories":1926},[161],{"categories":1928},[],{"categories":1930},[],{"categories":1932},[],{"categories":1934},[476],{"categories":1936},[182],{"categories":1938},[161],{"categories":1940},[161],{"categories":1942},[161],{"categories":1944},[],{"categories":1946},[133],{"categories":1948},[158],{"categories":1950},[],{"categories":1952},[164],{"categories":1954},[476],{"categories":1956},[],{"categories":1958},[203],{"categories":1960},[203],{"categories":1962},[],{"categories":1964},[212],{"categories":1966},[203],{"categories":1968},[161],{"categories":1970},[],{"categories":1972},[182],{"categories":1974},[161],{"categories":1976},[203],{"categories":1978},[164],{"categories":1980},[182],{"categories":1982},[],{"categories":1984},[164],{"categories":1986},[203],{"categories":1988},[161],{"categories":1990},[],{"categories":1992},[161],{"categories":1994},[161],{"categories":1996},[476],{"categories":1998},[182],{"categories":2000},[133],{"categories":2002},[133],{"categories":2004},[],{"categories":2006},[],{"categories":2008},[],{"categories":2010},[164],{"categories":2012},[212],{"categories":2014},[212],{"categories":2016},[],{"categories":2018},[],{"categories":2020},[161],{"categories":2022},[],{"categories":2024},[164],{"categories":2026},[161],{"categories":2028},[],{"categories":2030},[161],{"categories":2032},[158],{"categories":2034},[161],{"categories":2036},[219],{"categories":2038},[164],{"categories":2040},[161],{"categories":2042},[212],{"categories":2044},[182],{"categories":2046},[164],{"categories":2048},[],{"categories":2050},[182],{"categories":2052},[164],{"categories":2054},[164],{"categories":2056},[],{"categories":2058},[158],{"categories":2060},[164],{"categories":2062},[],{"categories":2064},[161],{"categories":2066},[155],{"categories":2068},[182],{"categories":2070},[476],{"categories":2072},[164],{"categories":2074},[164],{"categories":2076},[155],{"categories":2078},[161],{"categories":2080},[],{"categories":2082},[],{"categories":2084},[203],{"categories":2086},[161,158],{"categories":2088},[],{"categories":2090},[155],{"categories":2092},[133],{"categories":2094},[161],{"categories":2096},[212],{"categories":2098},[161],{"categories":2100},[164],{"categories":2102},[161],{"categories":2104},[161],{"categories":2106},[182],{"categories":2108},[164],{"categories":2110},[],{"categories":2112},[],{"categories":2114},[164],{"categories":2116},[161],{"categories":2118},[476],{"categories":2120},[],{"categories":2122},[161],{"categories":2124},[164],{"categories":2126},[],{"categories":2128},[161],{"categories":2130},[219],{"categories":2132},[133],{"categories":2134},[164],{"categories":2136},[161],{"categories":2138},[476],{"categories":2140},[],{"categories":2142},[161],{"categories":2144},[219],{"categories":2146},[203],{"categories":2148},[161],{"categories":2150},[],{"categories":2152},[219],{"categories":2154},[182],{"categories":2156},[161],{"categories":2158},[161],{"categories":2160},[155],{"categories":2162},[],{"categories":2164},[],{"categories":2166},[203],{"categories":2168},[161],{"categories":2170},[133],{"categories":2172},[219],{"categories":2174},[219],{"categories":2176},[182],{"categories":2178},[],{"categories":2180},[],{"categories":2182},[161],{"categories":2184},[],{"categories":2186},[161,212],{"categories":2188},[182],{"categories":2190},[164],{"categories":2192},[212],{"categories":2194},[161],{"categories":2196},[155],{"categories":2198},[],{"categories":2200},[],{"categories":2202},[155],{"categories":2204},[219],{"categories":2206},[161],{"categories":2208},[],{"categories":2210},[203,161],{"categories":2212},[476],{"categories":2214},[155],{"categories":2216},[],{"categories":2218},[158],{"categories":2220},[158],{"categories":2222},[161],{"categories":2224},[212],{"categories":2226},[164],{"categories":2228},[182],{"categories":2230},[219],{"categories":2232},[203],{"categories":2234},[161],{"categories":2236},[161],{"categories":2238},[161],{"categories":2240},[155],{"categories":2242},[161],{"categories":2244},[164],{"categories":2246},[182],{"categories":2248},[],{"categories":2250},[],{"categories":2252},[133],{"categories":2254},[212],{"categories":2256},[161],{"categories":2258},[203],{"categories":2260},[133],{"categories":2262},[161],{"categories":2264},[161],{"categories":2266},[164],{"categories":2268},[164],{"categories":2270},[161,158],{"categories":2272},[],{"categories":2274},[203],{"categories":2276},[],{"categories":2278},[161],{"categories":2280},[182],{"categories":2282},[155],{"categories":2284},[155],{"categories":2286},[164],{"categories":2288},[161],{"categories":2290},[158],{"categories":2292},[212],{"categories":2294},[219],{"categories":2296},[],{"categories":2298},[182],{"categories":2300},[161],{"categories":2302},[161],{"categories":2304},[182],{"categories":2306},[212],{"categories":2308},[161],{"categories":2310},[164],{"categories":2312},[182],{"categories":2314},[161],{"categories":2316},[203],{"categories":2318},[161],{"categories":2320},[161],{"categories":2322},[476],{"categories":2324},[167],{"categories":2326},[164],{"categories":2328},[161],{"categories":2330},[182],{"categories":2332},[164],{"categories":2334},[219],{"categories":2336},[161],{"categories":2338},[],{"categories":2340},[161],{"categories":2342},[],{"categories":2344},[],{"categories":2346},[],{"categories":2348},[158],{"categories":2350},[161],{"categories":2352},[164],{"categories":2354},[182],{"categories":2356},[182],{"categories":2358},[182],{"categories":2360},[182],{"categories":2362},[],{"categories":2364},[155],{"categories":2366},[164],{"categories":2368},[182],{"categories":2370},[155],{"categories":2372},[164],{"categories":2374},[161],{"categories":2376},[161,164],{"categories":2378},[164],{"categories":2380},[476],{"categories":2382},[182],{"categories":2384},[182],{"categories":2386},[164],{"categories":2388},[161],{"categories":2390},[],{"categories":2392},[182],{"categories":2394},[219],{"categories":2396},[155],{"categories":2398},[161],{"categories":2400},[161],{"categories":2402},[],{"categories":2404},[212],{"categories":2406},[],{"categories":2408},[155],{"categories":2410},[164],{"categories":2412},[182],{"categories":2414},[161],{"categories":2416},[182],{"categories":2418},[155],{"categories":2420},[182],{"categories":2422},[182],{"categories":2424},[],{"categories":2426},[158],{"categories":2428},[164],{"categories":2430},[182],{"categories":2432},[182],{"categories":2434},[182],{"categories":2436},[182],{"categories":2438},[182],{"categories":2440},[182],{"categories":2442},[182],{"categories":2444},[182],{"categories":2446},[182],{"categories":2448},[182],{"categories":2450},[133],{"categories":2452},[155],{"categories":2454},[161],{"categories":2456},[161],{"categories":2458},[],{"categories":2460},[161,155],{"categories":2462},[],{"categories":2464},[164],{"categories":2466},[182],{"categories":2468},[164],{"categories":2470},[161],{"categories":2472},[161],{"categories":2474},[161],{"categories":2476},[161],{"categories":2478},[161],{"categories":2480},[164],{"categories":2482},[158],{"categories":2484},[203],{"categories":2486},[182],{"categories":2488},[161],{"categories":2490},[],{"categories":2492},[],{"categories":2494},[164],{"categories":2496},[203],{"categories":2498},[161],{"categories":2500},[],{"categories":2502},[],{"categories":2504},[219],{"categories":2506},[161],{"categories":2508},[],{"categories":2510},[],{"categories":2512},[155],{"categories":2514},[158],{"categories":2516},[161],{"categories":2518},[158],{"categories":2520},[203],{"categories":2522},[],{"categories":2524},[182],{"categories":2526},[],{"categories":2528},[203],{"categories":2530},[161],{"categories":2532},[219],{"categories":2534},[],{"categories":2536},[219],{"categories":2538},[],{"categories":2540},[],{"categories":2542},[164],{"categories":2544},[],{"categories":2546},[158],{"categories":2548},[155],{"categories":2550},[203],{"categories":2552},[212],{"categories":2554},[],{"categories":2556},[],{"categories":2558},[161],{"categories":2560},[155],{"categories":2562},[219],{"categories":2564},[],{"categories":2566},[164],{"categories":2568},[164],{"categories":2570},[182],{"categories":2572},[161],{"categories":2574},[164],{"categories":2576},[161],{"categories":2578},[164],{"categories":2580},[161],{"categories":2582},[167],{"categories":2584},[182],{"categories":2586},[],{"categories":2588},[219],{"categories":2590},[212],{"categories":2592},[164],{"categories":2594},[],{"categories":2596},[161],{"categories":2598},[164],{"categories":2600},[158],{"categories":2602},[155],{"categories":2604},[161],{"categories":2606},[203],{"categories":2608},[212],{"categories":2610},[212],{"categories":2612},[161],{"categories":2614},[133],{"categories":2616},[161],{"categories":2618},[164],{"categories":2620},[158],{"categories":2622},[164],{"categories":2624},[161],{"categories":2626},[161],{"categories":2628},[164],{"categories":2630},[182],{"categories":2632},[],{"categories":2634},[155],{"categories":2636},[161],{"categories":2638},[164],{"categories":2640},[161],{"categories":2642},[161],{"categories":2644},[],{"categories":2646},[203],{"categories":2648},[158],{"categories":2650},[182],{"categories":2652},[161],{"categories":2654},[161],{"categories":2656},[203],{"categories":2658},[219],{"categories":2660},[133],{"categories":2662},[161],{"categories":2664},[182],{"categories":2666},[161],{"categories":2668},[164],{"categories":2670},[476],{"categories":2672},[161],{"categories":2674},[164],{"categories":2676},[133],{"categories":2678},[],{"categories":2680},[164],{"categories":2682},[212],{"categories":2684},[203],{"categories":2686},[161],{"categories":2688},[155],{"categories":2690},[158],{"categories":2692},[212],{"categories":2694},[],{"categories":2696},[164],{"categories":2698},[161],{"categories":2700},[],{"categories":2702},[182],{"categories":2704},[],{"categories":2706},[182],{"categories":2708},[161],{"categories":2710},[164],{"categories":2712},[164],{"categories":2714},[164],{"categories":2716},[],{"categories":2718},[],{"categories":2720},[161],{"categories":2722},[161],{"categories":2724},[],{"categories":2726},[203],{"categories":2728},[164],{"categories":2730},[219],{"categories":2732},[155],{"categories":2734},[],{"categories":2736},[],{"categories":2738},[182],{"categories":2740},[212],{"categories":2742},[161],{"categories":2744},[161],{"categories":2746},[161],{"categories":2748},[212],{"categories":2750},[182],{"categories":2752},[203],{"categories":2754},[161],{"categories":2756},[161],{"categories":2758},[161],{"categories":2760},[182],{"categories":2762},[161],{"categories":2764},[182],{"categories":2766},[164],{"categories":2768},[164],{"categories":2770},[212],{"categories":2772},[164],{"categories":2774},[161],{"categories":2776},[212],{"categories":2778},[203],{"categories":2780},[],{"categories":2782},[164],{"categories":2784},[],{"categories":2786},[],{"categories":2788},[],{"categories":2790},[158],{"categories":2792},[161],{"categories":2794},[164],{"categories":2796},[155],{"categories":2798},[164],{"categories":2800},[219],{"categories":2802},[],{"categories":2804},[164],{"categories":2806},[],{"categories":2808},[155],{"categories":2810},[164],{"categories":2812},[],{"categories":2814},[164],{"categories":2816},[161],{"categories":2818},[182],{"categories":2820},[161],{"categories":2822},[164],{"categories":2824},[182],{"categories":2826},[164],{"categories":2828},[212],{"categories":2830},[203],{"categories":2832},[155],{"categories":2834},[],{"categories":2836},[164],{"categories":2838},[203],{"categories":2840},[476],{"categories":2842},[182],{"categories":2844},[161],{"categories":2846},[203],{"categories":2848},[155],{"categories":2850},[],{"categories":2852},[164],{"categories":2854},[164],{"categories":2856},[161],{"categories":2858},[],{"categories":2860},[164],{"categories":2862},[167],{"categories":2864},[182],{"categories":2866},[164],{"categories":2868},[158],{"categories":2870},[],{"categories":2872},[161],{"categories":2874},[167],{"categories":2876},[161],{"categories":2878},[164],{"categories":2880},[182],{"categories":2882},[155],{"categories":2884},[476],{"categories":2886},[161],{"categories":2888},[161],{"categories":2890},[161],{"categories":2892},[182],{"categories":2894},[158],{"categories":2896},[161],{"categories":2898},[203],{"categories":2900},[182],{"categories":2902},[476],{"categories":2904},[161],{"categories":2906},[],{"categories":2908},[],{"categories":2910},[476],{"categories":2912},[133],{"categories":2914},[164],{"categories":2916},[164],{"categories":2918},[182],{"categories":2920},[161],{"categories":2922},[155],{"categories":2924},[203],{"categories":2926},[164],{"categories":2928},[161],{"categories":2930},[219],{"categories":2932},[161],{"categories":2934},[164],{"categories":2936},[],{"categories":2938},[161],{"categories":2940},[161],{"categories":2942},[182],{"categories":2944},[155],{"categories":2946},[],{"categories":2948},[161],{"categories":2950},[161],{"categories":2952},[212],{"categories":2954},[203],{"categories":2956},[161,164],{"categories":2958},[219,158],{"categories":2960},[161],{"categories":2962},[],{"categories":2964},[164],{"categories":2966},[],{"categories":2968},[212],{"categories":2970},[161],{"categories":2972},[182],{"categories":2974},[],{"categories":2976},[164],{"categories":2978},[],{"categories":2980},[203],{"categories":2982},[164],{"categories":2984},[155],{"categories":2986},[164],{"categories":2988},[161],{"categories":2990},[476],{"categories":2992},[219],{"categories":2994},[158],{"categories":2996},[158],{"categories":2998},[155],{"categories":3000},[155],{"categories":3002},[161],{"categories":3004},[164],{"categories":3006},[161],{"categories":3008},[161],{"categories":3010},[155],{"categories":3012},[161],{"categories":3014},[219],{"categories":3016},[182],{"categories":3018},[161],{"categories":3020},[164],{"categories":3022},[161],{"categories":3024},[],{"categories":3026},[212],{"categories":3028},[],{"categories":3030},[164],{"categories":3032},[155],{"categories":3034},[],{"categories":3036},[476],{"categories":3038},[161],{"categories":3040},[],{"categories":3042},[182],{"categories":3044},[164],{"categories":3046},[212],{"categories":3048},[161],{"categories":3050},[164],{"categories":3052},[212],{"categories":3054},[164],{"categories":3056},[182],{"categories":3058},[155],{"categories":3060},[182],{"categories":3062},[212],{"categories":3064},[161],{"categories":3066},[203],{"categories":3068},[161],{"categories":3070},[161],{"categories":3072},[161],{"categories":3074},[161],{"categories":3076},[164],{"categories":3078},[161],{"categories":3080},[164],{"categories":3082},[161],{"categories":3084},[155],{"categories":3086},[161],{"categories":3088},[164],{"categories":3090},[203],{"categories":3092},[155],{"categories":3094},[164],{"categories":3096},[203],{"categories":3098},[],{"categories":3100},[161],{"categories":3102},[161],{"categories":3104},[212],{"categories":3106},[],{"categories":3108},[164],{"categories":3110},[219],{"categories":3112},[161],{"categories":3114},[182],{"categories":3116},[219],{"categories":3118},[164],{"categories":3120},[158],{"categories":3122},[158],{"categories":3124},[161],{"categories":3126},[155],{"categories":3128},[],{"categories":3130},[161],{"categories":3132},[],{"categories":3134},[155],{"categories":3136},[161],{"categories":3138},[164],{"categories":3140},[164],{"categories":3142},[],{"categories":3144},[212],{"categories":3146},[212],{"categories":3148},[219],{"categories":3150},[203],{"categories":3152},[],{"categories":3154},[161],{"categories":3156},[155],{"categories":3158},[161],{"categories":3160},[212],{"categories":3162},[155],{"categories":3164},[182],{"categories":3166},[182],{"categories":3168},[],{"categories":3170},[182],{"categories":3172},[164],{"categories":3174},[203],{"categories":3176},[133],{"categories":3178},[161],{"categories":3180},[],{"categories":3182},[182],{"categories":3184},[212],{"categories":3186},[158],{"categories":3188},[161],{"categories":3190},[155],{"categories":3192},[476],{"categories":3194},[155],{"categories":3196},[],{"categories":3198},[],{"categories":3200},[182],{"categories":3202},[],{"categories":3204},[164],{"categories":3206},[164],{"categories":3208},[164],{"categories":3210},[],{"categories":3212},[161],{"categories":3214},[],{"categories":3216},[182],{"categories":3218},[155],{"categories":3220},[203],{"categories":3222},[161],{"categories":3224},[182],{"categories":3226},[182],{"categories":3228},[],{"categories":3230},[182],{"categories":3232},[155],{"categories":3234},[161],{"categories":3236},[],{"categories":3238},[164],{"categories":3240},[164],{"categories":3242},[155],{"categories":3244},[],{"categories":3246},[],{"categories":3248},[],{"categories":3250},[203],{"categories":3252},[164],{"categories":3254},[161],{"categories":3256},[],{"categories":3258},[],{"categories":3260},[],{"categories":3262},[203],{"categories":3264},[],{"categories":3266},[155],{"categories":3268},[],{"categories":3270},[],{"categories":3272},[203],{"categories":3274},[161],{"categories":3276},[182],{"categories":3278},[],{"categories":3280},[219],{"categories":3282},[182],{"categories":3284},[219],{"categories":3286},[161],{"categories":3288},[],{"categories":3290},[],{"categories":3292},[164],{"categories":3294},[],{"categories":3296},[],{"categories":3298},[164],{"categories":3300},[161],{"categories":3302},[],{"categories":3304},[164],{"categories":3306},[182],{"categories":3308},[219],{"categories":3310},[133],{"categories":3312},[164],{"categories":3314},[164],{"categories":3316},[],{"categories":3318},[],{"categories":3320},[],{"categories":3322},[182],{"categories":3324},[],{"categories":3326},[],{"categories":3328},[203],{"categories":3330},[155],{"categories":3332},[],{"categories":3334},[158],{"categories":3336},[219],{"categories":3338},[161],{"categories":3340},[212],{"categories":3342},[155],{"categories":3344},[133],{"categories":3346},[158],{"categories":3348},[212],{"categories":3350},[],{"categories":3352},[],{"categories":3354},[164],{"categories":3356},[155],{"categories":3358},[203],{"categories":3360},[155],{"categories":3362},[164],{"categories":3364},[476],{"categories":3366},[164],{"categories":3368},[],{"categories":3370},[161],{"categories":3372},[182],{"categories":3374},[212],{"categories":3376},[],{"categories":3378},[203],{"categories":3380},[182],{"categories":3382},[155],{"categories":3384},[164],{"categories":3386},[161],{"categories":3388},[158],{"categories":3390},[164,476],{"categories":3392},[164],{"categories":3394},[212],{"categories":3396},[161],{"categories":3398},[133],{"categories":3400},[219],{"categories":3402},[164],{"categories":3404},[],{"categories":3406},[164],{"categories":3408},[161],{"categories":3410},[158],{"categories":3412},[],{"categories":3414},[],{"categories":3416},[161],{"categories":3418},[133],{"categories":3420},[161],{"categories":3422},[],{"categories":3424},[182],{"categories":3426},[],{"categories":3428},[182],{"categories":3430},[212],{"categories":3432},[164],{"categories":3434},[161],{"categories":3436},[219],{"categories":3438},[212],{"categories":3440},[],{"categories":3442},[182],{"categories":3444},[161],{"categories":3446},[],{"categories":3448},[161],{"categories":3450},[164],{"categories":3452},[161],{"categories":3454},[164],{"categories":3456},[161],{"categories":3458},[161],{"categories":3460},[161],{"categories":3462},[161],{"categories":3464},[158],{"categories":3466},[],{"categories":3468},[167],{"categories":3470},[182],{"categories":3472},[161],{"categories":3474},[],{"categories":3476},[212],{"categories":3478},[161],{"categories":3480},[161],{"categories":3482},[164],{"categories":3484},[182],{"categories":3486},[161],{"categories":3488},[161],{"categories":3490},[158],{"categories":3492},[164],{"categories":3494},[203],{"categories":3496},[],{"categories":3498},[133],{"categories":3500},[161],{"categories":3502},[],{"categories":3504},[182],{"categories":3506},[219],{"categories":3508},[],{"categories":3510},[],{"categories":3512},[182],{"categories":3514},[182],{"categories":3516},[219],{"categories":3518},[155],{"categories":3520},[164],{"categories":3522},[164],{"categories":3524},[161],{"categories":3526},[158],{"categories":3528},[],{"categories":3530},[],{"categories":3532},[182],{"categories":3534},[133],{"categories":3536},[212],{"categories":3538},[164],{"categories":3540},[203],{"categories":3542},[133],{"categories":3544},[133],{"categories":3546},[],{"categories":3548},[182],{"categories":3550},[161],{"categories":3552},[161],{"categories":3554},[212],{"categories":3556},[],{"categories":3558},[182],{"categories":3560},[182],{"categories":3562},[182],{"categories":3564},[],{"categories":3566},[164],{"categories":3568},[161],{"categories":3570},[],{"categories":3572},[155],{"categories":3574},[158],{"categories":3576},[],{"categories":3578},[161],{"categories":3580},[161],{"categories":3582},[],{"categories":3584},[212],{"categories":3586},[],{"categories":3588},[],{"categories":3590},[],{"categories":3592},[],{"categories":3594},[161],{"categories":3596},[182],{"categories":3598},[],{"categories":3600},[],{"categories":3602},[161],{"categories":3604},[161],{"categories":3606},[161],{"categories":3608},[133],{"categories":3610},[161],{"categories":3612},[133],{"categories":3614},[],{"categories":3616},[133],{"categories":3618},[133],{"categories":3620},[476],{"categories":3622},[164],{"categories":3624},[212],{"categories":3626},[],{"categories":3628},[],{"categories":3630},[133],{"categories":3632},[212],{"categories":3634},[212],{"categories":3636},[212],{"categories":3638},[],{"categories":3640},[155],{"categories":3642},[212],{"categories":3644},[212],{"categories":3646},[155],{"categories":3648},[212],{"categories":3650},[158],{"categories":3652},[212],{"categories":3654},[212],{"categories":3656},[212],{"categories":3658},[133],{"categories":3660},[182],{"categories":3662},[182],{"categories":3664},[161],{"categories":3666},[212],{"categories":3668},[133],{"categories":3670},[476],{"categories":3672},[133],{"categories":3674},[133],{"categories":3676},[133],{"categories":3678},[],{"categories":3680},[158],{"categories":3682},[],{"categories":3684},[476],{"categories":3686},[212],{"categories":3688},[212],{"categories":3690},[212],{"categories":3692},[164],{"categories":3694},[182,158],{"categories":3696},[133],{"categories":3698},[],{"categories":3700},[],{"categories":3702},[133],{"categories":3704},[],{"categories":3706},[133],{"categories":3708},[182],{"categories":3710},[164],{"categories":3712},[],{"categories":3714},[212],{"categories":3716},[161],{"categories":3718},[203],{"categories":3720},[],{"categories":3722},[161],{"categories":3724},[],{"categories":3726},[182],{"categories":3728},[155],{"categories":3730},[133],{"categories":3732},[],{"categories":3734},[212],{"categories":3736},[182],[3738,3802,3954,4049],{"id":3739,"title":3740,"ai":3741,"body":3746,"categories":3774,"created_at":134,"date_modified":134,"description":38,"extension":135,"faq":134,"featured":136,"kicker_label":134,"meta":3775,"navigation":67,"path":3789,"published_at":3790,"question":134,"scraped_at":3791,"seo":3792,"sitemap":3793,"source_id":3794,"source_name":3795,"source_type":144,"source_url":3796,"stem":3797,"tags":3798,"thumbnail_url":134,"tldr":3799,"tweet":134,"unknown_tags":3800,"__hash__":3801},"summaries\u002Fsummaries\u002F092f953f13e749e1-reproduce-2011-sentiment-word-vectors-in-python-summary.md","Reproduce 2011 Sentiment Word Vectors in Python",{"provider":7,"model":8,"input_tokens":3742,"output_tokens":3743,"processing_time_ms":3744,"cost_usd":3745},3933,1516,16200,0.00152195,{"type":14,"value":3747,"toc":3769},[3748,3752,3755,3759,3762,3766],[17,3749,3751],{"id":3750},"elegant-core-technique-semantic-learning-from-ratings","Elegant Core Technique: Semantic Learning from Ratings",[22,3753,3754],{},"Maas et al. (2011) train sentiment-specific word vectors directly from unlabeled IMDb movie reviews paired with star ratings (1-10 scale). Words co-occurring in high-rated reviews pull closer in vector space; low-rated push apart. This creates representations capturing sentiment polarity without explicit labels. Final classification uses linear SVM on averaged review vectors, achieving strong accuracy through interpretable, low-dimensional embeddings. Author notes its logistic regression-like simplicity: powerful when data aligns with task, avoiding black-box complexity.",[17,3756,3758],{"id":3757},"reproduction-insights-and-modern-relevance","Reproduction Insights and Modern Relevance",[22,3760,3761],{},"Reproducing the paper in Python reveals its enduring strength – elegant semantic learning outperforms hype-driven alternatives in targeted tasks like sentiment. Author challenges original methods, tests against other representations (including LLMs), and automates full pipeline. Trade-off: excels on review-style text but needs domain data; not general-purpose like transformers. GitHub repo provides end-to-end code for immediate use or extension.",[17,3763,3765],{"id":3764},"practical-takeaways-for-builders","Practical Takeaways for Builders",[22,3767,3768],{},"Start with this for sentiment features in products: download IMDb data, train vectors via contrastive objective on ratings, classify with SVM. Scales to custom corpora (e.g., product feedback). Compares favorably to LLMs on cost\u002Finterpretability; use as baseline before deploying APIs. Avoids overfitting by leveraging vast unlabeled text – key for production ML pipelines.",{"title":38,"searchDepth":52,"depth":52,"links":3770},[3771,3772,3773],{"id":3750,"depth":52,"text":3751},{"id":3757,"depth":52,"text":3758},{"id":3764,"depth":52,"text":3765},[133],{"content_references":3776,"triage":3786},[3777,3782],{"type":3778,"title":3779,"author":3780,"context":3781},"paper","Learning Word Vectors for Sentiment Analysis","Maas et al.","mentioned",{"type":3783,"title":3784,"url":3785,"context":3781},"other","Sentiment_analysis","https:\u002F\u002Fgithub.com\u002FJumbong\u002FSentiment_analysis",{"relevance":71,"novelty":64,"quality":64,"actionability":71,"composite":3787,"reasoning":3788},4.55,"Category: AI & LLMs. The article provides a practical method for building sentiment-aware word embeddings, which is directly applicable for product builders looking to integrate sentiment analysis into their AI-powered products. It includes actionable steps and a GitHub repository for implementation, making it highly relevant and actionable.","\u002Fsummaries\u002F092f953f13e749e1-reproduce-2011-sentiment-word-vectors-in-python-summary","2026-05-10 00:01:00","2026-05-10 15:26:28",{"title":3740,"description":38},{"loc":3789},"092f953f13e749e1","Towards AI","https:\u002F\u002Fpub.towardsai.net\u002Flearning-word-vectors-for-sentiment-analysis-a-python-reproduction-f8c8c77df38f?source=rss----98111c9905da---4","summaries\u002F092f953f13e749e1-reproduce-2011-sentiment-word-vectors-in-python-summary",[37,148],"Build sentiment-aware word embeddings from IMDb reviews via semantic learning with star ratings and linear SVM classification, reproducing Maas et al. (2011) – simple method rivals modern LLMs.",[],"v2XTBE5rFNMZcIts4tjxKmc0d5a3j51Waw-d4ggTQcI",{"id":3803,"title":3804,"ai":3805,"body":3810,"categories":3941,"created_at":134,"date_modified":134,"description":38,"extension":135,"faq":134,"featured":136,"kicker_label":134,"meta":3942,"navigation":67,"path":3943,"published_at":3944,"question":134,"scraped_at":134,"seo":3945,"sitemap":3946,"source_id":3947,"source_name":3948,"source_type":144,"source_url":145,"stem":3949,"tags":3950,"thumbnail_url":134,"tldr":3951,"tweet":134,"unknown_tags":3952,"__hash__":3953},"summaries\u002Fsummaries\u002Fnes-optimizes-quadratic-bowl-via-gaussian-perturba-summary.md","NES optimizes quadratic bowl via gaussian perturbations",{"provider":7,"model":8,"input_tokens":3806,"output_tokens":3807,"processing_time_ms":3808,"cost_usd":3809},8855,1292,10281,0.0019466,{"type":14,"value":3811,"toc":3936},[3812,3816,3819,3856,3867,3876,3879,3883,3886,3901,3904,3908,3934],[17,3813,3815],{"id":3814},"nes-core-loop-for-black-box-optimization","NES Core Loop for Black-Box Optimization",[22,3817,3818],{},"NES treats parameters w as mean of a fixed-variance gaussian (sigma=0.1). To maximize black-box reward f(w) without gradients:",[3820,3821,3822,3826,3846,3849],"ol",{},[3823,3824,3825],"li",{},"Generate npop=50 noise samples N ~ N(0,1) (shape 50x3).",[3823,3827,3828,3829,3832,3833,3835,3836,3838,3839,3841,3842,3845],{},"Perturb: w_try",[43,3830,3831],{},"j"," = w + sigma * N",[43,3834,3831],{},", compute R",[43,3837,3831],{}," = f(w_try",[43,3840,3831],{},"). Here f(w) = -||w - ",[43,3843,3844],{},"0.5,0.1,-0.3","||^2_2 (max reward=0 at solution).",[3823,3847,3848],{},"Standardize: A = (R - mean(R)) \u002F std(R) to zero-mean unit-variance (avoids div-by-zero on flat rewards; speeds convergence vs raw R).",[3823,3850,3851,3852,3855],{},"Update: w += alpha\u002F(npop * sigma) * N.T @ A (alpha=0.001). This is score-function gradient estimator E",[43,3853,3854],{},"reward * noise","\u002Fsigma.",[22,3857,3858,3859,3862,3863,3866],{},"Starts from random w≈",[43,3860,3861],{},"1.76,0.40,0.98"," (reward -3.32), reaches ",[43,3864,3865],{},"-0.000009"," error by iter 280.",[33,3868,3870],{"className":35,"code":3869,"language":37,"meta":38,"style":38},"w = w + alpha\u002F(npop*sigma) * np.dot(N.T, A)\n",[40,3871,3872],{"__ignoreMap":38},[43,3873,3874],{"class":45,"line":46},[43,3875,3869],{},[22,3877,3878],{},"sigma scales perturbation size and normalizes estimator (divisor matches multiplier for consistent gradient scale).",[17,3880,3882],{"id":3881},"proven-convergence-on-toy-quadratic","Proven Convergence on Toy Quadratic",[22,3884,3885],{},"300 iters suffice; prints every 20 show steady progress:",[3887,3888,3889,3892,3895,3898],"ul",{},[3823,3890,3891],{},"Iter 0: reward -3.323",[3823,3893,3894],{},"Iter 100: -0.727",[3823,3896,3897],{},"Iter 200: -0.001",[3823,3899,3900],{},"Iter 280: -0.000009",[22,3902,3903],{},"Toy mimics NN optimization: f(w) would forward NN on env, return total reward. Solution hidden from optimizer.",[17,3905,3907],{"id":3906},"insights-from-implementers","Insights from Implementers",[3887,3909,3910,3916,3922,3928],{},[3823,3911,3912,3915],{},[114,3913,3914],{},"Standardization optional but boosts speed",": Raw R works (paper-equivalent via Section 3.2), but centering\u002Fscaling prevents stagnation on negative\u002Fflat rewards.",[3823,3917,3918,3921],{},[114,3919,3920],{},"Edge cases",": Add epsilon to std(R) avoids div0 when all R equal (common early\u002Fsimple problems).",[3823,3923,3924,3927],{},[114,3925,3926],{},"Extensions",": Handles moving targets with small jitters; libs like evostra apply to Flappy Bird. No crossover needed vs GA—NES is gradient-like via log-prob derivative.",[3823,3929,3930,3933],{},[114,3931,3932],{},"Deployment",": Save final w; reconstruct NN. Practical for RL vs DQN (no backprop, parallelizable evals).",[125,3935,127],{},{"title":38,"searchDepth":52,"depth":52,"links":3937},[3938,3939,3940],{"id":3814,"depth":52,"text":3815},{"id":3881,"depth":52,"text":3882},{"id":3906,"depth":52,"text":3907},[133],{},"\u002Fsummaries\u002Fnes-optimizes-quadratic-bowl-via-gaussian-perturba-summary","2026-04-08 21:21:20",{"title":3804,"description":38},{"loc":3943},"24c62cc73ee60bc6","Andrej Karpathy Gists","summaries\u002Fnes-optimizes-quadratic-bowl-via-gaussian-perturba-summary",[37,148],"Sample 50 perturbed weights from N(w, 0.1), weight by standardized rewards, update w by 0.001\u002F(50*0.1) * sum(noise * weights) to converge in 300 iters.",[],"THgP6_hPLQzW9Arl2BqfDCHYij8HS6-ncC3XkmeXu-Y",{"id":3955,"title":3956,"ai":3957,"body":3962,"categories":4038,"created_at":134,"date_modified":134,"description":38,"extension":135,"faq":134,"featured":136,"kicker_label":134,"meta":4039,"navigation":67,"path":4040,"published_at":3944,"question":134,"scraped_at":134,"seo":4041,"sitemap":4042,"source_id":4043,"source_name":3948,"source_type":144,"source_url":145,"stem":4044,"tags":4045,"thumbnail_url":134,"tldr":4046,"tweet":134,"unknown_tags":4047,"__hash__":4048},"summaries\u002Fsummaries\u002Fpytorch-nn-linear-mismatches-raw-matmul-by-1e-4-summary.md","PyTorch nn.Linear Mismatches Raw Matmul by 1e-4",{"provider":7,"model":8,"input_tokens":3958,"output_tokens":3959,"processing_time_ms":3960,"cost_usd":3961},3920,1128,10617,0.00088105,{"type":14,"value":3963,"toc":4033},[3964,3968,3991,3995,4014,4018],[17,3965,3967],{"id":3966},"raw-matmul-preserves-precision-across-batch-sizes","Raw Matmul Preserves Precision Across Batch Sizes",[22,3969,3970,3971,3974,3975,3978,3979,3982,3983,3986,3987,3990],{},"Use ",[40,3972,3973],{},"torch.matmul"," for exact equivalence: with seed 42, ",[40,3976,3977],{},"x = torch.randn(2, 768)"," and ",[40,3980,3981],{},"w = torch.randn(768, 768)",", computing ",[40,3984,3985],{},"z1 = x[0] @ w"," matches ",[40,3988,3989],{},"(x @ w)[0]"," exactly—max absolute difference is 0. This holds because PyTorch's matrix multiply ignores batch dimensions consistently without introducing fusion artifacts.",[17,3992,3994],{"id":3993},"nnlinear-introduces-numerical-drift","nn.Linear Introduces Numerical Drift",[22,3996,3997,3998,4001,4002,4005,4006,4009,4010,4013],{},"nn.Linear(768, 768, bias=False) with weight copied from ",[40,3999,4000],{},"w.T"," fails exactness. ",[40,4003,4004],{},"q1 = m(x[0])"," differs from ",[40,4007,4008],{},"q2 = m(x)[0]"," by max ~2e-5, and both deviate from raw ",[40,4011,4012],{},"z1"," by ~9e-5. Avoid assuming single-sample Linear matches batched or raw matmul outputs—use raw ops for precision-critical math.",[17,4015,4017],{"id":4016},"root-cause-fused-operations-in-batched-mode","Root Cause: Fused Operations in Batched Mode",[22,4019,4020,4021,4024,4025,4028,4029,4032],{},"Commenter notes torch source shows fused kernels activate differently for batched (shape ",[43,4022,4023],{},"2,768",") vs single (",[43,4026,4027],{},"768",") inputs, causing drift. Test by disabling autocast or fusions (e.g., ",[40,4030,4031],{},"torch.backends.cudnn.deterministic=True",") to isolate; impacts model debugging where exact reproducibility matters over speed.",{"title":38,"searchDepth":52,"depth":52,"links":4034},[4035,4036,4037],{"id":3966,"depth":52,"text":3967},{"id":3993,"depth":52,"text":3994},{"id":4016,"depth":52,"text":4017},[212],{},"\u002Fsummaries\u002Fpytorch-nn-linear-mismatches-raw-matmul-by-1e-4-summary",{"title":3956,"description":38},{"loc":4040},"c31c04ed51f90c10","summaries\u002Fpytorch-nn-linear-mismatches-raw-matmul-by-1e-4-summary",[37,148],"Raw torch.matmul gives identical results for single vs batched inputs (diff=0), but nn.Linear differs by 2e-5 between single\u002Fbatched and 9e-5 from raw matmul due to fused ops.",[],"N4HIPkktA2CpEJX7Wbl2sDkMuAd2ARWc4-gOQSjiAUA",{"id":4050,"title":4051,"ai":4052,"body":4057,"categories":4250,"created_at":134,"date_modified":134,"description":38,"extension":135,"faq":134,"featured":136,"kicker_label":134,"meta":4251,"navigation":67,"path":4263,"published_at":4264,"question":134,"scraped_at":4265,"seo":4266,"sitemap":4267,"source_id":4268,"source_name":4269,"source_type":144,"source_url":4270,"stem":4271,"tags":4272,"thumbnail_url":134,"tldr":4274,"tweet":134,"unknown_tags":4275,"__hash__":4276},"summaries\u002Fsummaries\u002Fff126f8e0954389e-skfolio-build-tune-portfolio-optimizers-in-python-summary.md","skfolio: Build & Tune Portfolio Optimizers in Python",{"provider":7,"model":8,"input_tokens":4053,"output_tokens":4054,"processing_time_ms":4055,"cost_usd":4056},9292,2519,30098,0.00309525,{"type":14,"value":4058,"toc":4244},[4059,4063,4094,4098,4147,4151,4216,4220],[17,4060,4062],{"id":4061},"data-prep-and-baseline-benchmarks-deliver-quick-wins","Data Prep and Baseline Benchmarks Deliver Quick Wins",[22,4064,4065,4066,4069,4070,4073,4074,4077,4078,4081,4082,4085,4086,4089,4090,4093],{},"Load S&P 500 prices via ",[40,4067,4068],{},"skfolio.datasets.load_sp500_dataset()",", convert to returns with ",[40,4071,4072],{},"prices_to_returns()",", and split chronologically (",[40,4075,4076],{},"train_test_split(shuffle=False, test_size=0.33)",") to prevent look-ahead bias—training spans ~67% historical days, testing the rest. Baselines like ",[40,4079,4080],{},"EqualWeighted()",", ",[40,4083,4084],{},"InverseVolatility()",", and ",[40,4087,4088],{},"Random()"," fit on train, predict on test, yielding metrics like annualized Sharpe (printed via ",[40,4091,4092],{},"ptf.annualized_sharpe_ratio","), mean return, and volatility. These expose naive strategies' flaws: equal-weight ignores volatility, random adds noise—use them to benchmark any optimizer.",[17,4095,4097],{"id":4096},"mean-variance-risk-measures-and-clustering-beat-baselines","Mean-Variance, Risk Measures, and Clustering Beat Baselines",[22,4099,4100,4103,4104,4107,4108,4111,4112,4115,4116,4081,4119,4122,4123,4126,4127,4130,4131,4134,4135,4138,4139,4142,4143,4146],{},[40,4101,4102],{},"MeanRisk(risk_measure=RiskMeasure.VARIANCE)"," minimizes variance or maximizes Sharpe (",[40,4105,4106],{},"ObjectiveFunction.MAXIMIZE_RATIO","), generating efficient frontiers (",[40,4109,4110],{},"efficient_frontier_size=20",") plotted by risk vs. Sharpe. Swap risks to ",[40,4113,4114],{},"CVaR"," (95%), ",[40,4117,4118],{},"SEMI_VARIANCE",[40,4120,4121],{},"CDAR",", or ",[40,4124,4125],{},"MAX_DRAWDOWN"," for tail-focused portfolios that cut CVaR@95% and max drawdown vs. variance. ",[40,4128,4129],{},"RiskBudgeting()"," equalizes contributions (variance or CVaR). Hierarchical methods shine: ",[40,4132,4133],{},"HierarchicalRiskParity()"," clusters assets via dendrograms for stable weights; ",[40,4136,4137],{},"NestedClustersOptimization()"," nests ",[40,4140,4141],{},"MeanRisk(CVAR)"," inside ",[40,4144,4145],{},"RiskBudgeting(VARIANCE)"," with 5-fold CV, capturing correlations without covariance pitfalls.",[17,4148,4150],{"id":4149},"robust-priors-constraints-and-views-stabilize-real-world-use","Robust Priors, Constraints, and Views Stabilize Real-World Use",[22,4152,4153,4154,4157,4158,4161,4162,4081,4165,4081,4168,4122,4171,4174,4175,4178,4179,4081,4182,4081,4185,4081,4188,4191,4192,4195,4196,4199,4200,4203,4204,4207,4208,4211,4212,4215],{},"Replace ",[40,4155,4156],{},"EmpiricalCovariance()","\u002F",[40,4159,4160],{},"EmpiricalMu()"," with ",[40,4163,4164],{},"DenoiseCovariance()",[40,4166,4167],{},"ShrunkMu()",[40,4169,4170],{},"GerberCovariance()",[40,4172,4173],{},"EWMu(alpha=0.1)"," in ",[40,4176,4177],{},"EmpiricalPrior()"," for max-Sharpe portfolios resilient to estimation error. Add realism via ",[40,4180,4181],{},"min_weights=0.0",[40,4183,4184],{},"max_weights=0.20",[40,4186,4187],{},"transaction_costs=0.0005",[40,4189,4190],{},"groups"," (e.g., GroupA \u003C=0.6, GroupB>=0.2), ",[40,4193,4194],{},"l2_coef=0.01",". ",[40,4197,4198],{},"BlackLitterman(views=[\"AAPL == 0.0008\", \"JPM - BAC == 0.0002\"])"," blends market priors with views. ",[40,4201,4202],{},"FactorModel()"," on ",[40,4205,4206],{},"load_factors_dataset()"," explains returns via external factors, boosting Sharpe. Pipelines like ",[40,4209,4210],{},"SelectKExtremes(k=8)"," + ",[40,4213,4214],{},"MeanRisk()"," prune to top performers.",[17,4217,4219],{"id":4218},"walk-forward-cv-and-tuning-ensure-out-of-sample-performance","Walk-Forward CV and Tuning Ensure Out-of-Sample Performance",[22,4221,4222,4161,4225,4228,4229,4232,4233,3978,4236,4239,4240,4243],{},[40,4223,4224],{},"cross_val_predict()",[40,4226,4227],{},"WalkForward(train_size=252*2, test_size=63)"," simulates rolling 2-year trains\u002F3-month tests, computing portfolio Sharpe\u002FCalmar. ",[40,4230,4231],{},"GridSearchCV()"," tunes ",[40,4234,4235],{},"l2_coef=[0.0,0.01,0.1]",[40,4237,4238],{},"mu_estimator__alpha=[0.05,0.1,0.2,0.5]"," on max-Sharpe, selecting best CV Sharpe. Final ",[40,4241,4242],{},"Population()"," of 18 strategies compares annualized mean\u002Fvol\u002FSharpe\u002FSortino\u002FCVaR@95%\u002Fdrawdowns (sorted by test Sharpe), with plots for cumulative returns, weights, risk contributions—revealing hierarchical\u002Frisk-parity often top variance-based in stability.",{"title":38,"searchDepth":52,"depth":52,"links":4245},[4246,4247,4248,4249],{"id":4061,"depth":52,"text":4062},{"id":4096,"depth":52,"text":4097},{"id":4149,"depth":52,"text":4150},{"id":4218,"depth":52,"text":4219},[133],{"content_references":4252,"triage":4260},[4253,4257],{"type":4254,"title":4255,"url":4256,"context":3781},"tool","skfolio","https:\u002F\u002Fgithub.com\u002Fskfolio\u002Fskfolio",{"type":3783,"title":4258,"url":4259,"context":3781},"Full Codes","https:\u002F\u002Fgithub.com\u002FMarktechpost\u002FAI-Agents-Projects-Tutorials\u002Fblob\u002Fmain\u002FData%20Science\u002Fportfolio_optimization_with_skfolio_Marktechpost.ipynb",{"relevance":58,"novelty":58,"quality":64,"actionability":64,"composite":4261,"reasoning":4262},3.45,"Category: Data Science & Visualization. The article provides a practical guide on using the skfolio library for portfolio optimization, which aligns with the audience's interest in actionable AI and data science tools. It includes specific code examples and methodologies that can be directly applied, making it useful for developers looking to implement AI in financial products.","\u002Fsummaries\u002Fff126f8e0954389e-skfolio-build-tune-portfolio-optimizers-in-python-summary","2026-05-12 07:05:02","2026-05-12 15:01:25",{"title":4051,"description":38},{"loc":4263},"ff126f8e0954389e","MarkTechPost","https:\u002F\u002Fwww.marktechpost.com\u002F2026\u002F05\u002F12\u002Fa-coding-implementation-to-portfolio-optimization-with-skfolio-for-building-testing-tuning-and-comparing-modern-investment-strategies\u002F","summaries\u002Fff126f8e0954389e-skfolio-build-tune-portfolio-optimizers-in-python-summary",[37,4273,148],"data-science","skfolio's scikit-learn API lets you construct, validate, and compare 18+ portfolio strategies—from baselines to HRP, Black-Litterman, factors, and tuned models—on S&P 500 returns with walk-forward CV and GridSearchCV.",[],"s9QUFNF_HWzNZV61Dh6PEETN3C3-K3FsZalb0rd3HRQ"]