Le "Data mining" est un processus qui permet de découvrir dans de grosses bases de données consolidées des informations jusque là inconnues, mais qui peuvent être utiles et lucratives, et d'utiliser ces informations pour soutenir des décisions commerciales tactiques et stratégiques.
Les techniques statistiques du data mining sont bien connues. Il s'agit notamment de la régression linéaire et logistique, de l'analyse multivariée, de l'analyse des principales composantes, des arbres décisionnels et des réseaux de neurones. Cependant, les approches traditionnelles de l'inférence statistique échouent avec les grosses bases de données, car en présence de milliers ou de millions de cas et de centaines ou de milliers de variables, on trouvera forcément un niveau élevé de redondance parmi les variables, certaines relations seront fausses, et mêmes les relations les plus faibles paraîtront statistiquement importantes dans tout test statistique. L'objectif est de construire un modèle dont le pouvoir de prédiction soit satisfaisant. Il ne suffit pas de savoir quelles relations sont statistiquement importantes.
Prenez le cas d'une campagne qui offre à la vente un produit ou un service et qui cible une base de clientèle donnée. En règle générale, environ 1% de la base de clientèle "réagiront", c'est-à-dire achèteront le produit ou le service s'il leur est proposé. Un publipostage envoyé à 100 000 clients choisis au hasard générera ainsi environ 1 000 ventes. Les techniques de data mining permettent un marketing fondé sur la relation avec la clientèle, en identifiant quels clients risquent le plus de réagir à la campagne. Si le taux de réponse peut être augmenté ("lift value") de 1% à 1,5%, par exemple, alors 1 000 ventes pourront être réalisées avec 66 666 envois seulement, ce qui réduit le coût du publipostage d'un tiers.
Cet exemple nous a été fourni par Gary Saarenvirta, anciennement de The Loyalty Group, maintenant chez IBM Canada.
Chaque cas représente un compte. Les numéros de compte ont été supprimés.
La variable objective est une variable de réponse indiquant si un consommateur a réagi ou non à une campagne de mailing direct pour un produit spécifique. "Vrai" ou "réponse" est représenté par 1, "Faux" or "non-réponse" par 0.
Les données sont extraites d'un jeu de données beaucoup plus large dont le taux de réponse était d'environ 1%. Nous avons utilisé les 1 079 personnes de ce groupe ayant réagi, ainsi que 1 079 personnes n'ayant pas réagi, choisies au hasard, soit un total de 2 158 cas.
Le fichier contient 200 variables explicatives : v137, v141 et v200 sont des indicateurs de sexe "homme," "femme" ou "inconnu," respectivement, et v1-v24, v138-v140 et v142-v144 sont la récence, la fréquence et des données de type monétaire pour les comptes spécifiques ; v25-v136 sont des variables de recensement et v145-v199 sont des variables démographiques "taxfiler" provenant des contribuables. La majorité des variables ont été normalisées.
Une table contenant certaines descriptions de variables est jointe. Certaines variables spécifiques au produit ont été masquées. "p##" signifie produit, "rcy" signifie la récence (nombre de mois depuis la transaction la plus récente), "trans" signifie le nombre de transactions, "spend" signifie le montant dépensé en dollars. Par exemple : p01rcy signifie récence du produit 1. Notez qu'une récence zéro signifie que le compte était actif pour le produit en question au cours du mois le plus récent. "Jamais actif" serait indiqué par la plus grande valeur de récence possible, sur la base du premier mois pour lequel l'entreprise a recueilli des données.
Les variables de recensement et de contribuables sont des statistiques sommaires pour la zone de dénombrement dans laquelle l'adresse du titulaire du compte est située. Elles indiquent généralement les nombres totaux ou moyens d'individus ou de familles ou de dollars comprises dans les catégories indiquées. Une table contenant certaines descriptions de variables de contribuables est jointe. Vous devriez pouvoir deviner la plupart des variables de recensement d'après leurs noms, mais des tables contenant des descriptions plus longues des variables sont jointes : le Groupe "a" et le Groupe "b" sont présentés séparément. N'hésitez pas à nous contacter si vous avez des doutes.
Vous pouvez télécharger les données sous forme de classeur Excel 97/98 gary.xls (5.9 Mo), sous forme de classeur Excel 97/98 comprimé en archive ZIP gary_xls.zip (2.4 Mo), or sous la forme de fichiers texte dans une archive ZIP gary.zip (1.3 Mo).
gary.zip contient deux fichiers texte. Les données sont présentées dans un fichier ASCII à largeur fixe Sasvar.txt et la description des fichiers de données est dans un fichier imtrans.txt. Si vous décidez de travailler avec les fichiers texte, vous DEVEZ utiliser les positions de colonnes du fichier imtrans.txt pour importer les données dans SAS ou Splus car certaines colonnes sont contiguës. Faites attention aux fins de lignes ; si par exemple, vous dézippez les fichiers texte sous UNIX vous devrez tenir compte de la présence d'un caractère de changement de ligne à la fin de chaque ligne lorsque vous calculerez la longueur de l'enregistrement.
Nous vous demandons d'utiliser Splus ou SAS pour cette analyse, cependant les méthodes suggérées ici ne sont pas toutes disponibles sous Splus. Si vous disposez d'une licence SAS, le module Enterprise Miner automatisera la plupart des analyses. Vous pouvez probablement obtenir un exemplaire d'essai à peu de frais de SAS. Nous recommandons également le produit Intelligent Miner d'IBM, mais il est moins probable que vous y ayez accès.
Pour toutes les analyses ci-dessous, vous devez créer un ensemble d'apprentissage et un ensemble de validation. Comme les données ont été stratifiées à 50/50, vous devez créer un ensemble de validation non stratifié avec la proportion originale de 1% "Vrai" pour la variable objective. Vous obtiendriez bien entendu de meilleurs ensembles de validation si vous disposiez de l'échantillon complet d'environ 100 000 comptes, dont 99% de personnes n'ayant pas réagi, mais ce fichier est trop gros pour être distribué de façon pratique. Les ensembles de validation construits à partir de l'échantillon stratifié 50/50 devraient suffire pour les besoins de cet exercice.
Tous les résultats doivent être reportés à l'aide d'un tableau de gains tabulaire ou graphique. Un tableau de gains est une fonction représentant le % de personnes incluses dans la campagne ayant réagi (en ordonnée) par rapport au % de clients contactés (en abscisse). Si la campagne vise des individus choisis au hasard, le tracé sera une ligne droite de pente unitaire passant par l'origine. Si la campagne cible de préférence les personnes qui risquent le plus de réagir, la courbe de gains sera située au-dessus de la diagonale sauf, bien entendu, à 0% et 100% où elle chevauchera forcément la droite.
La performance d'un modèle de prévision est mesurée en examinant le % de personnes ayant réagi lorsque 10%, 20% ou 30% des clients ont été contactés. Un bon modèle obtiendra des résultats de 1,5 à 3,5 fois supérieurs aux campagnes aléatoires sur cette tranche si bien que, par exemple, un contact de 10% des clients atteindra 15% à 35% des personnes qui réagiront. À moins que cela, les données n'ont pas un très bon pouvoir de prévision, à plus que cela, il est possible que vous ayez un problème d'"overfitting" ou que les données ne soient fortement faussées.
Voici quelques suggestions de traitement pour ces données :
Tous les résultats de modèle doivent être analysés quant à la performance de la table de gains à l'aide des critères suivants :
Vous pouvez vous procurer un exemplaire des travaux de Gary Saarenvirta en ligne à l'adresse http://www.db2mag.com/. Il est également l'auteur du livre The Intelligent Miner for Data Applications Guide, que vous pouvez trouver à l'adresse http://www.redbooks.ibm.com/.
En lançant une recherche Internet sur le terme "data mining", vous trouverez plusieurs produits commerciaux similaires à Intelligent Miner et Enterprise Miner.