18.04.2016

Nyt lähtee ristiinmyynti lapasesta

Tässä onkin mennyt jo tovi edellisestä analytiikkaan liittyvästä blogi-postauksesta, joten allekirjoittanut nakitettiin tarinoimaan. Selattuani hetken läppärin aarteita, huomasin, että on tullut tehtyä ristiinmyynnin ennustaja, kutsuttakoon sitä tästä eteenpäin ristiinmyyjättäreksi, jonka tuloksena saadaan riistiinmyynnin odotetut katteet asiakaskohtaisesti kaikille relevanteille ristiinmyytäville tuotteille. Kuullostaa melko hyvältä, en muista nähneeni vastaavaa kapistusta tarjottavan.

Seuraavassa kertaus ristiinmyynnin kysymyksistä kuvan muodossa:

Ristiinmyynti_picture2

 

Oletetaan tästä eteenpäin, että tarkastelemme liiketoimintaa, jossa saatavilla on ”kattavat” asiakaskohtaiset taustatiedot ja asiakkaiden ostohistoria tuotemyyntien lisäksi.

Ristiinmyynnin ennusteiden toteutus ostoskorianalyysin avulla ottaa huomioon vain tuotteiden väliset relaatiot. Oletuksena on siis tässä tapauksessa se, että ”Maija 20 vee stadist” ja ”Pertsa 60 vee pohjanmaalt”  ostavat tuotteen B yhtä todennäköisesti, kun he omistavat jo tuotteen A. Tämä voi olla hyvin kaukana todellisesta tilanteesta ja ostoskorianalyysi tuottaa kieroutuneita tuloksia asiakaskohtaisesti! Hyvää ostoskorianalyysissä on kuitenkin se, että sen tulokset ovat laskettu suoraan datasta, jolloin mallin tuottamaa harhaa ei synny. Yleisellä tasolla ostoskorianalyysin tulokset ovat siis käyttökelpoisia.

Ristiinmyynti_picture4

Ristiinmyynti_picture3

Ristiinmyynnin ennusteiden toteutus luokitteluongelman näkökulmasta ottaa huomioon asiakkaiden taustatiedot, mutta koska asiakaskohtaiset ristiinmyyntiennusteet joudutaan tekemään automaattisesti tuotteittain, saattavat mallien tuottamat tulokset olla hyvin poikkeavia yleisestä tuotteiden välisestä relaatiosta. Mikäli jonkun tuotekombinaation osalta asiakkaan taustatiedot eivät selitä ostopäätöksiä, niin tämä ei haittaa sillä tällöin ostotodennäköisyydet vastaavat ostoskorianalyysin tuottamia tuloksia kyseisen tuotekombinaation osalta.

Ristiinmyynti_picture5

Kuten arvata saattaa, yhdistää raapustami ristiinmyyjätär näiden kahden mallinnustavan tulokset, jolloin ei ehkä kaikkien asiakkaiden osalta saavuteta täysin optimaalisia  ristiinmyyntiennusteita (riippuu asiakkaan taustamuuttujien selitysvoimasta), mutta ei myöskään voida mennä täysin metsään.

Ristiinmyyjätär on toteutettu R-ohjelmalla ja sen osaset ovat pähkinänkuoressa seuraavat:

  1. Suoritetaan ostoskorianalyysi, jonka avulla saamme tuotekohtaiset relaatiot, sekä saamme karsittua tuotekombinaatioita seuraavaa vaihetta varten, joka haukkaa suuren määrän laskenta-aikaa ja muistia
  2. Muodostetaan luokittelumallit jokaiselle kohdan 1. säännöissä (tuloksissa) esiintyville tuotteille ja kahden tuotteen kombinaatioille
  3. Yhdistetään tulokset käyttämällä ”optimaalista” painotussuhdetta, joka perustuu mm. edellisen kohdan mallien tarkkuuskriteereihin
  4. Kootaan ristiinmyyntiennusteet yhteen tauluun ja lasketaan odotetut tuote- ja asiakaskohtaiset katteet tuotetietojen avulla (tuotteen hinta-ostohinta, eli kate)

Kohdan 2. mallien lukumäärä räjähtää helposti valtavan suureksi, joten suoritusjärjestys tulee nähdäkseni olla juuri yllä mainittu. Yllä mainitun ristiinmyynnin mallinnustavan implementointi R-koodiksi ei ole aivan ongelmatonta muistinkäytön suhteen. Tulokset tulee laskea osissa ja suuren asiakaskannan tilanteessa tulee 2. kohdan mallinnus toteuttaa useammassa erässä.

Ristiinmyynti_picture6

 

Seuraavassa todiste siitä, että ristiinmyyjätär on totta, eikä pelkkää sanahelinää powerpointissa ja blogissa

Ristiinmyynti_picture

Kuvassa on kahden eri näkökulman kannalta otettu esimerkit myyjättären tuloksista.

Kuvassa A on asiakkaalle 25874 tarjottavat potentiaaliset tuotteet ProductB-sarakkeessa ja tuotteiden odotetut katteet (kate painotettu ostotodennäköisyydellä) sarakkeessa Expected_marginB. Tässä tapauksessa asiakkaalle A voisi tarjota esimerkiksi tuotteita 486, 537, joilla on suurin odotettu kate.

Toisaalta, jos varastossa sattuu olemaan tuotetta 486 liian kanssa, voidaan tulosten avulla filtteröidä joukko asiakkaita kenelle tarjotaan kyseistä tuotetta, ts. kenen asiakkaiden osalta odotettu kate on suurin tuotteen 486 osalta.

Tulostaulut on muodostettu siten, että asiakkaat eivät ennestään omista sarakkeessa ProductB olevia tuotteita, joten tarjottavat tuotteet saadaan molemmissa tapauksissa haettua helposti esimerkiksi sql-kyselyllä.

Kuvia vertaamalla huomaa, että odotetut katteet saattavat asiakaskohtaisesti vaihdella merkittävästi, esim. tuotteen 486 estimoitu odotettu kate asiakkaalle 25874 on 2.17e, kun vastaavasti asiakkaalle 20222 se on 5.78e.

Aiheeseen liittyviä koulutuksia:

  • Edistynyt analytiikka perusteet 26.04.2016, lisätiedot ja ilmoittautuminen tästä
  • Ennustemallien toteutus 27.04.2016, lisätiedot ja ilmoittautuminen tästä

Saattaisit olla kiinnostunut myös näistä

Tiedonhallinnan alueen suuria nimiä

Lue lisää

Uudistamme laajasti Ari Hovin koulutuksia ja toimintaa

Lue lisää

Vältä hypetystä ja irrallisia valintoja, kun kokoat teknologista työkalupakkia vaihtoehtojen valtamerestä

Lue lisää