[PYTHON] Tutoriel de recommandation utilisant l'analyse d'association (concept)

À propos de cet article

J'ai écrit un article parce qu'il n'y avait pas beaucoup de tutoriels dans le monde qui ont été mis en œuvre à l'aide d'exemples de données concernant les recommandations.
Il existe des méthodes telles que l'apprentissage automatique pour créer des recommandations, mais cet article explique comment créer des recommandations à l'aide de méthodes basées sur des statistiques.
Je vais expliquer l'utilisation de python et d'un jeu de données ouvert.

Qu'est-ce qu'une recommandation?

Qu'est-ce qu'une recommandation en premier lieu? ** Il s'agit de recommander des produits, des services, etc. qui pourraient intéresser le client du côté du fournisseur **.
Voici un exemple de ● MAZON, mais si vous regardez la page produit d'un certain «confort», ** «housse de confort» ** et ** «matelas» ** sont recommandés comme produits recommandés.

20200312_レコメンドについて (1).jpg

«Confort», «housse de confort» et «matelas» semblent certainement être liés, et je pense que certaines personnes les achètent ensemble.
C'est exactement l'objectif, et en faisant des recommandations, vous pouvez faire reconnaître aux gens ce que l'on appelle «acheter avec vous» et d'autres produits.

Types de recommandations

Les recommandations peuvent être globalement divisées en ** "basées sur le contenu" ** et ** "basées sur les transactions" **. 20200312_レコメンドについて (2).jpg

Chacun a ses avantages et ses inconvénients, mais comme il peut être utilisé en combinaison, il est possible d'éliminer les inconvénients les uns des autres.

Recommandations utilisant l'analyse d'association

Les recommandations qui utilisent l'analyse d'association, qui est le thème de cet article, correspondent aux ** «recommandations basées sur les transactions» ** des types ci-dessus.
Et c'est aussi une "recommandation basée sur la transaction" de recommander la "housse de couette" et le "matelas" pour le "confort" dans l'exemple précédent de ● MAZON.

スクリーンショット 2020-04-04 19.26.00.png

** Les "recommandations basées sur les transactions" aboutissent essentiellement à des produits "achetés avec vous". **

Qu'est-ce que l'analyse d'association

L'analyse d'association vise à clarifier la pertinence du produit XY, par exemple, "lorsque le produit X est acheté, le produit Y est facile à acheter en même temps (ou ensuite)". C'est exactement ce que vous voulez faire dans la recommandation.

L'analyse d'association est une approche statistique, et les explications et théories détaillées sont très bien organisées sur le site here. Par conséquent, veuillez consulter ce site pour des explications et des théories détaillées, et dans cet article, nous expliquerons les concepts abstraits sans plus de théories.

Méthode d'analyse d'association

Il existe deux méthodes pour évaluer la pertinence de l'analyse d'association. ** 1. Méthode utilisant la confiance 2. Méthode avec ascenseur **

En passant, dans cet article, nous utiliserons la méthode ** en utilisant la valeur de rehaussement de ** 2. 2 est basé sur 1, donc je vais expliquer de 1 à ce qui suit.

1. Concept de confiance

En termes simples, c'est un moyen de trouver un produit Y qui change au même moment (ou au suivant) lorsqu'un produit X est acheté. Voir la figure ci-dessous. 20200312_レコメンドについて (3).jpg

Tout d'abord, à titre d'exemple, supposons que vous ayez extrait les données du client qui a acheté la couette comme décrit ci-dessus.
En regardant cela, sur les 6 personnes, après avoir acheté la couette, 2 personnes ont une housse de couette, 2 personnes ont de l'eau minérale et 1 personne a d'autres produits.
En regardant uniquement ce résultat, ** la housse de couette et l'eau minérale sont étroitement liées à la couette. ** **

Cette idée est l'idée de la ** confiance **.

2. Concept d'ascenseur

Il y a un point à considérer dans le concept de confiance en 1. Voir la figure ci-dessous. 20200312_レコメンドについて (4).jpg

Disons que nous avons collecté un peu plus de données auprès de ces six clients.
Dans l'exemple ci-dessus, l'eau minérale est un produit majeur en premier lieu et est fréquemment achetée quelle que soit la couette. Dans ce cas, il est étonnant que l'eau minérale ne soit très pertinente que pour les édredons.

Cependant, si de l'eau minérale est souvent achetée en conséquence, vous pouvez penser qu'il est préférable de recommander également de l'eau minérale pour ce produit X.
Je ne peux pas dire que ce n'est pas une bonne idée, mais je pense personnellement à ce qui suit.

  1. Il n'est pas nécessaire de recommander des produits majeurs car ils sont reconnus en premier lieu.
  2. Vu du côté client, il semble étrange en tant que produit recommandé

** Avec l'idée d'ascenseur, il est possible d'omettre ces produits majeurs et de trouver des produits connexes Y qui sont caractéristiques du produit X. **
En fait, comme indiqué sur le site here, la valeur de rehaussement est calculée à partir des données de transaction, et sur cette base, le produit hautement pertinent XY Ce sera un flux pendant que vous dirigez la paire.

Tutoriel utilisant des exemples de données

Un article a été ajouté à ici.

Recommended Posts

Tutoriel de recommandation utilisant l'analyse d'association (concept)
Tutoriel de recommandation utilisant l'analyse d'association (implémentation python)
Recommandation d'analyse des données à l'aide de MessagePack
Analyse des données à l'aide de xarray
Explication du concept d'analyse de régression à l'aide de python Partie 2
Explication du concept d'analyse de régression à l'aide de Python Partie 1
Explication du concept d'analyse de régression à l'aide de Python Extra 1
Analyse orthologue à l'aide d'OrthoFinder
Analyse morphologique japonaise avec Janome
Tutoriel Pepper (5): Utilisation d'une tablette