推荐系统三十六式学习笔记:原理篇.内容推荐|04|画鬼容易画人难:用户画像的“能”和“不能”

目录

  • 什么是用户画像?
  • 用户画像的关键因素
  • 用户画像构建的方法
  • 总结:

今天我来跟你聊一聊用户画像那些事。

什么是用户画像?

用户画像对应的英文是User Profile ,它原本用于营销领域。营销人员需要对营销的客户有更精准的认识,从而能够更有针对性地对客户和市场制定营销方案。

传统营销领域,是以市场销售人员为第一人称视角去看待客户的,也就是用户画像为营销人员服务。在这种用途下谈论的用户画像,和我们即将在推荐系统领域谈论的相差有点大,不过遗憾,今天在媒体上看到的多数“用户画像”案例分享,都停留在这个意思上。

比如最常见的用户画像出现在高大上的PPT上,用标签云的方式绘制一个人的形状,以此来表达用户画像这个概念。看上去非常酷炫,但是我得悄悄告诉你一个赤裸裸的真相:越酷炫的用户画像越没什么用。

为什么会这样?根本原因是:用户画像应该是给机器看,而不是给人看。既然是给机器看的,那么画像是不是酷炫,维度是不是人类可读,都不重要。那它到底是个什么样子呢?

一个推荐系统的使命只有一个,就是要在用户(User)和物品(Item)之间建立连接。

一般方式就是对用户和物品之间匹配得分,也就是预测用户评分或者偏好。推荐系统在对匹配评分前,首先就要将用户和物品都向量化,这样才能进行计算。而根据推荐算法的不同,向量化的方式也不同,最终对匹配评分的做法也不同。

用户向量化的结果,就是User Profile,俗称用户画像。所以,用户画像不是推荐系统的目的,而是在构建推荐系统的过程中产生的一个关键环节的副产品。

通常大型推荐系统一般都分为召回和排序两个阶段,因为全量物品通常数量非常大,无法为一个用户(user)逐一计算每一个物品(item)的评分,这时候就需要一个召回阶段,其实就是预先筛选一部分物品(item),从而降低计算量,用户画像除了用于最终匹配评分,还要用在召回。所以,构建用户互相要以这两个阶段为目的。

用户画像的关键因素

举个例子,比如半夜十二点,突然感觉肚子有点饿,想吃份宵夜,楼下正好有五家大排档,那么从推荐系统的思路看,我怎么选择呢?
首先就是将这五家大排档向量化,暂定的向量维度有:
1、价格:1-5分,最贵的1分,最便宜的5分;
2、种类:1-5分,只烤馒头片的是1分,天上飞的,海里游的、地上跑的、地里种的应有尽有就是5分;
3、味道:1-5分,根据以前吃的,最难吃的是1分,最好吃的是5分;

现在每一个大排档都有一个向量,我自己也要有一个向量,就是你多看重这三个元素:
1、价格:1-5分,土豪不差钱就是1分,囊中羞涩就是5分;
2、种类:1-5分,早就想好吃什么了不在乎选择多不多1分,看看再说就是5分
3、味道:1-5分,只是果腹就是1分,资深吃货就是5分

假如我的向量是,就很容易找到哪家大排档最合适;具体计算就是:各个维度相乘后再相加,就得到每一个大排档的评分了。

接下来,我们看看用户画像的关键因素:第一个是维度,第二个是量化。

首先我来说说维度:

看前面的例子中,我定下来的维度:价格,种类,味道,这几个维度有三个特点;
1、每个维度的名称都是可理解的。
对于用户画像而言,维度不一定需要人类能够理解,只要计算机能把两边的数据对应上就可以了。
2、维度的数量是由我拍脑袋定的。
假如是根据用户的阅读历史挖掘阅读兴趣标签,我们无法提前预知用户有哪些标签,也不能确定用户画像与有哪些维度,所以第二点也不是必须的。
3、有哪些维度也是我拍脑袋确定的。
用户画像的维度个数可以不用确定。理论上说维度越多越好,画像越精细,但带来的计算代价也是很大的,需要权衡。需要注意的是,用户画像是向量化的结果,而不是标签化。标签化只是向量化的一种,因为向量的维度不一定需要人类理解。

其次,我来说说量化
我们这里的量化都是主观的,而在实际生产系统中,用户画像每一个维度的量化,应该交给机器,而且以目标位导向,以推荐系统效果好坏来反向优化出用户画像才有意义,没有管推荐效果而先行主观量化了每一个维度,是大忌。

