Odemykáme potenciál AI & Machine Learning v e-commerce – Prediktivní analytika (část 8)

Aktualizace: 5. pro 2019

V osmém díle z naší série článků o AI a Machine Learningu v e-commerce se zaměříme na využití umělé inteligence při „věštění“ budoucnosti.


Jednou budeš někde


Blíží se Vánoce, svátky „klidu a míru“. Od pradávna je tento čas považován za zvláštní, ne-li magický. Ne však kvůli všudypřítomným frontám, konzumu a obžerství. Štědrý den dodnes pro mnohé představuje speciální období v roce, kdy je možné nahlédnout do budoucnosti. Lití olova, pouštění lodiček, házení střevícem - tradiční prediktivní algoritmy.


Každý král měl svého druida nebo dvorního věštce a je to tak i dnes. Používáme jiné názvy, úloha však zůstala stejná. Bohužel, občas je stejná i úspěšnost výsledného modelu. Co tedy můžou „věštci současnosti“ (čti „dataři“) udělat pro to, aby byl jejich klasifikační algoritmus přesnější než siderické kyvadlo?

Tip: Zajímá vás, co se skrývá pod pokličkou modelů pro strojové učení? V tom případě doporučujeme náš článek - Otevíráme černou skříňku :-)

Vznik a zánik zákazníka


V jednom z našich minulých článků jsme rozebírali, jakými fázemi prochází téměř každý data-driven projekt. Jednou z nich je Analytická fáze, tedy porozumění problému a datům. V případě prediktivní analytiky tato fáze rozhoduje o úspěchu či neúspěchu celého projektu.


Častým případem z praxe je predikce událostí, u nichž reálný význam dat nemusí být na první pohled zřejmý. Mezi tyto události patří i odchod zákazníka, tedy churn prediction.


Periodický nákup


Představme si následující situaci:

  • Petra má pejska. V přibližně měsíčních intervalech pro něj objednává granule v našem obchodě imaginarniPetShop.cz. Dnes je tomu půl roku, kdy Petra od daného prodejce učinila poslední objednávku krmiva.

Jedná se o churn? Jak se naše rozhodnutí změní, pokud se dozvíme novou informaci?

  • K Petře se před půl rokem nastěhoval její přítel Jirka. Od té doby od nás v měsíčních intervalech objednává granule on.

Kdo je v našem případě skutečným zákazníkem? Čí potřebu uspokojujeme? Komu dodáváme přidanou hodnotu? Je to Petra? Je to Jirka? Jirka a Petra jsou prostředníky, na které je potřeba psa přenesena.



Podobné případy lze najít i jinde. Churn modeling najde využití všude, kde dochází k periodickému odběru služeb. Typickým případem je obchodní model založený na předplatném, například Telco.


Předplatné


Rodina Nováků má celkem čtyři členy - otec, matka, dvanáctiletá dcera a osmiletý syn:

  • Otec s matkou využívají tarif od mobilního operátora MO_1.

  • Dcera využívá předplacenou kartu operátora MO_2.

  • Syn telefon nemá.

Situace se však zanedlouho změní. Rodiče již považují syna za dostatečně velkého na to, aby ze školy chodil sám. Spolu s tím mu plánují pořídit telefon, aby mohli být v případě problému v kontaktu.

Rodiče se dále rozhodli, že využijí rodinný tarif operátora MO_2 pro všechny členy rodiny a dosud využívané tarify a předplatné zruší. Smlouvu na nový tarif podepíše matka.


Jak se tento sled událostí projeví v datech?

  • Operátor MO_1 přišel o dva zákazníky (otec, matka).

  • Operátor MO_2 přišel o jednoho zákazníka (dcera), nicméně, uzavřel novou smlouvou, v rámci které tohoto zákazníka získal zpět. K tomu navíc získal tři nové zákazníky (otec, matka, syn).

Stejná otázka jako minule - kdo je v tomto případě zákazníkem? Tři dosavadní zákazníci, samostatné jednotky, se „transformovali“ na jednoho zákazníka - rodinu. Pokud operátor MO_2 označí odchod dcery jako churn, vytvoří v datech šum, který může snížit přesnost prediktivního modelu.



