推荐系统入门实践(1)概述

2020.04.30

这是我自己的一份梳理,还未完成,分享出来大家一起学习进步、讨论拍砖。

有的地方为了省事可能就直接截图了(我自己git上私人仓库)。

# 正文

本文件夹大致地介绍一下目前的推荐系统框架,主要是算法相关。

推荐系统一般主要包括召回、排序两个部分。在召回之前,需要有数据和特征;在排序之后,通常有重排序、多样性之类的后续处理;在召回和排序之间,可以加一个粗排。

召回,功能在于从超级巨大的候选池中选出排序性能可接受的小一些的候选集。通常,一个推荐系统会有多路召回,将多路召回的小候选集合并喂给排序。

排序,就是从小的候选池(召回给的)中选出更少的要展现给用户的item。比如抖音一次推荐给你的7个视频,比如知乎推给你的问题等等。

粗排和重排序,严格来说也可以算作是多级排序里的一小步;多样性控制之类则往往是为了提升用户体验。

## 召回

一般情况下,召回这一部分允许你试验各种奇思妙想,因为它跟用户之间还隔着排序,所以对性能之类的问题要求没有“那么”高。当然也是同样的原因,召回方面的优化对指标的提升往往不如排序明显。

召回可以分个性化和非个性化。所谓**非个性化**,比如热门召回,就是把最近最热门的东西推给用户,这对每个用户都是一样的。**个性化**呢,就是给每个用户是不同的,一种是基于用户画像的(基于倒排的),一种是基于用户embedding的。什么是画像呢,就是说我们对每个用户都保存他的兴趣,这个兴趣可以是某个item,也可以是某个tag,他的兴趣有个得分,这个得分跟他对item或tag的反馈有关,也跟行为时间有关(随时间衰减)。什么是倒排呢,就是若干个trigger(也就是兴趣),每个的后面跟着item的list和得分。当用户来了,我们就从他的画像里找(例如说前10个)兴趣的得分,然后找这些兴趣后面的list,计算得分(自由设计公式,最简单直接相乘),择优录取。基于画像的召回最出名的应该是协同过滤了,这个后面单独说,基于embedding的召回一般被称为‘ANN召回’。ANN召回,Approximate Nearest Neighbor,主要是用faiss库实现的,通常在couchbase或者aerospike里存储User emb,在文件中存储item emb (使用faiss训练好的index),一般item emb有新旧两个版本供查找。ANN召回里最有名的应该是youtube的dnn召回模型[随便记录下](https://www.jianshu.com/p/4f2bfc567f02),后面应该也会单独说。

## 排序

排序这里最通用的应该是wide&deep算法了。后面应该会单独说吧,如果我不懒的话。[随便记录2](https://www.jianshu.com/p/36760cb4afe6)

## 随便写点

对于总体而言,一个推荐系统应该关注什么指标呢?(括号里的英文都不一定对)

1. DAU(daily active user,天级活跃用户) 应该是很重要的指标,一个产品做没做起来,这就是硬道理;

2. 留存 也是很重要的指标,尤其对于已经做起来的产品,DAU可能提不上去了,就需要在留存上下功夫;第一天来过的用户,有一部分第二天还来了,这部分用户占第一天的比例,这叫次日留存;

3. 一些其他指标(对于视频来说吧):

    - ppui(playtime per user impression, 展示人均播放时长) = 总时长 / 展示UV,字面理解就是用“展示人”来平均“播放时长”,其中展示UV其实就是DAU;同理可以明白点击人均播放时长、展均播放时长等;

    - CTR(click through rate,点击率) = 点击/展示; UCTR(user ctr) = 点击uv/展示uv,其中uv应该是user view的意思?可以理解为用户数;

    - 一些多样性(信息熵、基尼系数之类)、时效性(新视频分发占比、展示平均年龄之类)方面的指标,主要是关注用户体验了。

如何确定一个模型或策略好不好呢?通常做个ab实验就好,有没有不做ab实验的方法?离线测试当然也可以,但效果并不一定与线上一致。

©著作权归作者所有,转载或内容合作请联系作者
  • 序言:七十年代末,一起剥皮案震惊了整个滨河市,随后出现的几起案子,更是在滨河造成了极大的恐慌,老刑警刘岩,带你破解...
    沈念sama阅读 214,444评论 6 496
  • 序言:滨河连续发生了三起死亡事件,死亡现场离奇诡异,居然都是意外死亡,警方通过查阅死者的电脑和手机,发现死者居然都...
    沈念sama阅读 91,421评论 3 389
  • 文/潘晓璐 我一进店门,熙熙楼的掌柜王于贵愁眉苦脸地迎上来,“玉大人,你说我怎么就摊上这事。” “怎么了?”我有些...
    开封第一讲书人阅读 160,036评论 0 349
  • 文/不坏的土叔 我叫张陵,是天一观的道长。 经常有香客问我,道长,这世上最难降的妖魔是什么? 我笑而不...
    开封第一讲书人阅读 57,363评论 1 288
  • 正文 为了忘掉前任,我火速办了婚礼,结果婚礼上,老公的妹妹穿的比我还像新娘。我一直安慰自己,他们只是感情好,可当我...
    茶点故事阅读 66,460评论 6 386
  • 文/花漫 我一把揭开白布。 她就那样静静地躺着,像睡着了一般。 火红的嫁衣衬着肌肤如雪。 梳的纹丝不乱的头发上,一...
    开封第一讲书人阅读 50,502评论 1 292
  • 那天,我揣着相机与录音,去河边找鬼。 笑死,一个胖子当着我的面吹牛,可吹牛的内容都是我干的。 我是一名探鬼主播,决...
    沈念sama阅读 39,511评论 3 412
  • 文/苍兰香墨 我猛地睁开眼,长吁一口气:“原来是场噩梦啊……” “哼!你这毒妇竟也来了?” 一声冷哼从身侧响起,我...
    开封第一讲书人阅读 38,280评论 0 270
  • 序言:老挝万荣一对情侣失踪,失踪者是张志新(化名)和其女友刘颖,没想到半个月后,有当地人在树林里发现了一具尸体,经...
    沈念sama阅读 44,736评论 1 307
  • 正文 独居荒郊野岭守林人离奇死亡,尸身上长有42处带血的脓包…… 初始之章·张勋 以下内容为张勋视角 年9月15日...
    茶点故事阅读 37,014评论 2 328
  • 正文 我和宋清朗相恋三年,在试婚纱的时候发现自己被绿了。 大学时的朋友给我发了我未婚夫和他白月光在一起吃饭的照片。...
    茶点故事阅读 39,190评论 1 342
  • 序言:一个原本活蹦乱跳的男人离奇死亡,死状恐怖,灵堂内的尸体忽然破棺而出,到底是诈尸还是另有隐情,我是刑警宁泽,带...
    沈念sama阅读 34,848评论 5 338
  • 正文 年R本政府宣布,位于F岛的核电站,受9级特大地震影响,放射性物质发生泄漏。R本人自食恶果不足惜,却给世界环境...
    茶点故事阅读 40,531评论 3 322
  • 文/蒙蒙 一、第九天 我趴在偏房一处隐蔽的房顶上张望。 院中可真热闹,春花似锦、人声如沸。这庄子的主人今日做“春日...
    开封第一讲书人阅读 31,159评论 0 21
  • 文/苍兰香墨 我抬头看了看天上的太阳。三九已至,却和暖如春,着一层夹袄步出监牢的瞬间,已是汗流浃背。 一阵脚步声响...
    开封第一讲书人阅读 32,411评论 1 268
  • 我被黑心中介骗来泰国打工, 没想到刚下飞机就差点儿被人妖公主榨干…… 1. 我叫王不留,地道东北人。 一个月前我还...
    沈念sama阅读 47,067评论 2 365
  • 正文 我出身青楼,却偏偏与公主长得像,于是被迫代替她去往敌国和亲。 传闻我的和亲对象是个残疾皇子,可洞房花烛夜当晚...
    茶点故事阅读 44,078评论 2 352