Personalizace nákupu: personalizovaná produktová doporučení v e-commerce

Strojové učení jako motor prediktivních doporučení

Prediktivní doporučovací algoritmy přeměňují surová interakční data na personalizované návrhy produktů, článků, videí či služeb. Strojové učení zde funguje jako „výrobce pravděpodobností“ – odhaduje, s jakou pravděpodobností uživatel provede akci (zobrazení → klik → nákup → opakovaný nákup). Kvalita doporučení je výsledkem tří vrstev: datového základu (události, kontext, obsah), modelové vrstvy (embeddingy, ranking) a operační aktivace (serving s nízkou latencí, zpětná vazba, experimenty).

Charakter dat v doporučovacích systémech

  • Explicitní zpětná vazba: hodnocení, recenze, palce nahoru/dolů. Vypovídající, avšak řidší.
  • Implicitní zpětná vazba: kliky, zobrazení, doba setrvání (dwell-time), přidání do košíku, nákupy. Bohatá, nicméně s vyšším šumem.
  • Řidkost a long-tail: většina položek má málo interakcí; vyžaduje kvalitní generalizační reprezentace.
  • Kontext: čas, zařízení, umístění slotu, zdroj návštěvy, lokalita – zásadní pro relevanci.
  • Multimodalita: texty (názvy, popisy), obrázky, audio/video signály, meta-data katalogu.

Paradigmy učení: od deskriptivního k kauzálnímu

  • Supervidované učení: predikce pravděpodobnosti kliknutí/konverze (CTR/CVR) nebo skóre preference.
  • Učení bez dozoru a self-supervised: učení reprezentací (embeddingů) z ko-výskytů a sekvencí.
  • Učení na pořadí (LTR): optimalizace top-K seznamu pomocí pointwise, pairwise či listwise strategií.
  • Kauzální učení: odhad efektu zobrazení (uplift), korekce biasu v logech (IPS, DR).
  • Reinforcement learning: optimalizace dlouhodobých odměn (retence, LTV) při opakovaných interakcích.

Základní algoritmy: od heuristik k maticové faktorizaci

  • Heuristiky a asociační pravidla: „lidé kupující A často kupují i B“, analýza košíků; rychlé, avšak limitované.
  • Kolaborativní filtrování (CF) – user-user / item-item: podobnost na základě interakčních vektorů (kosinus, Jaccard); vhodné pro studený katalog se silnými vzory.
  • Maticová faktorizace: rozklad interakční matice na latentní faktory; trénink pomocí SGD/ALS; u implicitních dat často s váhami a regularizací.
  • BPR (Bayesian Personalized Ranking): párová optimalizace pro implicitní preference (zhlédnuté > nezhlednuté).

Obsahové a hybridní přístupy

  • Obsahové modely: porovnávají vektory položek (TF-IDF, word/graph embeddingy, vizuální embeddingy) s uživatelským profilem.
  • Hybridy: kombinují CF a obsah (např. lineární kombinace skóre, meta-learner, dvojvěžové sítě s vícestrannými vstupy).
  • Výhoda: lepší odolnost vůči cold-start položkám a interpretilnější doporučení.

Sekvenční modely a kontext: když záleží na pořadí

  • RNN/CNN pro sekvence: modelování posledních N interakcí; krátkodobé trendy a „session-based“ signály.
  • Transformery (např. SASRec, BERT-styl): self-attention pro dlouhodobé závislosti a vícenásobné úlohy (maskování, predikce dalšího kroku).
  • Kontextové featury: čas dne, den v týdnu, zařízení, zdroj; zvyšují relevanci v reálném čase.

Grafová doporučení

Uživatelsko-položkové interakce tvoří bipartitní graf s bohatou strukturou. Grafové neuronové sítě (např. GCN/GraphSAGE) agregují signály ze sousedství a propagují je přes hrany; škálují se pomocí vzorkování a mini-batchů. Výsledné embeddingy dobře zachycují komunitní aspekty a long-tail efekty.

Učení na pořadí: pointwise, pairwise, listwise

  • Pointwise: predikce p(kliknutí), optimalizace log-loss; jednoduché, ale neoptimalizuje přímo top-K.
  • Pairwise (BPR, hinge): maximalizuje, aby preferované položky měly vyšší skóre než nepreferované.
  • Listwise (LambdaRank, softmax loss): optimalizace celého seznamu; lepší shoda s metrikami NDCG/MAP.

Bandity a posilované učení pro doporučení

  • Kontextové bandity (LinUCB, Thompson Sampling): balancování průzkumu a využití (exploration/exploitation) pro rozhodování na úrovni slotu.
  • Reinforcement learning pro „slate“ doporučení: optimalizace celé sestavy najednou, zohledňuje interakce položek (diverzita, kanibalizace).
  • Reward shaping: kombinace krátkodobých (kliknutí) a dlouhodobých (retence, LTV) odměn.

Feature a embedding engineering

  • Uživatelské featury: demografie (pokud legální), historie, periodicita, preferované kanály, citlivost na cenu.
  • Featury položek: kategorie, cena, popularita, multimédia (textové, vizuální, akustické embeddingy).
  • Interakční featury: křížové termy (user×item×context), recence/novost, pozice slotu.
  • Embeddingy: učení end-to-end (dvojvěžové sítě) nebo ze self-supervised úloh (kontrastní učení).

Řešení cold-startu

  • Nové položky: obsahové embeddingy, podobnost s existujícími položkami, seed traffic s kontrolovaným průzkumem.
  • Noví uživatelé: onboardingové otázky, implicitní signály z prvních interakcí, průměrné/segmentové priori.
  • Nové trhy: transfer learning a adaptace na lokální preference.

