#artificialintelligenceinaction

Market basket Analysis: un caso di uso su AI e campagne di marketing

Artificial Intelligence solutions

Market basket Analysis

La Market Basket Analysis è una tecnica strategica di data mining utilizzata dai retailer per migliorare le vendite attraverso una comprensione dei modelli di acquisto dei clienti. Questo metodo prevede l’esame di serie di dati, come i record di acquisto storici, al fine di identificare gli articoli che tendono ad essere acquistati insieme.

Riconoscendo questi schemi di co-occorrenza, i rivenditori possono prendere decisioni informate per: 

  • ottimizzare la gestione dell’inventario;
  • elaborare strategie di marketing efficaci;
  • utilizzare tattiche di cross-selling;
  • perfezionare il layout del negozio per migliorare il coinvolgimento dei clienti.

I passi da seguire per fare una Market Basket Analysis possono essere riassunti nei seguenti punti:

  • Raccogliere i dati sulle transazioni dei clienti, come gli articoli acquistati in ogni transazione, l’ora e la data della transazione e qualsiasi altra informazione rilevante.
  • Pulire e pre-elaborare i dati, eliminando le informazioni irrilevanti, gestendo i valori mancanti e convertendo i dati in un formato adatto per l’analisi.
  • Utilizzare algoritmi di estrazione di regole di associazione, come Apriori o FP-Growth, per identificare gli insiemi di elementi frequenti, insiemi di articoli che compaiono spesso insieme in una transazione.
  • Calcolare il supporto e la confidenza di ciascun insieme di elementi frequenti, che esprime la probabilità che un articolo venga acquistato in base all’acquisto di un altro articolo.
  • Generare regole di associazione basate sugli insiemi di elementi frequenti e sui corrispondenti valori di supporto e confidenza. Le regole di associazione esprimono la probabilità che un elemento venga acquistato in base all’acquisto di un altro elemento.
  • Interpretare i risultati dell’analisi, identificando quali articoli sono acquistati frequentemente insieme, la forza dell’associazione tra gli articoli e qualsiasi altro aspetto rilevante del comportamento e delle preferenze dei clienti.
  • Utilizzare le informazioni ricavate dall’analisi per prendere decisioni aziendali, come ad esempio le raccomandazioni sui prodotti, l’ottimizzazione del layout del punto vendita e campagne di marketing mirate.

Esistono tre principali tipologie di analisi:

  1. identificazione di insiemi di articoli frequentemente acquistati insieme e generazione di regole di associazione che esprimono la probabilità che un articolo venga acquistato con un altro articolo. Essa viene utilizzata per identificare le relazioni o le associazioni tra gli articoli in un insieme di dati transazionali.
  2. Identificazione delle sequenze di articoli frequenti tenendo in considerazione l’ordine di acquisto degli articoli in una transazione, sulla base di regole di associazione sequenziali che descrivono la probabilità che una sequenza di articoli sia seguita da un’altra.
  3. Analisi del raggruppamento di articoli o transazioni simili in cluster o segmenti in base ai loro attributi. Quest’ultima aiuta a identificare segmenti di clienti con comportamenti d’acquisto simili, che possono generare raccomandazioni di prodotti e strategie di marketing.

Utilizzo della Market Basket Analysis

Come accennato in precedenza, la Market Basket Analysis può fornire vari suggerimenti mirati in diversi ambiti. In particolare: 

  • Vendita al dettaglio: identificare le combinazioni di prodotti acquistati di frequente e creare promozioni o strategie di strategie di cross-selling.
  • E-commerce: suggerire ai clienti prodotti complementari e migliorare l’esperienza del cliente.
  • Ristorazione: individuare le voci di menu che vengono spesso ordinate insieme e creare pacchetti di pietanze o raccomandazioni di menu.
  • Assistenza sanitaria: comprendere quali farmaci sono spesso prescritti insieme e identificare modelli di comportamento del paziente o i risultati del trattamento.
  • Banche/Finanza: individuare quali prodotti o servizi sono spesso utilizzati insieme dai clienti e creare campagne di marketing mirate o offerte di pacchetti di prodotti.
  • Telecomunicazioni: capire quali prodotti o servizi vengono spesso acquistati insieme e creare pacchetti di servizi che aumentino le entrate e migliorino la customer experience.

Analisi con Regole associative 

