ARTICLE DETAIL

资讯详情

深耕网站建设与运营推广的一线实战洞察。

快速实验篇(B17)B组实验总结报告:电商用户行为数据分析的完整实践

快速实验篇(B17)B组实验总结报告:电商用户行为数据分析的完整实践 小肥柴的Hadoop之旅 快速实验篇B17B组实验总结报告电商用户行为数据分析的完整实践数据源user_visit_action.txt18.6 MB180570 行13 字段技术栈Hadoop MR Hive on MR 本地 Python集群1 master 3 worker每节点 2GB实验周期B01–B16共 16 个实验1. 这份报告的写作目的B 组实验的起点是一份电商用户行为日志终点是一套关于这份数据能做什么、不能做什么、边界在哪的完整认知中间经历 16 个实验覆盖数据治理、描述性分析、关联分群、方法论演示、建模预测五个阶段。报告要回答三个问题电商平台数据应该分析哪些项目每个项目的分析目的是什么对应哪个实验结果如何这些实验共同揭示了什么规律报告内容以实际执行结果为准所有数字来自各实验的日志和产出表不引用未验证的推断。2. 实验设计思路B 组实验的设计遵循一条主线从数据底座出发逐层向上每一层都为下一层提供输入同时在每一层检验上一层结论是否成立。结构图如下。┌──────────────────────────────────────┐ │ 原始日志 user_visit_action.txt │ │ 180570 行 / 13 字段 / 11 天 │ └──────────────────┬───────────────────┘ │ ┌────────────────────────────┴────────────────────────────┐ │ 第一层数据治理与底座 │ │ B01 原始日志质量审计MR Counter 画像 │ │ B02 DWD 生产级升级分区 ts seq_in_session │ │ 产出dwd_user_behavior 4 张多值子表 │ └────────────────────────────┬────────────────────────────┘ │ ┌────────────────────────────┴────────────────────────────┐ │ 第二层描述性业务分析 │ │ B03 行为漏斗 B04 品类排名 B05 品类活跃 Session │ │ B06 页面跳转 B07 会话序列 B08 搜索词 B09 城市维度 │ │ 产出漏斗/品类/页面/会话/搜索/城市 6 个维度的 ADS 表 │ └────────────────────────────┬────────────────────────────┘ │ ┌────────────────────────────┴────────────────────────────┐ │ 第三层关联与分群 │ │ B10 品类共现与关联规则 │ │ B11 用户 RFM 与聚类分群 │ │ 产出共现矩阵、关联规则、用户分群标签 │ └────────────────────────────┬────────────────────────────┘ │ ┌────────────────────────────┴────────────────────────────┐ │ 第四层方法论演示三部曲 │ │ B12 异常检测Z-score 卡方 iForest │ │ B13 路径挖掘马尔可夫 n-gram 聚类 规则 │ │ B14 用户标签体系PCA/LDA/t-SNE/K-means/DBSCAN │ │ 主题简单方法 ≥ 高级方法合成数据铁证 │ └────────────────────────────┬────────────────────────────┘ │ ┌────────────────────────────┴────────────────────────────┐ │ 第五层建模与预测 │ │ B15 品类推荐系统CF vs 随机/热门/规则 │ │ B16 用户级预测可行性审计流失分类 价值回归 │ │ 产出推荐指标表、预测可行性表、基线对比表 │ └────────────────────────────┬────────────────────────────┘ │ ┌────────────────────────────┴────────────────────────────┐ │ 第六层收口 │ │ B17 总结与工程复盘本报告 │ └─────────────────────────────────────────────────────────┘六层结构的设计逻辑是先有底座再有描述再有挖掘最后才建模。每一层都在检验上一层的前提是否成立。如果上层前提不成立下一层的实验方向就要调整。这个设计在 B 组执行过程中被反复验证是必要的。B03 发现品类均匀B04 就调整了排名策略B09 发现城市不可分B10 就不再按城市切片B15 发现推荐前提不成立B16 就改为可行性审计。每一层的结论直接影响下一层的方向。3. 第一层数据治理与底座B01–B023.1 B01 原始日志质量审计分析目的在任何分析开始之前先回答一个基础问题这份数据能不能用有哪些坑。做法用 MapReduce 写一个清洗程序在解析每一行的同时用 Counter 记录 16 个审计维度的统计量。Counter 是 MR 提供的分布式计数器不占输出文件不影响主逻辑是数据画像的免费工具。结果六条假设中两条成立四条被推翻。假设结果H1 结构完整性成立。无空行、无字段数异常、无真缺失H2 行为互斥成立。四类行为互斥multi0unclassified0H3 单日数据推翻。实际覆盖 11 天H4 品类-产品配对推翻。80% 的订单品类与产品数组长度不等H5 文件顺序时间顺序推翻。2.16% 的行在 session 内时间倒流H6 脏数据多推翻。格式校验全部为 0关键教训审计不是被动找问题是主动检验假设。四条推翻对应四次设计调整日期 Counter 从硬编码改为分布画像多值子表从 1 张拆为 4 张序列分析必须显式排序。3.2 B02 DWD 生产级升级分析目的把 B01 的能用升级成好用。B01 的主表是非分区表时间字段是字符串session 内没有序号。这三个问题会让下游 10 个项目各自处理一遍口径分叉。做法在 DWD 层一次性解决三个公共问题按dt分 11 个区按天查询不再全表扫。新增ts timestamp时间差分析统一口径。新增seq_in_session按action_time, raw_line_id双键排序序列分析不再各自写窗口函数。结果主表 180570 行11 个分区5 个关键不变量全部通过总行数守恒、分区数 11、seq 无重复、seq 从 1 开始、ts 无 NULL。四张子表与 B01 对照完全一致。关键教训公共计算要前置。B06 页面单跳、B07 会话序列、B12 异常检测都需要时间差和页序这些计算在 B02 做一次比在三个项目里各做一次更可靠。4. 第二层描述性业务分析B03–B09这一层回答的问题是这份数据在业务维度上呈现出什么形态。七个实验从漏斗、品类、页面、会话、搜索、城市六个角度切入。4.1 B03 用户行为漏斗与转化率分析目的原设计要回答搜索→点击→下单→支付的漏斗流失在哪。这个问题的前提是搜索是漏斗入口。结果前提不成立。73.5% 的 session 是先点击后搜索搜索和点击没有稳定顺序。搜索不是漏斗入口是独立的用户意图信号。真正的漏斗是点击→下单→支付。Session 层点击到下单转化率 58.5%下单到支付 82.6%。同时发现 1128 个 session 出现支付但无下单占支付 session 的 27.5%。这在真实电商里不可能支付必然跟着下单。输出ads_funnel_overall4 行、ads_funnel_session8744 行、ads_funnel_session_ordered8744 行、ads_funnel_category20 行。4.2 B04 热门品类 Top10 与加权排名分析目的原设计要按点击量排 Top10再按点击×20% 下单×30% 支付×50%做加权排名。结果B03 已经发现品类分布极端均匀20 个品类的点击量全部在 5438 到 5687 之间波动只有 2.3%。在这个分布上做排名Top1 和 Bottom1 只差 4.6%排名差异不具业务意义。加权排名同样失效。归一化后的综合分全部在 0.050093 到 0.05125 之间20 个品类的平均分就是 0.05所有品类都在平均值附近。唯一有区分度的是order_to_pay_rate范围 62.64% 到 76.04%差异 13.4 个百分点。品类 15 支付意愿最高品类 5 最低。输出ads_category_summary20 行、ads_category_top10_rule110 行、ads_category_top10_rule210 行、ads_category_conversion_rank20 行。4.3 B05 每个品类 Top10 活跃 Session分析目的从品类下钻到 session看每个品类里哪些 session 贡献最大。结果1100 个 Top10 席位只来自 65 个不同的 session。其中 15 个 session 跨 2 个以上品类进入 Top10。同一个 session 可以是多个品类的 Top1。2Top10 内部区分度很低。25 组品类 × total_events出现并列Top1 最小事件数与 Rank10 最大事件数重叠都是 10。输出ads_session_category_activity87836 行、ads_category_top10_session100 行。4.4 B06 页面单跳转化率分析目的看用户在页面之间如何跳转哪些路径转化率高。结果150 个页面2500 条跳转路径全部出现是完整的 50×50 满矩阵。每条路径的跳转次数在 40 到 91 之间极差只有 2.3 倍。95.3% 的路径样本量 ≥ 50。2转化率有区分度。订单转化率范围 62.5% 到 98.3%支付转化率范围 50.8% 到 89.4%。这是 B 组第一次出现强区分度指标。但 Top10 高转化路径内部只有 5 个百分点的差距且样本量高度接近。一次真实的 OOM窗口函数在 2GB 集群上触发了 OOMDataNode 和 NodeManager 被系统杀掉。修复方案是显式设置容器内存收紧io.sort.mb限制 reducer 数。这套内存控制参数被后续所有窗口函数脚本继承。输出ads_page_transition158026 行、ads_page_single_step_conversion2500 行。4.5 B07 Session 会话化与行为序列分析目的把每个 session 的行为拼成完整序列看有哪些常见路径模式。结果这是 B 组第一个出现强区分度业务发现的实验。Session 长度是长尾分布。中位数 13最大值 203相差 15.6 倍。39 个长度 ≥ 100 的深层 session 全部转化转化率 100%。1640 个长度 5 的极短 session 只有 25.8% 转化。全量基准是 56.9%。100% 和 25.8% 之间的差距是 4 倍。同时发现一个分布悖论n-gram 频次是长尾的clickclick占 44.6%但 n-gram 的条件转化率是均匀的所有 2-gram 的后续下单率都在 52.8% 到 56.9% 之间。频次长尾和条件概率均匀同时成立。输出ads_session_sequence8744 行、ads_session_ngram80 行。4.6 B08 搜索词分析分析目的原设计要做搜索词 TopN 排行榜和用户搜索偏好。结果搜索词只有 6 个。100 个用户每个人都搜过全部 6 个词。排行榜和偏好都做不了。改用 event 级转化率分析。搜索后点击率 68.9% 到 71.0%搜索后下单率 18.6% 到 19.8%搜索后支付率 13.4% 到 14.3%。6 个词的转化率差异全部小于 2 个百分点。核心方法论改进转化率必须用 event 级不能用 session 级。session 级算法下同一个订单会被同时算给 session 里搜过的每一个词导致转化率虚高 3 倍。这个发现是 B08 最重要的方法论贡献。输出ads_search_keyword6 行、ads_search_summary16 行。4.7 B09 城市维度分析分析目的原设计要做城市 × 品类偏好分析看不同城市偏好哪些品类。结果26 个城市每个城市的user_cnt都是 100。全部 100 个用户同时出现在全部 26 个城市里。这在真实电商里不可能说明city_id是行为级随机分配字段与用户无绑定。品类分布完全均匀。每个城市的点击份额最大值都在 0.053 到 0.059 之间无一超过 0.06。三套归一化熵全部超过 0.99。方法论沉淀均匀随机字段识别的三个条件第一每个取值覆盖全部用户user_cnt恒定第二归一化熵 ≥ 0.99第三最大份额 ≤ 品类数倒数的 1.2 倍。三条同时满足即可判定为均匀随机字段。输出ads_city_category_dist520 行、ads_city_summary26 行。5. 第三层关联与分群B10–B115.1 B10 品类共现与关联规则分析目的回答哪些品类经常被一起买用于捆绑销售和搭配推荐。结果购物篮平均 2.98 个品类最大 5 个。190 对品类对全部有共现没有一对为零是完全稠密的共现矩阵。共现归一化熵 0.999616比单品类分布更均匀。FP-Growth 输出 210 个频繁项集其中 20 个 1-项集190 个 2-项集3-项集为 0。380 条规则的提升度中位数 0.9428低于 1.0。只有 4 条规则的提升度超过 1.05最高 1.0738。提升度小于 1 的解释购物篮容量约束下提升度小于 1 是正常现象。假设 20 个品类完全均匀每个购物篮固定装 3 个品类即使两个品类完全独立提升度也会是 0.70 左右。所以提升度中位数低于 1 不是负相关是几何约束。算法切换原设计用 Apriori。探测发现共现矩阵完全稠密后改用 FP-Growth。输出结果与 Apriori 完全一致但扫描数据次数从最大项集长度次降到 2 次避免候选集膨胀。输出ads_category_cooccurrence190 行、ads_category_rules380 行。5.2 B11 用户 RFM 与聚类分群分析目的回答高价值、潜力、流失用户是谁。结果“R 维度完全均匀。所有 100 个用户的 R 都等于 1标准差为 0。每个用户在 07-26 这天都有行为。F 和 M 有区分度。F 范围 977 到 2327M 范围 78 到 233。但 F 和 M 的皮尔逊相关系数是 0.8484高度正相关数据本质是一维的。K-means 在 k2 时达到最优silhouette0.5161。两群分别是低价值 40 人F 均值 1408M 均值 122和高价值 60 人F 均值 1840M 均值 167.5。Mann-Whitney 检验 p 值小于 1e-15。高价值用户占比 60%远高于真实电商的二八原则。输出ads_user_rfm100 行、ads_user_cluster100 行。6. 第四层方法论演示三部曲B12–B14这一层的定位不是找业务答案而是演示方法能做什么、不能做什么。三个实验共享同一个主题简单方法 ≥ 高级方法。6.1 B12 异常流量与刷单识别分析目的原设计要识别刷单和异常流量。探测结论数据是合成的不存在真实业务异常。四条铁证session 内相邻行为时间间隔最大 11 秒24 小时分布均匀100 用户全 10 天活跃支付无下单比例 27.75%。B12 因此改为方法论演示。三方法分工Z-score 定位可疑候选卡方用统计检验验证iForest 从多维角度独立复核。实测结果搜索词手机的 Z 值为 -2.2306卡方贡献 1802.5占卡方总值的 83%。卡方总值 2174.49是临界值 11.07 的 196 倍。iForest 从 11 维特征标记 415 个 session 异常占 5.00%。V2 候选 30 个被 iForest 命中 11 个占 36.7%。敏感性分析iForest 的 contamination 从 0.01 变到 0.10异常数从 83 变到 830V2 候选命中从 1 变到 25。这说明 iForest 的输出不是客观异常清单而是主观设定的前 N% 离群点。输出ads_anomaly_zscore36 行、ads_anomaly_iforest8744 行、ads_anomaly_summary8750 行。6.2 B13 用户行为路径挖掘分析目的从 session 序列里找出反复出现的路径模式。四工具分工马尔可夫链验证是否有条件结构n-gram 找局部模式路径聚类压缩路径规则分组给出主结论。结果马尔可夫链4×4 转移矩阵四行几乎完全一致。不管当前行为是什么下一步到 click 的概率都是 0.663 到 0.671。条件偏差最大值 0.0042KL 散度都在 1e-5 量级。行为序列近似独立随机。n-gram 提升度含 search 的 n-gram 提升度都大于 1searchsearchsearch最高 1.337clickclickclick最低 1.149。搜索密度越高转化率越高。路径聚类K-means 最优 k13silhouette 只有 0.328属于弱结构。聚类边界和规则分组完全重合没有发现新结构。规则分组4 类路径类型完整转化 2970 个34.0%纯浏览 2626 个30.0%下单不付 2007 个23.0%支付无下单 1141 个13.0%。4 类的user_cnt都是 100每个用户都派发了全部 4 类 session。路径长度与转化率6 个分桶全部单调下单率从 1-5 桶的 18.5% 升到 100 桶的 100%。跨度 5.4 倍。输出ads_path_markov4 行、ads_path_type4 行、ads_path_cluster8744 行、ads_path_ngram_lift80 行、ads_path_seqlen_conv6 行、ads_path_kmeans_scan14 行、ads_path_rule_vs_kmeans4 行。6.3 B14 用户标签体系构建分析目的原设计要从 20 多个维度做用户画像。结果PCA前 3 个主成分解释 63.81% 方差。三类质心沿 PC1 有 4.4 单位偏移但点云严重重叠。存在弱梯度无清晰分群。LDA三类在 LDA 2D 上看起来分得很开但这是循环论证。value_tier本身是从f_cnt和m_cnt派生的LDA 只是在验证一个已知事实。t-SNE三种 perplexity 和随机种子下分团方向完全不同。分团是算法产物不是数据属性。K-means最优 k2silhouette0.2144基本无结构。K-means 与value_tier的 ARI 只有 0.318弱一致。DBSCAN27 个参数组合全部失效要么全噪声要么全一簇。核心方法论发现没有外部标签时监督降维必然自证。LDA 的分开来自标签标签又来自特征这是同义反复。打破循环的唯一方法是有不来自特征的外部标签但这份数据没有。输出ads_user_feature_wide100 行、ads_user_label100 行、ads_user_label_summary11 行、ads_user_pca100 行、ads_user_lda100 行、ads_user_tsne100 行、ads_user_kmeans_scan9 行、ads_user_dbscan_scan27 行、ads_user_agreement_metrics20 行、ads_user_cluster_label100 行。7. 第五层建模与预测B15–B167.1 B15 品类推荐系统分析目的原设计要跑协同过滤、规则推荐、混合推荐比较离线指标。信号审计推荐系统能成立依赖三个前提用户有偏好差异、物品有区分度、存在未观测项。三个前提全部不成立。矩阵密度 1.000训练集 2000 个格子全部非零。用户熵均值 0.9884接近 1.0。品类份额 Top1 只有 0.052均匀期望是 0.050。基尼系数 0.0115接近 0。六方法对照Random、Popular、UserHistory、RuleBased、UserCF、ItemCF 六种方法。K10 时 HitRatio 极差仅 0.009。Random 0.926UserCF 0.929ItemCF 0.933。差异属于噪声级别。K20 时全部方法 HitRatio 都是 1.000指标完全失去区分力。Popular 在 K5 时 HitRatio 0.904低于 Random 的 0.928。原因是覆盖率只有 0.25所有用户收到同一个列表越集中越难命中。用户相似度用户两两余弦相似度均值 0.9365。这不是偏好相似是伪相似。所有用户都在 20 个品类上均匀撒行为向量方向几乎一致余弦相似度自然接近 1。任何用户都是任何用户的相似邻居邻居加权等价于全局平均。输出ads_reco_metrics18 行、ads_reco_summary1 行、ads_reco_topn21000 行。7.2 B16 用户级预测可行性审计分析目的原设计要做流失预测和价值预测。B16 把两者合并做一次可行性审计。流失审计100 用户最后行为日期全部是 2019-07-26。100 用户在 10 天窗口内全部每天活跃。流失正样本为 0。流失分类任务不可定义分类审计终止。价值审计时间切分前 7 天历史后 3 天预测。未来 3 天支付次数均值 22.59标准差 7.28范围 8 到 41零值比例为 0。目标有方差看起来可以回归。相关性审计6 个历史特征与未来支付的最大 Pearson 相关是 0.208最大单变量 AUC 是 0.584。历史支付次数与未来支付次数的相关性是 0.057。6 个特征同时比较时Bonferroni 校正后没有一个显著。回归基线全局均值 MAE 5.97历史支付次数 3/7 缩放版 MAE 7.03线性回归 5 折 CV 的 MAE 6.15。全局均值最优任何模型都打不过它。输出ads_prediction_feasibility2 行、ads_user_value_baseline4 行。8. 实验之间的逻辑关系16 个实验不是 16 个独立任务而是一条有依赖的链。纵向依赖B01 的数据认知支撑 B02 的结构设计。B02 的 DWD 支撑 B03 到 B16 的全部分析。B03 的漏斗结论支撑 B04 的品类排名调整。B04 的品类清单支撑 B05 的 session 下钻。B05 的头部集中支撑 B07 的长尾发现。B07 的 session 序列支撑 B13 的路径挖掘。B11 的用户分群支撑 B14 的用户标签。B12 的异常检测支撑 B14 的异常特征。B13 的路径标签支撑 B14 的路径特征。B14 的用户特征宽表支撑 B15 的规则推荐。B15 的推荐结论和 B16 的预测结论互为呼应。横向交叉验证B03 的支付 session 数 4111B06 的支付 session 数 4111B07 的支付 session 数 4111。三个实验独立计算数字完全一致。B06 的 n-gram 2-gram 频次 158026B07 的 2-gram 频次 158026。两个实验独立计算数字完全一致。B12 的支付无下单行数 1141B13 的支付无下单 session 数 1141。两个实验粒度不同数字完全一致。这些交叉验证说明各实验的口径是一致的结论可以互相信任。9. 核心发现汇总9.1 数据分析层面电商平台数据分析应该覆盖六个维度。用户维度回答用户是谁、值多少钱、会不会走。品类维度回答哪些品类热、哪些品类能一起卖。页面维度回答用户在页面间怎么跳、哪一跳流失最多。会话维度回答用户一次访问做了什么、路径有多长。搜索维度回答用户主动搜什么、搜完之后转化如何。城市维度回答地域偏好有没有差异。每个维度的分析目的不同不能互相替代。用户维度做分群和预测品类维度做推荐和捆绑页面维度做流程优化会话维度做行为序列搜索维度做意图识别城市维度做区域运营。六个维度的分析前提都必须先验证。用户维度要先验证用户之间有没有差异。品类维度要先验证品类分布是否均匀。页面维度要先验证页面跳转是否有结构。会话维度要先验证会话长度是否有分布。搜索维度要先验证搜索词是否有长尾。城市维度要先验证城市是否与用户绑定。9.2 数据认知层面这份数据是参数化合成的共有 9 条铁证。编号铁证来源1时间间隔 ≤ 11 秒B12224 小时分布均匀B123100 用户全 10 天活跃B124行为序列近似独立随机B135路径长度与转化率强单调B136每个用户都派发 4 类 sessionB137用户维度近似独立同分布B148用户-品类矩阵全密集、用户熵接近 1B159流失正样本为 0、价值目标不可预测B16九条铁证共同描绘出一个参数化生成器对每个用户 u for 每一天 d for 每个 session s 1. 决定该 session 是否转化 2. 随机填充行为序列4 状态独立同分布 3. 随机生成时间戳间隔 ≤ 11 秒 4. 保证每个用户每天都活跃 5. 保证每个用户覆盖全部 20 个品类9.3 方法论层面简单方法 ≥ 高级方法在合成数据、小样本、无外部标签条件下反复成立。实验对照结论B11规则分层 vs K-means规则胜B12Z-score / 卡方 vs iForest简单不输B13规则分组 vs K-means规则胜B14PCA / LDA / t-SNE / DBSCAN高级制造假结构B15CF vs 随机 / 热门 / 规则CF 不优于随机B16均值基线 vs 用户历史 / 线性回归均值基线最优没有外部标签时监督方法必然自证。B14 的 LDA 实验是这条结论的直接证据。标签来自特征LDA 用标签找投影方向找出来的方向必然是特征组合画出来必然分开。这是同义反复不是发现。数据的信息量决定模型的上限。B15 的协同过滤不是效果不好是跑出来没有意义。矩阵全密集、均匀没有任何模型能从均匀里学到非均匀。B16 的价值预测同理全局均值是最优解任何模型都不如它。均匀是有维度的。B03 到 B06 说的均匀是聚合边缘均匀B07 说的长尾是个体结构长尾两者不矛盾。聚合后的边缘分布均匀不代表个体分布均匀。以后遇到均匀结论必须问一句哪个维度的均匀。10. 对电商数据分析实践的启示10.1 先审计再建模B15 和 B16 的最大价值不是跑了什么模型而是在建模之前先做了信号审计。B15 的 Step 0 检查了矩阵密度、用户熵、品类份额、相似度分布确认三个前提全部不成立后才决定不做真正的推荐建模。B16 同样先做了流失标签审计和价值目标审计确认任务不成立后才决定不跑复杂模型。这个流程可以复用到任何数据分析任务先回答任务能不能定义、目标有没有信号再决定用什么模型。10.2 交叉验证是硬约束B03、B06、B07 独立计算的支付 session 数完全一致。B06 和 B07 独立计算的 2-gram 频次完全一致。B12 和 B13 在行级和 session 级分别计算的pay_no_order完全一致。这些交叉验证不是多余的。如果某个实验的口径写错了交叉验证会立刻暴露。B 组执行过程中因为交叉验证发现了多次口径不一致及时修正。10.3 诚实交代局限B12 和 B13 都明确写了这是合成数据结论限定在方法论演示范围。B14 明确写了没有外部标签监督降维必然自证。B15 明确写了候选集选择是权宜之计。B16 明确写了样本量小统计效力低。这些局限不是自我贬低是给读者一个正确的使用边界。一份分析报告如果不说清适用范围读者会误用。10.4 每个实验都要有可复用的产出B01 产出的是一套已被验证的数据认知。B02 产出的是DWD 结构。B03 产出的是业务认知。B04 产出的是均匀认知。B05 产出的是头部结构认知。B06 产出的是页面稠密认知。B07 产出的是长尾认知。每一层都在为下一层提供输入。这些输入不只是表还包括认知、口径、方法论。表会被覆盖认知不会。11. 结语B 组实验从一份 18.6 MB 的电商用户行为日志出发经过 16 个实验覆盖数据治理、描述性分析、关联分群、方法论演示、建模预测五个阶段产出了 60 多张 ADS 表、10 余张可视化图、20 多个 HQL 和 Python 脚本以及一份关于这份数据能做什么、不能做什么的完整认知。核心结论有三条第一电商平台数据分析应该覆盖用户、品类、页面、会话、搜索、城市六个维度每个维度回答不同的业务问题不能互相替代。第二每个维度的分析前提都必须先验证。用户维度要验证用户差异品类维度要验证品类分布页面维度要验证跳转结构会话维度要验证长度分布搜索维度要验证词频长尾城市维度要验证字段随机性。第三简单方法在合成数据、小样本、无外部标签条件下反复优于高级方法。这不是高级方法不好是数据的信息量决定模型的上限。B 组的价值不在发现了什么业务洞察而在用严格的方法确认了这份数据没有多少业务洞察并在这个过程中沉淀了一套可复用的分析方法论。这份方法论可以带到任何电商数据分析任务里先审计数据底座再验证分析前提再选择合适的方法最后诚实交代局限。
返回列表