Python_头条推荐系统_离线用户召回集与排序计算(2)

论坛 期权论坛     
匿名技术用户   2021-1-15 14:46   38   0
<h1 id="31-用户画像计算更新">3.1 用户画像计算更新</h1>
<h2 id="学习目标">学习目标</h2>
<ul><li>目标
  <ul><li>知道用户画像建立的流程</li></ul></li><li>应用
  <ul><li>无</li></ul></li></ul>
<h3 id="311-为什么要进行用户画像">3.1.1 为什么要进行用户画像</h3>
<p>要做精准推送同样可以使用多种推荐算法,例如:基于用户协同推荐、基于内容协同的推荐等其他的推荐方式,但是以上方式多是基于相似进行推荐。<strong>而构建用户画像,不仅可以满足根据分析用户进行推荐,更可以运用在全APP所有功能上。</strong></p>
<p>建立用户画像确实是一个<strong>一劳多得</strong>的事情,不仅可以运用于精准推送、精准推荐、精准营销,更可以作为网站的用户属性分析,用户行为分析,商业化转化分析等。同时网站共用一套用户画像,可以对用户有统一的认知。</p>
<h3 id="312-用户画像计算设计">3.1.2 用户画像计算设计</h3>
<p>3.1.2.1 用户画像流程</p>
<p><img alt="" height="304" src="https://201907.oss-cn-shanghai.aliyuncs.com/cs/5606289-4ec0c2b1dd8fad96b2f385d72943219c.png" width="313"></p>
<p>用户画像的第一层主要是原始数据库,此数据库主要囊括后续分析所需要的所有原始数据。也是通过大量数据的分析和处理,后面能提炼成用户的画像得以运用。</p>
<ul><li>头条画像原始数据</li></ul>
<p><img alt="" height="372" src="https://201907.oss-cn-shanghai.aliyuncs.com/cs/5606289-10e93bd5732a54bff1871c083b86b71c.png" width="776"></p>
<p>如数据库查询结果</p>
<pre class="blockcode"><code>hive&gt; select * from user_action limit 1;
OK
2019-03-05 10:19:40             0       {&#34;action&#34;:&#34;exposure&#34;,&#34;userId&#34;:&#34;2&#34;,&#34;articleId&#34;:&#34;[16000, 44371, 16421, 16181, 17454]&#34;,&#34;algorithmCombine&#34;:&#34;C2&#34;} 2019-03-05
</code></pre>
<p>对于这样的数据,我们希望处理成一个完成统计基本表格,如下</p>
<p><img alt="" height="285" src="https://201907.oss-cn-shanghai.aliyuncs.com/cs/5606289-9c9da6f6053186e138cf478de71ce604.png" width="764"></p>
<ul><li>用户画像标签建立</li></ul>
<p>用户行为原始数据,我们得到了一张庞大的行为记录表。但是想要把这个表格的内容运用起来,我们需要把用户行为更为具象化,也就是需要把用户画像构建起来。</p>
<p>其实用户标签并不等同于用户画像,只是用户标签是用户画像直观的呈现,并且是比较好且常用的运用方式。</p>
<p>构建用户标签库其实比较简单,因为我们在上述采集用户行为过程中,已经把用户喜好的内容采集下来了,所以基础标签并可以直接运用内容的标签。也就是通过用户喜欢的内容给用户贴标签。</p>
<p><strong>文章标签化</strong></p>
<p>文章标签化,即之前我们建立好的文章标签,利用这些标签给用户贴上相应标签</p>
<table><thead><tr><th> </th><th>频道1</th><th>频道2</th><th>频道3</th><th>频道4</th><th>...</th><th>性别</th><th>年龄</th></tr></thead><tbody><tr><td>用户1</td><td>标签weights,标签,标签….</td><td>标签weights,标签,标签….</td><td>标签weights,标签,标签….</td><td>标签weights,标签,标签….</td><td>...</td><td>1</td><td>10</td></tr><tr><td>用户2</td><td>标签weights,标签,标签….</td><td>标签weights,标签,标签….</td><td>标签weights,标签,标签….</td><td>标签weights,标签,标签….</td><td>...</td><td>1</td><td>20</td></tr><tr><td>用户3</td><td>标签weights,标签,标签….</td><td>标签weights,标签,标签….</td><td>标签weights,标签,标签….</td><td>标签weights,标签,标签….</td><td>...</td><td>0</td><td>30</td></tr></tbody></table>
<h1 id="32-用户画像增量更新">3.2 用户画像增量更新</h1>
<h2>学习目标</h2>
<ul><li>目标
  <ul><li>知道用户行为日志的处理过程</li><li>知道用户画像标签权重的计算公式</li><li>知道用户画像的HBase存储与Hive关联</li></ul></li><li>应用
  <ul><li>应用Spark完成用户画像的增量定时更新</li></ul></li></ul>
<h3 id="321-增量用户行为日志处理">3.2.1 增量用户行为日志处理</h3>
<p>这里我们对用户画像更新的频率,</p>
<ul><li>目的:首先对用户基础行为日志进行处理过滤,解析参数,从user_action—&gt;user_article_basic表。</li></ul>
<p>日志数据分析结果:</p>
<p><img alt="" height="280" src="https://201907.oss-cn-shanghai.aliyuncs.com/cs/5606289-e8e183182210a56258f1f531e2e5a6de.png" width="767"></p>
<ul><li>步骤:
  <ul><li>1、创建HIVE基本数据表</li><li>2、读取固定时间内的用户行为日志</li><li>3、进行用户日志数据处理</li><li>4、存储到user_article_basic表中</li></ul></li></ul>
<p><strong>创建HIVE基本数据表</strong></p>
<pre class="blockcode"><code>create table user_article_basic(
分享到 :
0 人收藏
您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

积分:7942463
帖子:1588486
精华:0
期权论坛 期权论坛
发布
内容

下载期权论坛手机APP