应用场景
期望根据客户近3个月的登录行为和发帖更新贴行为,评估客户的活跃度,将活跃度分为多个等级,以根据不同的活跃等级开展不同的营销活动。
基本思路
1、采用聚类算法,特征值取最近3个月每周(一周取7天)登录次数,每周发帖次数,每周更新贴次数,按周展开列,共12周*3=36个特征值,对每个特征值按照时间周期做降权处理。
借鉴牛顿温度冷却定律:
本期温度=上期温度 * exp(-(冷却系数)*间隔的周期数)
特征值考虑时间周期作降权处理。假设,第12周的一次登录,在今日的权重变为0.05(暂定),则,冷却系数 = - log(0.05) / 12 约等于 0.24。假设一个客户在12周内的登录次数依次为:1,2,3,4,5,6,7,8,9,10,11,12,那么计算这个客户的登录次数总得分为:
S = 12 e − 0.24 ∗ 0 + 11 e − 0.24 ∗ 1 + 10 e − 0.24 ∗ 2 + 9 e − 0.24 ∗ 3 + 8 e − 0.24 ∗ 4 + 7 e − 0.24 ∗ 5 + 6 e − 0.24 ∗ 6 + 5 e − 0.24 ∗ 7 + 4 e − 0.24 ∗ 8 + 3 e − 0.24 ∗ 9 + 2 e − 0.24 ∗ 10 + 1 e − 0.24 ∗ 11 \begin{array}{l}{S=12 e^{-0.24 * 0}+11 e^{-0.24 * 1}+10 e^{-0.24 * 2}+9 e^{-0.24 * 3}+8 e^{-0.24 * 4}+7 e^{-0.24 * 5}+6 e^{-0.24 * 6}+} \\ {5 e^{-0.24 * 7}+4 e^{-0.24 * 8}+3 e^{-0.24 * 9}+2 e^{-0.24 * 10}+1 e^{-0.24 * 11}}\end{array} S=12e−0.24∗0+11e−0.24∗1+10e−0.24∗2+9e−0.24∗3+8e−0.24∗4+7e−0.24∗5+6e−0.24∗6+5e−0.24∗7+4e−0.24∗8+3e−0.24∗9+2e−0.24∗10+1e−0.24∗11
约等于39.93 ,而不降权的方式sum(1,2…11,12)=78。
考虑客户在登录,更新贴和发帖的权重不同,分别取权重为登录:0.2,更新帖:0.3,发帖:0.5。
2、使用Kmeans算法,进行聚类,K值根据手肘法得到最优值,然后结合业务需求确定。
3、聚类为K类,然后计算每类的中心点的在登录,更新帖和发帖的降权总得分,依次对应业务含义的类别。
4、数据验证:
(1)利用轮廓系数,评估K类的聚类效果。
(2)分析K类的数据占比,是否和预期相符。
(3)K类数据,每类取部分