【王喆-推荐系统】开篇词

本文涉及的产品
云原生大数据计算服务MaxCompute,500CU*H 100GB 3个月
云原生大数据计算服务 MaxCompute,5000CU*H 100GB 3个月
简介: 在所有业界巨头的推荐引擎都由深度学习驱动的今天,作为一名推荐系统从业者,我们不应该止步于:(1)不能满足于继续使用协同过滤、矩阵分解这类传统方法,而应该加深对深度学习模型的理解;加强对大数据平台的熟悉程度,培养结合业务和模型的技术直觉,提高我们整体的技术格局。

一、学习目标和要求

1.学习目标

在所有业界巨头的推荐引擎都由深度学习驱动的今天,作为一名推荐系统从业者,我们不应该止步于:

(1)不能满足于继续使用协同过滤、矩阵分解这类传统方法,而应该加深对深度学习模型的理解;加强对大数据平台的熟悉程度,培养结合业务和模型的技术直觉,提高我们整体的技术格局。

(2)王喆大佬之前在硅谷担任推荐算法架构师,团队踩过很多坑,其中他说最宝贵的一点: 只有建立起深度学习推荐系统的知识体系,从系统的层面考虑问题,我们才能够实现整体效果上的优化。

(3)最现实的问题是,企业的一些推荐、广告、搜索算法部分在招聘时,更喜欢动手能力强、有实习经历、有业界项目经验的(所以即使可能不放实习,卑微读研生就应该多做项目,提交到github上!)。

(4)很多师兄师姐也确实说过。。算法工程师知识更新很快,一不小心就处于淘汰的边缘,王喆大佬说人才的分布都是金字塔式的,与其抱怨,不如提高自己的知识储备、工程能力和技术视野。

2.课前要求

(1)有一定编程基础;(2)有基本的机器学习概念知识。

自己将会学习的资料:

(1)东北大学的字节大佬github推荐系统项目:

https://github.com/zhongqiangwu960812/AI-RecommenderSystem还有强哥的博客。

(2)王喆大佬的书《深度学习推荐系统》,注意书中的勘误。

(3)推荐算法的论文:

1.盘一盘推荐系统里值得一读的那些论文

2.从200多篇顶会论文看推荐系统前沿方向与最新进展

(4)动手搭建项目,像之前的京东NLP项目一样的工业级项目(尝试)。

(5)王喆大佬网站:http://wzhe.me/(有书中说的paper)

(6)推荐系统是否进入图神经网络时代?,一篇综述

二、课程体系

image.png

1.基础架构篇

(1)讲解我们要从 0 开始实现的推荐系统,Sparrow RecSys 的主要功能和技术架构。由于缺少工业级的实验环境,Sparrow RecSys 不可能是一个真正的工业级推荐系统,但是它的每一行代码都是严谨的,其中的每个方法都是经过业界验证的主流方法。

(2)还会使用到 Spark、Flink、TensorFlow 这些业界目前最流行的机器学习和大数据框架

2.特征工程篇

(1)讨论推荐系统会用到的特征,以及主要的特征处理方式,并且把它们都实践在 Spark 上。

(2)讲解深度学习中非常流行的 Embedding、Graph Embedding 技术。特征工程是在准备食材。利用学到的 Embedding 方法,来实现 Sparrow Recsys 中的相似电影推荐功能,在实践中快速成长起来。

3.线上服务篇

(1)一个工业级推荐系统和实验室 Demo 的最大区别就在于线上服务部分。我们要搭建一个推荐服务器,它包括了服务器、存储、缓存、模型服务等相关知识。

(2)初步掌握 Jetty Server、Spark、Redis,这些工程领域的核心技能。

4.推荐模型篇

(1)学习深度学习推荐模型的原理和实现方法,主要包括 Embedding+MLP 、Wide&Deep、PNN 等深度学习模型的架构和 TensorFlow 实现

