推荐系统入门学习(一)【小白入门系列】

news2024/11/8 18:42:58

推荐系统入门学习(一)

前言:本博客不会采取大量的难懂的语言来介绍推荐系统,只会用一些简单的方式来介绍推荐系统,祝学习愉快!

1、推荐系统的概念

简单的说,推荐系统则是将产品推荐给用户的一个系统。将自己的产品推荐给用户以达到自身的商业目的,则是推荐系统的存在意义。面对成千上万的海量数据,推荐系统对用户来说也有一定的意义,比如说可以只给用户想看的,而过滤掉那些不想看的。

2、推荐系统的应用

  1. 音乐推荐系统和视频推荐系统希望推荐用户喜欢的视频,以增加用户的粘稠度(希望用户在这个平台的时间更多一点)
  2. 商品推荐系统希望推荐用户喜欢的商品,以增加用户购买商品的可能性,可以增加店家的收入。

3、什么是一个好的推荐系统

针对不同的商业机构,一个好的推荐系统的定义并不是绝对的。不同的公司有不同的目的,对于推荐系统的需求也就各不相同了。

4、推荐系统的评价指标

与一个好的推荐系统类似,其实推荐系统的评价指标也并不是唯一绝对的。我们在做机器学习算法的时候,对于一个想要一个好的推荐系统,我们可能会尽量的让算法的评分够高,计算精确度。其实这是推荐系统中的一种评判方法,即离线的机器学习算法。下面介绍几种其他的评判办法。

(1)召回率

召回率:你所推荐的商品,占测试集中的推荐商品数目的多少。对所有用户求和即可得到召回率。T(u)表示用户在测试集上的推荐商品数目的列表,R(u)表示你所推荐的用户的商品列表。
图1 召回率

(2)准确率

准确率:你所推荐的商品,有多少是用户真正想要的?对所有用户求和即得到准确率。同理T(u)表示用户在测试集上的推荐商品数目的列表,R(u)表示你所推荐的用户的商品列表。
图2 准确率

(3)覆盖率

覆盖率:你所推荐的商品,有没有覆盖你所有的商品?用所有的推荐的商品总数除以所有商品总数即得到覆盖率。好的覆盖率应当是接近100%的。
在这里插入图片描述

(4)多样性

多样性要通过物品之间的相似度来定义。一个好的推荐系统应当足够多样化,帮助用户发掘自己可能喜欢的,但暂时没有见过的产品。
在这里插入图片描述
在这里插入图片描述

(5)新颖度和惊喜度

新颖度指的是推荐的商品需要有新的东西,而不是一直都是一类的产品。而惊喜度则在新颖性之上,希望给用户推荐的产品是用户之前没有见过,但非常喜欢的。二者都依托于多样性。新颖度和惊喜度没有统一的定义标准。

(6)其他特性

实时性指的是需要有实时推荐,用户可能在白天喜欢浏览衣服,而晚上喜欢浏览鞋子,如果没有实时推荐系统,而将所有的数据全部离线计算,那么第二天得到的推荐结果可能不足够让用户满意。
健壮性指的是该推荐系统应该足够健壮,不能非常容易遭到攻击。比如有一个商家非常想让自己的产品被推荐,于是注册大量账号浏览自己的商品。这样给自己家的产品带来的极大的流量,如果推荐系统给予“浏览商品”的权重很大,则该商品很有可能成为热门商品,被更多人看见。
信任性指一个好的推荐系统会告诉用户,该推荐产品从何而来?这样能够提示用户的信任度。

特别注意

推荐系统最终的目的是“让用户满意”,所以问卷调查是对于评测推荐系统的一个非常好的指标。还可以通过在线实验(例如AB实验)来间接获取用户对系统潜在的评价。AB实验:将用户随机分流,测试不同的推荐算法用户的留存度,获取潜在评价。但是AB实验存在一定局限性,因为所有用户的各种属性,如年龄、地区得分流均匀,况且分流也与前端存在一定的联系。


总结

推荐系统是将产品推荐给用户的一个系统,评测方法有很多,有离线的机器学习算法的精确度、召回率、准确率等,还有近几年兴起的指标,惊喜度,多样性等等。

