news 2026/3/2 3:26:39

数据变化(原始数据—数据清洗—特征工程)

作者头像

张小明

前端开发工程师

1.2k 24
文章封面图
数据变化(原始数据—数据清洗—特征工程)

数据清洗步骤

用户行为数据缺失值处理

  • user_id、item_id是关联用户和商品的唯一标识,缺失后无法建立有效关联
  • behavior_type是核心行为标签,缺失无法定义交互类型
  • timestamp是时间序列分析的基础,缺失影响序列特征的准确性
  • 直接删除比填充更可靠,避免了引入噪声
""" 原始数据示例: user_id | item_id | behavior_type | timestamp ---------|----------|---------------|---------- user_001 | item_001 | click | 2023-10-01 10:00 null | item_002 | cart | 2023-10-01 10:05 user_002 | null | buy | 2023-10-01 10:10 user_003 | item_003 | null | 2023-10-01 10:15 user_004 | item_004 | click | null 清洗后数据: user_id | item_id | behavior_type | timestamp ---------|----------|---------------|---------- user_001 | item_001 | click | 2023-10-01 10:00 """

异常用户/商品ID过滤

  • 统一ID格式便于数据管理和特征工程
  • 异常ID可能是测试数据或错误数据,会影响模型效果
  • 正则表达式匹配确保数据规范性
""" 原始数据: user_id | item_id | behavior_type -------------|-------------|--------------- user_001 | item_001 | click unknown_user | item_002 | cart user_002 | invalid_id | buy test_user | test_item | collect 清洗后数据: user_id | item_id | behavior_type ---------|----------|--------------- user_001 | item_001 | click """

低频用户/商品过滤

  • 低频用户行为稀疏,难以学习有效特征
  • 低频商品样本不足,难以准确建模
  • 过滤后提高数据质量,减少噪声干扰
  • 阈值根据业务经验设置(用户≥3次,商品≥5次)
""" 原始数据(用户行为统计): user_id | 行为次数 ---------|--------- user_001 | 15 user_002 | 8 user_003 | 2 # 低频用户 user_004 | 1 # 低频用户 清洗后保留: user_id | 行为次数 ---------|--------- user_001 | 15 user_002 | 8 """

商品数据异常价格处理

  • 负价格是数据错误,需要修正
  • 0价格可能是免费商品或数据缺失,需要特殊处理
  • 极端高价可能是错误数据,需要截断
  • 价格范围(0.01, 10000)根据实际业务场景设置
""" 原始数据: item_id | price | category ---------|--------|---------- item_001 | 99.99 | Electronics item_002 | -10.0 | Clothing # 异常价格 item_003 | 0.0 | Books # 异常价格 item_004 | 999999 | Home # 异常价格 清洗后数据: item_id | price | category ---------|--------|---------- item_001 | 99.99 | Electronics item_002 | 10.0 | Clothing # 修正为有效范围 item_003 | 0.01 | Books # 设置最小有效价格 item_004 | 10000 | Home # 截断到最大值 """

特征工程步骤

用户基础特征提取

  • 静态特征:描述用户固有属性,是用户画像基础
  • 行为统计特征:量化用户历史行为,反映用户偏好
  • 转化率特征:衡量用户从浏览到购买的能力
  • 时间特征:反映用户活跃度和新鲜度
  • 编码处理:将分类变量转换为数值,便于模型处理
""" 原始用户数据: user_id | age | gender | registration_date ---------|-----|--------|------------------ user_001 | 25 | M | 2023-01-15 user_002 | 35 | F | 2023-03-20 用户行为数据: user_id | behavior_type | timestamp ---------|---------------|---------- user_001 | click | 2023-10-01 10:00 user_001 | cart | 2023-10-01 11:00 user_001 | buy | 2023-10-01 12:00 user_002 | click | 2023-10-01 10:05 特征提取后: user_id | age | gender_encoded | registration_days | total_actions | purchase_count | conversion_rate | days_since_last_action | active_days ---------|-----|----------------|-------------------|---------------|----------------|-----------------|------------------------|------------ user_001 | 25 | 0 | 258 | 12 | 2 | 0.167 | 1 | 6 user_002 | 35 | 1 | 207 | 9 | 1 | 0.111 | 1 | 5 """

商品热度趋势特征

  • 多时间窗口统计:捕捉商品不同周期的热度变化
  • 趋势比率:反映商品热度的增长/衰减趋势
  • 时效性:近期行为比远期行为更具参考价值
  • 扛波动性:多时间窗口平滑单日波动影响
