paper2skills Playbook

KG-Powered User Profiling — 知识图谱驱动的用户画像:产品知识增强推荐

Skill-KG-Powered-User-Profiling · 08-知识图谱

experimentrecommendationknowledge_graphpricing客服与VOC推荐与搜索知识图谱与RAG定价与利润WF-C 客服分诊WF-D 选品扫描WF-E Review监控WF-F 动态定价WF-H 复购增长
年化 ROI跨品类推荐 CTR 提升 18%,用户 LTV 增加,冷启动转化率提升
实现难度⭐⭐⭐☆☆
业务优先级⭐⭐⭐⭐☆
业务视角
适用角色选品负责人 / 运营负责人 · 数据分析师 · 供应链负责人
适用平台Amazon 品类体系 · 竞品 ASIN 网络分析
什么情况下用品类很多,不清楚品类间的关联,没法做系统性类目扩张规划;竞品矩阵太复杂,品牌/SKU/渠道理不清
成功是什么样的建立品类知识图谱,清晰看到哪些是入口品/引流品/利润品,指导下一步选品扩张方向
业务痛点
品类太多不知道先做哪个竞品关系理不清楚不知道用户买了奶瓶还会买什么类目扩张没有逻辑

1. 解决的问题

传统协同过滤仅依赖 user-item 矩阵,缺乏对产品语义的理解,导致跨品类推荐能力弱。KG-Powered User Profiling 通过异构图融合将产品知识图谱(属性/认证/成分/适用年龄段)与用户行为图(购买/浏览/评价)结合,构建知识增强的用户偏好向量。

2. 核心算法逻辑

传统协同过滤仅依赖 useritem 矩阵,缺乏对产品语义的理解,导致跨品类推荐能力弱。KGPowered User Profiling 通过异构图融合将产品知识图谱(属性/认证/成分/适用年龄段)与用户行为图(购买/浏览/评价)结合,构建知识增强的用户偏好向量。

3. 业务应用场景

业务背景:用户历史购买了有机奶粉,如何推荐有机辅食/有机婴儿护肤?

效果:跨越奶粉→辅食→婴儿护肤的品类边界,CTR 提升 18%,用户 LTV 增加。

业务背景:WF-D 选品阶段,发现用户购买了竞品 X 但未购买我方同类产品,通过 KG 分析竞品属性关联,找到用户未购买但知识关联强的品类。

4. 输入数据要求

请查看原始代码模板获取输入规格。

5. 输出结果

请查看原始代码模板获取输出规格。

6. 业务价值 / ROI

  • 跨域:Skill-User-Funnel-Analysis

7. 代码模板

代码块数量:3 · 路径:未检测到

"""
KG-Powered User Profiling — 知识图谱驱动的用户画像
Python 标准库实现,无第三方依赖
"""
from __future__ import annotations
from dataclasses import dataclass, field
from typing import Optional
import math
import heapq


# ─────────────────────────────────────────────
# 数据结构
# ─────────────────────────────────────────────

@dataclass
class ProductKGNode:
    """产品知识图谱节点"""
    product_id: str
    name: str
    category: str                          # 一级品类,如 "奶粉"
    sub_category: str = ""                 # 二级品类,如 "有机奶粉"
    attributes: dict[str, str] = field(default_factory=dict)       # 如 {"成分": "DHA", "适用月龄": "0-6"}
    certifications: list[str] = field(default_factory=list)        # 如 ["EU有机认证", "FDA认证"]
    tags: list[str] = field(default_factory=list)                   # 如 ["有机", "益生菌"]
    price_tier: str = "mid"                # low/mid/high


@dataclass
class UserAction:
    """用户行为记录"""
    user_id: str
    product_id: str
    action_type: str      # purchase/view/review
    timestamp: float      # Unix timestamp
    score: float = 1.0    # 评分(review时有效)


# ─────────────────────────────────────────────
# 用户 KG 画像构建器
# ─────────────────────────────────────────────

class UserKGProfiler:
    """从行为历史推断用户知识偏好向量"""

    # 行为类型基础权重
    ACTION_WEIGHTS = {
        "purchase": 3.0,
        "review": 2.0,
        "view": 0.5,
    }

    def __init__(
        self,
        kg_nodes: list[ProductKGNode],
        decay_factor: float = 0.9,
        max_age_days: float = 180.0,
    ):
        """
        Args:

8. 论文来源

未自动抽取;请查看原始 Skill 卡片。