cyber-s / blog

tipsや質問などをここにknowledgeとして残します。
0 stars 0 forks source link

『この商品を買った人はこんな商品も買っています』機能を作ってみよう #314

Open justcallmehide opened 5 years ago

justcallmehide commented 5 years ago

68747470733a2f2f71696974612d696d6167652d73746f72652e73332e616d617a6f6e6177732e636f6d2f302f36353331322f63626362636461322d666563362d666163392d383332302d3730346164663932376332652e706e67

https://qiita.com/haminiku/items/cdbf8eb488e0cf6a62fe

意外とシンプルに実装できる。

Jaccard指数とは?

https://mieruca-ai.com/ai/jaccard_dice_simpson/

fig01 1

Jaccard係数は2つの集合に含まれている要素のうち共通要素が占める割合を表しており,係数は0か ら1の間の値となることがわかる.Jaccard係数が大きいほど2つの集合の類似度は高い(よく似ている)といえる.

例で考えた方がわかりやすい

AとBという商品があるとして、それらの類似性はAとBの共通部分をAとBの和集合で割ったものに等しいというのがジャッカール指数。

「AとBの共通部分」はピーナツバターとジャムの両方を購入した顧客を指し、「AとBの和集合」はピーナツバターとジャムの少なくとも一方を購入した顧客を指す。両方を購入した顧客が30人で、少なくとも一方を購入した顧客が100人だったとすると、ジャッカール指数は0・3となり、類似性としては非常に高い部類に入る。これがピーナツバターと洗剤の組み合わせだったら、ずっと低い数値になるだろう。

by グロースハック完全読本

マッチングアプリなんかもこれ

justcallmehide commented 5 years ago

このレベルの前段階に、バスケット分析がある。 https://www.cosmo-sl.co.jp/solution/consulting/crm_a/page02.php

購買率

チーズのバスケット数:4 ÷ 全バスケット数:10 × 100 = 購買率:40.0%

併買率

ジャッカード指数に似てるけど、分母が和集合ではない点が違う ワインとチーズの入ったバスケット数:3 ÷ ワインのバスケット数:5 × 100 = 併買率:60.0%

リフト値

リフト値は、併買率から、併買された商品の購買率を割ることで求めることができます。 ワインとチーズのリフト値は、 併買率:60.0% ÷ 購買率:40.0% = 1.5