所以用户画像的量化和效果息息相关。不要为了用户画像而用户画像,它只是推荐系统的一个副产品,所以要根据使用效果(排序好坏、召回覆盖率等指标)来指导用户画像的量化。

用户画像构建的方法

按照对用户向量化的手段来分,用户画像构建方法分成三类;
1、第一类就是查户口
直接使用原始数据作为用户画像的内容,比如一些人口统计学信息,或者购买历史,阅读历史等。这就跟查户口一样,没什么技术含量,但通常对于用户冷启动等场景非常有用。
2、第二类就是堆数据
常见的兴趣标签就是这一类,就是从历史行为数据中去挖掘出标签,然后在标签维度上做数据统计,用统计结果作为量化结果。这一类数据贡献了酷炫的用户画像。
3、第三类就是黑盒子
就是用机器学习方法,学习出人类无法理解的稠密向量,这个最不被非技术人员重视,但实际上在推荐系统中承担的作用非常大。
比如使用潜语义模型构建用户阅读兴趣,或者使用矩阵分解得到的隐因子,或者使用深度学习模型学习用户的embedding向量。

总结:

1、用户画像到底是什么?它是对用户信息的向量化表示,为什么不向量化表示不行呢?因为没办法交给计算机计算,而且,用户画像是给机器看的,而不是给人看的。
2、用户画像的关键元素有哪些?维度和量化。用户画像是跟着使用效果走的,用户画像本身并不是目的。
3、通常构建用户画像的手段有哪几类?有三类,第一类置灰查户口做记录,第二类就是推数据做统计,第三类就是说黑盒子看不懂。

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

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

相关文章

NeuralForecast 推理 - 最简单的推理方式

NeuralForecast 推理 - 最简单的推理方式 flyfish 最简单的保存和加载模型代码 import pandas as pd import numpy as npAirPassengers np.array([112.0, 118.0, 132.0, 129.0, 121.0, 135.0, 148.0, 148.0, 136.0, 119.0],dtypenp.float32, )AirPassengersDF pd.DataFram…

培养核心人才,落实IPD体系

IPD体系已经成为业界公认的研发管理优秀框架与实践,不过在企业范围内,真正落实IPD体系、并且取得收益,却并非一件容易的事情,流程体系建立好了,却发现找不到合适人员去落实,任命了相关团队和成员&#xff0…

大文件上传处理:分卷压缩

大文件上传处理:分卷压缩 大文件上传处理:分卷压缩1、分卷压缩(1)Bandizip压缩工具:(2)分卷压缩后: 2、分卷压缩解压3、解压缩工具下载 大文件上传处理:分卷压缩 1、分卷…

第 400 场 LeetCode 周赛题解