(2)注意力机制、序列模型、增强学习等相关领域的前沿进展。

5.效果评估篇

(1)学习效果评估的主要方法和指标。

(2)对一个成熟的推荐系统来说,还需要建立起包括线下评估、线上 AB 测试、评估反馈闭环等整套的评估体系,真正能够用业界的方法而不是实验室的指标来评价一个推荐系统。

6.前沿拓展篇

讲解 YouTube、阿里巴巴、微软、Pinterest 等一线公司的深度学习应用,帮助你追踪业界发展的最新趋势,并且找到自己技术道路上的方向。

三、小结

不要老想着一蹴而就,推荐系统的每个模块都有着极深的技术纵深,不管是 TensorFlow 还是 Spark,还是 Redis、Flink,它们中的每一个都需要我们持续性的钻研。这里我贴加一张之前看到过的58同城的推荐系统整体架构:

image.png

毛小伟大佬对上图的总结:

数据层:前后端通过埋点记录用户日志数据,KaFka消息队列将数据存入HDFS大数据文件系统中。这一层技术栈是Hadoop、Spark大数据组件

策略层:平常所说的推荐算法就是指这一层,需要重点掌握。首先是召回,主要根据用户部分特征,从海量的物品库里,快速找回一小部分用户潜在感兴趣的物品,然后交给排序环节,排序环节可以融入较多特征,使用复杂模型,来精准地做个性化推荐。召回强调快,排序强调准。这一块重点掌握模型:协同过滤、矩阵分解、FM、Embeding、Wide&Deep及其改进。

应用层:根据业务需求而不同。比如:广告点击、商品推荐、短视频推荐。

《深度学习推荐系统》,这本书高屋建瓴的介绍了推荐系统整体架构,发展历史以及未来趋势,各种推荐模型的演化之路,很适合前期用来搭建推荐系统知识框架。但是具体的模型并没有深入讲解,还得自己去看论文。这个也很正常,作为算法人员,经常看论文是必须的,就像开发人员要时常看官方技术文档。