推荐系统的最终目标是为商业服务的,所以具体的评判标准是根据不同的商品目标而不同的。

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

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

相关文章

判断点在多边形内部

一、问题描述已知点P(x,y)和多边形polygon,判断点P(x,y)是否在多边形内部。二、解决方案射线法以点P为端点,向左方作射线L,由于多边形是有界的,所以射线L的左端一定在多边形外部。考虑沿着L从无究远处开始自左向右移动&#xff0c…

Android 更改鼠标样式

定义风格 鼠标风格定义位置&#xff1a;\frameworks\base\core\res\res\values\styles.xml 系统定义了两套鼠标的风格&#xff0c;一套是默认&#xff0c;一套是放大的图标的风格&#xff0c;在下面增加自己的鼠标风格图标 <style name"BluePointer"><ite…

Springboot Controller接口默认自动填充 业务实体参数值

前言 今天看有小伙伴求救&#xff1a; 我还是一贯如此&#xff0c; 有人不明白&#xff0c;没玩过HandlerMethodArgumentResolver 。 那么很可能不止他一个人&#xff0c; 那么我就有必要出手。 不多说&#xff0c;开搞。 正文 快速模拟出这个使用场景 &#xff1a; 假如有好多…

Allegro174版本新功能介绍之动态铜皮Fast模式设置

Allegro174版本新功能介绍之动态铜皮Fast模式设置 Allegro升级到了174版本后,相比于172版本把动态铜皮的FAST模式优化的更为到位,据介绍,铜皮smooth的时间可以缩短非常多,尤其是针对于数据量非常大PCB,效率提升不少,但是在出生产文件的时候,铜皮还是必须Smooth,见下面o…

Odoo 16 企业版手册 - 库存管理之作业类型

作业类型 Odoo库存模块是有效管理所有类型库存操作的最佳选择。为公司的库存管理提供适当的支持对于完美地运营业务至关重要。当我们谈论Odoo是库存管理的完美解决方案时&#xff0c;您会好奇它提供的功能。在本节中&#xff0c;我们将使用专用库存模块详细介绍Odoo管理的库存操…

Vue(七) 生命周期和组件(一)

目录 1. 生命周期 1.1 引出生命周期 1.2 生命周期——挂载流程 1.3 生命周期——更新流程 1.4 生命周期——销毁流程 1.5 总结 2. 非单文件组件 2.1 对组建的理解 2.2 非单文件组件 2.3 组件的注意点 2.4 组件的嵌套 2.5 VueComponent构造函数 1. 生命周期 生命周期…

正版授权|FastStone Image Viewer 图像编辑转换浏览器软件,个人免费的图像浏览器、转换器和编辑器。

前言&#xff1a;快速、稳定、用户友好的图像浏览器、转换器和编辑器。它具有一系列不错的功能&#xff0c;包括图像查看、管理、比较、红眼去除、电子邮件、调整大小、裁剪、修饰和颜色调整。以下是软件页面。 FastStone Image Viewer 是一个快速、稳定、用户友好的图像浏览器…

软件安全测试需要考虑哪些问题?看看专业软件测评中心怎么说

互联网信息时代&#xff0c;软件产品为我们的生活和工作中带来了极大的便利。我们使用的软件都有包含个人资料以及各类信息等安全因素&#xff0c;因此软件的安全问题是用户最为关注的话题之一。可以有效保障软件产品安全的的关键手段便是软件安全测试&#xff0c;那么在进行软…

力扣sql入门篇(九)

力扣sql入门篇(九) 1 股票的资本损益 1.1 题目内容 1.1.1 基本题目信息 1.1.2 示例输入输出 1.2 示例sql语句 # 每个用户的所有Sell的price值减去Buy的price值就可以了 SELECT e.stock_name,sum(e.price) capital_gain_loss FROM ( SELECT stock_name,operation,operation…

解决可见性的方案有哪几种,你都知道吗???

1. 前言 上次【保证原子性的几种方式&#xff0c;你都知道吗&#xff1f;&#xff1f;&#xff1f;】 经过一顿大杂烩后&#xff0c;列举了几种原子性的解决方案。这次我们继续上次的话题&#xff0c;我们来说说可见性的解决方案。废话不多说&#xff0c;让我们赶快开始吧。 2.…

