[{"data":1,"prerenderedAt":-1},["ShallowReactive",2],{"summary-092f953f13e749e1-reproduce-2011-sentiment-word-vectors-in-python-summary":3,"summaries-facets-categories":84,"summary-related-092f953f13e749e1-reproduce-2011-sentiment-word-vectors-in-python-summary":3653},{"id":4,"title":5,"ai":6,"body":13,"categories":46,"created_at":48,"date_modified":48,"description":40,"extension":49,"faq":48,"featured":50,"kicker_label":48,"meta":51,"navigation":67,"path":68,"published_at":69,"question":48,"scraped_at":70,"seo":71,"sitemap":72,"source_id":73,"source_name":74,"source_type":75,"source_url":76,"stem":77,"tags":78,"thumbnail_url":48,"tldr":81,"tweet":48,"unknown_tags":82,"__hash__":83},"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":9,"output_tokens":10,"processing_time_ms":11,"cost_usd":12},"openrouter","x-ai\u002Fgrok-4.1-fast",3933,1516,16200,0.00152195,{"type":14,"value":15,"toc":39},"minimark",[16,21,25,29,32,36],[17,18,20],"h2",{"id":19},"elegant-core-technique-semantic-learning-from-ratings","Elegant Core Technique: Semantic Learning from Ratings",[22,23,24],"p",{},"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,26,28],{"id":27},"reproduction-insights-and-modern-relevance","Reproduction Insights and Modern Relevance",[22,30,31],{},"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,33,35],{"id":34},"practical-takeaways-for-builders","Practical Takeaways for Builders",[22,37,38],{},"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":40,"searchDepth":41,"depth":41,"links":42},"",2,[43,44,45],{"id":19,"depth":41,"text":20},{"id":27,"depth":41,"text":28},{"id":34,"depth":41,"text":35},[47],"Data Science & Visualization",null,"md",false,{"content_references":52,"triage":62},[53,58],{"type":54,"title":55,"author":56,"context":57},"paper","Learning Word Vectors for Sentiment Analysis","Maas et al.","mentioned",{"type":59,"title":60,"url":61,"context":57},"other","Sentiment_analysis","https:\u002F\u002Fgithub.com\u002FJumbong\u002FSentiment_analysis",{"relevance":63,"novelty":64,"quality":64,"actionability":63,"composite":65,"reasoning":66},5,4,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.",true,"\u002Fsummaries\u002F092f953f13e749e1-reproduce-2011-sentiment-word-vectors-in-python-summary","2026-05-10 00:01:00","2026-05-10 15:26:28",{"title":5,"description":40},{"loc":68},"092f953f13e749e1","Towards AI","article","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",[79,80],"python","machine-learning","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",[85,88,91,94,97,100,102,104,106,108,110,112,115,117,119,121,123,125,127,129,131,133,136,138,140,142,145,147,149,152,154,156,158,160,162,164,166,168,170,172,174,176,178,180,182,184,186,188,190,192,194,196,198,200,202,204,206,208,210,212,214,216,218,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,407,409,411,413,415,417,419,421,423,425,427,429,431,433,435,437,439,441,443,445,447,449,451,453,455,457,459,461,463,465,467,469,471,473,475,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],{"categories":86},[87],"Developer Productivity",{"categories":89},[90],"Business & SaaS",{"categories":92},[93],"AI & LLMs",{"categories":95},[96],"AI Automation",{"categories":98},[99],"Product Strategy",{"categories":101},[93],{"categories":103},[87],{"categories":105},[90],{"categories":107},[],{"categories":109},[93],{"categories":111},[],{"categories":113},[114],"AI News & Trends",{"categories":116},[96],{"categories":118},[114],{"categories":120},[96],{"categories":122},[96],{"categories":124},[93],{"categories":126},[93],{"categories":128},[114],{"categories":130},[93],{"categories":132},[],{"categories":134},[135],"Design & Frontend",{"categories":137},[47],{"categories":139},[114],{"categories":141},[],{"categories":143},[144],"Software Engineering",{"categories":146},[93],{"categories":148},[96],{"categories":150},[151],"Marketing & Growth",{"categories":153},[93],{"categories":155},[96],{"categories":157},[],{"categories":159},[],{"categories":161},[135],{"categories":163},[96],{"categories":165},[87],{"categories":167},[135],{"categories":169},[93],{"categories":171},[96],{"categories":173},[114],{"categories":175},[],{"categories":177},[],{"categories":179},[96],{"categories":181},[144],{"categories":183},[],{"categories":185},[90],{"categories":187},[],{"categories":189},[],{"categories":191},[96],{"categories":193},[96],{"categories":195},[93],{"categories":197},[],{"categories":199},[144],{"categories":201},[],{"categories":203},[],{"categories":205},[],{"categories":207},[93],{"categories":209},[151],{"categories":211},[135],{"categories":213},[135],{"categories":215},[93],{"categories":217},[96],{"categories":219},[93],{"categories":221},[93],{"categories":223},[96],{"categories":225},[96],{"categories":227},[47],{"categories":229},[114],{"categories":231},[96],{"categories":233},[151],{"categories":235},[96],{"categories":237},[99],{"categories":239},[],{"categories":241},[96],{"categories":243},[],{"categories":245},[96],{"categories":247},[144],{"categories":249},[135],{"categories":251},[93],{"categories":253},[],{"categories":255},[],{"categories":257},[96],{"categories":259},[],{"categories":261},[93],{"categories":263},[],{"categories":265},[87],{"categories":267},[144],{"categories":269},[90],{"categories":271},[114],{"categories":273},[93],{"categories":275},[],{"categories":277},[93],{"categories":279},[],{"categories":281},[144],{"categories":283},[47],{"categories":285},[],{"categories":287},[93],{"categories":289},[135],{"categories":291},[],{"categories":293},[135],{"categories":295},[96],{"categories":297},[],{"categories":299},[96],{"categories":301},[114],{"categories":303},[93],{"categories":305},[],{"categories":307},[96],{"categories":309},[93],{"categories":311},[99],{"categories":313},[],{"categories":315},[93],{"categories":317},[96],{"categories":319},[96],{"categories":321},[],{"categories":323},[47],{"categories":325},[93],{"categories":327},[],{"categories":329},[87],{"categories":331},[90],{"categories":333},[93],{"categories":335},[96],{"categories":337},[144],{"categories":339},[93],{"categories":341},[],{"categories":343},[],{"categories":345},[93],{"categories":347},[],{"categories":349},[135],{"categories":351},[],{"categories":353},[93],{"categories":355},[],{"categories":357},[96],{"categories":359},[93],{"categories":361},[135],{"categories":363},[],{"categories":365},[93],{"categories":367},[93],{"categories":369},[90],{"categories":371},[96],{"categories":373},[93],{"categories":375},[135],{"categories":377},[96],{"categories":379},[],{"categories":381},[],{"categories":383},[114],{"categories":385},[],{"categories":387},[93],{"categories":389},[90,151],{"categories":391},[],{"categories":393},[93],{"categories":395},[],{"categories":397},[],{"categories":399},[93],{"categories":401},[],{"categories":403},[93],{"categories":405},[406],"DevOps & Cloud",{"categories":408},[],{"categories":410},[114],{"categories":412},[135],{"categories":414},[],{"categories":416},[114],{"categories":418},[114],{"categories":420},[93],{"categories":422},[151],{"categories":424},[],{"categories":426},[90],{"categories":428},[],{"categories":430},[93,406],{"categories":432},[93],{"categories":434},[93],{"categories":436},[96],{"categories":438},[93,144],{"categories":440},[47],{"categories":442},[93],{"categories":444},[151],{"categories":446},[96],{"categories":448},[96],{"categories":450},[],{"categories":452},[96],{"categories":454},[93,90],{"categories":456},[],{"categories":458},[135],{"categories":460},[135],{"categories":462},[],{"categories":464},[],{"categories":466},[114],{"categories":468},[],{"categories":470},[87],{"categories":472},[144],{"categories":474},[93],{"categories":476},[135],{"categories":478},[96],{"categories":480},[144],{"categories":482},[114],{"categories":484},[135],{"categories":486},[],{"categories":488},[93],{"categories":490},[93],{"categories":492},[93],{"categories":494},[114],{"categories":496},[87],{"categories":498},[93],{"categories":500},[96],{"categories":502},[406],{"categories":504},[135],{"categories":506},[96],{"categories":508},[],{"categories":510},[],{"categories":512},[135],{"categories":514},[114],{"categories":516},[47],{"categories":518},[],{"categories":520},[93],{"categories":522},[93],{"categories":524},[90],{"categories":526},[93],{"categories":528},[93],{"categories":530},[114],{"categories":532},[],{"categories":534},[96],{"categories":536},[144],{"categories":538},[],{"categories":540},[93],{"categories":542},[93],{"categories":544},[96],{"categories":546},[],{"categories":548},[],{"categories":550},[93],{"categories":552},[],{"categories":554},[90],{"categories":556},[96],{"categories":558},[],{"categories":560},[87],{"categories":562},[93],{"categories":564},[90],{"categories":566},[114],{"categories":568},[],{"categories":570},[],{"categories":572},[],{"categories":574},[114],{"categories":576},[114],{"categories":578},[],{"categories":580},[],{"categories":582},[90],{"categories":584},[],{"categories":586},[],{"categories":588},[87],{"categories":590},[],{"categories":592},[151],{"categories":594},[96],{"categories":596},[90],{"categories":598},[96],{"categories":600},[],{"categories":602},[99],{"categories":604},[135],{"categories":606},[144],{"categories":608},[93],{"categories":610},[96],{"categories":612},[90],{"categories":614},[93],{"categories":616},[],{"categories":618},[],{"categories":620},[144],{"categories":622},[47],{"categories":624},[99],{"categories":626},[96],{"categories":628},[93],{"categories":630},[],{"categories":632},[406],{"categories":634},[],{"categories":636},[96],{"categories":638},[],{"categories":640},[],{"categories":642},[93],{"categories":644},[135],{"categories":646},[151],{"categories":648},[96],{"categories":650},[],{"categories":652},[87],{"categories":654},[],{"categories":656},[114],{"categories":658},[93,406],{"categories":660},[114],{"categories":662},[93],{"categories":664},[90],{"categories":666},[93],{"categories":668},[],{"categories":670},[90],{"categories":672},[],{"categories":674},[144],{"categories":676},[135],{"categories":678},[114],{"categories":680},[47],{"categories":682},[87],{"categories":684},[93],{"categories":686},[144],{"categories":688},[],{"categories":690},[],{"categories":692},[99],{"categories":694},[],{"categories":696},[93],{"categories":698},[],{"categories":700},[135],{"categories":702},[135],{"categories":704},[135],{"categories":706},[],{"categories":708},[],{"categories":710},[114],{"categories":712},[96],{"categories":714},[93],{"categories":716},[93],{"categories":718},[93],{"categories":720},[90],{"categories":722},[93],{"categories":724},[],{"categories":726},[144],{"categories":728},[144],{"categories":730},[90],{"categories":732},[],{"categories":734},[93],{"categories":736},[93],{"categories":738},[90],{"categories":740},[114],{"categories":742},[151],{"categories":744},[96],{"categories":746},[],{"categories":748},[135],{"categories":750},[],{"categories":752},[93],{"categories":754},[],{"categories":756},[90],{"categories":758},[96],{"categories":760},[],{"categories":762},[406],{"categories":764},[47],{"categories":766},[144],{"categories":768},[151],{"categories":770},[144],{"categories":772},[96],{"categories":774},[],{"categories":776},[],{"categories":778},[96],{"categories":780},[87],{"categories":782},[96],{"categories":784},[99],{"categories":786},[90],{"categories":788},[],{"categories":790},[93],{"categories":792},[99],{"categories":794},[93],{"categories":796},[93],{"categories":798},[151],{"categories":800},[135],{"categories":802},[96],{"categories":804},[],{"categories":806},[],{"categories":808},[406],{"categories":810},[144],{"categories":812},[],{"categories":814},[96],{"categories":816},[93],{"categories":818},[135,93],{"categories":820},[87],{"categories":822},[],{"categories":824},[93],{"categories":826},[87],{"categories":828},[135],{"categories":830},[96],{"categories":832},[144],{"categories":834},[],{"categories":836},[93],{"categories":838},[],{"categories":840},[87],{"categories":842},[],{"categories":844},[96],{"categories":846},[99],{"categories":848},[93],{"categories":850},[93],{"categories":852},[135],{"categories":854},[96],{"categories":856},[406],{"categories":858},[135],{"categories":860},[96],{"categories":862},[93],{"categories":864},[93],{"categories":866},[93],{"categories":868},[114],{"categories":870},[],{"categories":872},[99],{"categories":874},[96],{"categories":876},[135],{"categories":878},[96],{"categories":880},[144],{"categories":882},[135],{"categories":884},[96],{"categories":886},[114],{"categories":888},[],{"categories":890},[93],{"categories":892},[135],{"categories":894},[93],{"categories":896},[87],{"categories":898},[114],{"categories":900},[93],{"categories":902},[151],{"categories":904},[93],{"categories":906},[93],{"categories":908},[96],{"categories":910},[96],{"categories":912},[93],{"categories":914},[96],{"categories":916},[135],{"categories":918},[93],{"categories":920},[],{"categories":922},[],{"categories":924},[144],{"categories":926},[],{"categories":928},[87],{"categories":930},[406],{"categories":932},[],{"categories":934},[87],{"categories":936},[90],{"categories":938},[151],{"categories":940},[],{"categories":942},[90],{"categories":944},[],{"categories":946},[],{"categories":948},[],{"categories":950},[],{"categories":952},[],{"categories":954},[93],{"categories":956},[96],{"categories":958},[406],{"categories":960},[87],{"categories":962},[93],{"categories":964},[144],{"categories":966},[99],{"categories":968},[93],{"categories":970},[151],{"categories":972},[93],{"categories":974},[93],{"categories":976},[93],{"categories":978},[93,87],{"categories":980},[144],{"categories":982},[144],{"categories":984},[135],{"categories":986},[93],{"categories":988},[],{"categories":990},[],{"categories":992},[],{"categories":994},[144],{"categories":996},[47],{"categories":998},[114],{"categories":1000},[135],{"categories":1002},[],{"categories":1004},[93],{"categories":1006},[93],{"categories":1008},[],{"categories":1010},[],{"categories":1012},[96],{"categories":1014},[93],{"categories":1016},[90],{"categories":1018},[],{"categories":1020},[87],{"categories":1022},[93],{"categories":1024},[87],{"categories":1026},[93],{"categories":1028},[144],{"categories":1030},[151],{"categories":1032},[93,135],{"categories":1034},[114],{"categories":1036},[135],{"categories":1038},[],{"categories":1040},[406],{"categories":1042},[135],{"categories":1044},[96],{"categories":1046},[],{"categories":1048},[],{"categories":1050},[],{"categories":1052},[],{"categories":1054},[144],{"categories":1056},[96],{"categories":1058},[96],{"categories":1060},[93],{"categories":1062},[93],{"categories":1064},[],{"categories":1066},[135],{"categories":1068},[],{"categories":1070},[],{"categories":1072},[96],{"categories":1074},[],{"categories":1076},[],{"categories":1078},[151],{"categories":1080},[151],{"categories":1082},[96],{"categories":1084},[],{"categories":1086},[93],{"categories":1088},[93],{"categories":1090},[144],{"categories":1092},[135],{"categories":1094},[135],{"categories":1096},[96],{"categories":1098},[87],{"categories":1100},[93],{"categories":1102},[135],{"categories":1104},[135],{"categories":1106},[96],{"categories":1108},[96],{"categories":1110},[93],{"categories":1112},[],{"categories":1114},[],{"categories":1116},[93],{"categories":1118},[96],{"categories":1120},[114],{"categories":1122},[144],{"categories":1124},[87],{"categories":1126},[93],{"categories":1128},[],{"categories":1130},[96],{"categories":1132},[96],{"categories":1134},[],{"categories":1136},[87],{"categories":1138},[93],{"categories":1140},[87],{"categories":1142},[87],{"categories":1144},[],{"categories":1146},[],{"categories":1148},[96],{"categories":1150},[96],{"categories":1152},[93],{"categories":1154},[93],{"categories":1156},[114],{"categories":1158},[47],{"categories":1160},[99],{"categories":1162},[114],{"categories":1164},[135],{"categories":1166},[],{"categories":1168},[114],{"categories":1170},[],{"categories":1172},[],{"categories":1174},[],{"categories":1176},[],{"categories":1178},[144],{"categories":1180},[47],{"categories":1182},[],{"categories":1184},[93],{"categories":1186},[93],{"categories":1188},[47],{"categories":1190},[144],{"categories":1192},[],{"categories":1194},[],{"categories":1196},[96],{"categories":1198},[114],{"categories":1200},[114],{"categories":1202},[96],{"categories":1204},[87],{"categories":1206},[93,406],{"categories":1208},[],{"categories":1210},[135],{"categories":1212},[87],{"categories":1214},[96],{"categories":1216},[135],{"categories":1218},[],{"categories":1220},[96],{"categories":1222},[96],{"categories":1224},[93],{"categories":1226},[151],{"categories":1228},[144],{"categories":1230},[135],{"categories":1232},[],{"categories":1234},[96],{"categories":1236},[93],{"categories":1238},[96],{"categories":1240},[96],{"categories":1242},[96],{"categories":1244},[151],{"categories":1246},[96],{"categories":1248},[93],{"categories":1250},[],{"categories":1252},[151],{"categories":1254},[114],{"categories":1256},[96],{"categories":1258},[],{"categories":1260},[],{"categories":1262},[93],{"categories":1264},[96],{"categories":1266},[114],{"categories":1268},[96],{"categories":1270},[],{"categories":1272},[],{"categories":1274},[],{"categories":1276},[96],{"categories":1278},[],{"categories":1280},[],{"categories":1282},[47],{"categories":1284},[93],{"categories":1286},[47],{"categories":1288},[114],{"categories":1290},[93],{"categories":1292},[93],{"categories":1294},[96],{"categories":1296},[93],{"categories":1298},[],{"categories":1300},[],{"categories":1302},[406],{"categories":1304},[],{"categories":1306},[],{"categories":1308},[87],{"categories":1310},[],{"categories":1312},[],{"categories":1314},[],{"categories":1316},[],{"categories":1318},[144],{"categories":1320},[114],{"categories":1322},[151],{"categories":1324},[90],{"categories":1326},[93],{"categories":1328},[93],{"categories":1330},[90],{"categories":1332},[],{"categories":1334},[135],{"categories":1336},[96],{"categories":1338},[90],{"categories":1340},[93],{"categories":1342},[93],{"categories":1344},[87],{"categories":1346},[],{"categories":1348},[87],{"categories":1350},[93],{"categories":1352},[151],{"categories":1354},[96],{"categories":1356},[114],{"categories":1358},[90],{"categories":1360},[93],{"categories":1362},[96],{"categories":1364},[],{"categories":1366},[93],{"categories":1368},[87],{"categories":1370},[93],{"categories":1372},[],{"categories":1374},[114],{"categories":1376},[93],{"categories":1378},[],{"categories":1380},[90],{"categories":1382},[93],{"categories":1384},[],{"categories":1386},[],{"categories":1388},[],{"categories":1390},[93],{"categories":1392},[],{"categories":1394},[406],{"categories":1396},[93],{"categories":1398},[],{"categories":1400},[93],{"categories":1402},[93],{"categories":1404},[93],{"categories":1406},[93,406],{"categories":1408},[93],{"categories":1410},[93],{"categories":1412},[135],{"categories":1414},[96],{"categories":1416},[],{"categories":1418},[96],{"categories":1420},[93],{"categories":1422},[93],{"categories":1424},[93],{"categories":1426},[87],{"categories":1428},[87],{"categories":1430},[144],{"categories":1432},[135],{"categories":1434},[96],{"categories":1436},[],{"categories":1438},[93],{"categories":1440},[114],{"categories":1442},[93],{"categories":1444},[90],{"categories":1446},[],{"categories":1448},[406],{"categories":1450},[135],{"categories":1452},[135],{"categories":1454},[96],{"categories":1456},[114],{"categories":1458},[96],{"categories":1460},[93],{"categories":1462},[],{"categories":1464},[93],{"categories":1466},[],{"categories":1468},[],{"categories":1470},[93],{"categories":1472},[93],{"categories":1474},[93],{"categories":1476},[96],{"categories":1478},[93],{"categories":1480},[],{"categories":1482},[47],{"categories":1484},[96],{"categories":1486},[],{"categories":1488},[93],{"categories":1490},[114],{"categories":1492},[],{"categories":1494},[135],{"categories":1496},[406],{"categories":1498},[114],{"categories":1500},[144],{"categories":1502},[144],{"categories":1504},[114],{"categories":1506},[114],{"categories":1508},[406],{"categories":1510},[],{"categories":1512},[114],{"categories":1514},[93],{"categories":1516},[87],{"categories":1518},[114],{"categories":1520},[],{"categories":1522},[47],{"categories":1524},[114],{"categories":1526},[144],{"categories":1528},[114],{"categories":1530},[406],{"categories":1532},[93],{"categories":1534},[93],{"categories":1536},[],{"categories":1538},[90],{"categories":1540},[],{"categories":1542},[],{"categories":1544},[93],{"categories":1546},[93],{"categories":1548},[93],{"categories":1550},[93],{"categories":1552},[],{"categories":1554},[47],{"categories":1556},[87],{"categories":1558},[],{"categories":1560},[93],{"categories":1562},[93],{"categories":1564},[406],{"categories":1566},[406],{"categories":1568},[],{"categories":1570},[96],{"categories":1572},[114],{"categories":1574},[114],{"categories":1576},[93],{"categories":1578},[96],{"categories":1580},[],{"categories":1582},[135],{"categories":1584},[93],{"categories":1586},[93],{"categories":1588},[],{"categories":1590},[],{"categories":1592},[406],{"categories":1594},[93],{"categories":1596},[144],{"categories":1598},[90],{"categories":1600},[93],{"categories":1602},[],{"categories":1604},[96],{"categories":1606},[87],{"categories":1608},[87],{"categories":1610},[],{"categories":1612},[93],{"categories":1614},[135],{"categories":1616},[96],{"categories":1618},[],{"categories":1620},[93],{"categories":1622},[93],{"categories":1624},[96],{"categories":1626},[],{"categories":1628},[96],{"categories":1630},[144],{"categories":1632},[],{"categories":1634},[93],{"categories":1636},[],{"categories":1638},[93],{"categories":1640},[],{"categories":1642},[93],{"categories":1644},[93],{"categories":1646},[],{"categories":1648},[93],{"categories":1650},[114],{"categories":1652},[93],{"categories":1654},[93],{"categories":1656},[87],{"categories":1658},[93],{"categories":1660},[114],{"categories":1662},[96],{"categories":1664},[],{"categories":1666},[93],{"categories":1668},[151],{"categories":1670},[],{"categories":1672},[],{"categories":1674},[],{"categories":1676},[87],{"categories":1678},[114],{"categories":1680},[96],{"categories":1682},[93],{"categories":1684},[135],{"categories":1686},[96],{"categories":1688},[],{"categories":1690},[96],{"categories":1692},[],{"categories":1694},[93],{"categories":1696},[96],{"categories":1698},[93],{"categories":1700},[],{"categories":1702},[93],{"categories":1704},[93],{"categories":1706},[114],{"categories":1708},[135],{"categories":1710},[96],{"categories":1712},[135],{"categories":1714},[90],{"categories":1716},[],{"categories":1718},[],{"categories":1720},[93],{"categories":1722},[87],{"categories":1724},[114],{"categories":1726},[],{"categories":1728},[],{"categories":1730},[144],{"categories":1732},[135],{"categories":1734},[],{"categories":1736},[93],{"categories":1738},[],{"categories":1740},[151],{"categories":1742},[93],{"categories":1744},[406],{"categories":1746},[144],{"categories":1748},[],{"categories":1750},[96],{"categories":1752},[93],{"categories":1754},[96],{"categories":1756},[96],{"categories":1758},[93],{"categories":1760},[],{"categories":1762},[87],{"categories":1764},[93],{"categories":1766},[90],{"categories":1768},[144],{"categories":1770},[135],{"categories":1772},[],{"categories":1774},[],{"categories":1776},[],{"categories":1778},[96],{"categories":1780},[135],{"categories":1782},[114],{"categories":1784},[93],{"categories":1786},[114],{"categories":1788},[135],{"categories":1790},[],{"categories":1792},[135],{"categories":1794},[114],{"categories":1796},[90],{"categories":1798},[93],{"categories":1800},[114],{"categories":1802},[151],{"categories":1804},[],{"categories":1806},[],{"categories":1808},[47],{"categories":1810},[93,144],{"categories":1812},[114],{"categories":1814},[93],{"categories":1816},[96],{"categories":1818},[96],{"categories":1820},[93],{"categories":1822},[],{"categories":1824},[144],{"categories":1826},[93],{"categories":1828},[47],{"categories":1830},[96],{"categories":1832},[151],{"categories":1834},[406],{"categories":1836},[],{"categories":1838},[87],{"categories":1840},[96],{"categories":1842},[96],{"categories":1844},[144],{"categories":1846},[93],{"categories":1848},[93],{"categories":1850},[],{"categories":1852},[],{"categories":1854},[],{"categories":1856},[406],{"categories":1858},[114],{"categories":1860},[93],{"categories":1862},[93],{"categories":1864},[93],{"categories":1866},[],{"categories":1868},[47],{"categories":1870},[90],{"categories":1872},[],{"categories":1874},[96],{"categories":1876},[406],{"categories":1878},[],{"categories":1880},[135],{"categories":1882},[135],{"categories":1884},[],{"categories":1886},[144],{"categories":1888},[135],{"categories":1890},[93],{"categories":1892},[],{"categories":1894},[114],{"categories":1896},[93],{"categories":1898},[135],{"categories":1900},[96],{"categories":1902},[114],{"categories":1904},[],{"categories":1906},[96],{"categories":1908},[135],{"categories":1910},[93],{"categories":1912},[],{"categories":1914},[93],{"categories":1916},[93],{"categories":1918},[406],{"categories":1920},[114],{"categories":1922},[47],{"categories":1924},[47],{"categories":1926},[],{"categories":1928},[],{"categories":1930},[],{"categories":1932},[96],{"categories":1934},[144],{"categories":1936},[144],{"categories":1938},[],{"categories":1940},[],{"categories":1942},[93],{"categories":1944},[],{"categories":1946},[96],{"categories":1948},[93],{"categories":1950},[],{"categories":1952},[93],{"categories":1954},[90],{"categories":1956},[93],{"categories":1958},[151],{"categories":1960},[96],{"categories":1962},[93],{"categories":1964},[144],{"categories":1966},[114],{"categories":1968},[96],{"categories":1970},[],{"categories":1972},[114],{"categories":1974},[96],{"categories":1976},[96],{"categories":1978},[],{"categories":1980},[90],{"categories":1982},[96],{"categories":1984},[],{"categories":1986},[93],{"categories":1988},[87],{"categories":1990},[114],{"categories":1992},[406],{"categories":1994},[96],{"categories":1996},[96],{"categories":1998},[87],{"categories":2000},[93],{"categories":2002},[],{"categories":2004},[],{"categories":2006},[135],{"categories":2008},[93,90],{"categories":2010},[],{"categories":2012},[87],{"categories":2014},[47],{"categories":2016},[93],{"categories":2018},[144],{"categories":2020},[93],{"categories":2022},[96],{"categories":2024},[93],{"categories":2026},[93],{"categories":2028},[114],{"categories":2030},[96],{"categories":2032},[],{"categories":2034},[],{"categories":2036},[96],{"categories":2038},[93],{"categories":2040},[406],{"categories":2042},[],{"categories":2044},[93],{"categories":2046},[96],{"categories":2048},[],{"categories":2050},[93],{"categories":2052},[151],{"categories":2054},[47],{"categories":2056},[96],{"categories":2058},[93],{"categories":2060},[406],{"categories":2062},[],{"categories":2064},[93],{"categories":2066},[151],{"categories":2068},[135],{"categories":2070},[93],{"categories":2072},[],{"categories":2074},[151],{"categories":2076},[114],{"categories":2078},[93],{"categories":2080},[93],{"categories":2082},[87],{"categories":2084},[],{"categories":2086},[],{"categories":2088},[135],{"categories":2090},[93],{"categories":2092},[47],{"categories":2094},[151],{"categories":2096},[151],{"categories":2098},[114],{"categories":2100},[],{"categories":2102},[],{"categories":2104},[93],{"categories":2106},[],{"categories":2108},[93,144],{"categories":2110},[114],{"categories":2112},[96],{"categories":2114},[144],{"categories":2116},[93],{"categories":2118},[87],{"categories":2120},[],{"categories":2122},[],{"categories":2124},[87],{"categories":2126},[151],{"categories":2128},[93],{"categories":2130},[],{"categories":2132},[135,93],{"categories":2134},[406],{"categories":2136},[87],{"categories":2138},[],{"categories":2140},[90],{"categories":2142},[90],{"categories":2144},[93],{"categories":2146},[144],{"categories":2148},[96],{"categories":2150},[114],{"categories":2152},[151],{"categories":2154},[135],{"categories":2156},[93],{"categories":2158},[93],{"categories":2160},[93],{"categories":2162},[87],{"categories":2164},[93],{"categories":2166},[96],{"categories":2168},[114],{"categories":2170},[],{"categories":2172},[],{"categories":2174},[47],{"categories":2176},[144],{"categories":2178},[93],{"categories":2180},[135],{"categories":2182},[47],{"categories":2184},[93],{"categories":2186},[93],{"categories":2188},[96],{"categories":2190},[96],{"categories":2192},[93,90],{"categories":2194},[],{"categories":2196},[135],{"categories":2198},[],{"categories":2200},[93],{"categories":2202},[114],{"categories":2204},[87],{"categories":2206},[87],{"categories":2208},[96],{"categories":2210},[93],{"categories":2212},[90],{"categories":2214},[144],{"categories":2216},[151],{"categories":2218},[],{"categories":2220},[114],{"categories":2222},[93],{"categories":2224},[93],{"categories":2226},[114],{"categories":2228},[144],{"categories":2230},[93],{"categories":2232},[96],{"categories":2234},[114],{"categories":2236},[93],{"categories":2238},[135],{"categories":2240},[93],{"categories":2242},[93],{"categories":2244},[406],{"categories":2246},[99],{"categories":2248},[96],{"categories":2250},[93],{"categories":2252},[114],{"categories":2254},[96],{"categories":2256},[151],{"categories":2258},[93],{"categories":2260},[],{"categories":2262},[93],{"categories":2264},[],{"categories":2266},[],{"categories":2268},[],{"categories":2270},[90],{"categories":2272},[93],{"categories":2274},[96],{"categories":2276},[114],{"categories":2278},[114],{"categories":2280},[114],{"categories":2282},[114],{"categories":2284},[],{"categories":2286},[87],{"categories":2288},[96],{"categories":2290},[114],{"categories":2292},[87],{"categories":2294},[96],{"categories":2296},[93],{"categories":2298},[93,96],{"categories":2300},[96],{"categories":2302},[406],{"categories":2304},[114],{"categories":2306},[114],{"categories":2308},[96],{"categories":2310},[93],{"categories":2312},[],{"categories":2314},[114],{"categories":2316},[151],{"categories":2318},[87],{"categories":2320},[93],{"categories":2322},[93],{"categories":2324},[],{"categories":2326},[144],{"categories":2328},[],{"categories":2330},[87],{"categories":2332},[96],{"categories":2334},[114],{"categories":2336},[93],{"categories":2338},[114],{"categories":2340},[87],{"categories":2342},[114],{"categories":2344},[114],{"categories":2346},[],{"categories":2348},[90],{"categories":2350},[96],{"categories":2352},[114],{"categories":2354},[114],{"categories":2356},[114],{"categories":2358},[114],{"categories":2360},[114],{"categories":2362},[114],{"categories":2364},[114],{"categories":2366},[114],{"categories":2368},[114],{"categories":2370},[114],{"categories":2372},[47],{"categories":2374},[87],{"categories":2376},[93],{"categories":2378},[93],{"categories":2380},[],{"categories":2382},[93,87],{"categories":2384},[],{"categories":2386},[96],{"categories":2388},[114],{"categories":2390},[96],{"categories":2392},[93],{"categories":2394},[93],{"categories":2396},[93],{"categories":2398},[93],{"categories":2400},[93],{"categories":2402},[96],{"categories":2404},[90],{"categories":2406},[135],{"categories":2408},[114],{"categories":2410},[93],{"categories":2412},[],{"categories":2414},[],{"categories":2416},[96],{"categories":2418},[135],{"categories":2420},[93],{"categories":2422},[],{"categories":2424},[],{"categories":2426},[151],{"categories":2428},[93],{"categories":2430},[],{"categories":2432},[],{"categories":2434},[87],{"categories":2436},[90],{"categories":2438},[93],{"categories":2440},[90],{"categories":2442},[135],{"categories":2444},[],{"categories":2446},[114],{"categories":2448},[],{"categories":2450},[135],{"categories":2452},[93],{"categories":2454},[151],{"categories":2456},[],{"categories":2458},[151],{"categories":2460},[],{"categories":2462},[],{"categories":2464},[96],{"categories":2466},[],{"categories":2468},[90],{"categories":2470},[87],{"categories":2472},[135],{"categories":2474},[144],{"categories":2476},[],{"categories":2478},[],{"categories":2480},[93],{"categories":2482},[87],{"categories":2484},[151],{"categories":2486},[],{"categories":2488},[96],{"categories":2490},[96],{"categories":2492},[114],{"categories":2494},[93],{"categories":2496},[96],{"categories":2498},[93],{"categories":2500},[96],{"categories":2502},[93],{"categories":2504},[99],{"categories":2506},[114],{"categories":2508},[],{"categories":2510},[151],{"categories":2512},[144],{"categories":2514},[96],{"categories":2516},[],{"categories":2518},[93],{"categories":2520},[96],{"categories":2522},[90],{"categories":2524},[87],{"categories":2526},[93],{"categories":2528},[135],{"categories":2530},[144],{"categories":2532},[144],{"categories":2534},[93],{"categories":2536},[47],{"categories":2538},[93],{"categories":2540},[96],{"categories":2542},[90],{"categories":2544},[96],{"categories":2546},[93],{"categories":2548},[93],{"categories":2550},[96],{"categories":2552},[114],{"categories":2554},[],{"categories":2556},[87],{"categories":2558},[93],{"categories":2560},[96],{"categories":2562},[93],{"categories":2564},[93],{"categories":2566},[],{"categories":2568},[135],{"categories":2570},[90],{"categories":2572},[114],{"categories":2574},[93],{"categories":2576},[93],{"categories":2578},[135],{"categories":2580},[151],{"categories":2582},[47],{"categories":2584},[93],{"categories":2586},[114],{"categories":2588},[93],{"categories":2590},[96],{"categories":2592},[406],{"categories":2594},[93],{"categories":2596},[96],{"categories":2598},[47],{"categories":2600},[],{"categories":2602},[96],{"categories":2604},[144],{"categories":2606},[135],{"categories":2608},[93],{"categories":2610},[87],{"categories":2612},[90],{"categories":2614},[144],{"categories":2616},[],{"categories":2618},[96],{"categories":2620},[93],{"categories":2622},[],{"categories":2624},[114],{"categories":2626},[],{"categories":2628},[114],{"categories":2630},[93],{"categories":2632},[96],{"categories":2634},[96],{"categories":2636},[96],{"categories":2638},[],{"categories":2640},[],{"categories":2642},[93],{"categories":2644},[93],{"categories":2646},[],{"categories":2648},[135],{"categories":2650},[96],{"categories":2652},[151],{"categories":2654},[87],{"categories":2656},[],{"categories":2658},[],{"categories":2660},[114],{"categories":2662},[144],{"categories":2664},[93],{"categories":2666},[93],{"categories":2668},[93],{"categories":2670},[144],{"categories":2672},[114],{"categories":2674},[135],{"categories":2676},[93],{"categories":2678},[93],{"categories":2680},[93],{"categories":2682},[114],{"categories":2684},[93],{"categories":2686},[114],{"categories":2688},[96],{"categories":2690},[96],{"categories":2692},[144],{"categories":2694},[96],{"categories":2696},[93],{"categories":2698},[144],{"categories":2700},[135],{"categories":2702},[],{"categories":2704},[96],{"categories":2706},[],{"categories":2708},[],{"categories":2710},[90],{"categories":2712},[93],{"categories":2714},[96],{"categories":2716},[87],{"categories":2718},[96],{"categories":2720},[151],{"categories":2722},[],{"categories":2724},[96],{"categories":2726},[],{"categories":2728},[87],{"categories":2730},[96],{"categories":2732},[],{"categories":2734},[96],{"categories":2736},[93],{"categories":2738},[114],{"categories":2740},[93],{"categories":2742},[96],{"categories":2744},[114],{"categories":2746},[96],{"categories":2748},[144],{"categories":2750},[135],{"categories":2752},[87],{"categories":2754},[],{"categories":2756},[96],{"categories":2758},[135],{"categories":2760},[114],{"categories":2762},[93],{"categories":2764},[135],{"categories":2766},[87],{"categories":2768},[],{"categories":2770},[96],{"categories":2772},[96],{"categories":2774},[93],{"categories":2776},[],{"categories":2778},[96],{"categories":2780},[99],{"categories":2782},[114],{"categories":2784},[96],{"categories":2786},[90],{"categories":2788},[],{"categories":2790},[93],{"categories":2792},[99],{"categories":2794},[93],{"categories":2796},[96],{"categories":2798},[114],{"categories":2800},[87],{"categories":2802},[406],{"categories":2804},[93],{"categories":2806},[93],{"categories":2808},[93],{"categories":2810},[114],{"categories":2812},[90],{"categories":2814},[93],{"categories":2816},[135],{"categories":2818},[114],{"categories":2820},[406],{"categories":2822},[93],{"categories":2824},[],{"categories":2826},[],{"categories":2828},[406],{"categories":2830},[47],{"categories":2832},[96],{"categories":2834},[96],{"categories":2836},[114],{"categories":2838},[93],{"categories":2840},[87],{"categories":2842},[135],{"categories":2844},[96],{"categories":2846},[93],{"categories":2848},[151],{"categories":2850},[93],{"categories":2852},[96],{"categories":2854},[],{"categories":2856},[93],{"categories":2858},[93],{"categories":2860},[114],{"categories":2862},[87],{"categories":2864},[],{"categories":2866},[93],{"categories":2868},[93],{"categories":2870},[144],{"categories":2872},[135],{"categories":2874},[93,96],{"categories":2876},[151,90],{"categories":2878},[93],{"categories":2880},[],{"categories":2882},[96],{"categories":2884},[],{"categories":2886},[144],{"categories":2888},[93],{"categories":2890},[114],{"categories":2892},[],{"categories":2894},[96],{"categories":2896},[],{"categories":2898},[96],{"categories":2900},[87],{"categories":2902},[96],{"categories":2904},[93],{"categories":2906},[406],{"categories":2908},[151],{"categories":2910},[90],{"categories":2912},[90],{"categories":2914},[87],{"categories":2916},[87],{"categories":2918},[93],{"categories":2920},[96],{"categories":2922},[93],{"categories":2924},[93],{"categories":2926},[87],{"categories":2928},[93],{"categories":2930},[151],{"categories":2932},[114],{"categories":2934},[93],{"categories":2936},[96],{"categories":2938},[93],{"categories":2940},[],{"categories":2942},[144],{"categories":2944},[],{"categories":2946},[96],{"categories":2948},[87],{"categories":2950},[],{"categories":2952},[406],{"categories":2954},[93],{"categories":2956},[],{"categories":2958},[114],{"categories":2960},[96],{"categories":2962},[144],{"categories":2964},[93],{"categories":2966},[96],{"categories":2968},[144],{"categories":2970},[96],{"categories":2972},[114],{"categories":2974},[87],{"categories":2976},[114],{"categories":2978},[144],{"categories":2980},[93],{"categories":2982},[135],{"categories":2984},[93],{"categories":2986},[93],{"categories":2988},[93],{"categories":2990},[93],{"categories":2992},[96],{"categories":2994},[93],{"categories":2996},[96],{"categories":2998},[93],{"categories":3000},[87],{"categories":3002},[93],{"categories":3004},[96],{"categories":3006},[135],{"categories":3008},[87],{"categories":3010},[96],{"categories":3012},[135],{"categories":3014},[],{"categories":3016},[93],{"categories":3018},[93],{"categories":3020},[144],{"categories":3022},[],{"categories":3024},[96],{"categories":3026},[151],{"categories":3028},[93],{"categories":3030},[114],{"categories":3032},[151],{"categories":3034},[96],{"categories":3036},[90],{"categories":3038},[90],{"categories":3040},[93],{"categories":3042},[87],{"categories":3044},[],{"categories":3046},[93],{"categories":3048},[],{"categories":3050},[87],{"categories":3052},[93],{"categories":3054},[96],{"categories":3056},[96],{"categories":3058},[],{"categories":3060},[144],{"categories":3062},[144],{"categories":3064},[151],{"categories":3066},[135],{"categories":3068},[],{"categories":3070},[93],{"categories":3072},[87],{"categories":3074},[93],{"categories":3076},[144],{"categories":3078},[87],{"categories":3080},[114],{"categories":3082},[114],{"categories":3084},[],{"categories":3086},[114],{"categories":3088},[96],{"categories":3090},[135],{"categories":3092},[47],{"categories":3094},[93],{"categories":3096},[],{"categories":3098},[114],{"categories":3100},[144],{"categories":3102},[90],{"categories":3104},[93],{"categories":3106},[87],{"categories":3108},[406],{"categories":3110},[87],{"categories":3112},[],{"categories":3114},[],{"categories":3116},[114],{"categories":3118},[],{"categories":3120},[96],{"categories":3122},[96],{"categories":3124},[96],{"categories":3126},[],{"categories":3128},[93],{"categories":3130},[],{"categories":3132},[114],{"categories":3134},[87],{"categories":3136},[135],{"categories":3138},[93],{"categories":3140},[114],{"categories":3142},[114],{"categories":3144},[],{"categories":3146},[114],{"categories":3148},[87],{"categories":3150},[93],{"categories":3152},[],{"categories":3154},[96],{"categories":3156},[96],{"categories":3158},[87],{"categories":3160},[],{"categories":3162},[],{"categories":3164},[],{"categories":3166},[135],{"categories":3168},[96],{"categories":3170},[93],{"categories":3172},[],{"categories":3174},[],{"categories":3176},[],{"categories":3178},[135],{"categories":3180},[],{"categories":3182},[87],{"categories":3184},[],{"categories":3186},[],{"categories":3188},[135],{"categories":3190},[93],{"categories":3192},[114],{"categories":3194},[],{"categories":3196},[151],{"categories":3198},[114],{"categories":3200},[151],{"categories":3202},[93],{"categories":3204},[],{"categories":3206},[],{"categories":3208},[96],{"categories":3210},[],{"categories":3212},[],{"categories":3214},[96],{"categories":3216},[93],{"categories":3218},[],{"categories":3220},[96],{"categories":3222},[114],{"categories":3224},[151],{"categories":3226},[47],{"categories":3228},[96],{"categories":3230},[96],{"categories":3232},[],{"categories":3234},[],{"categories":3236},[],{"categories":3238},[114],{"categories":3240},[],{"categories":3242},[],{"categories":3244},[135],{"categories":3246},[87],{"categories":3248},[],{"categories":3250},[90],{"categories":3252},[151],{"categories":3254},[93],{"categories":3256},[144],{"categories":3258},[87],{"categories":3260},[47],{"categories":3262},[90],{"categories":3264},[144],{"categories":3266},[],{"categories":3268},[],{"categories":3270},[96],{"categories":3272},[87],{"categories":3274},[135],{"categories":3276},[87],{"categories":3278},[96],{"categories":3280},[406],{"categories":3282},[96],{"categories":3284},[],{"categories":3286},[93],{"categories":3288},[114],{"categories":3290},[144],{"categories":3292},[],{"categories":3294},[135],{"categories":3296},[114],{"categories":3298},[87],{"categories":3300},[96],{"categories":3302},[93],{"categories":3304},[90],{"categories":3306},[96,406],{"categories":3308},[96],{"categories":3310},[144],{"categories":3312},[93],{"categories":3314},[47],{"categories":3316},[151],{"categories":3318},[96],{"categories":3320},[],{"categories":3322},[96],{"categories":3324},[93],{"categories":3326},[90],{"categories":3328},[],{"categories":3330},[],{"categories":3332},[93],{"categories":3334},[47],{"categories":3336},[93],{"categories":3338},[],{"categories":3340},[114],{"categories":3342},[],{"categories":3344},[114],{"categories":3346},[144],{"categories":3348},[96],{"categories":3350},[93],{"categories":3352},[151],{"categories":3354},[144],{"categories":3356},[],{"categories":3358},[114],{"categories":3360},[93],{"categories":3362},[],{"categories":3364},[93],{"categories":3366},[96],{"categories":3368},[93],{"categories":3370},[96],{"categories":3372},[93],{"categories":3374},[93],{"categories":3376},[93],{"categories":3378},[93],{"categories":3380},[90],{"categories":3382},[],{"categories":3384},[99],{"categories":3386},[114],{"categories":3388},[93],{"categories":3390},[],{"categories":3392},[144],{"categories":3394},[93],{"categories":3396},[93],{"categories":3398},[96],{"categories":3400},[114],{"categories":3402},[93],{"categories":3404},[93],{"categories":3406},[90],{"categories":3408},[96],{"categories":3410},[135],{"categories":3412},[],{"categories":3414},[47],{"categories":3416},[93],{"categories":3418},[],{"categories":3420},[114],{"categories":3422},[151],{"categories":3424},[],{"categories":3426},[],{"categories":3428},[114],{"categories":3430},[114],{"categories":3432},[151],{"categories":3434},[87],{"categories":3436},[96],{"categories":3438},[96],{"categories":3440},[93],{"categories":3442},[90],{"categories":3444},[],{"categories":3446},[],{"categories":3448},[114],{"categories":3450},[47],{"categories":3452},[144],{"categories":3454},[96],{"categories":3456},[135],{"categories":3458},[47],{"categories":3460},[47],{"categories":3462},[],{"categories":3464},[114],{"categories":3466},[93],{"categories":3468},[93],{"categories":3470},[144],{"categories":3472},[],{"categories":3474},[114],{"categories":3476},[114],{"categories":3478},[114],{"categories":3480},[],{"categories":3482},[96],{"categories":3484},[93],{"categories":3486},[],{"categories":3488},[87],{"categories":3490},[90],{"categories":3492},[],{"categories":3494},[93],{"categories":3496},[93],{"categories":3498},[],{"categories":3500},[144],{"categories":3502},[],{"categories":3504},[],{"categories":3506},[],{"categories":3508},[],{"categories":3510},[93],{"categories":3512},[114],{"categories":3514},[],{"categories":3516},[],{"categories":3518},[93],{"categories":3520},[93],{"categories":3522},[93],{"categories":3524},[47],{"categories":3526},[93],{"categories":3528},[47],{"categories":3530},[],{"categories":3532},[47],{"categories":3534},[47],{"categories":3536},[406],{"categories":3538},[96],{"categories":3540},[144],{"categories":3542},[],{"categories":3544},[],{"categories":3546},[47],{"categories":3548},[144],{"categories":3550},[144],{"categories":3552},[144],{"categories":3554},[],{"categories":3556},[87],{"categories":3558},[144],{"categories":3560},[144],{"categories":3562},[87],{"categories":3564},[144],{"categories":3566},[90],{"categories":3568},[144],{"categories":3570},[144],{"categories":3572},[144],{"categories":3574},[47],{"categories":3576},[114],{"categories":3578},[114],{"categories":3580},[93],{"categories":3582},[144],{"categories":3584},[47],{"categories":3586},[406],{"categories":3588},[47],{"categories":3590},[47],{"categories":3592},[47],{"categories":3594},[],{"categories":3596},[90],{"categories":3598},[],{"categories":3600},[406],{"categories":3602},[144],{"categories":3604},[144],{"categories":3606},[144],{"categories":3608},[96],{"categories":3610},[114,90],{"categories":3612},[47],{"categories":3614},[],{"categories":3616},[],{"categories":3618},[47],{"categories":3620},[],{"categories":3622},[47],{"categories":3624},[114],{"categories":3626},[96],{"categories":3628},[],{"categories":3630},[144],{"categories":3632},[93],{"categories":3634},[135],{"categories":3636},[],{"categories":3638},[93],{"categories":3640},[],{"categories":3642},[114],{"categories":3644},[87],{"categories":3646},[47],{"categories":3648},[],{"categories":3650},[144],{"categories":3652},[114],[3654,3816,3938,4033],{"id":3655,"title":3656,"ai":3657,"body":3662,"categories":3802,"created_at":48,"date_modified":48,"description":40,"extension":49,"faq":48,"featured":50,"kicker_label":48,"meta":3803,"navigation":67,"path":3804,"published_at":3805,"question":48,"scraped_at":48,"seo":3806,"sitemap":3807,"source_id":3808,"source_name":3809,"source_type":75,"source_url":3810,"stem":3811,"tags":3812,"thumbnail_url":48,"tldr":3813,"tweet":48,"unknown_tags":3814,"__hash__":3815},"summaries\u002Fsummaries\u002Fnes-optimizes-quadratic-bowl-via-gaussian-perturba-summary.md","NES optimizes quadratic bowl via gaussian perturbations",{"provider":7,"model":8,"input_tokens":3658,"output_tokens":3659,"processing_time_ms":3660,"cost_usd":3661},8855,1292,10281,0.0019466,{"type":14,"value":3663,"toc":3797},[3664,3668,3671,3709,3720,3734,3737,3741,3744,3759,3762,3766,3793],[17,3665,3667],{"id":3666},"nes-core-loop-for-black-box-optimization","NES Core Loop for Black-Box Optimization",[22,3669,3670],{},"NES treats parameters w as mean of a fixed-variance gaussian (sigma=0.1). To maximize black-box reward f(w) without gradients:",[3672,3673,3674,3678,3699,3702],"ol",{},[3675,3676,3677],"li",{},"Generate npop=50 noise samples N ~ N(0,1) (shape 50x3).",[3675,3679,3680,3681,3685,3686,3688,3689,3691,3692,3694,3695,3698],{},"Perturb: w_try",[3682,3683,3684],"span",{},"j"," = w + sigma * N",[3682,3687,3684],{},", compute R",[3682,3690,3684],{}," = f(w_try",[3682,3693,3684],{},"). Here f(w) = -||w - ",[3682,3696,3697],{},"0.5,0.1,-0.3","||^2_2 (max reward=0 at solution).",[3675,3700,3701],{},"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).",[3675,3703,3704,3705,3708],{},"Update: w += alpha\u002F(npop * sigma) * N.T @ A (alpha=0.001). This is score-function gradient estimator E",[3682,3706,3707],{},"reward * noise","\u002Fsigma.",[22,3710,3711,3712,3715,3716,3719],{},"Starts from random w≈",[3682,3713,3714],{},"1.76,0.40,0.98"," (reward -3.32), reaches ",[3682,3717,3718],{},"-0.000009"," error by iter 280.",[3721,3722,3725],"pre",{"className":3723,"code":3724,"language":79,"meta":40,"style":40},"language-python shiki shiki-themes github-light github-dark","w = w + alpha\u002F(npop*sigma) * np.dot(N.T, A)\n",[3726,3727,3728],"code",{"__ignoreMap":40},[3682,3729,3732],{"class":3730,"line":3731},"line",1,[3682,3733,3724],{},[22,3735,3736],{},"sigma scales perturbation size and normalizes estimator (divisor matches multiplier for consistent gradient scale).",[17,3738,3740],{"id":3739},"proven-convergence-on-toy-quadratic","Proven Convergence on Toy Quadratic",[22,3742,3743],{},"300 iters suffice; prints every 20 show steady progress:",[3745,3746,3747,3750,3753,3756],"ul",{},[3675,3748,3749],{},"Iter 0: reward -3.323",[3675,3751,3752],{},"Iter 100: -0.727",[3675,3754,3755],{},"Iter 200: -0.001",[3675,3757,3758],{},"Iter 280: -0.000009",[22,3760,3761],{},"Toy mimics NN optimization: f(w) would forward NN on env, return total reward. Solution hidden from optimizer.",[17,3763,3765],{"id":3764},"insights-from-implementers","Insights from Implementers",[3745,3767,3768,3775,3781,3787],{},[3675,3769,3770,3774],{},[3771,3772,3773],"strong",{},"Standardization optional but boosts speed",": Raw R works (paper-equivalent via Section 3.2), but centering\u002Fscaling prevents stagnation on negative\u002Fflat rewards.",[3675,3776,3777,3780],{},[3771,3778,3779],{},"Edge cases",": Add epsilon to std(R) avoids div0 when all R equal (common early\u002Fsimple problems).",[3675,3782,3783,3786],{},[3771,3784,3785],{},"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.",[3675,3788,3789,3792],{},[3771,3790,3791],{},"Deployment",": Save final w; reconstruct NN. Practical for RL vs DQN (no backprop, parallelizable evals).",[3794,3795,3796],"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":40,"searchDepth":41,"depth":41,"links":3798},[3799,3800,3801],{"id":3666,"depth":41,"text":3667},{"id":3739,"depth":41,"text":3740},{"id":3764,"depth":41,"text":3765},[47],{},"\u002Fsummaries\u002Fnes-optimizes-quadratic-bowl-via-gaussian-perturba-summary","2026-04-08 21:21:20",{"title":3656,"description":40},{"loc":3804},"24c62cc73ee60bc6","Andrej Karpathy Gists","https:\u002F\u002Funknown","summaries\u002Fnes-optimizes-quadratic-bowl-via-gaussian-perturba-summary",[79,80],"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":3817,"title":3818,"ai":3819,"body":3824,"categories":3925,"created_at":48,"date_modified":48,"description":40,"extension":49,"faq":48,"featured":50,"kicker_label":48,"meta":3926,"navigation":67,"path":3927,"published_at":3928,"question":48,"scraped_at":48,"seo":3929,"sitemap":3930,"source_id":3931,"source_name":3932,"source_type":75,"source_url":3810,"stem":3933,"tags":3934,"thumbnail_url":48,"tldr":3935,"tweet":48,"unknown_tags":3936,"__hash__":3937},"summaries\u002Fsummaries\u002Ffix-randomness-first-for-stable-ml-pipelines-summary.md","Fix Randomness First for Stable ML Pipelines",{"provider":7,"model":8,"input_tokens":3820,"output_tokens":3821,"processing_time_ms":3822,"cost_usd":3823},3629,1311,12564,0.0013588,{"type":14,"value":3825,"toc":3921},[3826,3830,3833,3837,3840,3906,3913,3919],[17,3827,3829],{"id":3828},"pipelines-not-models-break-ml-systems","Pipelines, Not Models, Break ML Systems",[22,3831,3832],{},"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,3834,3836],{"id":3835},"enforce-reproducibility-by-seeding-everything","Enforce Reproducibility by Seeding Everything",[22,3838,3839],{},"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:",[3721,3841,3843],{"className":3723,"code":3842,"language":79,"meta":40,"style":40},"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",[3726,3844,3845,3850,3855,3861,3866,3871,3877,3883,3889,3895,3900],{"__ignoreMap":40},[3682,3846,3847],{"class":3730,"line":3731},[3682,3848,3849],{},"import random\n",[3682,3851,3852],{"class":3730,"line":41},[3682,3853,3854],{},"import numpy as np\n",[3682,3856,3858],{"class":3730,"line":3857},3,[3682,3859,3860],{},"import torch\n",[3682,3862,3863],{"class":3730,"line":64},[3682,3864,3865],{"emptyLinePlaceholder":67},"\n",[3682,3867,3868],{"class":3730,"line":63},[3682,3869,3870],{},"def set_seed(seed=42):\n",[3682,3872,3874],{"class":3730,"line":3873},6,[3682,3875,3876],{},"    random.seed(seed)\n",[3682,3878,3880],{"class":3730,"line":3879},7,[3682,3881,3882],{},"    np.random.seed(seed)\n",[3682,3884,3886],{"class":3730,"line":3885},8,[3682,3887,3888],{},"    torch.manual_seed(seed)\n",[3682,3890,3892],{"class":3730,"line":3891},9,[3682,3893,3894],{},"    torch.cuda.manual_seed_all(seed)\n",[3682,3896,3898],{"class":3730,"line":3897},10,[3682,3899,3865],{"emptyLinePlaceholder":67},[3682,3901,3903],{"class":3730,"line":3902},11,[3682,3904,3905],{},"set_seed(42)\n",[22,3907,3908,3909,3912],{},"Call this early. ",[3771,3910,3911],{},"Key caveat:"," Seeds don't fully eliminate non-determinism in some GPU operations—explicitly configure those for true reproducibility.",[22,3914,3915],{},[3916,3917,3918],"em",{},"Note: Article outlines 9 rules total but details only the first here.",[3794,3920,3796],{},{"title":40,"searchDepth":41,"depth":41,"links":3922},[3923,3924],{"id":3828,"depth":41,"text":3829},{"id":3835,"depth":41,"text":3836},[47],{},"\u002Fsummaries\u002Ffix-randomness-first-for-stable-ml-pipelines-summary","2026-04-08 21:21:17",{"title":3818,"description":40},{"loc":3927},"ed293f2ee2f46e73","Python in Plain English","summaries\u002Ffix-randomness-first-for-stable-ml-pipelines-summary",[79,80],"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",{"id":3939,"title":3940,"ai":3941,"body":3946,"categories":4022,"created_at":48,"date_modified":48,"description":40,"extension":49,"faq":48,"featured":50,"kicker_label":48,"meta":4023,"navigation":67,"path":4024,"published_at":3805,"question":48,"scraped_at":48,"seo":4025,"sitemap":4026,"source_id":4027,"source_name":3809,"source_type":75,"source_url":3810,"stem":4028,"tags":4029,"thumbnail_url":48,"tldr":4030,"tweet":48,"unknown_tags":4031,"__hash__":4032},"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":3942,"output_tokens":3943,"processing_time_ms":3944,"cost_usd":3945},3920,1128,10617,0.00088105,{"type":14,"value":3947,"toc":4017},[3948,3952,3975,3979,3998,4002],[17,3949,3951],{"id":3950},"raw-matmul-preserves-precision-across-batch-sizes","Raw Matmul Preserves Precision Across Batch Sizes",[22,3953,3954,3955,3958,3959,3962,3963,3966,3967,3970,3971,3974],{},"Use ",[3726,3956,3957],{},"torch.matmul"," for exact equivalence: with seed 42, ",[3726,3960,3961],{},"x = torch.randn(2, 768)"," and ",[3726,3964,3965],{},"w = torch.randn(768, 768)",", computing ",[3726,3968,3969],{},"z1 = x[0] @ w"," matches ",[3726,3972,3973],{},"(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,3976,3978],{"id":3977},"nnlinear-introduces-numerical-drift","nn.Linear Introduces Numerical Drift",[22,3980,3981,3982,3985,3986,3989,3990,3993,3994,3997],{},"nn.Linear(768, 768, bias=False) with weight copied from ",[3726,3983,3984],{},"w.T"," fails exactness. ",[3726,3987,3988],{},"q1 = m(x[0])"," differs from ",[3726,3991,3992],{},"q2 = m(x)[0]"," by max ~2e-5, and both deviate from raw ",[3726,3995,3996],{},"z1"," by ~9e-5. Avoid assuming single-sample Linear matches batched or raw matmul outputs—use raw ops for precision-critical math.",[17,3999,4001],{"id":4000},"root-cause-fused-operations-in-batched-mode","Root Cause: Fused Operations in Batched Mode",[22,4003,4004,4005,4008,4009,4012,4013,4016],{},"Commenter notes torch source shows fused kernels activate differently for batched (shape ",[3682,4006,4007],{},"2,768",") vs single (",[3682,4010,4011],{},"768",") inputs, causing drift. Test by disabling autocast or fusions (e.g., ",[3726,4014,4015],{},"torch.backends.cudnn.deterministic=True",") to isolate; impacts model debugging where exact reproducibility matters over speed.",{"title":40,"searchDepth":41,"depth":41,"links":4018},[4019,4020,4021],{"id":3950,"depth":41,"text":3951},{"id":3977,"depth":41,"text":3978},{"id":4000,"depth":41,"text":4001},[144],{},"\u002Fsummaries\u002Fpytorch-nn-linear-mismatches-raw-matmul-by-1e-4-summary",{"title":3940,"description":40},{"loc":4024},"c31c04ed51f90c10","summaries\u002Fpytorch-nn-linear-mismatches-raw-matmul-by-1e-4-summary",[79,80],"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":4034,"title":4035,"ai":4036,"body":4041,"categories":4234,"created_at":48,"date_modified":48,"description":40,"extension":49,"faq":48,"featured":50,"kicker_label":48,"meta":4235,"navigation":67,"path":4247,"published_at":4248,"question":48,"scraped_at":4249,"seo":4250,"sitemap":4251,"source_id":4252,"source_name":4253,"source_type":75,"source_url":4254,"stem":4255,"tags":4256,"thumbnail_url":48,"tldr":4258,"tweet":48,"unknown_tags":4259,"__hash__":4260},"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":4037,"output_tokens":4038,"processing_time_ms":4039,"cost_usd":4040},9292,2519,30098,0.00309525,{"type":14,"value":4042,"toc":4228},[4043,4047,4078,4082,4131,4135,4200,4204],[17,4044,4046],{"id":4045},"data-prep-and-baseline-benchmarks-deliver-quick-wins","Data Prep and Baseline Benchmarks Deliver Quick Wins",[22,4048,4049,4050,4053,4054,4057,4058,4061,4062,4065,4066,4069,4070,4073,4074,4077],{},"Load S&P 500 prices via ",[3726,4051,4052],{},"skfolio.datasets.load_sp500_dataset()",", convert to returns with ",[3726,4055,4056],{},"prices_to_returns()",", and split chronologically (",[3726,4059,4060],{},"train_test_split(shuffle=False, test_size=0.33)",") to prevent look-ahead bias—training spans ~67% historical days, testing the rest. Baselines like ",[3726,4063,4064],{},"EqualWeighted()",", ",[3726,4067,4068],{},"InverseVolatility()",", and ",[3726,4071,4072],{},"Random()"," fit on train, predict on test, yielding metrics like annualized Sharpe (printed via ",[3726,4075,4076],{},"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,4079,4081],{"id":4080},"mean-variance-risk-measures-and-clustering-beat-baselines","Mean-Variance, Risk Measures, and Clustering Beat Baselines",[22,4083,4084,4087,4088,4091,4092,4095,4096,4099,4100,4065,4103,4106,4107,4110,4111,4114,4115,4118,4119,4122,4123,4126,4127,4130],{},[3726,4085,4086],{},"MeanRisk(risk_measure=RiskMeasure.VARIANCE)"," minimizes variance or maximizes Sharpe (",[3726,4089,4090],{},"ObjectiveFunction.MAXIMIZE_RATIO","), generating efficient frontiers (",[3726,4093,4094],{},"efficient_frontier_size=20",") plotted by risk vs. Sharpe. Swap risks to ",[3726,4097,4098],{},"CVaR"," (95%), ",[3726,4101,4102],{},"SEMI_VARIANCE",[3726,4104,4105],{},"CDAR",", or ",[3726,4108,4109],{},"MAX_DRAWDOWN"," for tail-focused portfolios that cut CVaR@95% and max drawdown vs. variance. ",[3726,4112,4113],{},"RiskBudgeting()"," equalizes contributions (variance or CVaR). Hierarchical methods shine: ",[3726,4116,4117],{},"HierarchicalRiskParity()"," clusters assets via dendrograms for stable weights; ",[3726,4120,4121],{},"NestedClustersOptimization()"," nests ",[3726,4124,4125],{},"MeanRisk(CVAR)"," inside ",[3726,4128,4129],{},"RiskBudgeting(VARIANCE)"," with 5-fold CV, capturing correlations without covariance pitfalls.",[17,4132,4134],{"id":4133},"robust-priors-constraints-and-views-stabilize-real-world-use","Robust Priors, Constraints, and Views Stabilize Real-World Use",[22,4136,4137,4138,4141,4142,4145,4146,4065,4149,4065,4152,4106,4155,4158,4159,4162,4163,4065,4166,4065,4169,4065,4172,4175,4176,4179,4180,4183,4184,4187,4188,4191,4192,4195,4196,4199],{},"Replace ",[3726,4139,4140],{},"EmpiricalCovariance()","\u002F",[3726,4143,4144],{},"EmpiricalMu()"," with ",[3726,4147,4148],{},"DenoiseCovariance()",[3726,4150,4151],{},"ShrunkMu()",[3726,4153,4154],{},"GerberCovariance()",[3726,4156,4157],{},"EWMu(alpha=0.1)"," in ",[3726,4160,4161],{},"EmpiricalPrior()"," for max-Sharpe portfolios resilient to estimation error. Add realism via ",[3726,4164,4165],{},"min_weights=0.0",[3726,4167,4168],{},"max_weights=0.20",[3726,4170,4171],{},"transaction_costs=0.0005",[3726,4173,4174],{},"groups"," (e.g., GroupA \u003C=0.6, GroupB>=0.2), ",[3726,4177,4178],{},"l2_coef=0.01",". ",[3726,4181,4182],{},"BlackLitterman(views=[\"AAPL == 0.0008\", \"JPM - BAC == 0.0002\"])"," blends market priors with views. ",[3726,4185,4186],{},"FactorModel()"," on ",[3726,4189,4190],{},"load_factors_dataset()"," explains returns via external factors, boosting Sharpe. Pipelines like ",[3726,4193,4194],{},"SelectKExtremes(k=8)"," + ",[3726,4197,4198],{},"MeanRisk()"," prune to top performers.",[17,4201,4203],{"id":4202},"walk-forward-cv-and-tuning-ensure-out-of-sample-performance","Walk-Forward CV and Tuning Ensure Out-of-Sample Performance",[22,4205,4206,4145,4209,4212,4213,4216,4217,3962,4220,4223,4224,4227],{},[3726,4207,4208],{},"cross_val_predict()",[3726,4210,4211],{},"WalkForward(train_size=252*2, test_size=63)"," simulates rolling 2-year trains\u002F3-month tests, computing portfolio Sharpe\u002FCalmar. ",[3726,4214,4215],{},"GridSearchCV()"," tunes ",[3726,4218,4219],{},"l2_coef=[0.0,0.01,0.1]",[3726,4221,4222],{},"mu_estimator__alpha=[0.05,0.1,0.2,0.5]"," on max-Sharpe, selecting best CV Sharpe. Final ",[3726,4225,4226],{},"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":40,"searchDepth":41,"depth":41,"links":4229},[4230,4231,4232,4233],{"id":4045,"depth":41,"text":4046},{"id":4080,"depth":41,"text":4081},{"id":4133,"depth":41,"text":4134},{"id":4202,"depth":41,"text":4203},[47],{"content_references":4236,"triage":4244},[4237,4241],{"type":4238,"title":4239,"url":4240,"context":57},"tool","skfolio","https:\u002F\u002Fgithub.com\u002Fskfolio\u002Fskfolio",{"type":59,"title":4242,"url":4243,"context":57},"Full Codes","https:\u002F\u002Fgithub.com\u002FMarktechpost\u002FAI-Agents-Projects-Tutorials\u002Fblob\u002Fmain\u002FData%20Science\u002Fportfolio_optimization_with_skfolio_Marktechpost.ipynb",{"relevance":3857,"novelty":3857,"quality":64,"actionability":64,"composite":4245,"reasoning":4246},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":4035,"description":40},{"loc":4247},"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",[79,4257,80],"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"]