A 候诊室中的最少椅子数 计数:记录室内顾客数,每次顾客进入时,计数器1,顾客离开时,计数器-1 class Solution {public:int minimumChairs(string s) {int res 0;int cnt 0;for (auto c : s) {if (c E)res max(res, …

i.MX8MP平台开发分享(TMU功能介绍篇)

概述 温度监控单元(TMU)监控并报告来自一个或多个芯片上远程温度测量点的温度。温度管理单元的特性: 温度测量范围:-40至105C。监控功能: 单点或多点监控超出范围指示高/低温度范围监控即时和平均温度监控可编程低通…

为什么住宅代理在负载测试中表现良好?

住宅代理在负载测试中表现好源于其独特的优势,尤其是在模拟真实条件下评估系统性能方面。无论是 Web 应用程序、服务器还是其他在线服务,它们都需要面对来自不同地理位置和不同网络条件的用户请求。在本文中,我们将深入探讨为什么驻地代理是负…

PS插件一键轻松搞定电商产品摄影图!

在电商行业中,一张高质量的产品摄影图往往能够吸引更多潜在消费者的目光,从而增加产品的销量。然而,对于许多电商卖家和摄影师来说,后期处理产品图片却是一个既耗时又费力的工作。 最近我发现一款PS插件可以一键生成电商产品摄影…

Day07 待办事项功能页面设计

​ 当前章节待办事项页面设计最终效果图: 一.布局设计 整个 待办事项页面 主要分上下布局,也就是分2行进行设计。第1 行 放搜索框和添加待办按钮,第2行 放置待办事项的内容。 那么 在视图中,怎么将页面分上下2行?就使用到Grid中 的 Grid.RowDefinitions ,就能实现将页面分…

Codeforces Round 950 (Div. 3) A B

A. Problem Generator time limit per test: 1 second memory limit per test: 256 megabytes input: standard input output: standard output Vlad is planning to hold m m m rounds next month. Each round should contain one problem of difficulty levels ‘A’, ‘B’…

Spring Cloud系列——使用Sentinel进行微服务保护

文章目录 一、引言1. 雪崩问题的产生原因2. 解决雪崩问题的思路 二、微服务保护1. 服务保护方案1.1 请求限流1.2 线程隔离1.3 服务熔断 2. Sentinel2.1 安装2.2 微服务整合2.2.1 请求限流2.2.2 线程隔离①OpenFeign整合Sentinel②配置线程隔离 2.2.3 服务熔断①编写降级逻辑②配…

计算机网络学习记录 网络层 Day4(下)

计算机网络学习记录 网络层 Day4 (下) 你好,我是Qiuner. 为记录自己编程学习过程和帮助别人少走弯路而写博客 这是我的 github https://github.com/Qiuner ⭐️ ​ gitee https://gitee.com/Qiuner 🌹 如果本篇文章帮到了你 不妨点个赞吧~ 我…

【数据结构】双向带头(哨兵位)循环链表 —详细讲解(赋源码)

欢迎来到我的Blog,点击关注哦💕 前面介绍单向不带头(哨兵位)链表,双向相比于单向而言,存贮,查找,会更加便利。 前言 双向循环列表是一种特殊的数据结构,它结合了双向链表…

MySQL 存储过程(一)

本篇主要介绍MySQL存储过程的相关内容 目录 一、什么是存储过程? 二、基本语法 创建存储过程 调用存储过程 查看存储过程 删除存储过程 三、变量 系统变量 用户自定义变量 局部变量 四、存储过程的参数 in out inout 一、什么是存储过程&#xff1f…

摄像头对人脸进行性别和年龄的判断

摄像头对人脸性别和年龄判断 导入必要的库加载预训练的人脸检测模型加载预训练的性别和年龄识别模型定义性别和年龄的标签列表打开摄像头从摄像头读取一帧转换为灰度图像检测人脸遍历检测到的人脸显示视频流按 ‘q’ 或点击窗口的“”退出循环释放摄像头和销毁所有窗口全部代码…

python中的while循环

没有循环时,想打印0-100之间的数字,则需要循环多次,例: print(0) print(1) print(2) print(3) ... print(99) 但是使用循环的话,就不会有那么麻烦 while 循环 while 这个单词有“在……时”的含义,whil…

【UnityShader入门精要学习笔记】第十七章 表面着色器

本系列为作者学习UnityShader入门精要而作的笔记,内容将包括: 书本中句子照抄 个人批注项目源码一堆新手会犯的错误潜在的太监断更,有始无终 我的GitHub仓库 总之适用于同样开始学习Shader的同学们进行有取舍的参考。 文章目录 表面着色器…

2024年手机能做的赚钱软件有哪些?整理了八个手机能做的正规赚钱软件分享

在这个指尖滑动的时代,手机不仅仅是通讯工具,更是我们探索财富的钥匙。你是否曾幻想过,躺在沙发上,轻轻一滑,就能让钱包鼓起来? 今天,就让我们一起来探索那些隐藏在手机里的赚钱秘笈&#xff0c…

使用 Vue 3 和 vue-print-nb 插件实现复杂申请表的打印

文章目录 1:创建 Vue 3 项目2:安装 vue-print-nb 插件3:配置 vue-print-nb 插件4:创建一个复杂的申请表5:使用 ApplicationForm 组件6:运行项目 在开发管理系统或申请表打印功能时,打印功能是一…

光伏无人机踏勘需要使用哪些设备?用到哪些原理?

随着全球能源结构的转型和绿色能源的大力推广,光伏电站的建设和运维正成为能源领域的热点。然而,光伏电站的选址、建设和后期运维过程中,往往面临着地形复杂、设备分散、巡检难度大等挑战。在这一背景下,无人机踏勘技术以其独特的…

qt程序打包成一个exe

首先在release模式下编译然后用windeployqt打包 具体步骤参照我这篇文章: https://blog.csdn.net/weixin_73548574/article/details/134932044 然后使用一个加壳工具:https://enigmaprotector.com/en/downloads.html 下载安装后打开 到此完成&#…