推荐系统最通俗介绍

news2025/8/1 11:52:17

文章目录

    • 1.推荐系统概念
    • 2.推荐系统发展历史
    • 3.个性化推荐系统框架
    • 4.部分案例
      • 4.1 搜狐视频个性化推荐架构
      • 4.2 今日头条推荐系统架构
      • 4.3 Netflix推荐系统架构图
    • 5. 视频推荐系统流程设计
    • 总结

资料整理,来源于北大刘宏志教授讲座内容。

在介绍推荐系统前,我们先想一个问题,为什么要有推荐系统?在推荐系统没有出现前,难道我们就不能更好的生活?

其实这方面主要归因于,互联网技术的迅猛发展,带来信息爆炸,进而我们接触到的信息都是超载的。

我们将转变接受信息的理念:”多即是少、少即是多“。

试想,我们去逛超市,面对琳琅满目的同类商品,是不是也会犯”选择困难症“。

1.推荐系统概念

关于推荐系统概念,我们可以认为:

  • 推荐系统是一种主动的信息过滤系统;即将信息过滤的过程由”用户主动搜索“转变为”系统主动推送“。

什么样的系统需要用户主动搜索呢?我们常见的就是不同的搜索引擎,如:百度、Google等。

用户主动搜索建立在两个前提:

  • 用户知道自己要什么
  • 用户知道自己该如何描述

而推荐是挖掘并且满足用户的潜在需求,如:今日头条、Amazon等。

同时,推荐系统还是一种双边匹配系统,把恰当的商品(信息)推荐给人:

  • 帮助用户发现其所喜好的或需要的小众、非主流商品;
  • 帮助商户将其商品展现在对它们感兴趣的用户面前。

这一切正如《长尾》的作者 Chris Anderson 所言:

  • We are leaving the age of information and entering the age of recommendation.

2.推荐系统发展历史

如果我们想要遇见将来,适当的途径是研究这门学科的历史和现状。

信息过载、推荐系统,这些词语并不是最近才被人提及。

推荐系统的整个发展历程又是怎么变化的呢,请看下面梳理内容。

历史1

2

参考资料可以点击下原文查看

参考自:https://cloud.tencent.com/developer/article/1652169

3.个性化推荐系统框架

image-20221118164125585


基于公式的描述:

  • 映射函数 f : U × I → R f:U×I→R f:U×IR

  • 输入:

    • 用户画像(U):评分、偏好、人口统计学资料、上下文等
    • 项目画像(I):项目描述(属性)、内容等
  • 计算:兴趣度或相关度(R),用于排序

  • 输出:针对每个用户,给出项目排序列表


用户画像,即对用户的特点和兴趣进行建模

  • 从用户相关的各种数据中挖掘或抽取出用户在不同属性上的标签

  • 例如:年龄、性别、职业、婚姻状态、兴趣、未来可能行为等

项目画像,即对项目的特点进行建模

  • 从项目相关的各种数据中挖掘和抽取出项目在不同属性上的标签

  • 实现对项目(例如商品、服务等)的精准的定位

4.部分案例

4.1 搜狐视频个性化推荐架构

image-20221118165746275

4.2 今日头条推荐系统架构

今日头条推荐系统架构设计实践

今日头条推荐系统架构设计实践

4.3 Netflix推荐系统架构图

回顾经典,Netflix的推荐系统架构- 知乎

5. 视频推荐系统流程设计

构建用户画像:

  • 输入数据:用户注册数据、行为日志、系统展示日志 等

  • 事实标签:性别、年龄、地域、人群(学生、上班族等)等

  • 模型标签:主题偏好、兴趣标签(明星、导演、风格等)等

  • 预测标签:用户活跃度、用户价值 等

视频(项目)画像:

  • 输入数据:视频描述、视频内容、相关用户信息 等

  • 事实标签:主演、导演、出品人、主题 等

  • 模型与预测标签:评分、热度、关键词 、适合人群等

image-20221118165224269

最后目标:

image-20221118165249780

总结

本文主要对推荐系统做了基本介绍,从推荐系统为什么会出现,然后讲解了推荐系统基本概念,以及推荐和搜索的区别;梳理了推荐系统的发展历史,推荐系统主要架构,部分推荐系统案例;最后自己设计了一个视频推荐系统整体流程。

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/16158.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

【目标检测】池化层(pooling)的反向传播是怎么实现的

目录:池化层的反向传播是怎么实现的一、前言二、平均池化二、最大池化四、最大池化的数学原理一、前言 卷积神经网络中一个不可导的环节就是Pooling池化操作,因为Pooling池化操作使得feature map的尺寸发生变化,假如做222\times 222的池化&a…

一.node的事件处理;二.node的全局对象;三.node的readline模块;四.node的Web编程

目录 一.node的事件处理 1.node采用的事件驱动模式来进行事件处理的:只有当事件被触发时才执行相关程序 2.node是单线程运行的:采用事件轮询方式,不断的查询事件队列中的消息,然后根据消息执行对应的回调函数 3.node事件机制中…

硬核Vue3响应式原理解析,为你保驾护航渡过寒冬

前言 大家好,我是落叶小小少年,虽然比较菜,虽然才开始写作分享,我始终相信 核心demo更容易理解深的技术点每一次基础的学习都是对知识的巩固 因为从年初就开始使用Vue3了,现在才来学习Vue3,但是也不算晚…

yolo5 训练无人人机识别系统

环境搭建: 安装驱动 点击鼠标右键,如果出现NVIDIA图标,点开,出现如下图片 我的显卡是1650,根据显卡的型号去官网找相应的驱动下载就好了。驱动官网 安装好之后,打开命令行cmd,输入如下指令&a…