Nel data mining, le regole associative (o regole di associazione) sono uno dei metodi per estrarre relazioni nascoste tra i dati e utilizzate per la Market Basket Analysis. Esse sono state introdotte inizialmente per la scoperta di regolarità all’interno delle transazioni registrate nelle vendite dei supermercati. Per esempio, la regola: 

{cipolle, patate} ⇒ {hamburger}  

individuata nell’analisi degli scontrini di un supermercato indica che il se il cliente compra insieme cipolle e patate è probabile che acquisti anche della carne per hamburger. Tale informazione può essere utilizzata come base per le decisioni riguardanti le attività di marketing, come ad esempio le offerte promozionali o il posizionamento dei prodotti negli scaffali. Le regole di associazione sono anche usate in molte altre aree, quali il Web mining, la scoperta di anomalie e la bioinformatica.

Più in generale, le regole associative descrivono correlazioni di eventi e possono essere viste come regole probabilistiche. Due eventi sono correlati quando sono frequentemente osservati insieme.

Il problema della scoperta di regole associative può essere espresso come segue:

  • Sia I = {i1, i2, …, im} un insieme di letterali chiamati oggetti (o items).
  • Una transazione T è un insieme di oggetti tali che T⊆I. Un database di transazioni D è un insieme di transazioni ed è solitamente memorizzato in una tabella della forma: 

[ID Transazione, ID Item].

  • Un itemset X è un set di oggetti tali che X⊆ I. Si dice che una transazione T contiene un itemset X se X ⊆ T.
  • Il supporto di un itemset X (supporto(X)) è la frazione di transazioni in D che contiene X:

supporto(X) = (transazioni che contengono X) / (numero totale di transazioni).

  • Una regola associativa è una implicazione della forma X ⇒ Y, dove X e Y sono itemsets e X ∩Y ≠∅.
  • X ⇒ Y ha supporto s nel database D se e solo se una frazione pari ad s delle transazioni in D contengono X ∪ Y: s = supporto(X ⇒ Y) = supporto(X ∪ Y).
  • X ⇒ Y ha confidenza c nel database D, se e solo se, tra tutte le transazioni che contengono X, ce n’è una frazione c che contiene anche Y: 

c=confidenza(X ⇒ Y)=supporto(X ∪ Y)/supporto(X)

  • Confidenza e supporto possono essere indicati anche in forma percentuale

Dato un database D, il compito di scoprire le regole associative con almeno un minimo supporto (chiamato minsup) e una minima confidenza (chiamata minconf), dove minsup e minconf sono valori specificati dall’utente può essere decomposto in due sotto-problemi:

  • Trovare tutti gli itemset che hanno supporto sopra il minimo. Tali itemset sono chiamati itemset grandi. Questo sotto-problema è risolto dall’algoritmo APRIORI;
  • Generare tutte le regole associative con almeno la confidenza minima dall’insieme degli itemset grandi.

Caso d’uso

Revelis sta lavorando ad un progetto per una nota e storica azienda calabrese che opera nel settore agroalimentare. I suoi prodotti, di alta qualità, sono facilmente individuabili grazie alle campagne marketing mirate ed al packaging curato e ricercato, ottenuti per mezzo di consistenti investimenti, che hanno creato un brand apprezzato in campo nazionale ed estero.

Nel caso di studio in oggetto, è stato implementato un sistema che permette di effettuare delle analisi per individuare i prodotti da proporre ai clienti nelle azioni di marketing. Tali tecniche si rifanno alla Market Basket Analysis ed in particolare alla sua implementazione tramite Regole Associative. 

Utilizzando i risultati di queste analisi, e combinandoli con una valutazione dei profili dei clienti sulla base di algoritmi non supervisionati, i responsabili del marketing possono visualizzare ad esempio quali sono i prodotti mai acquistati da un cliente ma che sono stati acquistati frequentemente da altri clienti che generalmente acquistano prodotti simili. 

Ciò permette di fare delle proposte, ad esempio ai clienti leali o già fidelizzati, di prodotti differenti da quelli acquistati generalmente ma che potrebbero essere di loro gradimento in base allo storico degli acquisti di clienti simili. 

L’implementazione di tali procedure è stata fatta utilizzando tecnologie semplici e robuste che permettono la loro esecuzione efficientemente ogni qual volta sia necessario. In particolare, è stata utilizzata la piattaforma Rialto™ per l’analisi dei dati ed il sistema open source Grafana per la loro visualizzazione in forma di dashboard. 