相关实践学习
基于MaxCompute的热门话题分析
本实验围绕社交用户发布的文章做了详尽的分析,通过分析能得到用户群体年龄分布,性别分布,地理位置分布,以及热门话题的热度。
SaaS 模式云数据仓库必修课
本课程由阿里云开发者社区和阿里云大数据团队共同出品,是SaaS模式云原生数据仓库领导者MaxCompute核心课程。本课程由阿里云资深产品和技术专家们从概念到方法,从场景到实践,体系化的将阿里巴巴飞天大数据平台10多年的经过验证的方法与实践深入浅出的讲给开发者们。帮助大数据开发者快速了解并掌握SaaS模式的云原生的数据仓库,助力开发者学习了解先进的技术栈,并能在实际业务中敏捷的进行大数据分析,赋能企业业务。 通过本课程可以了解SaaS模式云原生数据仓库领导者MaxCompute核心功能及典型适用场景,可应用MaxCompute实现数仓搭建,快速进行大数据分析。适合大数据工程师、大数据分析师 大量数据需要处理、存储和管理,需要搭建数据仓库?学它! 没有足够人员和经验来运维大数据平台,不想自建IDC买机器,需要免运维的大数据平台?会SQL就等于会大数据?学它! 想知道大数据用得对不对,想用更少的钱得到持续演进的数仓能力?获得极致弹性的计算资源和更好的性能,以及持续保护数据安全的生产环境?学它! 想要获得灵活的分析能力,快速洞察数据规律特征?想要兼得数据湖的灵活性与数据仓库的成长性?学它! 出品人:阿里云大数据产品及研发团队专家 产品 MaxCompute 官网 https://www.aliyun.com/product/odps 
相关文章
|
机器学习/深度学习 搜索推荐 算法
【王喆-推荐系统】模型篇-(task5)wide&deep模型
Wide&Deep是工业界中有巨大影响力的模型,如果直接翻译成中文是宽和深的模型,其模型结构如下所示:wide和deep让模型兼具逻辑回归和深度神经网络的特点。
1228 0
【王喆-推荐系统】模型篇-(task5)wide&deep模型
|
机器学习/深度学习 搜索推荐 测试技术
【王喆-推荐系统】评估篇-(task2)推荐模型评估指标
准确率 (Accuracy) 是指分类正确的样本占总样本个数的比例。
1459 0
【王喆-推荐系统】评估篇-(task2)推荐模型评估指标
|
机器学习/深度学习 存储 分布式计算
【王喆-推荐系统】线上服务篇-(task5)部署离线模型
(1)业界主流的模型服务方法有 4 种,分别是预存推荐结果或 Embeding 结果、预训练 Embeding+ 轻量级线上模型、利用 PMML 转换和部署模型以及 TensorFlow Serving。
1037 0
【王喆-推荐系统】线上服务篇-(task5)部署离线模型
|
存储 SQL 机器学习/深度学习
【王喆-推荐系统】评估篇-(task5)Replay和Interleaving评估
A/B测试时流量不够用,需要排队进行自己的测试,拖慢实验的新思路和迭代优化模型的进度。 如何选择这么多种离线评估和在线评估测试方法。
393 0
【王喆-推荐系统】评估篇-(task5)Replay和Interleaving评估
|
消息中间件 机器学习/深度学习 缓存
【王喆-推荐系统】前沿篇-(task3)流处理平台Flink:实时推荐
ex:小明在刷抖音的足球视频,接着会继续推荐出相关视频,如果推荐系统没有实时抓住用户的兴趣点,推荐大妈广场舞的视频,小明可能会对该产品失去兴趣哈哈。
566 0
【王喆-推荐系统】前沿篇-(task3)流处理平台Flink:实时推荐
|
JSON 分布式计算 搜索推荐
【王喆-推荐系统】复习篇-Sparrow的个性化推荐功能
为了训练推荐模型,需要准备好模型所需的样本和特征。在进行模型线上推断的时候,推荐服务器也需要线上实时拼装好包含了用户特征、物品特征、场景特征的特征向量,发送给推荐模型进行实时推断。
553 0
【王喆-推荐系统】复习篇-Sparrow的个性化推荐功能
|
机器学习/深度学习 存储 自然语言处理
【王喆-推荐系统】特征工程篇-(task3)Embedding基础
(1)Word2vec 的研究中提出的模型结构、目标函数、负采样方法、负采样中的目标函数在后续的研究中被重复使用并被屡次优化。掌握 Word2vec 中的每一个细节成了研究 Embedding 的基础。
451 0
【王喆-推荐系统】特征工程篇-(task3)Embedding基础
|
4月前
|
搜索推荐 前端开发 数据可视化
【优秀python web毕设案例】基于协同过滤算法的酒店推荐系统,django框架+bootstrap前端+echarts可视化,有后台有爬虫
本文介绍了一个基于Django框架、协同过滤算法、ECharts数据可视化以及Bootstrap前端技术的酒店推荐系统,该系统通过用户行为分析和推荐算法优化,提供个性化的酒店推荐和直观的数据展示,以提升用户体验。
172 1
【优秀python web毕设案例】基于协同过滤算法的酒店推荐系统,django框架+bootstrap前端+echarts可视化,有后台有爬虫
|
6月前
|
搜索推荐 算法 小程序
基于Java协同过滤算法的电影推荐系统设计和实现(源码+LW+调试文档+讲解等)
基于Java协同过滤算法的电影推荐系统设计和实现(源码+LW+调试文档+讲解等)
|
6月前
|
搜索推荐 算法 小程序
基于Java协同过滤算法的图书推荐系统设计和实现(源码+LW+调试文档+讲解等)
基于Java协同过滤算法的图书推荐系统设计和实现(源码+LW+调试文档+讲解等)

热门文章

最新文章