Files
fun-rec/docs/README.md
2022-04-21 19:48:35 +08:00

153 lines
9.6 KiB
Markdown
Raw Blame History

This file contains ambiguous Unicode characters
This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.
# FunRec
<p align="left">
<img src='https://img.shields.io/badge/python-3.8+-blue'>
<img src='https://img.shields.io/badge/Tensorflow-2.2+-blue'>
<img src='https://img.shields.io/badge/NumPy-1.22.3-brightgreen'>
<img src='https://img.shields.io/badge/pandas-1.4.1-brightgreen'>
<img src='https://img.shields.io/badge/sklearn-1.0.2-brightgreen'>
</p>
本教程主要是针对具有机器学习基础并想找推荐算法岗位的同学。教程内容由推荐系统概述、推荐算法基础、推荐系统实战和推荐系统面经四个部分组成。本教程对于入门推荐算法的同学来说,可以从推荐算法的基础到实战再到面试,形成一个闭环。每个部分的详细内容如下:
- **推荐系统概述。** 这部分内容会从推荐系统的意义及应用,到架构及相关的技术栈做一个概述性的总结,目的是为了让初学者更加了解推荐系统。
- **推荐系统算法基础。** 这部分会介绍推荐系统中对于算法工程师来说基础并且重要的相关算法,如经典的召回、排序算法。随着项目的迭代,后续还会不断的总结其他的关键算法和技术,如重排、冷启动等。
- **推荐系统实战。** 这部分内容包含推荐系统竞赛实战和新闻推荐系统的实践。其中推荐系统竞赛实战是结合阿里天池上的新闻推荐入门赛做的相关内容。新闻推荐系统实践是实现一个具有前后端交互及整个推荐链路的项目该项目是一个新闻推荐系统的demo没有实际的商业化价值。
- **推荐系统算法面经。** 这里会将推荐算法工程师面试过程中常考的一些基础知识、热门技术等面经进行整理,方便同学在有了一定推荐算法基础之后去面试,因为对于初学者来说只有在公司实习学到的东西才是最有价值的。
项目在Datawhale的组队学习过程中不断的迭代和优化通过大家的反馈来修正或者补充相关的内容如果对项目内容设计有更好的意见欢迎给我们反馈。为了方便学习和交流建了一个fun-rec微信交流群由于微信群的二维码只有7天内有效所以直接加下面这个微信备注**Fun-Rec**会被拉到Fun-Rec交流群。由于现在已经有了好几个微信群为了更方便沉淀内容我们创建了一个Fun-Rec学习小组知识星球由于我们的内容面向的人群主要是学生所以知识星球永久免费感兴趣的可以加入星球讨论加入星球的同学先看置定的必读帖
<div align=center>
<img src="http://ryluo.oss-cn-chengdu.aliyuncs.com/图片image-20220408193745249.png" alt="image-20220408193745249" style="zoom:50%;" />
</div>
## 内容导航
### 推荐系统概述
- [推荐系统的意义](/推荐系统概述/推荐系统的意义)
- [推荐系统的架构](/推荐系统概述/推荐系统架构)
- [推荐系统技术栈](/推荐系统概述/推荐系统技术栈)
### 推荐系统算法基础
#### 经典召回模型 {docsify-ignore}
- **基于协同过滤的召回**
- UserCF【已完成待优化】
- ItemCF【已完成待优化】
- [Swing(Graph-based)](/推荐算法基础/经典召回模型/基于协同过滤的召回/Swing(Graph-based))
- 矩阵分解系列(ALS,SVD++)【已完成,待优化】
- **基于向量的召回**
- FM召回【未完成】
- **word2vec召回**
- word2vec原理【未完成】
- Airbnb召回【未完成】
- YoutubeDNN召回【完成一半待优化】
- **双塔召回**
- 经典双塔【未完成】
- Youtube双塔【未完成】
- MOBIUS【未完成】
- **图召回**
- [EGES](/推荐算法基础/经典召回模型/基于图的召回/EGES)
- PinSAGE【未完成】
- **序列召回**
- [MIND](/推荐算法基础/经典召回模型/基于序列的召回/MIND模型)
- [SDM](/推荐算法基础/经典召回模型/基于序列的召回/SDM模型)
- **树模型召回**
- TDM【未完成】
#### 经典排序模型
- **[GBDT+LR](/推荐算法基础/经典排序模型/GBDT+LR)**
- **特征交叉**
- [FM](/推荐算法基础/经典排序模型/特征交叉/FM)
- [PNN](/推荐算法基础/经典排序模型/特征交叉/PNN)
- [DCN](/推荐算法基础/经典排序模型/特征交叉/DCN)
- AutoInt【完成一半待优化】
- FiBiNET【完成一半待优化】
- **WideNDeep系列**
- **[Wide&Deep](/推荐算法基础/经典排序模型/Wide&Deep系列/Wide&Deep)**
- **改进Deep侧**
- [NFM](/推荐算法基础/经典排序模型/Wide&Deep系列/NFM)
- [AFM](/推荐算法基础/经典排序模型/Wide&Deep系列/AFM)
- **改进Wide侧**
- [DeepFM](/推荐算法基础/经典排序模型/Wide&Deep系列/DeepFM)
- xDeepFM【未完成】
- **序列模型**
- [DIN](/推荐算法基础/经典排序模型/序列模型/DIN)
- [DIEN](/推荐算法基础/经典排序模型/序列模型/DIEN)
- DISN【未完成】
- BST【未完成】
- **多任务学习**
- SharedBottom【已完成待优化】
- ESSM【已完成待优化】
- MMOE【已完成待优化】
- PLE【已完成待优化】
### 推荐系统实战
#### 竞赛实践(天池入门赛-新闻推荐)
- **视频**
- [赛题理解](https://www.bilibili.com/video/BV1do4y1d7FP?p=1)
- [多路召回](https://www.bilibili.com/video/BV1do4y1d7FP?p=4)
- [特征工程](https://www.bilibili.com/video/BV1do4y1d7FP?p=2)
- [上分技巧](https://www.bilibili.com/video/BV1do4y1d7FP?p=3)
- **文档**
- [赛题理解&Baseline](/推荐系统实战/竞赛实践/markdown/赛题理解+Baseline)
- [数据分析](/推荐系统实战/竞赛实践/markdown/数据分析)
- [多路召回](/推荐系统实战/竞赛实践/markdown/多路召回)
- [特征工程](/推荐系统实战/竞赛实践/markdown/特征工程)
- [排序模型&模型融合](/推荐系统实战/竞赛实践/markdown/排序模型+模型融合)
#### 新闻推荐系统实践
- **视频**
- [新闻推荐系统流程的构建视频讲解](https://datawhale.feishu.cn/minutes/obcnzns778b725r5l535j32o)
- **文档**
- **离线物料系统的构建**
- [Mysql基础](/推荐系统实战/新闻推荐系统实践/Mysql基础)
- [MongoDB基础](/推荐系统实战/新闻推荐系统实践/MongoDB基础)
- [Redis基础](/推荐系统实战/新闻推荐系统实践/Redis基础)
- [Scrapy基础及新闻爬取实战](/推荐系统实战/新闻推荐系统实践/scrapy基础及新闻爬取实战)
- [自动化构建用户及物料画像](/推荐系统实战/新闻推荐系统实践/自动化构建用户及物料画像)
- **前后端基础及交互**
- [前端基础及Vue实战](/推荐系统实战/新闻推荐系统实践/前端基础及Vue实战)
- [flask简介及基础](/推荐系统实战/新闻推荐系统实践/flask简介及基础)
- [前后端交互](/推荐系统实战/新闻推荐系统实践/前后端交互)
- [推荐系统流程的构建](/推荐系统实战/新闻推荐系统实践/推荐系统流程的构建)
- **召回**
- 热度召回【完成一半,待优化】
- 地域召回【完成一半,待优化】
- [YoutubeDNN召回](/推荐系统实战/新闻推荐系统实践/YouTubeDNN召回)
- [DSSM召回](/推荐系统实战/新闻推荐系统实践/DSSM召回)
- DeepFM排序模型【已完成待优化】
- 规则与重排【完成一半,待优化】
- 任务监控与调度【完成一半,待优化】
- **当前问题汇总**
- [熟悉推荐系统基本流程问答整理](/推荐系统实战/新闻推荐系统实践/熟悉推荐系统基本流程问答整理)
- [数据库的基本使用问答整理](/推荐系统实战/新闻推荐系统实践/数据库的基本使用问答整理)
- [离线物料系统的构建问答整理](/推荐系统实战/新闻推荐系统实践/离线物料系统的构建问答整理)
### 推荐系统算法面经
- [ML与DL基础](/推荐算法面经/ML与DL基础)
- [推荐模型相关](/推荐算法面经/推荐模型相关)
- [热门技术相关](/推荐算法面经/热门技术相关)
- [业务场景相关](/推荐算法面经/业务场景相关)
- [HR及其他](/推荐算法面经/HR及其他)
## 致谢
**核心贡献者**
- 罗如意-项目负责人Datawhale成员-西安电子科技大学-算法工程师)
- 何世福-项目发起者Datawhale成员-大连理工大学-算法工程师)
- 吴忠强Datawhale成员-东北大学-算法工程师-CSDN博客专家
- 赖敏材Datawhale成员-上海科技大学-算法工程师)
- 汪志鸿Datawhale成员-东北大学-算法工程师)
- 王辰玥Datawhale意向成员-中国地质大学(武汉)-在校生)
**其他**
感谢徐何军李万业陈琰钰陈锴梁家晖王贺宁彦吉田雨唐鑫宋禹成刘雯静吕豪杰张汉隆吴丹飞王云川肖桐管柯琴陈雨龙宋禹成等在最早期的时候对fun-rec所做的贡献!
## 关注我们
<div align=center>
<p>扫描下方二维码关注公众号Datawhale</p>
<img src="https://raw.githubusercontent.com/datawhalechina/pumpkin-book/master/res/qrcode.jpeg" width = "180" height = "180">
</div>
## LICENSE
<a rel="license" href="http://creativecommons.org/licenses/by-nc-sa/4.0/"><img alt="知识共享许可协议" style="border-width:0" src="https://img.shields.io/badge/license-CC%20BY--NC--SA%204.0-lightgrey" /></a>
本作品采用<a rel="license" href="http://creativecommons.org/licenses/by-nc-sa/4.0/">知识共享署名-非商业性使用-相同方式共享 4.0 国际许可协议</a>进行许可。