RFM 模型作為一種經典的客戶分群方法,簡單易用,但其根據規則的分類別方式可能不夠精確。隨著機器學習技術的發展,KNN 和邏輯迴歸等演算法為客戶分群提供了新的思路。這些演算法可以根據客戶的歷史資料,建立更精確的預測模型,從而更有效地識別高價值客戶。選擇哪種模型取決於資料特性和業務需求,例如資料量、資料維度以及對模型可解釋性的要求。
客戶分段技術:RFM 分析與機器學習模型比較
在資料分析和客戶分段中,瞭解特定情境和資料特性對於選擇合適的技術至關重要。本文將聚焦於兩種基本技術:K最近鄰(K-Nearest Neighbors, KNN)和邏輯迴歸(Logistic Regression),並將其與行業標準實踐——RFM(Recency, Frequency, Monetary)分段進行比較。
RFM 分段
RFM 分段是一種資料函式庫行銷中常用的客戶分段過程,旨在將客戶列表中的潛在客戶分成具有相似購買行為的同質群體(分段)。這裡,我們需要根據購買傾向進行分段,但由於無法直接衡量此變數,我們使用了一些合理的指標變數。
在直接行銷業務中,最常用的變數是 RFM 變數:
- R(Recency):自最後一次購買以來的時間
- F(Frequency):在一段時間內從公司購買的產品數量
- M(Monetary):在一段時間內在公司產品上花費的金額
假設:最近一次購買越近、過去從公司購買的產品越多、過去在公司產品上花費的金額越大,客戶購買新產品的可能性就越高。
資料分類別
我們的訓練資料(1800 個觀察值)和驗證資料(1400 個觀察值)根據以下標準分為不同的 Recency、Frequency 和 Monetary 類別:
Recency:
- 0-2 個月(Rcode = 1)
- 3-6 個月(Rcode = 2)
- 7-12 個月(Rcode = 3)
- 13 個月以上(Rcode = 4)
Frequency:
- 1 本文(Fcode = 1)
- 2 本文(Fcode = 2)
- 3 本文或以上(Fcode = 3)
Monetary:
- $0-$25(Mcode = 1)
- $26-$50(Mcode = 2)
- $51-$100(Mcode = 3)
- $101-$200(Mcode = 4)
內容解密
上述分類別方法根據簡單的假設,可能無法完全反映客戶的真實購買行為和偏好。因此,結合機器學習模型,如 KNN 和邏輯迴歸,能夠更深入地分析客戶資料,提供更精確的預測和分段結果。
圖表翻譯
graph LR A[客戶資料] -->|分類別|> B(RFM 分類別) B -->|分析|> C(購買行為分析) C -->|預測|> D(客戶購買可能性預測) D -->|分段|> E(客戶分段)
此圖表描述了從客戶資料到客戶分段的過程,首先根據 RFM 指標對客戶進行分類別,然後分析其購買行為,預測購買可能性,最終實作客戶分段。這個過程可以透過機器學習模型進行最佳化,以提高預測準確度和分段效果。
玄貓的RFM分析:顧客分群與購買行為
玄貓是一位擁有豐富資料分析經驗的專家,今天我們將探討如何使用RFM(Recency、Frequency、Monetary)模型來分析顧客購買行為。這種方法可以幫助企業更好地瞭解顧客的購買模式,從而制定出更有效的行銷策略。
RFM模型介紹
RFM模型是一種根據顧客的購買行為對其進行分群的方法。它考慮了三個主要因素:最近一次購買的時間(Recency)、購買頻率(Frequency)以及購買金額(Monetary)。透過對這些因素進行分析,企業可以將顧客分成不同的群體,並針對每個群體制定相應的行銷策略。
資料準備
在進行RFM分析之前,需要準備好相關的資料。這包括顧客的購買記錄、購買時間、購買金額等資訊。這些資料可以來源於企業的銷售系統、顧客關係管理系統等。
RFM分群過程
RFM分群的過程主要包括以下幾步:
- 資料收集和清理:收集相關的購買資料,並進行清理和處理,以確保資料的品質和完整性。
- RFM指標計算:計算每個顧客的Recency、Frequency和Monetary值。
- 分群:根據計算出的RFM指標,將顧客分成不同的群體。
案例分析
下面是一個簡單的案例分析,展示瞭如何使用RFM模型對顧客進行分群。假設我們有一份包含1800位顧客的購買資料,包括他們的購買時間、購買頻率和購買金額等資訊。
RFM COUNTS FOR BUYERS
Rcode | Fcode 1 | Fcode 2 | Fcode 3 | Fcode 4 | Fcode 5 | Grand Total |
---|---|---|---|---|---|---|
1 | 2 | 2 | 10 | 7 | 17 | 38 |
2 | 3 | 5 | 9 | 17 | 34 | - |
3 | 1 | 1 | 15 | 62 | - | 79 |
Grand Total | 2 | 6 | 16 | 31 | 96 | 151 |
RFM COUNTS FOR NON-BUYERS
非購買顧客的RFM計數同樣重要,因為它們可以幫助企業瞭解哪些顧客沒有進行購買,以及如何啟用這些顧客。
內容解密:
在上述案例中,我們使用RFM模型對顧客進行了分群。這個過程涉及到計算每個顧客的Recency、Frequency和Monetary值,然後根據這些值將顧客分成不同的群體。這種方法可以幫助企業快速識別出高價值顧客和低價值顧客,從而有針對性地制定行銷策略。
圖表翻譯:
flowchart TD A[收集資料] --> B[計算RFM指標] B --> C[分群] C --> D[制定行銷策略] D --> E[實施和評估]
這個流程圖展示瞭如何使用RFM模型進行顧客分群和行銷策略制定的基本流程。首先,收集相關的購買資料;然後,計算每個顧客的RFM指標;接下來,根據這些指標將顧客分成不同的群體;最後,根據分群結果制定和實施相應的行銷策略,並進行評估和調整。
資料分析與計算
根據提供的資料,我們可以看到三組資料,分別對應不同的編碼(Rcode)和Florence Mcode。以下是對這些資料的分析和計算:
第一組資料
- Rcode = 2
- 資料:
- 1 0 0 0 2 1 3
- 2 1 0 0 1 2
- 3 1 0 0 5 6
- Grand Total:0 2 0 2 7 11
第二組資料
- Rcode = 3
- Florence Mcode:
- Fcode 1 2 3 4 5 Grand Total
- 1 1 0 1 1 5 8
- 2 0 3 5 5 13
- 3 0 4 10 14
- Grand Total:1 0 4 10 20 35
第三組資料
- Florence Mcode:
- Fcode 1 2 3 4 5 Grand Total
- 1 1 0 1 2 5 9
計算與分析
對於第一組資料,Grand Total 的計算結果為:0 + 2 + 0 + 2 + 7 + 11 = 22。
對於第二組資料,Grand Total 的計算結果為:1 + 0 + 4 + 10 + 20 + 35 = 70。
對於第三組資料,只有一行資料,Grand Total 的計算結果為:1 + 0 + 1 + 2 + 5 + 9 = 18。
客戶分群分析:RFM模型應用
在進行客戶分群分析時,RFM(Recency、Frequency、Monetary)模型是一種常見且有效的方法。這個模型透過分析客戶的最近購買時間(Recency)、購買頻率(Frequency)以及消費金額(Monetary)來對客戶進行分群。下面我們將透過實際資料來演示如何應用RFM模型進行客戶分群。
資料準備
首先,我們需要準備客戶的購買資料,包括購買時間、購買頻率和消費金額。假設我們有一份客戶購買記錄的資料表,如下所示:
客戶ID | 最近購買時間 | 購買頻率 | 消費金額 |
---|---|---|---|
1 | 2022-01-01 | 2 | 100 |
2 | 2022-02-01 | 3 | 200 |
… | … | … | … |
RFM編碼
接下來,我們需要對每個客戶進行RFM編碼。RFM編碼是根據客戶的最近購買時間、購買頻率和消費金額進行分配的。一般來說,最近購買時間越近、購買頻率越高、消費金額越大的客戶會被分配到更高的RFM編碼。
Recency(最近購買時間)
根據客戶的最近購買時間,可以將其分為不同的Recency級別。例如:
- Rcode = 1:最近一次購買在3個月內
- Rcode = 2:最近一次購買在3-6個月內
- Rcode = 3:最近一次購買在6-12個月內
- Rcode = 4:最近一次購買超過1年
Frequency(購買頻率)
根據客戶的購買頻率,可以將其分為不同的Frequency級別。例如:
- Fcode = 1:購買頻率低於2次
- Fcode = 2:購買頻率為2-5次
- Fcode = 3:購買頻率為6-10次
- Fcode = 4:購買頻率超過10次
Monetary(消費金額)
根據客戶的消費金額,可以將其分為不同的Monetary級別。例如:
- Mcode = 1:消費金額低於100元
- Mcode = 2:消費金額為100-500元
- Mcode = 3:消費金額為500-1000元
- Mcode = 4:消費金額超過1000元
RFM分群
透過對每個客戶進行RFM編碼後,可以根據其RFM編碼將其分為不同的客戶群體。例如:
客戶ID | Rcode | Fcode | Mcode | RFM分群 |
---|---|---|---|---|
1 | 1 | 2 | 3 | 高價值客戶 |
2 | 2 | 3 | 4 | 中高價值客戶 |
… | … | … | … | … |
內容解密:
在上述例子中,我們使用RFM模型對客戶進行了分群。這個過程涉及到對客戶的最近購買時間、購買頻率和消費金額進行編碼和分析。透過這個分析,我們可以將客戶分為不同的群體,並制定針對性的行銷策略。
flowchart TD A[收集資料] --> B[RFM編碼] B --> C[RFM分群] C --> D[制定行銷策略]
圖表翻譯:
此圖示了RFM模型的應用過程。首先,我們需要收集客戶的購買資料。然後,對每個客戶進行RFM編碼,根據其最近購買時間、購買頻率和消費金額進行分配。接下來,根據RFM編碼將客戶分為不同的群體。最後,根據不同的客戶群體制定針對性的行銷策略。
graph LR A[高價值客戶] --> B[中高價值客戶] B --> C[中價值客戶] C --> D[低價值客戶]
此圖示了不同客戶群體之間的關係。高價值客戶通常具有高頻率的購買行為和高消費金額,而低價值客戶則具有低頻率的購買行為和低消費金額。透過瞭解這些關係,企業可以更好地制定行銷策略,以提高客戶留存率和增加收入。
分析與解釋
根據提供的資料,似乎是兩個不同的計數表格。第一個表格顯示的是「Fcode」與「Grand Total」的關係,第二個表格則顯示的是「Fcode」與「Mcode」的計數關係。
第一個表格分析
Fcode | 1 | 2 | 3 | 4 | 5 | Grand Total |
---|---|---|---|---|---|---|
1 | 20 | 40 | 93 | 166 | 219 | 538 |
2 | 32 | 91 | 180 | 247 | 550 | |
3 | 2 | 33 | 179 | 498 | 712 | |
Grand Total | 20 | 74 | 217 | 525 | 964 | 1800 |
從這個表格中,我們可以看到每個「Fcode」對應的數值,以及各個欄位的總和(Grand Total)。但是,第二和第三行的「Grand Total」數值沒有給出,可能需要根據給出的資料進行計算。
第二個表格分析
Fcode | 1 | 2 | 3 | 4 | 5 | Grand Total |
---|---|---|---|---|---|---|
1 | 2 | 2 | 6 | 10 | 15 | 35 |
2 | 3 | 4 | 12 | 16 | 35 | |
3 | 1 | 2 | 11 | 45 | 59 | |
Grand Total | 2 | 6 | 12 | 33 | 76 | 129 |
這個表格顯示的是每個「Fcode」下,對應「Mcode」的計數。同樣地,第二和第三行的「Grand Total」也沒有給出。
Rcode 的意義
文中提到了「Rcode = 1」和「Rcode = 2」,但是沒有明確解釋「Rcode」的意義。可能需要更多的上下文或資訊來理解「Rcode」的作用。
內容解密:
以上分析過程中,我們嘗試瞭解給出的兩個表格的結構和資料含義,並對「Fcode」、「Mcode」和「Rcode」進行初步分析。由於缺乏完整的資訊,特別是對「Rcode」的明確解釋,因此難以進行更深入的分析或計算。這個過程中,我們需要注意資料的完整性和上下文的重要性,以便能夠對給出的問題有更全面的理解和解決方案。
圖表翻譯:
graph LR A[Fcode] --> B[Mcode] B --> C[Count] C --> D[Grand Total] D --> E[Rcode]
以上Mermaid圖表嘗試簡單地描述「Fcode」、「Mcode」、「Count」和「Grand Total」之間的關係,並指出「Rcode」的存在,但由於缺乏詳細資訊,圖表未能完整反映出所有變數之間的複雜關係。
資料分析與統計
在給定的資料中,我們觀察到兩組不同的資料集,每組都包含多個序列的資料。第一組資料集包含四個序列,分別標記為1、2、3,及其對應的Grand Total。第二組資料集同樣包含四個序列,標記為1、2、3,及其Grand Total。
第一組資料集分析
第一組資料集的序列如下:
- 序列1:1 3 5 17 28 26 79
- 序列2:2 2 17 30 31 80
- 序列3:3 3 34 66 103
- Grand Total:3 7 37 92 123 262
Rcode = 3
第二組資料集分析
第二組資料集的序列如下:
- 序列1:1 7 15 24 51 86 183
- 序列2:2 12 29 55 85 181
- 序列3:3 1 17 53 165 236
- Grand Total:7 28 70 159 336 600
Rcode = 4
Florence Mcode 分析
對於每組資料集,我們都有一個Florence Mcode的計數表。這些表格顯示了不同Fcode下的資料分佈。
第一組Florence Mcode
Fcode | 1 | 2 | 3 | 4 | 5 | Grand Total |
---|---|---|---|---|---|---|
1 | 7 | 15 | 24 | 51 | 86 | 183 |
2 | 12 | 29 | 55 | 85 | 181 | |
3 | 1 | 17 | 53 | 165 | 236 | |
Grand Total | 20 | 61 | 132 | 301 | 553 |
第二組Florence Mcode
Fcode | 1 | 2 | 3 | 4 | 5 | Grand Total |
---|---|---|---|---|---|---|
1 | 8 | 18 | 46 | 77 | 92 | 241 |
客戶分段與促銷郵件傳送策略
問題背景
一家書店欲根據客戶的購買行為進行分段,並針對高反應度的客戶群體傳送促銷郵件。書店收集了客戶的購買資料,包括最近一次購買時間(Recency, R)、購買頻率(Frequency, F)和總消費金額(Monetary, M)。此外,書店還收集了客戶第一次購買時間(FirstPurch)和相關書籍的購買次數(RelatedPurch)。
資料分割
根據指令,將資料分割為訓練集(45%)、驗證集(35%)和holdout集(20%),並設定隨機種子為12345。
訓練集反應率分析
計算訓練集客戶的整體反應率。接著,根據RFM分類別,計算每個組合的反應率。共有4 × 5 × 3 = 60個組合。找出哪些組合的反應率高於整體反應率。
驗證集反應率分析
假設只向上述「以上平均」RFM組合的客戶傳送促銷郵件。計算驗證集中這些組合的反應率。
三段分類別
重新進行分類別,將RFM組合分為三段:
- 第1段:反應率超過整體反應率兩倍的組合
- 第2段:反應率超過整體反應率但不超過兩倍的組合
- 第3段:剩餘的組合 繪製提升圖(lift chart),以驗證集中的客戶數量為x軸,累積買家數量為y軸。
k-Nearest Neighbors技術
此技術可根據產品相似度和購買傾向建立分段。對於「佛羅倫斯藝術史」,玄貓可能根據以下指標進行分段:
- R:最近一次購買時間(月)
- F:過去購買次數
- M:總消費金額(美元)
- FirstPurch:第一次購買時間(月)
- RelatedPurch:相關書籍購買次數
使用K最近鄰演算法進行客戶分類別
在進行客戶分類別時,K最近鄰(K-NN)演算法是一種常用的方法。以下是使用K-NN演算法進行客戶分類別的步驟:
- 資料準備:首先,需要準備好資料,包括客戶的特徵變數和目標變數。在本例中,目標變數是「Florence」。
- 選擇K值:需要選擇一個適合的K值,K值代表著要考慮的最近鄰居的數量。在本例中,需要試驗不同的K值(例如1、3、11)以找到最佳的K值。
- 標準化資料:為了避免不同變數之間的尺度差異對結果的影響,需要標準化資料。在ASDM中,可以使用「Rescale Data」功能進行標準化。
- 建立模型:使用K-NN演算法建立模型,輸入標準化的資料和選擇的K值。
- 評估模型:使用交叉驗證法評估模型的效能,計算lift chart以評估模型的效果。
使用邏輯迴歸模型進行客戶分類別
邏輯迴歸模型是一種常用的分類別模型,尤其是在消費者行為分析中。以下是使用邏輯迴歸模型進行客戶分類別的步驟:
- 資料準備:首先,需要準備好資料,包括客戶的特徵變數和目標變數。在本例中,目標變數是「Florence」。
- 選擇預測變數:需要選擇一組預測變數,例如所有15個變數、子集或特定的變數(例如R、F、M)。
- 建立模型:使用邏輯迴歸演算法建立模型,輸入選擇的預測變數和目標變數。
- 評估模型:使用交叉驗證法評估模型的效能,計算lift chart以評估模型的效果。
模型選擇和評估
在進行模型選擇和評估時,需要考慮以下幾個因素:
- 模型效能:評估模型的效能,包括準確率、精確率、召回率和F1分數等指標。
- 過度擬合:檢查模型是否過度擬合,需要使用交叉驗證法評估模型的泛化能力。
- 簡單性:考慮模型的簡單性,選擇簡單而有效的模型。
最終,需要根據評估結果選擇最佳的模型,並使用該模型進行預測和分類別。
信用評分模型的演變
在20世紀,Retail Credit Company成立,旨在分享信用資訊。該公司現已發展成為Equifax,一家領先的信用評分機構(其他兩家主要信用評分機構分別是Transunion和Experion)。在信用評估過程中,個人的主觀判斷和當地的評估標準已經不再重要。信用機構和其他金融機構透過收集大量資料來預測客戶是否會拖欠貸款或發生其他不利事件,從而對其進行信用評分。
資料分析
這個案例涉及早期的預測模型建設階段,人工評估員會根據客戶的信用記錄將其評為「好信用」或「壞信用」。德國信用資料集包含30個變數和1000條記錄,每條記錄對應一位之前的貸款申請人。這些變數包括申請人的基本資訊、信用歷史、收入等。表23.4列出了所有變數的描述,而表23.5則展示了前四條記錄的具體資料。
新申請人也可以根據這30個預測變數進行評估,以判斷其信用風險。誤分類別的後果已經被評估,結果顯示錯誤地將高風險申請人判為低風險(假陽性)的成本遠高於正確識別低風險申請人的收益。這些成本和收益的比較如表23.6所示。
模型評估
由於決策者習慣以淨利為基礎進行決策,因此我們使用這些表格來評估不同模型的效能。表23.7列出了平均每筆貸款的淨利,從而幫助我們理解信用評估中的成本和收益。
變數解釋
- OBS#:觀察序號,代表資料集中每條記錄的唯一標識。
- CHK-ACCT:儲蓄帳戶狀態,分為四類別:小於0德國馬克、0-200德國馬克、大於200德國馬克和無儲蓄帳戶。
- DURATION:貸款期限,以月為單位。
- HISTORY:信用歷史,分為三類別:無信用記錄、所有貸款均按時還款和存在未償還貸款。
這些變數為建立信用評分模型提供了基礎,透過分析這些變數之間的關係,可以更好地預測申請人的信用風險。接下來,我們將更深入地探討如何使用這些變數建立一個有效的信用評分模型。
內容解密
上述內容介紹了信用評分模型的基本概念和德國信用資料集的結構。瞭解這些變數及其意義是建立有效信用評分模型的基礎。透過對這些變數進行深入分析,可以更好地識別高風險和低風險申請人,從而降低貸款機構的風險。
flowchart TD A[申請人資料] --> B[信用評估] B --> C[風險判斷] C --> D[貸款決策]
圖表翻譯
此圖表示了信用評估過程中,從申請人資料到貸款決策的流程。首先,收集申請人的相關資料;然後,利用這些資料進行信用評估;接著,根據評估結果進行風險判斷;最後,根據風險判斷結果做出貸款決策。這個流程強調了信用評估在貸款決策中的重要性。
從商業價值視角來看,精準的客戶分群對於提升行銷效益至關重要。本文比較了傳統的 RFM 分析方法與機器學習模型(KNN、邏輯迴歸)在客戶分群上的應用。RFM 方法易於理解和實施,但其根據簡單規則的分類別方式可能過於粗糙,難以捕捉客戶行為的細微差異。機器學習模型,特別是 KNN 和邏輯迴歸,可以利用更多變數和更複雜的演算法,提供更精細的客戶分群結果。然而,機器學習模型的建構和調校需要專業知識和大量的運算資源,同時模型的可解釋性也相對較低。技術限制深析顯示,模型的選擇需要考量資料特性、商業目標和技術資源。對於資料量較小、變數較少的場景,RFM 方法可以作為一個快速有效的起點。而對於資料量龐大、變數豐富且追求更高精確度的場景,機器學習模型則更具優勢。未來3-5年,預計根據深度學習的客戶分群技術將更加成熟,並能更有效地整合多源異構資料,提供更個人化的客戶洞察。玄貓認為,企業應根據自身情況選擇合適的技術方案,並持續關注新技術的發展,不斷最佳化客戶分群策略,以最大化商業價值。