Reinforcement learning for e-marketing, presentation, 2012

30
Marketing cross- canal optimisé Florent Renucci

description

Costumer relationship management and Customer Lifetime Value maximization through reinforcement learning (Q-learning algorithm).

Transcript of Reinforcement learning for e-marketing, presentation, 2012

Page 1: Reinforcement learning for e-marketing, presentation, 2012

Marketing cross-canal optimisé

Florent Renucci

Page 2: Reinforcement learning for e-marketing, presentation, 2012

Plan

I – Le problèmeII – MéthodeIII - RésultatsIV - Application

IV.a – CadreIV.b – Lien avec l'articleIV.c – CodeIV.d - Résultats

V – ElargissementV.1 – Utilisation des semi-MDP dans ce contexteV.2 – Un seul client ? Un seul produit ?

Sources

Page 3: Reinforcement learning for e-marketing, presentation, 2012

Introduction Etude du "Costumer Relationship Management" :

?Action marketing perception du client

But : maximiser la "Customer Lifetime Value » : maximisant les bénéfices long-terme en manipulant les actions marketing.

On cherche les actions (marketing), qui maximisent une fonction (bénéfices), dans un contexte incertain (comportement du prospect).

Page 4: Reinforcement learning for e-marketing, presentation, 2012

Introduction Difficulté : lien entre une action et une

réponse difficilement mesurable : "Cross Channel Challenge »

Méthodes des séries temporelles inefficaces.

Utilisation de semi-MDP.

Cadre : optimisation de campagnes mail.

Page 5: Reinforcement learning for e-marketing, presentation, 2012

I – Le problème La plupart des méthodes traitent chaque canal

indépendamment, et sur le court terme.

Or ils sont liés et ont un impact long-terme.

L’intervalle de temps entre 2 états est variable.

On mesurera des quantités relatives au canal de mail et au canal de ventes, à l’aide de cookies.

Les semi-MDP permettent de contourner ces difficultés, contrairement aux autres méthodes.

Page 6: Reinforcement learning for e-marketing, presentation, 2012

II - Méthode On souhaite maximiser le bénéfice cumulé actualisé

Avec , r le taux d’actualisation. ti les instants de ventes (pour un montant ri) ou

d’envois de mails.

t0= 0, actions marketing ai aux instants ti, recevant des récompenses aléatoires ri et aboutissant à un nouvel état si+1.

On étudie donc la série {si,ai,ri,ti}, en vue de maximiser R, avec un γ qui a été fixé.

Page 7: Reinforcement learning for e-marketing, presentation, 2012

II - Méthode On dispose au début de l’étude de données (N

scénarios de longueurs différentes) On utilise un algorithme de Q-Learning.

Difficulté : variables. [2] : algorithme différent : advantage updating apprend l'avantage relatif d'une action par rapport à l'action optimale (et évite de calculer Q, bruité par l’incertitude sur Δti).

Page 8: Reinforcement learning for e-marketing, presentation, 2012

II - MéthodeRessemble à la fonction regret des algorithmes de bandit on veut qu’elle converge vers 0.  Input : les N scénarios et les temps tij

Etape 1 : calcul des Δti=ti+1-ti et des rij/Δtij

Etape 2 : a) initialisation de A(0) (dont je n'ai pas compris la notation) b) et de

Page 9: Reinforcement learning for e-marketing, presentation, 2012

II - MéthodeEtape 3 : a) mise à jour de A(k)

calcul de la différence entre le gain max en j+1 et celui en j :

b) mise à jour de V(k) (évaluation du meilleur gain) :

Etape 4 : normalisation de A(k), pour que A(k) converge vers 0 (c'est la fonction avantage de l'équation (1) ):

Page 10: Reinforcement learning for e-marketing, presentation, 2012

III - Résultats Données utilisées :

les clients, en fixant un seuil d'activité, pour ne conserver que les plus actifs, et ensuite randomisés,

les transactions : qui a acheté, quel article, et quand,les campagnes de mailing.

