Tilbake til AI-arkitekturleaderboard
hobby Color polygraph · arkitekturdetalj Produksjonsklar

LightGBM (produksjon)

Modellen det live-surveyet faktisk bruker: leaderboardets LightGBM + bucket-skårer i full konfigurasjon (800 trær for kjønn, 1 000 for alder og humør; num_leaves=63; lr=0.03). Trening er en to-pasningsprosedyre – først et ærlig evalueringspass på et stratifisert 6 000 / 710 tilfeldig splitt, deretter et utrullingspass som refitter de tre boosterne på alle 6 710 gyldige sesjoner før de emittes. Cloudflare-workeren håndterer bare feature-ekstraksjon og databasepersistering; LightGBM-trærne selv sendes som JSON og nettleseren går gjennom dem med en 30-linjers tree walker.

Resultater

Kjønn AUC
0.886
stratifisert 710-rads tilfeldig hold-out
Alder MAE
6.48
R² +0.28 på hold-out
Humør MAE
8.76
R² +0.24 på hold-out

To-pasningstrening

Pass én er evalueringspasset. De 6 710 gyldige sesjonene splittes med sklearn's train_test_split, stratifisert på kjønn med seed 42, i 6 000 trenre- / 710 valideringsrader. Per-pool bucket-gitter bygges kun fra de 6 000 treningsradene, slik at det ikke er lekkasje på valideringsfolden. Alle tre hoder fittes og skåres på 710-rads hold-out; disse tallene er det som fyller leaderboard-raden.

Pass to er utrullingspasset. Bucket-gitterne bygges om fra alle rader, og de tre hodene refitters på alle 6 710 sesjoner. Bare disse endelige boosterne emitteres til models-js/ som JSON. Den utrullede modellen ser 710 flere rader enn evalueringsmodellen, så dens sanne generalisering bør ikke være dårligere enn det pass én rapporterer – leaderboard-tallet er en nedre grense for det som faktisk er i drift.

En tidligere versjon av dette skriptet brukte et temporalt hold-out (de siste 710 sesjonene i innsendingsrekkefølge) i stedet for et tilfeldig stratifisert splitt. Det kuttet kjønn-AUC opp til 0.900 på hold-out, men sprengte også alder- og humør-MAE opp til 7.3 og 10.4 fordi den nyeste kohorten drifter på disse målene – alder R² på det hold-out-settet ble negativt. Det tilfeldige splittet som brukes her gir en representativ valideringsfordeling og lar alle tre metrikkene evalueres på samme protokoll.

Konfigurasjon

Prosjektlenker

Tilbake til AI-arkitekturleaderboard