惯性聚合 高效追踪和阅读你感兴趣的博客、新闻、科技资讯
阅读原文 在惯性聚合中打开

推荐订阅源

酷 壳 – CoolShell
酷 壳 – CoolShell
H
Hacker News: Front Page
P
Palo Alto Networks Blog
T
ThreatConnect
Apple Machine Learning Research
Apple Machine Learning Research
博客园_首页
T
True Tiger Recordings
P
Privacy & Cybersecurity Law Blog
B
Blog
IT之家
IT之家
Last Week in AI
Last Week in AI
F
Full Disclosure
Hacker News: Ask HN
Hacker News: Ask HN
C
Comments on: Blog
Microsoft Azure Blog
Microsoft Azure Blog
C
Cybersecurity and Infrastructure Security Agency CISA
Microsoft Security Blog
Microsoft Security Blog
博客园 - 【当耐特】
N
News and Events Feed by Topic
NISL@THU
NISL@THU
腾讯CDC
雷峰网
雷峰网
Security Latest
Security Latest
李成银的技术随笔
M
Microsoft Research Blog - Microsoft Research
L
LangChain Blog
L
Lohrmann on Cybersecurity
cs.CL updates on arXiv.org
cs.CL updates on arXiv.org
C
Check Point Blog
Y
Y Combinator Blog
Recent Announcements
Recent Announcements
博客园 - Franky
N
News | PayPal Newsroom
V
V2EX
A
About on SuperTechFans
The Register - Security
The Register - Security
月光博客
月光博客
奇客Solidot–传递最新科技情报
奇客Solidot–传递最新科技情报
Google Online Security Blog
Google Online Security Blog
MyScale Blog
MyScale Blog
Cisco Talos Blog
Cisco Talos Blog
Vercel News
Vercel News
WordPress大学
WordPress大学
C
Cyber Attacks, Cyber Crime and Cyber Security
The Hacker News
The Hacker News
IntelliJ IDEA : IntelliJ IDEA – the Leading IDE for Professional Development in Java and Kotlin | The JetBrains Blog
IntelliJ IDEA : IntelliJ IDEA – the Leading IDE for Professional Development in Java and Kotlin | The JetBrains Blog
爱范儿
爱范儿
A
Arctic Wolf
L
LINUX DO - 最新话题
freeCodeCamp Programming Tutorials: Python, JavaScript, Git & More

博客园 - 01星河

AI时代:速度的错觉与秩序的退潮 UI 自动化测试产品深度对比分析报告 Web 自动化测试系统深度分析报告 TextBoxPopupBehavior控件 第 7 章 系统效果评测与监控 Linux TOP 命令详解 mysql-canal-rabbitmq 安装部署教程 第 6 章 用户画像系统 Elasticsearch 模块 - Shard Allocation 机制 Kibana 插件环境搭建教程 追溯 MySQL Statement Cancellation Timer 第 5 章 机器学习技术的应用(下) 第 5 章 机器学习技术的应用(中) 第 5 章 机器学习技术的应用(上) 第 4 章 算法融合与数据血统 第 3 章 基础推荐算法 阅读笔记 - 从零开始构建企业级推荐系统 第 1 章 推荐系统的时代背景 三个实例演示 Java Thread Dump 日志分析
第 2 章 推荐系统的核心技术概述
01星河 · 2021-03-05 · via 博客园 - 01星河

原文

全文目录

多组件, 多模块, 多数据源构成; 涉及用户, 物品, 行为, 上下文等数据;

计算形式包括大数据平台上的批量计算/挖掘/训练, 流式数据的实时处理, 线上的实时服务;

核心逻辑拆解

核心目的: 为用户找当前场景下最具相关性的物品或物品集合;

以用户兴趣为轴:

\[P(item|user)=\sum_{interest} (P(item|interest) × P(interest|user)) \]

用户与物品的相关性拆解为: 用户与兴趣的相关性和兴趣与物品的相关性的乘积;

  1. \(P(item|interest)\)\(P(interest|user)\) 任何一个为零, 乘积即为零;

  2. 用户感兴趣的点+兴趣点下物品的相关性;

三段式逻辑: 用户兴趣+相关性召回+融合排序

整体流程

召回算法=>重排序=>业务干预

  • 召回算法会根据不同策略算法召回各个维度相关性的物品, 打分的含义和量纲不尽相同;
  • 重排序是解决召回算法中不同含义/量纲的打分, 以及不同维度的相关性问题, 最终对齐目标;
  • 业务干预是处理业务层面的调整, 过滤不适合推荐或没有库存的商品;

召回算法

召回算法的关注点:

  1. 相关性

    核心, 重排和业务干预层均不会引入新的候选物品, 只有召回层决定了用户可见物品的候选集; 如果召回相关性较差的物品, 不仅浪费计算力, 也增加了重排序层的工作负担(需要用更复杂的算法将相关性差的物品排在后面);

  2. 多样性

    • 物品类别多样性, 分类, 种类;
    • 物品标签多样性, 一切可标识物品特点的描述;
    • 召回维度多样性, 依据用户的点击, 搜索, 浏览, 购买, 加购等行为;
  3. 覆盖率

    推荐算法能为多少用户/物品计算出相关物品;

  4. 实时性

    将用户的实时行为用于推荐逻辑的计算, 对推荐结果产生影响, 并让用户感知到变化;

召回算法分为:

  • 直接基于行为的算法
  • 基于用户画像的算法

基于行为的召回算法

相关性数据挖掘, 依赖于:

  • 基于用户行为数据: 协同过滤算法, 准确率会好些, 但是数据稀疏性导致覆盖率较低; 且多样性和时效性较差;
  • 基于物品属性数据: 内容相似度算法, 相反;

用户画像和物品画像

用户画像建设工作的核心点:

  1. 判断哪些用户画像对推荐系统或其他业务有帮助;(重要性高于第二点)
  2. 如何挖掘这些画像;

物品画像是用户画像的基础, 首先提取物品层面的多维度描述, 再通过用户对物品的行为关系, 计算出用户在这些维度上的描述;

结果排序

  • 简单做法, 基于一套规则的融合方法, 可以选择分层式或加权融合式;
  • 数据和技术积累到一定程度, 选择基于机器学习的排序技术取代基于规则的排序技术;

评价指标

  • 结果指标, 用来最终衡量推荐系统好坏的指标;

  • 过程指标, 对结果指标的分解, 分解为几个可具体操作的维度, 好处是对结果指标的把控, 以及出现问题时的分析处理;

  • 短期指标

  • 长期指标

系统监控

  • 评价指标是指导系统的持续迭代优化;
  • 监控指标是及时发现系统的突发问题, 保证系统的稳定运行;

架构设计

  • 在线服务架构设计, 核心是系统的稳定运行, 算法策略的足量生效, 对策略快速迭代的支持;
  • 离线, 偏向于生产准确率高, 覆盖率高的商品和用户数据;
  • 近线, 快速处理用户和物品的行为和信息变动, 为在线服务提供实时性高的数据服务;

推荐系统的流程简图