Tài liệu hạn chế xem trước, để xem đầy đủ mời bạn chọn Tải xuống
1
/ 75 trang
THÔNG TIN TÀI LIỆU
Thông tin cơ bản
Định dạng
Số trang
75
Dung lượng
2,43 MB
Nội dung
UNIVERSITE NATIONALE DU VIETNAM, HANOI INSTITUT DE LA FRANCOPHONIE POUR L’INNOVATION (RENOMME DE L’INSTITUT FRANCOPHONE INTERNATIONAL, IFI) DZOULOU VINCI SAVITRI MISE EN PLACE D’UNE APPLICATION DE MARKETING INTELLIGENT PHÁT TRIỂN MỘT ỨNG DỤNG TIẾP THỊ THÔNG MINH MEMOIRE DE FIN D’ETUDES DU MASTER INFORMATIQUE Je soussigné Benoit BARRIER CEO de la Société Atemis Cloud size au 4, Nguyen Thi Minh Khai Ho Chi Minh City - Vietnam, je donne mon avis favorable la soutenance de Mr Dzoulou Vinci Savitri HANOI – 2018 UNIVERSITE NATIONALE DU VIETNAM, HANOI INSTITUT DE LA FRANCOPHONIE POUR L’INNOVATION (RENOMME DE L’INSTITUT FRANCOPHONE INTERNATIONAL, IFI) DZOULOU VINCI SAVITRI MISE EN PLACE D’UNE APPLICATION DE MARKETING INTELLIGENT PHÁT TRIỂN MỘT ỨNG DỤNG TIẾP THỊ THÔNG MINH Spécialité: Système intelligent et multimédia Code: Programme pilote MEMOIRE DE FIN D’ETUDES DU MASTER INFORMATIQUE Sous la direction de: - Hồ Tường Vinh, Docteur, IFI – Université Nationale du Vietnam - Benoit BARRIER, CEO, Atemis Cloud - HANOI – 2018 ATTESTATION SUR L’HONNEUR J’atteste sur l’honneur que ce mémoire a été réalisé par moi-même et que les données et les résultats qui y sont présentés sont exacts et n’ont jamais été publiés ailleurs La source des informations citées dans ce mémoire a été bien précisée LỜI CAM ĐOAN Tôi cam đoan cơng trình nghiên cứu riêng tơi Các số liệu, kết nêu Luận văn trung thực chưa công bố cơng trình khác Các thơng tin trích dẫn Luận văn rõ nguồn gốc Signature de l’étudiant DZOULOU VINCI SAVITRI ~1~ Résumé L’aide la gestion des relations clients fait référence aux techniques et aux outils qui facilitent et organisent les relations clients Les techniques propres au datamining et la modélisation des données afin de dégager des modèles et des relations cachés au sein des grandes bases de données Dans ce document, nous proposons les méthodes du datamining d’amélioration de la gestion des relations clients Parmi les techniques utilisées, nous avons la segmentation (processus de développement de groupes de clients significatifs qui sont similaires en fonction des caractéristiques et des comportements d’achats individuels) L’objectif de cette segmentation est de mieux identifier les clients et d'appliquer les connaissances pour augmenter la rentabilité, améliorer le service client Nous avons aussi l’analyse prédictive (processus de classification des clients), l’objectif de cette classification est de mieux prédire le comportement futur d’un client partir de leurs premiers achats, notamment s'ils seront des clients rentables ou non Nous utilisons le RFM et le K Means pour mettre en place la segmentation et les différents classificateurs pour faire les prédictions, nous évaluons les modèles prédictifs en utilisant plusieurs métriques discutées tout au long du document Enfin nous proposons des systèmes de recommandation personnalisée : filtrage collaboratif, analyse de panier du marché et étude statistique basée sur la corrélation Mots-clés: CRM, Système de Recommandation, Prédiction Client, Apprentissage Automatique, Classification, Clustering, Apriori, K-Means, KNN, Arbres de Décision, Clustering, Datamining, Intelligence Artificielle, Régression Multi-Output Abstract Customer relationship management support refers to techniques and tools that facilitate and organize customer relationships Datamining techniques and data modeling to uncover patterns and hidden relationships within large databases In this paper, we propose the methods of datamining to improve customer relationship management Among the techniques used, we have segmentation (process of development of significant customer groups that are similar based on characteristics and individual purchasing behavior) The goal of this segmentation is to better identify customers and apply knowledge to increase profitability, improve customer service We also have predictive analysis (customer classification process), the objective of this classification is to better predict the future behavior of a customer from their first purchases, especially if they will be profitable customers or not We use RFM and K Means to set up segmentation and different classifiers to make predictions, we evaluate predictive models using several metrics discussed throughout ~2~ the document Finally, we propose personalized recommendation systems: collaborative filtering, market basket analysis and correlation-based statistical study Keywords: CRM, Recommendation System, Customer Prediction, Machine Learning, Classification, Clustering, Apriori, K-Means, KNN, Decision Trees, Clustering, Datamining, Artificial Intelligence, Multi output Regression ~3~ Table de matières Résumé Abstract Glossaire Chapitre - Introduction 10 1.1 CRM 11 1.2 Machine Learning 11 1.3 Datamining 12 1.4 Exigences en matière de données 13 1.5 Motivation de la recherche et objectifs 13 1.6 Travaux connexes 14 1.7 Résumé des contributions 15 Chapitre - Les approches datamining pour le CRM 17 2.1 Architecture 17 Chapitre - Évaluation des algorithmes 28 3.1 Architecture globale du système datamining 28 3.2 Analyse descriptive 28 3.3 Analyse prédictive 37 3.4 Classification Multi label 48 Chapitre - Systèmes de recommandation 51 4.1 Corrélations 51 4.2 Filtrage collaboratif 55 Discussion 59 5.1 Analyse descriptive 60 5.2 Analyse prédictive 60 5.3 Système de recommandation 61 Conclusion 62 6.1 Travaux futurs 63 ANNEXES 65 Annexe : Architecture CRM 66 Annexe : Information sur les données 67 Annexe : Architecture globale du système datamining proposée 68 Annexe : Solutions proposées pour les travaux futurs 69 Références 70 ~4~ Table de figures Figure Machine Learning 12 Figure Diagramme de classe 18 Figure Création de la base de données relationnelle .19 Figure Description des données 21 Figure ROC curve and AUC 25 Figure Résultats d’une analyse du panier du marché 31 Figure Nouveau dataset 33 Figure Résultats RFM 34 Figure Segmentation des produits 36 Figure 10 Les informations issues du RFM après feature engineering 37 Figure 11 Matrice de corrélation 38 Figure 12 Distributions des variables .39 Figure 13 Workflow Machine Learning 40 Figure 14 Résultats des classificateurs 44 Figure 15 Les métriques Precision, Recall et F1 .45 Figure 16 ROC Curve 45 Figure 17 Résultats des hyper paramètres 46 Figure 18 ROC Curve 47 Figure 19 Matrice de corrélation 53 Figure 20 Les corrélations du produits sauce 53 Figure 21 Les corrélations du produits Mozzarella 54 Figure 22 Matrice clairsemée 55 Figure 23 Création du train et du test .56 Figure Comparaison des approches populaires et ALS 57 Figure 25 Résultats des recommandations .58 Figure 25 Résultats des recommandations .58 Figure 26 Architecture CRM 66 Figure 27 Information du dataset Invoiceset 67 Figure 28 Variables contenant des valeurs manquantes 67 Figure 29 Architecture globale du système datamining 68 Figure 30 Solution 69 Figure 31 Solution 69 ~5~ Liste Tableaux Tableau 1: Méthodes existantes pour le traitement des données 21 Tableau : Segmentation RFM 33 Tableau 3: Résultats Random Forest 41 Tableau 4: Résultats KNN 42 Tableau 5: Résultats SVM 43 Tableau 6: Résultats Random Forest avec grid search .47 Tableau 7: Evaluation du classificateur Multi output SVM .49 Tableau 8: Evaluation du classificateur Multi output Regression Trees 50 ~6~ Glossaire Algorithmes: L'algorithme en apprentissage automatique est utilisé pour produire un modèle exécutable et qui peut être utilisé l'avenir pour faire soit la prédiction, la classification, la segmentation, AI: Artificial intelligence, en franỗais intelligence artificielle (IA) est un domaine de l'informatique qui met l'accent sur la création de machines intelligentes qui fonctionnent et réagissent comme les humains Apprentissage supervisé: C'est un problème où toutes les données sont étiquetées et les algorithmes apprennent prédire la sortie des données d'entrée Apprentissage non supervisé: C'est un problème où toutes les données sont non étiquetées et les algorithmes apprennent la structure inhérente partir des données d'entrée Applications: Une application en apprentissage automatique peut être considérée comme étant un modèle dans le sens où elle fournit aux utilisateurs finaux les résultats obtenus par le modèle: prédiction, classification, traduction, avec une utilisation facile et une interaction homme machine comprehensive Accuracy: Accuracy fait référence la proximité d’une valeur mesurée par rapport une valeur connue Analyse du panier de marché: vise maximiser l'intensité et la valeur des transactions des clients en révélant des régularités dans le comportement d'achat des clients Churn: Un terme utilisé par les entreprises de télécommunications pour décrire la perte de clients la concurrence Caractéristiques latentes ou cachées: En statistique, les variables latentes, par opposition aux variables observables), sont des variables qui ne sont pas directement observées mais sont déduites d'autres variables observées (Wikipédia) CRM opérationnel: inclut la communication quotidienne avec les clients Il fournit un support pour les processus métier «front office», tels que les départements de vente, de marketing et de service au sein de l'entreprise Corrélation: En probabilités et en statistiques, la corrélation entre deux ou plusieurs variables aléatoires ou statistiques numériques, c’est l’étude de la liaison qui peut exister entre ces variables ~ 57 ~ α: est le paramètre associé la matrice de confiance Rui est la matrice de confiance pour les utilisateurs u et les items i Cui: Reprộsente les caractộristiques latentes Dộtermine la faỗon dont un utilisateur évalue un item 4.2.2.2 Évaluation du système de recommandation L’ensemble d'entrnement est masq 20%, cela nous permet d'évaluer les performances du système de recommandation Le modèle ALS pour implicit feedback est comparé au modèle trivial basé sur la popularité comme l’illustre la figure ci-dessous Figure Comparaison des approches populaires et ALS Nous pouvons voir que le système de recommandation a battu la popularité Notre système a une précision moyenne de 92.4%, alors que l'indice de référence des items populaires une précision de 85.7% Le modèle basé sur la popularité n’est pas personnalisé, il se concentre sur les produits les plus achetés Si un produit est populaire cela veut dire que le même produit peut être aimé par tous les clients ce qui n’est pas toujours vrais 4.2.2.3 Résultats sur les recommandations Examinons les achats dans l'ensemble d'apprentissage du client 2714 A partir de la figure 28 nous trouvons les produits déjà achetés par le client 2714 dans l'ensemble de formation ~ 58 ~ Figure 25 Résultats des recommandations L’image ci-dessus montre que le client 2714 a l’habitude d’acheter les jus Le système que nous proposons n'a aucune compréhension réelle sur les produits Tout ce qu'il sait, c'est l'historique des achats Il identifie que les clients qui achètent quelques produits peuvent également vouloir acheter d’autres produits différents de ce qu’ils ont déjà eu acheter Figure 25 Résultats des recommandations Le client 2714 part les jus (Juice) qu’il a l’habitude d’acheter peut aussi acheter les produits de la figure 29 C’est en analysant ses comportements d’achats que le système a pu lui suggérer ces produits ~ 59 ~ Discussion ~ 60 ~ 5.1 Analyse descriptive Pour les entreprises, identifier les clients pour prendre des décisions de marketing contribue une augmentation de rentabilité et reste une question très importante La segmentation clients basée sur les données historiques et la classification pourraient être utiles dans ce domaine L'analyse RFM est ce modèle d’apprentissage non supervisé qui résume les données transactionnelles en trois variables La segmentation des clients en utilisant l’approche RFM a permis la construction des modèles de classification des clients Le modèle RFM en soi regroupe les clients en des clusters distincts et chaque cluster compte en son sein des clients identiques (mêmes comportement d’achats, mêmes besoins, etc.) Les résultats de cette étude ont fortement contribué la construction des modèles de classification des clients 5.2 Analyse prédictive Les résultats issus de la segmentation RFM nous ont permis de former les modèles de classification discutés dans le chapitre afin de classifier les clients Les résultats expérimentaux du chapitre montrent que pour la classification binaire Random Forest est significativement meilleur que KNN et SVM avec une précision moyenne de 99.9% comme le montre la figure 18, la figure 20 montre que son l’area ROC curve est plus élevé que celui du SVM et du KNN et ces métriques Accuracy, Recall et F1 sont bien notées par rapport aux métriques des modèles SVM et KNN comme le montre la figure 19 En termes de temps de calcul figure 18, la forêt aléatoire en utilisant les hyper paramètres par défaut prend moins de temps de formation mais prend beaucoup de temps lorsque nous optimisons les hyper paramètres Trouver un nombre optimal d'arbres pour la forêt aléatoire avec des tests de validation croisée et les méthodes d’optimisation des hyper paramètres améliorent la précision au détriment du temps de calcul Par conséquent, la sélection d'un algorithme d'apprentissage dépend des exigences de l'application du problème L'augmentation du nombre de fonctions effectuées par le classifier augmente également la dimension de l'espace caractéristique en provoquant une «erreur de dimensionnalité» et rend l'apprentissage compliqué avec une précision plus faible et un temps de calcul plus élevé L’ensemble de données pour former les modèles sont petits, nous avons étendu l’étude en utilisant la méthode d’optimisation des hyper paramètres Grid Search sur le classificateur RF afin d’optimiser les paramètres et garder la même configuration sur ~ 61 ~ plusieurs ensembles de données En optimisant les paramètres du RF, nous constatons que sa précision a faiblement augmenté de 99.93% il est passé 99.997% et son Area est passé 100% figure 23 Les résultats expérimentaux du chapitre montrent que pour la classification multi labels, Multi Trees est significativement meilleurs que le classificateur multi SVM avec une précision moyenne de 100% comme le montre la figure 18 Le classificateur multi label permet de classifier les clients fidèles, dépensiers, meilleurs et perdants 5.3 Système de recommandation La méthode basée sur la factorisation matricielle la plus grande précision par rapport l’approche basée sur la popularité figure 27 Spécifiquement, l’ALS (alternative least squares régularisée) et ses variations donnent de meilleurs résultats En répétant la conclusion de la section 5, le modèle basé sur la popularité n’est pas personnalisé car il se concentre sur les produits les plus achetés, ensuite ces produits sont recommandés tous les clients Le module déduit si un produit est populaire cela veut dire que ce produit peut être aimé par tous les clients ce qui n’est pas toujours vrais Nous rappelons que la précision de l’algorithme ALS varie en fonction du nombre d'utilisateurs, du nombre d'items et de la densité Nous pouvons améliorer nos résultats en utilisant l’approche Filtrage collaboratif neuronal proposée par Xiangnan He, Lizi Liao et Hanwang Zhang [23], les auteurs tirent parti d'un perceptron multicouche pour apprendre la fonction d'interaction useritem Des expériences approfondies sur deux ensembles de données du monde réel montrent des améliorations significatives de leur modèle ~ 62 ~ Conclusion Dans le monde d'aujourd'hui, le CRM est l'élément essentiel pour les entreprises qui veulent dominer la concurrence actuelle Plus les informations sur les clients sont efficacement utilisées par les entreprises pour répondre leurs besoins, plus elles seront rentables Le CRM opérationnel nécessite un CRM analytique L’objectif de ce travail était de comprendre les enjeux des données issues du CRM en se focalisant sur les techniques du datamining particulièrement sur les modèles d’exploration de données descriptives et prédictives Nous avons réalisé pendant notre travail que le CRM est un puissant outil basé sur une théorie de fidélisation Malgré les difficultés rencontrées, nous sommes parvenus mettre en place les modèles du datamining pour identifier d'une part les besoins et les comportements des clients d’autre part faire des prédictions partir des informations comportementales des clients et enfin nous avons proposé un système de recommandation personnalisé Les approches que nous avons proposées dans ce document servent anticiper les envies des clients et les fidéliser Nous avons donc compris durant notre travail qu’appliquer une variété de technologies analytiques et de datamining sur les données comportementales des client stockées aide les entreprises comprendre les clients, identifier leurs besoins, de les satisfaire, de les fidéliser et surtout d’avoir une vision 360 degrés sur eux Le problème que nous n’avons pas pu gérer dans notre travail c’est l'intégration de nos approches AI dans le systèmes CRM afin de venir au secours aux vieilles méthodes analytiques et statistiques en son sein, cette section d'intégration fera en effet l’objet d’une autre étude car cela aidera les entreprises répondre automatiquement aux besoins des clients, améliorer les rendements sur le capital, la productivité du travail, l'amélioration de la qualité des produits finaux qui peuvent répondre rapidement aux changements environnementaux ~ 63 ~ 6.1 Travaux futurs Les futurs travaux consistent déployer les modèles datamining au sein du CRM de Atemis Cloud afin de permettre aux clients d’invoquer via des interfaces ou des navigateurs web les prédictions, les segmentations, les classifications,… nous proposons deux solutions comme le montre la figure 31 et 32 de l’annexe 6.1.1 Solution L’architecture que nous proposons comprend deux principaux modules et chaque module est composé de plusieurs sous modules que nous décrivons ci-dessous Model Training : Les modèles datamining formés précédemment Train Data: Les données au sein du CRM sont de qualité et bien labellisées, ces données sont utilisées pour entrner les modèles: Classification spam, segmentation des clients, etc Outils d'implémentation: Les modèles Scikit Learn ou TensorFlow sont formés avec les puissants équipements de calculs en cloud ou sur site comme: GPU de AWS, google cloud ML, Azure ML, Seldon, etc Un lot d'échantillons d'apprentissage émanant du CRM est utilisé pour former les modèles Model repository: Une fois le modèle construit et validé, il est publié dans le référentiel modèle dans le CRM TensorFlow Serving : Cette partie assure le déploiement en production des modèles et comprend les étapes suivantes: Loader: Permet de récupérer les versions des modèles (identiques ou différents) se trouvant dans le référentiel de modèle CRM et il renvoie le modèle récupéré dans le module version manager Version manager: Ce module se charge de la gestion de version des modèles Session Bundler: L'étape suivante consiste créer un client gRPC pouvant invoquer la prédiction sur le serveur de modèles 6.1.2 Solution La solution que nous proposons consiste déployer les modèles en production utilisant Flask L’architecture que nous proposons comprend trois (3) parties Train data: Les données de qualité issues du CRM sont utilisées pour construire les modèles ~ 64 ~ Outils d'implémentation: Les modèles sont formés localement avec les puissants équipements de calculs en cloud ou sur site et exporté sous un format unique dans le CRM Stockage: Une fois le modèle entrné et validé, nous le sauvegardons dans un référentiel de modèle Création d'une API l'aide de Flask: Flask est un framework pour déployer des applications web d’intelligence artificielle Avec ce framework, nous pouvons déployer notre propre serveur afin d’avoir un contrôle complet de bout en bout, ce qui va certainement faciliter le partage de code entre l'API en temps réel et la formation par modèle hors ligne Clients: Les clients peuvent accéder via REST pour se servir de l'application d’intelligence artificielle déployée afin de faire les prévisions ou les classifications en temps réel avec leurs propres données Les résultats obtenus contribuent l'amélioration du modèle ~ 65 ~ ANNEXES ~ 66 ~ Annexe : Architecture CRM Figure 26 Architecture CRM ~ 67 ~ Annexe : Information sur les données Figure 27 Information du dataset Invoiceset Figure 28 Variables contenant des valeurs manquantes ~ 68 ~ Annexe : Architecture globale du système datamining proposée Figure 29 Architecture globale du système datamining ~ 69 ~ Annexe : Solutions proposées pour les travaux futurs Figure 30 Solution Figure 31 Solution ~ 70 ~ Références Adi bronshtein, (2017), train/test split and cross validation in python https://towardsdatascience.com/train-test-split-and-cross-validation-in-python80b61beca4b6 Aho t, zenko b, dˇzeroski s, elomaa t (2009), multi-target regression with rule ensembles Anjali nair, rohan khasgiwala and snigdha mishra (2016), improving customer relationship management using data mining international journal of scientific & engineering research, volume Brudnak m (2006), Vector-valued support vector regression in: proceedings of the 2006 international joint conference on neural networks ieee press, vancouver, canada, 1562–1569 Breiman l, friedman jh, stone cj, olshen (1984), classification and regression trees, chapman & hall/crc Chris moffitt, (2017), introduction to market basket analysis in python published in: pbpython, http://pbpython.com/market-basket-analysis.html Cai f, cherkassky v (2009), svm+ regression and multi-task learning Proceedings of the 2009 international joint conference on neural networks, ieee press, atlanta, georgia, 418–424 De’ath g (2002), multivariate regression trees: a new technique for modeling species environment relationships, 83(4):1105–1117 Gaurav gupta and himanshu aggarwal (2012), improving customer relationship management using data mining international journal of machine learning and computing, vol 10 Herbert edelstein (2002), data mining: the key to profitable customer relationship management 11 Jesse steinweg-woods (2017), a gentle introduction to recommender systems with implicit feedback https://jessesw.com/rec-system/ 12 Karalic a, bratko i (1997), first order regression mach learn, 26(2-3):147–176 13 Kocev d, dˇzeroski s, white md, newell gr, griffioen p (2009), using single- and multi target regression trees and ensembles to model a compound index of vegetation condition ecol model, 220(8):1159–1168 ~ 71 ~ 14 Mahboubeh khajvand, kiyana zolfaghar sarah ashoori and somayeh alizadeh (2010), estimating customer lifetime value based on rfm analysis of customer purchase behavior: case study published in sciencedirect 15 Piatetsky-shapiro, gregory (1991), discovery, analysis, and presentation of strong rules, in piatetsky-shapiro, gregory; and frawley, william j.; eds., knowledge discovery in databases, aaai/mit press, cambridge, ma 16 Stojanova d, panov p, gjorgjioski v, kobler a, dˇzeroski s (2010), estimating vegetation height and canopy cover from remotely sensed data with machine learning ecol inform 5(4):256–266 17 Uci, online retail data set http://archive.ics.uci.edu/ml/datasets/online+retail 18 Xu s, an x, qiao x, zhu l, li l (2013), multi-output least-squares support vector regression machines pattern recogn lett 34(9):1078–1084 19 Yifan hu, yehuda koren et chris volinsky (2008), collaborative filtering for implicit feedback datasets Data mining icdm '08 eighth ieee international conference on 20 Zhang w, liu x, ding y, shi d (2012), multi-output ls-svr machine in extended feature space in: proceedings of the 2012 ieee international conference on computational intelligence for measurement systems and applications, ieee press, tianjin, china; 2012, 130–134 21 Zolfaghar kiyana, mahboubeh khajvand, sarah ashoori and somayeh alizadeh (2010), estimating customer lifetime value based on rfm analysis of customer purchase behavior: case study published in sciencedirect 22 Gaurav gupta and himanshu aggarwal (2012), improving customer relationship management using data mining international journal of machine learning and computing, vol 2, no 23 Lantz, b (2013), machine learning with r packt publishing limited ... DZOULOU VINCI SAVITRI MISE EN PLACE D’UNE APPLICATION DE MARKETING INTELLIGENT PHÁT TRIỂN MỘT ỨNG DỤNG TIẾP THỊ THÔNG MINH Spécialité: Système intelligent et multimédia Code: Programme pilote MEMOIRE