Comparaison de la politique optimale trouvée, en calculant l'avantage que l'on aurait récolté en suivant cette politique plutôt que celle qui a été suivie le long du scénario historique, en supposant que la suite des états suivants n'est pas significativement modifiée discutable !

Page 11: Reinforcement learning for e-marketing, presentation, 2012

III - Résultats Hypothèse discutable : l'action conditionne (de

manière déterministe ou probabiliste) l'événement suivant. Donc une action différente peut faire naître un état suivant différent.

Cependant [3] : si l'on trouve une politique π* dont l'avantage est positif, on peut construire une politique π’ à partir de π*, qui a une récompense supérieure à celle de πutilisée.

Donc pour évaluer l’avantage de π’ sur πutilisée, il faut les tester sur des données en cours d’écriture, séparément.

Page 12: Reinforcement learning for e-marketing, presentation, 2012

III - Résultats Hypothèse discutable : l'action conditionne (de

manière déterministe ou probabiliste) l'événement suivant. Donc une action différente peut faire naître un état suivant différent.

Exemple: créer des clusters de clients, diviser un cluster en 2 parts égales de manière aléatoire, Appliquer πutilisée à l'un et π’ à l'autre.

question qui reste ouverte, d'après l'article, mais les résultats obtenus dans un cas défavorable étant positifs, on peut s'attendre à des résultats intéressants.

Page 13: Reinforcement learning for e-marketing, presentation, 2012

IV - ApplicationFocalisation sur les semi-MDP. Question concrète (et absence de données

marketing) générer des données.Difficulté à générer le comportement d'un

client répondant à une publicité reformulation à un problème de planification. IV.a : présentation du problème,IV.b : lien avec l'application de l'article,IV.c : explication du code,IV.d : résultats.

Page 14: Reinforcement learning for e-marketing, presentation, 2012

IV.a - CadreNous sommes une entreprise qui achète des

matières premières, fabrique un produit, le stocke, puis le vend.

On paye donc :les matières premières et la fabrication (c=5 par

produit),le stockage (h=1 par produit par jour),les frais de livraison (K=8 par livraison),

Et on gagne :le prix de vente (pr=10) fois le volume de vente.

Page 15: Reinforcement learning for e-marketing, presentation, 2012

IV.a - CadreNous sommes une entreprise qui achète des matières

premières, fabrique un produit, le stocke, puis le vend.

Les variables aléatoires sont : le volume acheté par le client (Dt),la date d'achat (ti).

Les décisions portent sur :le nombre de machines achetées (At) pour satisfaire la

demande client, et sans dépasser le stock maximum de M=15.

Donc on cherche à maximiser la fonction bénéfices, les actions seront les machines achetées, les états (Xi) seront le nombre de machine en stock aux temps ti aléatoires.

Page 16: Reinforcement learning for e-marketing, presentation, 2012

IV.b – Lien avec l’articleUtilisation de semi-MDP.

Phase 1 : génération de scénarios, Phase 2 : algorithme de Q-Learning.

Vente à un seul client. Optimisation de la récompense en agissant

sur des leviers internes à l'entreprise (les achats, donc le stock), et non externes (la perception du client). C'est une simplification.

Page 17: Reinforcement learning for e-marketing, presentation, 2012

IV.c – CodeOn définit les paramètres du problèmeOn génère des trajectoires, de longueur aléatoireOn applique l’algorithme de Q-learningOn estime le profit moyen cumulé sur des politiques

aléatoires, par méthode de Monte-CarloOn estime le profit moyen cumulé sur la politique

optimale, par méthode de Monte-CarloOn fait la même chose sur une suite d’états déjà fixés

(politique aléatoire) On fait la même chose sur une suite d’états déjà fixés

(politique aléatoire)On calcule la différence de profit entre les 2

simulations précédentes

Page 18: Reinforcement learning for e-marketing, presentation, 2012

IV.d – RésultatsR pour la politique optimale dans le cas

d'évolution classique (profit total = 1.2) : figure 1

Page 19: Reinforcement learning for e-marketing, presentation, 2012

IV.d – RésultatsR pour la politique quelconque dans le cas

d'évolution classique (profit entre -0.7 et 0.7) : figure 2