【阶段二】Python数据分析Pandas工具使用10篇:探索性数据分析:数据的检验:正态性检验

本篇的思维导图: 探索性数据分析:数据的检验 数据检索,则是对数据深层次的探索或挖掘,用于验证数据是否服从某种假设,这部分内容将以数据的正态性检验、卡方检验和t检验为例,结合Python讲解具体的使用方法。 正态性检验 统计学中的很多模型或检验都需要…

java旅游日志博客系统旅行记录系统

简介 记录个人旅游动态日志的系统&#xff0c;也可以用来做博客系统&#xff0c;主页可以发布旅游日志&#xff0c;关注博主&#xff0c;给博主留言&#xff0c;管理评论&#xff0c;博文点赞&#xff0c;个人主页。 演示视频 https://www.bilibili.com/video/BV1rv41147W1/?…

(深度学习快速入门)第三章第三节1:深度学习必备组件之数据集处理和参数初始化

文章目录一&#xff1a;数据集的处理&#xff08;1&#xff09;数据集划分&#xff08;2&#xff09;数据集验证&#xff08;3&#xff09;标准化和归一化二&#xff1a;模型参数的初始化&#xff08;1&#xff09;梯度消失和梯度爆炸&#xff08;2&#xff09;模型参数初始化方…

Kafka概述

Kafka入门-1 视频资料&#xff0c;b站&#xff1a;https://www.bilibili.com/video/BV1eD4y1C7uM/?spm_id_from333.788.recommend_more_video.14&vd_source37596bc6f952081640b3f38ea9f6a2cb 深入理解 Kafka: 核心设计与实践原理。PDF 书资料&#xff1a; https://book.…

P8第一讲(选修):反向传播Backpropagation

8. 第 1 讲&#xff08;选修&#xff09;&#xff1a;反向传播_哔哩哔哩_bilibili Gradient Descent neual work基本架构已经学过了 backpropagation(反向传播)可以帮助我们有效的进行渐变迭代计算(帮助计算梯度)。 假设网络有一大堆参数&#xff1a; 首先选一个初始的参数&…

零基础多图详解图神经网络(GNN/GCN)【论文精读】

原文链接&#xff1a; A Gentle Introduction to Graph Neural Networks (distill.pub) 我们不仅仅关系整个图的架构&#xff0c;其实我们更关心的是每个顶点每条边和整个图所表示的信息。 我们如何把我们想要的信息表示成以上这些向量&#xff0c;以及这些向量是否能够通过数据…

uni-app打开第三方地图软件进行导航

最近在开发字节小程序的过程中遇到地图导航的需求&#xff0c;相信大家也会遇到所以我为大家整理了一篇干货内容。 下面是我整理的代码案例---------记得喝水&#xff08;太“干”了&#xff0c;复制就能用&#xff09;。 效果图如下&#xff1a; 1.点击图标弹出弹框进行选择…

数据结构与算法基础——算法分析(1)

算法的定义 算法&#xff1a;对特定问题的求解方法和步骤的描述&#xff0c;在计算机中&#xff0c;他是指令的有限集合。 举例&#xff1a;求解一元二次方程的根 描述算法的基本方式&#xff1a; &#xff08;1&#xff09;自然语言 &#xff08;2&#xff09;流程图 &…

CSS3 弹性盒子(flex、flex-direction属性、flex-wrap属性、align-items属性、align-content属性)详解

文章目录flexflex-direction 属性flex-wrap 属性align-items 属性align-content 属性的使用flex 在 CSS3 中给 display 属性增加了新的属性值 flex&#xff0c;如果一个元素被设置 display:flex&#xff0c;说明该元素为弹性布局&#xff0c;也就是个弹性盒子。 flex 主要由两…

Linux traceroute 原理及使用

Linux traceroute 原理及使用 序 在某次接入数据的场景中&#xff0c;需要到对方 SFTP 服务器上&#xff0c;获取数据&#xff0c;但是在配置时发现在配置正确的情况下&#xff0c; 连接总是超时&#xff0c;最终排查后发现网络不通&#xff0c;打通网络后才正确连接&#xf…