推荐系统基础架构以及项目介绍

系统学习《推荐系统》-- 基础架构

一、通用推荐系统框架

  • 数据收集
ETL MapReduce Spark Flink
  • 数据存储
Hive HBase MySQL Redis
持久化存储收集数据
通常按照数据的冷热,结构化和非结构化等特征分布存储
  • 算法召回
热门 协同过滤 内容 画像 替补
将海量的数据集,根据特定算法进行初步的筛选
从数十万降低至数百及数千
  • 结果排序
LR SVD DNN GBDT
进行精准排序
针对多个目标进行优化
  • 结果应用
猜你喜欢 相似推荐 看了又看
根据不同场景给用户展示最终的推荐结果

推荐常用特征

用户特征
  • 自然属性
  • 画像特征:兴趣,行为
  • 关系特征:人群属性,关注关系,亲密度
物品特征
  • 静态特征:分类标签
  • 动态特征
  • 相关性特征
  • 上下文特征
    今日头条
    在这里插入图片描述

二、推荐常用算法

  • 基于流行度
    最热门 最新 最多人点赞

  • 基于内容
    相同标签 相同关键词 相似主题

  • 基于关联规则
    看了A的人也看了B

  • 近邻推荐
    协同过滤:基于用户 基于物品 基于模型

三、结果评估指标

  1. 准确率 Accuracy
    正确预测的样本数/总采样数
  2. 曲线下面积AUC
    不同阈值下,预测结果中真阳性和假阳性之比
    AUG = 1 : 完美分类器
    AUG > 0.5 : 绝大部分真是分类器的区间
    AUG = 0.5 : 基线分类器(扔硬币)
    AUG < 0.5 : 对于负样本更加准确,可以转化为正分类器
*ROC指标*
对于输出值连续的分类器(如概率预测),在某一阈值下真阳性(TP)的概率/假阳性(FP)的概率

评估标准

  1. 满意度:准确率、停留时长、转化率
  2. 覆盖率:长尾物品是否能被推荐
  3. 多样性:推荐的物品是否两两不相似、尽可能覆盖多兴趣点
  4. 新颖性:是否能推荐用户之前没见过的东西
  5. 惊喜度(很难):推荐的东西和用户历史行为记录都不相似,但是用户很喜欢
  6. 实时性:根据用户最新的喜好实时更新推荐结果
  7. 商业目标:是否能达成商业目标如GMV

四、项目构建 (Concrec)

数据源:Kaggle Anime Recommenations Dataset(动漫数据来源:myanimelist.net)

1. 数据预处理

汇总各方数据源 可视化检视数据 对数据进行清洗和转换

2. 召回

根据多种策略对候选集进行初步的召回

3. 排序

针对优化目标进行精准排序
实现特定规则的重排序

4. 接口服务

组装排序结果,并暴露接口供前端消费

5. 前端页面

结果展示 & 用户交互

五、Concrec技术选型

编程语言:python
微服务框架:Flask
前端页面:Vue
数据分析:pandas
大数据处理:spark + Flink(spark为主)
机器学习框架:TensorFlow(谷歌研发)

Spark分布式大数据处理平台 解决了计算能力和存储能力分布的问题 不同于Hadoop,Spark基于内存计算,速度更快 提供多种编程接口 如SparkSQL,Mllib等
Flink流式数据(stream)处理平台 以流为核心,高吞吐,低延迟 良好的容错性
TensorFlow机器学习框架 专注于神经网络、深度学习 在分布式训练、模型可视化等方面十分的出色

  • 1
    点赞
  • 4
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 2
    评论
评论 2
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

RockyBlog

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值