登录功能(基于SpringBoot+MP+Vue实现的功能)

目录 前言 一、UserMapper层代码分析 二、UserService层代码分析 1.UserService接口 2.UserServiceImpl实现类 3.UserController层代码分析 4.拦截器设置 5.展示效果图 总结 前言 登录功能是web开发中常见的功能,也是学后端必须要练得一个功能,本…

【JavaWeb】手写一个Servlet+JSP+JavaBean分页

✅✅作者主页:🔗孙不坚1208的博客 🔥🔥精选专栏:🔗JavaWeb从入门到精通(持续更新中) 📋📋 本文摘要:本篇文章主要分享如何使用ServletJSPJavaBean…

C++对象拷贝

前言:本教程使用到的工具是vs2010;能用VC6就用VC6,因为vs2010生成的汇编代码可能有点乱;此外,文章中涉及的汇编,我都会予以解释,所以放心观看。 目录 一、什么是对象拷贝? 二、C对…

【微服务】SpringCloud微服务剔除下线源码解析

💖 Spring家族及微服务系列文章 ✨【微服务】SpringCloud微服务续约源码解析 ✨【微服务】SpringCloud微服务注册源码解析 ✨【微服务】Nacos2.x服务发现?RPC调用?重试机制? ✨【微服务】Nacos通知客户端服务变更以及重试机制 ✨【…

SpringBoot SpringBoot 开发实用篇 4 数据层解决方案 4.4 Redis 下载安装与基本使用

SpringBoot 【黑马程序员SpringBoot2全套视频教程,springboot零基础到项目实战(spring boot2完整版)】 SpringBoot 开发实用篇 文章目录SpringBootSpringBoot 开发实用篇4 数据层解决方案4.4 Redis 下载安装与基本使用4.4.1 问题引入4.4.2 …

Linux Mint(Ubuntu)上 安装 效率神器 utools

Linux Mint(Ubuntu)上 安装 效率神器 utools 我的 Windows 系统的笔记本只有 256G 固态,磁盘已经快用满了,最近想装个 Linux 玩玩,1 选择了 Linux Mint,然后就在闲置的移动硬盘上安装了 Linux Mint 21 cin…

Centos 安装Java库的多种方式

安装jdk(介绍三种方法) 查看java版本:java -version 方法一:利用yum源来安装jdk(此方法不需要配置环境变量) 查看yum库中的java安装包 :yum -y list java* 安装需要的jdk版本的所有java程序:yum -y instal…

纯正体验,极致商务 | 丽亭酒店聚焦未来赛道,实现共赢发展

10月28日,锦江酒店(中国区)“齐鲁集锦 共话未来”投资人交流会在济南盛大召开,面向华东地区投资人,行业专家、商旅客、品牌代表齐聚一堂,共同聚焦酒店市场投资新价值,商讨新时代酒店行业新机遇,多维探索酒店…

蓝牙数据包协议解析

1.前言 由于工作需要,初次接触蓝牙。从最基础的知识开始了解。 引用wiki中的介绍: 蓝牙(英语:Bluetooth),一种无线通讯技术标准,用来让固定与移动设备,在短距离间交换资料&#xff…

第一章:Spring流程执行步骤

Spring执行流程图 注意观察:每一个执行步骤的结果都会返回到DispatcherServlet ,然后再出发调用, 所以是请求接口的入口也是出口。 简单了解几个大类的走的流程和具体功能 DispatcherServlet 类 中文调度应用程序,而Servlet就…

libusb系列-007-Qt下使用libusb1.0.26源码

libusb系列-007-Qt下使用libusb1.0.26源码 文章目录libusb系列-007-Qt下使用libusb1.0.26源码摘要安装编译环境确认需要的文件开始编译错误1:找不到文件错误2:expected错误3:SCM_CREDENTALS错误4:类型冲突错误5 assert断言错误错误…

低代码平台和无代码平台有什么区别

低代码(LowCode)/无代码(NoCode)”是技术界近几年的热门词汇之一,随着企业数字化发展的深入,越来越多的场景化需求要求企业具备更加灵活敏捷的应用开发能力,传统应用开发模式周期长、技术人员能力要求高,无…

OWASP API SECURITY TOP 10

目录 1. API 安全风险 2. 细说TOP10 1. Broken Object Level Authorization 2. Broken User Authentication 3 Excessive Data Exposure 4 Lack of Resources & Rate Limiting 5 Broken Function Level Authorization 6 Mass Assignment 7 security misconfigura…

redis哨兵系列1

需要配合源码一起康~ 9.1 哨兵基本概念 官网手册yyds:https://redis.io/docs/manual/sentinel/ redis主从模式,如果主挂了,需要人工将从节点提升为主节点,通知应用修改主节点的地址。不是很友好,so Redis 2.8之后开…

同花顺_代码解析_技术指标_EJK

本文通过对同花顺中现成代码进行解析,用以了解同花顺相关策略设计的思想 目录 EMV ENV EXPMA JF_ZNZX KD KDJ KDJFS EMV 简易波动指标 1.EMV 由下往上穿越0 轴时,视为中期买进参考信号; 2.EMV 由上往下穿越0 轴时,视为中…

根据以下电路图,补全STM32F103RCT6的IO口初始化程序

void KEY_Init(void)//接按键的端口初始化程序 { RCC->APB2ENR|______________; //使能PORTA时钟 JTAG_Set(SWD_ENABLE); GPIOA->CRL&__________________; // PA3设置成下拉输入 GPIOA->CRL|__________________; } void LED_Init(void)//接LED的端…