Tréninkové postupy a tvorba datových sad

  • Negativní vzorkování: sampling neinteragovaných položek pro párový/listwise trénink.
  • Okno označování: definujte predikční horizont (např. kliknutí do 24 h) a „čisté“ pozorování bez úniků informací.
  • Regularizace a kalibrace: L2, dropout, focal loss pro řešení nerovnováhy; kalibrace pravděpodobností (Platt, isotonic).

Metodiky hodnocení: offline, online a kauzální

Offline metriky jsou rychlé, online metriky věrné realitě a kauzální metriky korektní vůči biasům logů. Doporučuje se jejich kombinace.

Metrika Co měří Použití Poznámka
Precision@K / Recall@K Relevance v top-K Rychlý screening modelů Citlivé na popularitu
MAP / MRR / NDCG Pořadí a zisk z hodnot Rankingové cíle NDCG zohledňuje pozice
AUC Rozlišovací schopnost Pointwise modely Není přímo pro top-K
Diverzita/Novost/Serendipita Šíře a překvapivost „Zdraví“ katalogu Prevence filter bubliny
Coverage Podíl obsloužených položek Podpora long-tail Trade-off s CTR
Kalibrace Přesnost pravděpodobností Plánování a bidding Nutná pro multi-cíle
  • Online A/B testy: primární cíle (CTR/CVR/ARPU) + guardrails (latence, reklamní pravidla, stížnosti).
  • Interleaving: jemné porovnání dvou rankerů v jednom slotu s menší expozicí.
  • Kauzální hodnocení: inverse propensity scoring (IPS), doubly robust (DR), counterfactual replay s propensisemi.

Etika, spravedlnost a snižování biasu

  • Position/popularity bias: korekce v off-policy hodnocení a tréninku (propensity, náhodná expozice).
  • Spravedlnost vůči tvůrcům/položkám: minimální pokrytí, penalizace nadměrné koncentrace, multi-cílové rankování.
  • Transparentnost a vysvětlitelnost: lokální vysvětlení (SHAP), kontrafaktuální důvody „proč doporučeno“.
  • Soukromí a compliance: minimalizace atributů, pseudonymizace, federované učení a diferenciální soukromí tam, kde je potřeba.

Optimalizace více cílů (multi-objective)

Reálné systémy optimalizují současně engagement, výnos, diverzitu a spokojenost. Používají se vážené součty, omezení (constraints) nebo multi-objective RL. Při sestavování „slate“ se uplatňuje penalizace diverzity (MMR, xQuAD) k omezení redundancy v top-K.

Architektura systému: od featur po serving

  • Event tracking a katalog: schéma událostí, důsledné ID uživatele/položky, deduplikace a late-arrival handling.
  • Feature store: konzistentní featury pro trénink i produkční predikce; historické „as-of“ pohledy.
  • Generování kandidátů → skórování → re-ranking: vícestupňová architektura pro rychlost a kvalitu.
  • ANN vyhledávání: aproximované nejbližší sousedství (vektorové indexy) pro rychlé získání kandidátů.
  • Latence a škálování: SLO (např. p95 < 100 ms), horizontální škálování, cache s rozumnou expirací.
  • Feedback loop: logování zobrazených položek s propensitou pro korektní trénink další iterace.

MLOps pro doporučení

  • Verzionování: data, featury, modely, pipeline; reprodukovatelné tréninky.
  • CI/CD modelů: automatické tréninky, validace, kanárské releasy a rollback.
  • Monitoring: výkon (CTR/CVR), distribučný drift, feature drift, latence, chybovost, anomálie.
  • Governance: dokumentace datových toků, audit experimentů, bezpečnostní a etické revize.

Příklady modelových architektur a použití

Algoritmus Vstupy Výstup Typický use-case
Item-Item CF Ko-sledování, ko-nákupy Podobné položky „Podobné produkty“ u produktu
MF/BPR Implicitní interakce Latentní embeddingy Personalizované top-K
Dvojvěžová síť Uživatelské a položkové featury Skóre kompatibility Generování kandidátů v měřítku
Transformer sekvenční Historie kliků Predikce dalšího „Pokračovat ve sledování/čtení“
Kontextový bandita Uživatel+slot+čas Výběr akce (armu) Experimentální průzkum
Graph GNN Bipartitní graf Grafové embeddingy Komunitní a long-tail odhalení

Typické úskalí a jak se jim vyhnout

  • Optimalizace na proxy (CTR) bez obchodního dopadu: zavést multi-cíle a offline-online sladění (NDCG vs. ARPU).
  • Filter bubble a homogenita: re-ranking s diverzitou, pravidla pokrytí, řízený průzkum.
  • Únik dat mezi tréninkem a validací: striktní časové dělení, zákaz „budoucích“ featur.
  • Přetrénování na populární položky: vážení ztrát, sampling, popularity-aware trénink.
  • Ignorování latence a kapacity: návrh vícestupňové pipeline, vektorové indexy, kvóty na featury.

Implementační plán (12 měsíců)

  1. 0–3 měsíce: definice schématu událostí, základní CF/MF baseline, offline metriky a dashboardy, jednoduchý A/B framework.
  2. 4–6 měsíců: dvojvěžová architektura s feature store, ANN index, re-ranking s diverzitou, propensitní logování.
  3. 7–9 měsíců: sekvenční model (Transformer) pro session, bandita pro průzkum slotu,