/Recommender_System

推荐系统入门指南,全面介绍了工业级推荐系统的理论知识(王树森推荐系统公开课-基于小红书的场景讲解工业界真实的推荐系统),如何基于TensorFlow2训练模型,如何实现高性能、高并发、高可用的Golang推理微服务。Comprehensively introduced the theory of industrial recommender system, how to trainning models based on TensorFlow2, how to implement the high-performance、high-concurrency and high-available inference services base on Golang.

Primary LanguageJupyter NotebookApache License 2.0Apache-2.0

推荐系统

推荐系统从入门到精通,本项目全面介绍了工业级推荐系统的理论知识(王树森推荐系统公开课-基于小红书的场景讲解工业界真实的推荐系统),如何基于TensorFlow2训练模型,如何实现高性能、高并发、高可用的Golang推理微服务。以及一些Sklean和TensorFlow编程基础知识。Comprehensively introduced the theory of industrial recommender system base on deep learning, how to trainning models based on TensorFlow2, how to implement the high-performance、high-concurrency and high-available inference services base on Golang.
注意:第一部分的理论知识在本仓库,第二、三、四部分的代码在其他仓库,点击链接即可跳转。

注意

如果通过Github站内超链接打开Jupyter Notebook文件发生错误,可以点击根据 https://nbviewer.org 生成的“备用链接”间接访问对应文件。
或者通过以下链接访问整个项目的站外备用链接,注意点击站外备用链接里的非Jupyter Notebook格式文件会跳转回到Github仓库内:
Recommender_System

一、推荐系统理论 (Recommender System Theory)

王树森推荐系统公开课 - 基于小红书的场景讲解工业界真实的推荐系统,读书笔记。

01 概要 (Introduce)

推荐系统的链路     (备用链接)]
AB测试     (备用链接)

02 召回 (Recall)

基于物品的协同过滤(ItemCF)     (备用链接)
Swing召回通道     (备用链接)
基于用户的协同过滤(UserCF)     (备用链接)
离散特征处理     (备用链接)
矩阵补充     (备用链接)
双塔模型:模型和训练     (备用链接)
双塔模型:正负样本     (备用链接)
双塔模型:线上召回和更新     (备用链接)
双塔模型+自监督学习     (备用链接)
Deep Retrieval召回     (备用链接)
其他召回通道     (备用链接)
曝光过滤和Bloom Filter     (备用链接)

03 排序 (Ranking)

多目标排序模型     (备用链接)
MMoE     (备用链接)
预估分数融合     (备用链接)
视频播放建模     (备用链接)
排序模型的特征     (备用链接)
粗排模型     (备用链接)

04 特征交叉 (Feature Cross)

因子分解机FM     (备用链接)
深度交叉网络DCN     (备用链接)
LHUC网络结构     (备用链接)
SENet Bilinear Cross     (备用链接)

05 行为序列 (User Behavior Sequence)

用户行为序列建模     (备用链接)
DIN模型(注意力机制)     (备用链接)
SIM模型(长序列建模)     (备用链接)

06 重排 (Re-rank)

物品相似性的度量、提升多样性的方法     (备用链接)
MMR多样性算法     (备用链接)
业务规则约束下的多样性算法     (备用链接)
DPP多样性算法(上)     (备用链接)
DPP多样性算法(下)     (备用链接)

07 物品冷启动 (Cold Start)

优化目标&评价指标     (备用链接)
简单的召回通道     (备用链接)
聚类召回     (备用链接)
Look-Alike召回     (备用链接)
流量调控     (备用链接)
冷启动的AB测试     (备用链接)

08 推荐系统涨指标的方法 (Improvement)

概述     (备用链接)
召回     (备用链接)
排序     (备用链接)
多样性     (备用链接)
特征用户人群     (备用链接)
交互行为(关注、转发和评论)     (备用链接)

二、TensorFlow2模型训练 (Model Trainning)

以"DNN_for_YouTube_Recommendations"模型和电影评分数据集(ml-1m)为基础,详尽的展示了如何基于TensorFlow2实现推荐系统排序模型。
YouTube深度排序模型(多值embedding、多目标学习)

三、模型推理服务Golang (Inferecnce Services)

基于Goalng、Docker和微服务**实现了高并发、高性能和高可用的推荐系统推理微服务,包括多种召回/排序服务,并提供多种接口访问方式(REST、gRPC和Dubbo)等,每日可处理上千万次推理请求。
推荐系统推理微服务Golang

四、编程基础 (Sklearn/TensorFlow)

机器学习Sklearn入门教程
深度学习TensorFlow入门教程