模型并行之Embedding表

举报
永荣带你玩转昇腾 发表于 2025/05/24 17:05:41 2025/05/24
【摘要】 模型并行之Embedding表Embedding在推荐模型中承担着将用户、物品及上下文信息映射为低维稠密向量的核心任务,通过捕捉潜在语义关联和协同过滤信号,为推荐系统提供可计算的特征表达基础。其向量化表征能力不仅解决了高维稀疏数据难以直接建模的问题,更能通过隐式关系挖掘支撑用户兴趣建模和相似度计算,这种稠密向量空间的连续性特征为后续针对不同行为序列、场景维度或兴趣簇的Embedding切片...

模型并行之Embedding表

Embedding在推荐模型中承担着将用户、物品及上下文信息映射为低维稠密向量的核心任务,通过捕捉潜在语义关联和协同过滤信号,为推荐系统提供可计算的特征表达基础。其向量化表征能力不仅解决了高维稀疏数据难以直接建模的问题,更能通过隐式关系挖掘支撑用户兴趣建模和相似度计算,这种稠密向量空间的连续性特征为后续针对不同行为序列、场景维度或兴趣簇的Embedding切片分析提供了可行性,例如基于时间衰减、行为类型或属性聚类的切片方式可进一步细化用户意图的动态表征。

接下来以一个案例为例介绍有关Embedding表的5种切分方式: Table Wise **、Column WiseRow WiseTable Wise&Row Wise 、网格切分**。(前提 :假设用户有128个特征,每个特征的Dim是128,注:下图中Devicexx 表示不同的主机或服务器,Rankx****x表示同一个主机上的不同卡)

  • Table Wise切分:表示将所有embedding表放置在一个同一个device上的同个Rank上,其余的Rank和Device不放置。

  • Row Wise****切分 :表示将Embedding 表按照key的维度进行切分。注意::图右方的Device一般指的是不同的服务器,也可根据表的大小与需要进行设置到同一个Device。

  • Column Wise****切分 :表示将Embedding 表按列(Embedding Dim)切分到不同的Rank上,一个Embedding Dim维度为128均分切到4张卡上变成[0~31, 32~63,64~95,96~127]。也就是每一个Rank分别获取每个特征的{[0, 31],[32, 63], [64, 95], [96, 127]}。注意 :图中上方的Device一般指的是不同的服务器,也可根据表的大小与需要进行设置到同一个Device。

  • Table Wise&Row Wise :组合切分方式,将Table Wise与Row Wise进行结合,其表示将表放置在一个主机上,在该主机上的 rank 之间进行行式拆分。

网格切片:其组合了Table Wise、Row Wise 和Column Wise三种,表示先将Embedding表按照Column Wise切片,然后再将CW 分片后的结果以TWRW方式放置在主机上。

4:数据并行并行之Embedding表:数据并行表示每个Rank中都保留整个表的副本。

【声明】本内容来自华为云开发者社区博主,不代表华为云及华为云开发者社区的观点和立场。转载时必须标注文章的来源(华为云社区)、文章链接、文章作者等基本信息,否则作者和本社区有权追究责任。如果您发现本社区中有涉嫌抄袭的内容,欢迎发送邮件进行举报,并提供相关证据,一经查实,本社区将立刻删除涉嫌侵权内容,举报邮箱: cloudbbs@huaweicloud.com
  • 点赞
  • 收藏
  • 关注作者

评论(0

0/1000
抱歉,系统识别当前为高风险访问,暂不支持该操作

全部回复

上滑加载中

设置昵称

在此一键设置昵称,即可参与社区互动!

*长度不超过10个汉字或20个英文字符,设置后3个月内不可修改。

*长度不超过10个汉字或20个英文字符,设置后3个月内不可修改。