""" 原始行为数据(时间序列): item_id | timestamp | behavior_type ---------|---------------------|-------------- item_001 | 2023-10-01 10:00 | click item_001 | 2023-10-05 14:00 | buy item_001 | 2023-10-07 09:00 | cart item_001 | 2023-10-14 16:00 | click item_002 | 2023-10-01 11:00 | click item_002 | 2023-10-02 10:00 | click 特征提取后(当前时间:2023-10-15): item_id | total_actions | actions_7d | actions_30d | trend_7d_30d ---------|---------------|------------|-------------|------------- item_001 | 4 | 2 | 4 | 0.5 item_002 | 2 | 0 | 2 | 0.0 """

行为序列特征

  • 序列模式:揭示用户行为的内在规律
  • 转换概率:量化行为间的转换倾向
  • 时间模式:反映用户的行为节奏
  • 个性化表征:每个用户的序列特征都是独特的
""" 用户行为序列: 用户: user_001 时间序列: [click, click, cart, click, buy, click, cart, buy] 提取的序列特征: - sequence_length: 8 - unique_items: 5 - click_ratio: 0.5 (4/8) - cart_ratio: 0.25 (2/8) - buy_ratio: 0.25 (2/8) - transition_click_to_cart: 0.25 (从click到cart的转换概率) - transition_click_to_buy: 0.125 - avg_time_interval: 平均行为间隔时间 """

图特征提取

  • 结构信息:捕捉用户和商品在图中的位置重要性
  • 协同信息:通过共同邻居发现相似用户/商品
  • 流行度传播:中心点往往更受欢迎
  • 冷启动缓解:新用户/商品可以通过图结构获得特征
""" 用户-商品交互图: 用户节点: [user_001, user_002, user_003] 商品节点: [item_001, item_002, item_003, item_004] 边: (user_001, item_001), (user_001, item_002), (user_002, item_001), ... 提取的图特征: 用户图特征: user_id | graph_degree | weighted_degree | avg_jaccard_similarity ---------|--------------|-----------------|------------------------ user_001 | 2 | 7 | 0.15 user_002 | 1 | 5 | 0.10 商品图特征: item_id | graph_degree | weighted_degree | avg_user_degree ---------|--------------|-----------------|---------------- item_001 | 2 | 12 | 1.5 item_002 | 1 | 5 | 2.0 """
版权声明: 本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若内容造成侵权/违法违规/事实不符,请联系邮箱:809451989@qq.com进行投诉反馈,一经查实,立即删除!
网站建设 2026/2/28 3:44:19

探索Matlab水下图像处理与GUI界面构建之旅

数字图像处理matlab水下图像处理,gui 界面运用,有讲解报告 在数字图像处理的广袤领域中,水下图像处理因其独特的挑战而备受关注。Matlab作为一款强大的工具,为我们解决水下图像处理难题提供了丰富的资源和便捷的途径。同时&#…

作者头像 李华
网站建设 2026/2/27 2:36:24

大模型开发学习路径:从基础知识到工程实战的完整指南

文章提供大模型(LLM)从入门到实战的12个月完整学习路线,分为四个阶段:阶段1打牢Python、数学和深度学习基础;阶段2掌握Prompt工程、LangChain等核心框架;阶段3学习模型微调与部署技术;阶段4探索多模态与工程化应用。每…

作者头像 李华
网站建设 2026/3/2 10:10:12

导师严选2026 10款一键生成论文工具测评:本科生毕业论文必备清单

导师严选2026 10款一键生成论文工具测评:本科生毕业论文必备清单 2026年学术写作工具测评:为本科生毕业论文提供高效解决方案 随着高校对学术规范要求的不断提高,本科生在撰写毕业论文过程中面临诸多挑战,如文献检索效率低、格式…

作者头像 李华
网站建设 2026/2/25 22:56:28

多模态融合技术全解析:从传统架构到GPT-4o的演进之路

文章系统介绍了多模态融合技术的演进历程,从早期融合、晚期融合到Transformer时代的深度交互,再到当前主流的连接器范式和前沿的原生融合技术。详细分析了不同融合方法的优缺点、适用场景及工程实现,包括模态对齐、幻觉等常见问题的解决方案&…

作者头像 李华
网站建设 2026/3/2 13:00:01

如何快速删除 Linux 中的海量小文件:告别rm命令的缓慢困境

在 Linux 系统中,当一个目录下积攒了数百万个小文件(如缓存、会话文件或日志)时,传统的 rm -rf * 命令会变得极其缓慢。这是因为 rm 需要对每个文件执行系统调用,并逐一更新文件系统的元数据。 rm 命令删除文件时&…

作者头像 李华