美文网首页
7M推荐系统 - S3 Learn to Rank中的模型结构

7M推荐系统 - S3 Learn to Rank中的模型结构

作者: 左心Chris | 来源:发表于2020-01-07 19:16 被阅读0次

    1 重排序算法和多目标排序

    多目标排序

    score = CTR(α+CVR)(β+Price)...拍脑袋
    rules:同⼀XX N出1;活动扶持、新品扶持、低俗打压;流量控制…

    Learning to rank

    迁移学习和multi-task learning


    共享特征,共享权重

    2 排序和深度学习模型

    问题定义

    算法演变

    • 基于规则
    • LR
    • CART,RF
    • FM
    • GBDT/DNN
    • 模型融合
      大规模特征+线性模型(Google,Baidu)
      中小规模特征+非线性模型(Yahoo,Bing,FB,Taobao)
      数据优化:Position Bias

    DNN实用化

    • 搜索+DeepRank
      MS-DSSM,MS-DSSM CNN,MS - Deep Crossing
    • 推荐+DeepRank
    • DeepRank
      序列类,多媒体类,Attention,知识图谱

    3 分布式机器学习系统及其在排序模型中的应用

    推荐书籍:分布式机器学习:算法理论与实践

    概念

    分布式机器学习系统 = 分布式系统 + 机器学习
    分布式系统 = 分布式计算MapReduce + 分布式存储HDFS

    基本流程

    计算量太大:基于共享内存(或虚拟内存)的多线程或多机并行计算
    训练数据太多:数据划分, 分配到多个工作节点进行训练
    模型规模太大:模型划分, 分配到多个工作节点进行训练

    数据和模型划分

    数据对训练样本置乱切分
    模型:线性模型直接切分,深度模型横向或者纵向切分

    通信模块

    • 通信的内容
      数据并行:子模型或者子模型的更新(梯度), 应用最广泛的分布式机器学习模式
      模型并行:节点之间存在较强的依赖关系, 上一个子模型的输出是下一个的输入, 中间结果作为通信内容
    • 通信的拓扑结构
      基于迭代式MapReduce/AllReduce的通信拓扑:Spark MLlib
      基于参数服务器的通信拓扑:Google 的DistBelief,微软的Multiverso,PS-Lite,BytedancePs
      基于数据流的通信拓扑:TensorFlow
    • 通信的步调:同步与异步

    具体流程

    • 计算并行


    • 数据并行


    • 模型并行
      线性模型:



      深度模型:



    • 同步和异步SGD

      同步:
      异步:

    例子DistBelief

    模型并行,数据并行,异步SGD
    https://papers.nips.cc/paper/4687-large-scale-distributed-deep-networks.pdf

    4 深度召回和深度模型

    itemCF/userCF类, 矩阵分解类,deeplearning类
    通过用户历史(点击,收藏,点赞,购买,浏览)找候选topK
    如果是新用户可以hot2i,比如曝光top100,点击top100,收藏top100
    如何算user2i
    1.user2i根据日志统计出有用户行为的user2i
    2.有一类svd可以计算user的向量和item向量,根据向量来算user和item的相似度
    通过多种方式计算共现,比如共现点击,共现购买,共现收藏,共现曝光
    如何计算I2I:同品类,同tag,近似算法过滤

    解决方案1:SVD,SVD++,SVD+sideinfo
    解决方案2:FM
    解决方案3:引入交叉特征



    解决方案4:加入历史信息

    解决方案5和6:引入Topic Model,

    解决方案融合:







    相关文章

      网友评论

          本文标题:7M推荐系统 - S3 Learn to Rank中的模型结构

          本文链接:https://www.haomeiwen.com/subject/tceractx.html