Abstrakce reality skrze data


Kromě definice samotného zákazníka bývá častým kamenem úrazu i kontext dat a definice dějů, které předpovídáme. Pokud data neobsahují potřebné informace, těžko vytvoříme přesný model.


Délka fronty v prodejně


Zadání může vypadat například takto:

  • Cílem je optimalizovat počet pracovníků v prodejně potravin tak, aby čekací doba zákazníků ve frontě nebyla delší než dvě minuty.

  • K dispozici máme transakční data z pokladen.

Tip: za odměnu, že jste dočetli náš článek tak daleko, máte nárok na 5% slevu na workshop „Úvod do AI pro business, markeťáky a produkťáky“. Při rezervaci stačí zadat slevový kód ai_2019

Intuitivně se nabízí analýza počtu transakcí v jednotlivých dnech a časech. Větší počet transakcí, větší nároky na počet zaměstnanců na prodejně. Nebo ne? Uvažujme následující scénář:

  • Právě jsem vystoupil z autobusu a mířím na schůzi. Schůze začíná za půl hodiny. Vím, že na místo schůze dojdu přibližně za dvacet minut.

  • Nestihl jsem snídani, rád bych si něco koupil.

  • Procházím okolo prodejny, oknem vidím dlouhou frontu. Mám sice hlad, ale nebudu riskovat pozdní příchod na schůzi. Na jídlo si potom zajdu do restaurace.

  • Prodejna právě přišla o tržbu.

Projeví se tato poptávka v transakčních datech z pokladen?


Dostali jsme data o transakcích, které proběhly, tedy co zaměstnanci prodejny zvládli. Nevíme však nic o ušlých tržbách, délce fronty a čekací době. Chybí nám údaj, který máme za úkol predikovat a optimalizovat. Dále neznáme kontext dat a možné příčiny tvorby front, tedy co v jednotlivých obdobích motivovalo zákazníky k návštěvě prodejny. Budou nám dostupná data stačit?



Kvalita dat


Navažme nyní na předchozí příklad s prodejnou. Jaká data mohou posloužit pro odhad délky fronty? Způsobů, jak zajistit chybějící informaci, máme hned několik, mezi nimi kamerová data, expertní odhad nebo histogram v Google Maps, který zobrazuje návštěvnost v konkrétních dnech a hodinách. Každý zdroj dat má své klady i zápory:

  • Kamerová data - Kladem je množství informací, které lze získat. Záporem je technická náročnost řešení. Pokud chceme analyzovat data za poslední rok, musíme je mít někde uložená (nároky na místo) a musíme vyvinout nástroj na rozpoznávání fronty na obrazu (další náklady).

  • Expertní odhad - Kromě kamer se můžeme pobavit s pracovníky na prodejně. Výhodou expertního odhadu je schopnost zasadit informace do širokého kontextu (příčiny tvorby fronty). Nevýhodou je subjektivita celého odhadu.

  • Google Maps - Kladem je fakt, že je vše téměř hotovo. Má to však drobnou nástrahu, a sice původ dat, ze kterých Google tuto statistiku počítá. K dispozici jsou data pouze z těch zařízení, která Googlu odeslala informace o své GPS poloze. Navíc není jisté, zda majitel zařízení v prodejně opravdu nakupoval, nebo pouze chvíli postával v její blízkosti.

Speciálně u varianty Google Maps narážíme na další oblast - dostatek dat vzhledem k jednotlivým segmentům.


Statistika návštěvnosti na Google Maps

Kvantita dat


V praxi může nastat situace, kdy je zákaznická báze roztříštěna na několik oborových, demografických, případně jiných skupin. Kromě toho, že příslušnost do určité skupiny bývá sama o sobě prediktorem, nastává i další dilema, které na první pohled vidět není.

  • Jakým způsobem vytvořit tréninkovou množinu?

  • Lze výsledný model použít pro všechny zákazníky?

