Recency, frequency, monetary value (RFM) は、購買パターンに基づいて企業の顧客ベースをセグメント化するマーケティング分析モデルです。具体的には、顧客のRecency(最終購入からの経過時間)、Frequency(購入頻度)、Monetary Value(購入金額)を評価します。Recency、Frequency、Monetary Valueのそれぞれについて、分位数によるランキングが実施されます。顧客はRFMスコアによって、Loyalists、Champions、Lost Customersなどのカテゴリーにクラスタリングされます。
RFMソリューションは、指定されたトランザクションテーブル input_table を分析します。そのスキーマは aggregated_input パラメータに基づいて異なります。aggregated_input が False の場合、input_table スキーマは次のように想定されます:
| user | tstamp | amount |
|---|---|---|
| 3105285968 | 2011-04-05 | 115 |
| 1850985734 | 2011-11-23 | 1037 |
| 274382808 | 2011-04-25 | 17 |
| 358273144 | 2011-04-02 | 60 |
| ... | ... | ... |
各ユーザーについて:
- Recency は最新の tstamp からの日数で定義されます
- Frequency はトランザクション数で定義されます
- Monetary は合計金額で定義されます
input_table の最大 tstamp 値が、Recency を定義するための基準日として使用されます。
aggregated_input が True に設定されている場合、input_table スキーマは次のように想定されます:
| user | recency | frequency | monetary_value |
|---|---|---|---|
| 3105285968 | 10 | 3 | 200.12 |
| 1850985734 | 20 | 5 | 500.3 |
| 274382808 | 30 | 1 | 50.4 |
| ... | ... | ... |
aggregated_input が False の場合、欠損値の処理が行われます。aggregated_input が True の場合、欠損値の処理は行われないため、事前に前処理を行う必要があります。
Recency、frequency、monetary_value はそれぞれ分位数でランク付けされます。r_quartile、f_quartile、m_quartile の分位数ランクは 1 から 4 の範囲で、値が高いほどパフォーマンスが良いことを示します。RFMスコアは (r_quartile + f_quartile + m_quartile) / 3 として計算されます。
サンプル _output_table_:
| 61612 | 3181 | 4 | 4115 | 3 | 1 | 4 | R3F1M4 | 2.6667 | Promising | R3F2M2 |
|---|---|---|---|---|---|---|---|---|---|---|
| 9549 | 3227 | 8 | 1456 | 2 | 3 | 2 | R2F3M2 | 2.3333 | Need attention | R1F1M1 |
| 21495 | 3326 | 6 | 2770 | 1 | 2 | 3 | R1F2M3 | 2.0 | High Value Sleeping | R3F2M2 |
| 39408 | 3290 | 9 | 4893 | 2 | 4 | 4 | R2F4M4 | 3.3333 | Cannot lose them | R3F2M2 |
| 8120 | 3216 | 5 | 1056 | 2 | 1 | 1 | R2F1M1 | 1.3333 | Hibernating | R1F1M1 |
| 45110 | 3818 | 2 | 133 | 1 | 1 | 1 | R1F1M1 | 1.0 | Lost customers | R1F1M1 |
| ... | ... | ... | ... | ... | ... | ... | ... | ... | ... | ... |
| user | recency | frequency | monetary_value | r_quartile | f_quartile | m_quartile | rfm_quartile | rfm_score | rfm_segment | rfm_cluster_rank |
クラスタサイズが 3 の場合、クラスタ R3F3M3 は recency、frequency、monetary_value が高く、有望なクラスタであることを表します。一方、R1F1M1 は recency、frequency、monetary_values が低いことを意味します。
audience_name が指定されている場合、output_table の recency, frequency, monetary_values,__r_quartile, f_quartile, m_quartile, rfm_score, rfm_segment, rfm_cluster_rank がMaster Segmentの属性列として付加され、rfm_segment と rfm_cluster_rank を使用したSegmentsが定義されます。
rfm_segment の名称は、複数のプレーヤーによって使用されている業界標準の命名規則に従っています。
10個のRFMセグメントの説明については、次の表を参照してください。
| セグメント名 | 説明 | RFM Quartile値 |
|---|---|---|
| Champions | 理想的な顧客。最近購入し、頻繁に購入し、最も多く支出しています。 | R4F4M4 |
| Loyal Customers | 多くの金額を支出しています。プロモーションに反応します。これらは非常にアクティブで非常に価値のある顧客です。 | R4F4M3, R4F3M4, R4F3M3, R3F4M4, R3F4M3, R3F4M3, R3F3M4, R3F3M3 |
| Potential Loyalists | 最近の顧客で、適切な金額を支出し、複数回購入しています。 | R4F4M2, R4F3M2, R4F2M4, R4F2M3, R4F2M2, R3F4M2, R3F3M2, R3F2M4, R3F2M3, R3F2M2 |
| Promising | 最近の買い物客で、比較的最近高額または頻繁に購入しています。有望な顧客セグメントです。 | R4F4M1, R4F3M1, R4F2M1, R4F1M4, R4F1M3, R4F1M2, R3F4M1, R3F3M1, R3F2M1, R3F1M4, R3F1M3, R3F1M2 |
| New Customers | 最近購入しましたが、頻繁ではありません。 | R4F1M1, R3F1M1 |
| Cannot lose them | 大きな購入を頻繁にしていましたが、かなり前のことです。このセグメントからの大きな収益があり、彼らの注目を失わない方が良いです。 | R2F4M4, R2F4M3, R2F3M4, R2F3M3, R2F2M4, R2F2M3, R2F1M4, R2F1M3 |
| Need attention | 潜在的なロイヤルカスタマーが注目を失っています。注意が必要です。 | R2F4M2, R2F3M2, R2F2M2 |
| Hibernating | 低支出、低頻度、かなり前に購入。彼らに注目を与える価値はありません。 | R2F4M1, R2F3M1, R2F2M1, R2F1M2, R2F1M1 |
| High Value Sleeping | 過去の潜在的なロイヤルカスタマーが休眠中。失われつつある興味を再び呼び覚ます価値があります。 | R1F4M4, R1F4M3, R1F4M2, R1F3M4, R1F3M3, R1F3M2, R1F2M4, R1F2M3, R1F2M2, R1F1M4, R1F1M3 |
| Lost customers | Recency、Frequency、Monetaryスコアが最低です。このセグメントは最も優先度が低いです。 | R1F4M1, R1F3M1, R1F2M1, R1F1M2, R1F1M1 |
PrecisionMLは、MLモデルの出力を視覚化するダッシュボードを Treasure Insights で生成します。PrecisionML RFMダッシュボードの視覚化のサンプルは次のとおりです:


