前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >用户画像小结

用户画像小结

原创
作者头像
languageX
发布2023-08-04 12:44:29
5880
发布2023-08-04 12:44:29
举报
文章被收录于专栏:计算机视觉CV

前段时间做可一些用户画像方面的工作,对用户画像技术有了初步了解。如果你是一个对大数据和用户画像技术完全不了解的小白,希望这篇文章可以提供一点帮助。

在项目开展前,当然要先了解用户画像主要是干什么的,下面是我总结的两篇文章,大家可以先对大数据和用户画像有个基本的认识。

大数据--基础概念

刚入门大数据看文章和书籍时对一堆框架(上图)肯定是一脸懵。我知道你很急,但是你先别急,上面这篇文章介绍了大数据中常用的框架,可以帮助我们对工具和框架有些基础概念,便于以后项目使用选型。在实际项目中再去深入理解。

用户画像--《美团机器学习实践》笔记

如果刚接触用户画像,可以先通过以上两篇文章对用户画像挖掘和应用有初步了解。如果你读完以后是一脸懵的话,我知道你很急,但是你先别急。下文就详细进行实操对基础概念有更深入的了解~搞环境!上代码!!

1 装备

不要一来就上大数据,我们先在本地使用小数据走个流程~

为了在本地使用数据库表,以及对数据进行处理,我们先安装一些软件。

这里软件的安装,我在之前文章也有总结

1.1 mysql和workbench在windows的安装和使用

https://cloud.tencent.com/developer/article/2229927

1.2 pyspark在windows的安装和使用

https://cloud.tencent.com/developer/article/2229927

2 技能

环境安装好后,我们就可以储备技能了。人生苦短,我用python,所以我选择pyspark。

Spark主要是用Scala语言开发,部分使用Java语言开发,运行在JVM中。同时在外层封装,实现对python,R等语言的开发接口。

Spark 集群由集群管理器 Cluster Manager、工作节点 Worker、执行器 Executor、驱动器 Driver、应用程序 Application 等部分组成。

spark在外层封装了python接口,主要是借助py4j实现python和java的交互。这样python使用者就不用多学一门java,轻松使用python进行大数据开发。

py4j

py4j是用python和java实现的库。通过PY4J,python可以动态访问Java虚拟机中的Java对象,Java程序也可以回调Python对象。

pyspark实现机制如下图:

在driver端,spark执行在JVM,python通过py4j调用Java的方法,SparkContext利用Py4J启动一个JVM并产生一个JavaSparkContext,将pyspark程序映射到JVM中;

在Executor端,spark也执行在JVA,task任务已经是序列后的字节码,不需要用py4j了,但是如果里面包含一些python库函数,JVM无法处理这些python函数,所以会需要为每个task启动一个python进程,通过socket通信将python函数在python进程中执行后返回结果。

对于spark的基础概念详细介绍,可以看看我的这篇文章:pyspark(一)--核心概念和工作原理

对于pyspark的使用,可以在项目实践过程中慢慢积累学习。

3 实战

买好装备,学好技能,可以简单实战下了~

3.1 用户消费画像

我当时是先从实现一个RFM模型入手,熟悉从数据库读取库表,对库表进行操作以及分析的流程,顺便熟悉pyspark的一些常用API。

使用pyspark实现RFM模型及应用(超详细)

利用用户的消费流水,对用户的消费水平打标签~实现简单的用户付费画像。

3.2 用户兴趣画像

同样我们也可以利用用户的行为流水,对用户的兴趣打标签~

以一个简单示例介绍,比如我们有如下表格数据:

ftime

uin

item_id

act_cnt

act_duration

20230717

1

1234

5

3600

表示用户1在2023年6月16号,对id:1234这个物品,交互了4次(登录/点赞评等交互),累计一天在线时长 3600秒。

第一步:标签体系映射。item_id:1234这个表示用户什么兴趣爱好啊?我们需要对item_id到tag的解析,这里面涉及到太多算法,不做太多介绍。假设通过算法我们可以解析出:1234映射的tag就是“王者荣耀”。

ftime

uin

tag

act_cnt

act_duration

20230717

1

王者荣耀

5

3600

第二步:兴趣分数。例子中我们知道用户的交互次数和交互时长。按最简单方式,基于标签tag,我们统计“王者荣耀”用户最大交互次数是10次,最大在线时长是8小时。那按最简单规则计算分数,value/max_value,可以得到:

ftime

uin

tag

act_cnt_score

act_duration_score

20230717

1

王者荣耀

0.5

0.125

第三步:融合兴趣分数。现在我们有两个分数:交互分数A和在线时长分数B。我们再用简单规则,将两个维度的分数融合:\alpah * A + \beat * B

ftime

uin

tag

score

20230717

1

王者荣耀

0.35

现在就得到了用户"1"在"王者荣耀"的兴趣度是"0.5"~短期(天)兴趣画像就出来啦~

以上内容阐述了如何通过最直观简洁的方式来构建用户画像,让大家对用户画像的概念有更深入的理解。在实际项目实施中,每一步骤都需要结合具体业务进行算法的选择,同时也需要面对复杂的工程流程以确保项目上线。

原创声明:本文系作者授权腾讯云开发者社区发表,未经许可,不得转载。

如有侵权,请联系 cloudcommunity@tencent.com 删除。

原创声明:本文系作者授权腾讯云开发者社区发表,未经许可,不得转载。

如有侵权,请联系 cloudcommunity@tencent.com 删除。

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
目录
  • 1 装备
    • 1.1 mysql和workbench在windows的安装和使用
      • 1.2 pyspark在windows的安装和使用
      • 2 技能
      • 3 实战
        • 3.1 用户消费画像
          • 3.2 用户兴趣画像
          相关产品与服务
          大数据
          全栈大数据产品,面向海量数据场景,帮助您 “智理无数,心中有数”!
          领券
          问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档