Při strojovém učení dochází k matematické reprezentaci tréninkových dat. Disproporce v tréninkové množině se projeví „vychýlením“ modelu k trendům, které jsou patrné u nejčastěji zastoupených segmentů. Pokud disproporci „srovnáme“ limitem na základě počtu zákazníků v méně zastoupených segmentech, riskujeme, že data nebudou dostatečně pokrývat prohledávací prostor, tedy množinu hodnot, kterých mohou nabývat použité proměnné.

Tip: Jak se může projevit zanedbání přípravy dat? To se dozvíte v našem článku - Etika.

Jedním ze způsobů, jak tuto situaci řešit, je fallback model:

  • Modelů vytvoříme více. Jeden, nejobecnější, naučíme za použití všech dat (resp. výběru dat ze všech segmentů). Další modely pak specializujeme na jednotlivé segmenty, případně, jejich podmnožiny. Můžeme jít až na úroveň jednotlivých zákazníků.

  • Při predikci postupujeme od nejnižší úrovně po nejvyšší podle množství dat. Pokud máme dostatek dat pro konkrétního zákazníka, použijeme model naučený na datech konkrétního zákazníka. Pokud nemáme dostatek dat pro konkrétního zákazníka, ale máme dostatek dat pro segment, do kterého daný zákazník patří, použijeme model naučený na datech konkrétního zákaznického segmentu. Postup opakujeme, dokud nedojdeme na nejvyšší úroveň - tedy obecný model naučený ze všeho, co máme.


Fallback model

Častou oblastí, kde se fallback model využívá, je personalizace obsahu, o které se můžete dočíst v našem článku Return of Experience.


AI a návratnost investic (ROI)


V dnešním dílu jsme dali přednost rozboru dat před rozborem konkrétními algoritmů. Je to proto, že právě dostupnost a kvalita dat má hlavní podíl na návratnosti investice do vývoje umělé inteligence. Před zahájením projektu tedy doporučujeme následující postup:

  • Stanovíme minimální přesnost modelu, v rámci které se vejdeme do maximální akceptovatelné ztráty při neúspěšné predikci (tedy jakýsi stop-loss). V našem příkladu s prodejnou můžeme do výpočtu zahrnout třeba náklady na dalšího pracovníka na prodejně.

  • Vypočítáme maximální potenciální zisk, který nám model může generovat. V případě prodejny můžeme uvažovat potenciální zisk z tržeb, které unikají z důvodu dlouhé fronty.

  • Zamyslíme se nad zdrojem dat, který obsahuje potřebné informace. Vypočítáme, jak nákladné bude tato data získat.

  • Pokud dostupná data obsahují alespoň část potřebných informací (3.), provedeme základní statistickou analýzu. Při té se zaměříme na odchylku v datech v rámci jednotlivých segmentů (v případě prodejny například pracovní dny a víkendy). Čím větší odchylka v datech, tím spíše se při predikci „sekneme“.

  • Pokud je odchylka (4.) akceptovatelná, vytvoříme několik primitivních prototypů pro různou granularitu dat vůči segmentům a co do použitých proměnných. Následně modely otestujeme na několika testovacích datasetech. Zajímá nás především konzistence výsledků.

  • Pokud přesnost nejlepších primitivních prototypů (5.) nesplňuje nároky na stop-loss (1.), přičemž odhadovaná výše investice do sběru potřebných dat (3.) a do vývoje pokročilejších modelů přesahuje potenciální zisk, nemá cenu pokračovat dále.


Co dál?


Zajímá vás kromě teorie i praxe? Vyzkoušejte naší Python šablonu, která je volně dostupná na GitLabu :)

Tip: Chcete načerpat inspiraci a zkušenosti od profesionála v oboru AI, ML a automatizace Ondry Kopičky? Přijďte na školení „Úvod do AI pro business, markeťáky a produkťáky", který jsme pro vás připravili ve spolupráci s Powered by Insights.


©2019 Ecommerce-academy.cz, created with love by Milan, Marek & Ivča