Page 20: Reinforcement learning for e-marketing, presentation, 2012

IV.d – Résultatsla politique optimale dans le cas d'évolution

fixée (profit = 1600) : figure 3

Page 21: Reinforcement learning for e-marketing, presentation, 2012

IV.d – Résultatsla politique quelconque dans le cas

d'évolution fixée (profit = 1500) : figure 4

Page 22: Reinforcement learning for e-marketing, presentation, 2012

IV.d – Résultatsgain supplémentaire obtenu grâce à la

politique optimale par rapport à une politique quelconque (figure 3 – figure 4)

Page 23: Reinforcement learning for e-marketing, presentation, 2012

IV.d – Résultatsgain supplémentaire obtenu grâce à la

politique optimale par rapport à une politique quelconque (figure 3 – figure 4)

Page 24: Reinforcement learning for e-marketing, presentation, 2012

IV.d – Résultatsgain supplémentaire obtenu grâce à la

politique optimale par rapport à une politique quelconque (figure 3 – figure 4)

Page 25: Reinforcement learning for e-marketing, presentation, 2012

IV.d – Résultatsgain supplémentaire obtenu grâce à la

politique optimale par rapport à une politique quelconque (figure 3 – figure 4)

Page 26: Reinforcement learning for e-marketing, presentation, 2012

IV.d – Résultats Les graphiques 5 : "combien l'on gagne en plus en

utilisant la politique optimale trouvée, sur une série d'états déjà fixée".

Plusieurs tracés donnent donc des résultats assez différents. Ce n'est pas du tout ce à quoi l'on s'attendait.

Les 2 derniers tests ne sont pas pertinents du point de vue du problème posé : une décision conduit à une série d'états possibles, il est par exemple impossible d'avoir 5 machines en stock, d'en acheter 3, et d'en avoir 10 en stock dans l'état suivant.

Page 27: Reinforcement learning for e-marketing, presentation, 2012

IV.d – Résultats Les graphiques 5 : "combien l'on gagne en plus en utilisant la

politique optimale trouvée, sur une série d'états déjà fixée".

On a autant de chances de perdre du stock que d'en gagner, et que lorsque l'on en perd, on y perd peu, alors que lorsqu'on en gagne, on y gagne beaucoup

Le comportement de cette courbe ne rend pas du tout compte de la pertinence d'une politique, mais du résultat de l'entreprise au jeu "combien va-t-il apparaître/disparaître de machines à l'état suivant ?".

On ne peut donc pas valider (ni infirmer) l'hypothèse faite par l'article dans ce cadre.

Page 28: Reinforcement learning for e-marketing, presentation, 2012

V – Elargissement

Les semi-MDP peuvent être utilisés dans beaucoup de problématiques business similaires, autant du point de vue des états internes (quantité en stock, nombre de lignes de production…) que des états externes (comportement du client), comme l'application de l'article.

V.a – Utilisation des semi-MDP dans ce contexte

Page 29: Reinforcement learning for e-marketing, presentation, 2012

V – Elargissement

Un seul client : pertinent pour certaines industries.Beaucoup d'entreprises B2B n'ont qu'un seul "gros" client

(composants microinformatiques ou automobiles par ex).

Plusieurs clients, donc plusieurs variables aléatoires indépendantes composant l'environnement : clustering sur les clients en fonction de leur comportement d'achat

(fréquence et volume), traiter chaque cluster indépendamment.

Plusieurs produits (pour un ou plusieurs clients), les problèmes ne seront plus indépendants : la capacité de stockage d'un produit est déterminée par le stock de l'autre.

V.a – Un seul client ? Un seul produit ?

Page 30: Reinforcement learning for e-marketing, presentation, 2012

Sources[1] Between MDPs and Semi-MDPs : A Framework for

Temporal Abstraction in Reinforcement Learning, Richard S. Sutton, Doina Precup, and Satinder Singh.

[2] LC Baird : Reinforcement Learning in continuous time : advantage updating.

[3] S Kakade abd J.Langford : Approximately optimal approximate reinforcement learning.

[4] technical support