Per creare dei suggerimenti per gli acquisti basati su regole associative, sono stati implementati una serie di Task, Modelli e Workflow appositi.

rialto
  • Il primo passo è stato quello di acquisire l’input dal Database contenente le transazioni effettuate sul sito di e-commerce dell’azienda e trasformarlo in un formato adatto all’analisi. 
  • Successivamente sono stati filtrati gli ordini effettuati da utenti ospiti non registrati sul sito.  
  • In seguito, gli ordini sono stati raggruppati ottenendo una lista degli identificativi dei prodotti acquistati dai singoli utenti. Si noti che ogni riga riporta esclusivamente gli identificativi dei prodotti acquistati dall’utente che rimane anonimo.
  • A questo punto è stato possibile creare le regole associative utilizzando vari algoritmi disponibili in Rialto™:
    • FP Growth: è un algoritmo per la scoperta dei pattern frequenti in tre passi:
      • Calcolo delle frequenze degli item ed individuazione dei più frequenti
      • Utilizzo di FP-Tree per la codifica delle transazioni
      • Estrazione degli itemset frequenti dal FP-Tree
    • MNR: ricava l’insieme minimo di regole associative non ridondante (Minimal Non Redundant). Un itemset chiuso è un itemset che non è strettamente incluso in nessun altro itemset con lo stesso supporto. Un generatore Y di un itemset chiuso X è un itemset tale che (1) ha lo stesso supporto di X e (2) non ha un sottoinsieme con lo stesso supporto. L’insieme MNR è definite come l’insieme delle regole associative nella forma: 

P1 ==> P2 / P1 

dove P1 è un generatore di P2, P2 è un itemset chiuso e la regola ha minsup e minconf superiori alle soglie specificate in input.

  • TOP K Rules: produce le K regole associative con la più alta confidenza superiore o uguale al parametro minconf specificato in input.

Le regole così prodotte hanno il formato definito in precedenza:

X ⇒ Y, dove X e Y sono itemsets e X ∩Y ≠∅. 

Nella nell’itemset X sono presenti i prodotti che devono essere comprati insieme per far scattare il suggerimento per l’acquisto del prodotto/i nell’itemset Y. 

Le regole così create, vengono applicate ai dati provenienti dal Database delle transazioni. Ogni qual volta si trovi un utente che ha acquistato i prodotti antecedenti (itemset X) ma NON quelli conseguenti (itemset Y) questi ultimi vengono suggeriti dal sistema.

L’implementazione delle analisi fin qui descritte è basata sulla piattaforma Rialto™ che permette a Revelis di fornire soluzioni che: 

  • supportano la realizzazione e l’esecuzione di applicazioni basate sull’Intelligenza Artificiale;
  • abilitano l’analisi ed il monitoraggio di Big Data, la previsione dei fenomeni e la spiegazione dei modelli decisionali.

Nella soluzione progettata per il caso d’uso, la visualizzazione dei dati è ottenuta integrando nel sistema una dashboard basata su Grafana, una piattaforma interattiva open source per la visualizzazione dei dati. Essa permette agli utenti di visualizzare i dati attraverso diagrammi e grafici unificati in una singola dashboard (o in più dashboard) per agevolarne la comprensione e l’interpretazione.

Insieme al cliente sono stati individuati due casi d’uso principali:

  • integrazione della market basket analysis con tecniche di user profiling, allo scopo di generare offerte personalizzate per una determinata categoria;
  • creazione di offerte mirate per i clienti in base all’ultimo ordine effettuato.

Il sistema implementa queste funzionalità permettendo di generare automaticamente delle e-mail di marketing personalizzate per i clienti utilizzando i risultati della Market Basket Analysis. 

Conclusioni

Utilizzando il sistema implementato da Revelis, il cliente ha evoluto le procedure di pianificazione delle proprie campagne di marketing già utilizzate. Lo scopo finale è quello di far crescere la varietà di prodotti venduti allargando il numero di prodotti acquistati dai singoli clienti, diversificando l’offerta ed incrementando la fidelizzazione degli acquirenti.

Autore: Luigi Granata

Guarda la video intervista a Luigi Granata pubblicata sulla pagina Linkedin Revelis in merito al caso d’uso citato in questo articolo.