1. 项目背景与核心价值
用户流失分析是企业客户关系管理中的关键环节。传统方法往往依赖主观经验判断,而基于客观数据的分析能显著提升预测准确性。这个项目通过三个最具代表性的用户特征维度——年龄、消费金额和投诉次数,构建了一套可量化的流失风险评估模型。
在实际业务场景中,这三个指标的组合能揭示用户生命周期中的关键转折点。比如年轻用户可能因价格敏感流失,高消费用户可能因服务体验不佳离开,而投诉次数直接反映了用户不满程度。将这些数据维度交叉分析,可以识别出高风险用户群体,为精准营销和客户挽留提供数据支撑。
需要模型API调用? 免费领10W Token,多模型网关一键接入 Claude、DeepSeek 等主流模型。
2. 数据准备与特征工程
2.1 数据收集规范
原始数据需要包含以下字段:
- 用户ID(唯一标识)
- 年龄(建议采集实际年龄而非年龄段)
- 近6个月消费总金额
- 历史累计投诉次数
- 用户状态(活跃/流失,作为标签数据)
注意:数据时间窗口建议统一为最近6个月,确保所有用户行为数据的时间跨度一致。消费金额应扣除退款金额,投诉次数只统计已确认的有效投诉。
2.2 特征标准化处理
不同量纲的特征需要标准化:
- 年龄:直接使用原始值(18-80岁)
- 消费金额:取自然对数处理,消除极端值影响
python复制import numpy as np df['log_consumption'] = np.log(df['consumption'] + 1) # 加1防止零值 - 投诉次数:分段离散化处理
- 0次 = 等级0
- 1-2次 = 等级1
- 3-5次 = 等级2
-
5次 = 等级3
2.3 特征组合创新
创建交叉特征提升模型表现:
- 高消费高投诉组合:消费金额前20%且投诉≥3次
- 年轻低消费组合:年龄<30岁且消费金额后30%
- 老年沉默用户:年龄>60岁且投诉次数=0
3. 分析模型构建
3.1 逻辑回归模型
基础模型采用逻辑回归,因其可解释性强:
python复制from sklearn.linear_model import LogisticRegression
model = LogisticRegression(
penalty='l2',
C=0.1,
cla
