深度|从零搭建推荐体系:如何搭建标签体系?
来源|PMCAFF ID:pmcaff
概述
随着信息技术的迅速发展和信息内容的日益增长,“信息过载”问题愈来愈严重,愈发带来很大的信息负担。推荐系统可以有效缓解此难题,从而得到推崇并加以广泛应用。
简单来说:推荐系统是通过挖掘用户与项目之间的二元关系,帮助用户从大量数据中发现其可能感兴趣的项目如网页、服务、商品、人等,并生成个性化推荐以满足个性化需求。目前市场上对于电子商务的推荐系统有亚马逊、阿里巴巴、豆瓣网、当当网等,信息检索的有谷歌、雅虎、百度等,以及在其它周边领域广泛运用如移动应用、电子旅游、互联网广告等。本文只阐述网页内容,特制新闻方面的项目体系搭建。
研究者认为根据施拉姆信息选择公式,人们对媒体的注意或选择的可能性(然率)与它能够提供的报偿(价值)程度成正比,与人们获得它的代价(费力)程度成反比。也就是说:人们愿意用最小的代价获取价值最大的新闻信息。由此,媒体要从认知接收方面,减轻受众的“费力”程度,提升信息或传媒的价值,树立品牌意识,形成规模效应;拥有与众不同的品味和特色,将自己在受众眼中的“可读”形象转变成“必读”形象,从而使用户对媒介产品形成强烈的信赖感和依赖感,在受众心中形成稳定的独特风格。
下图是一般情况下的推荐系统基本框架(图片取自网络):
从最初的数据收集,到最末端的展示阶段,中间还经过数据处理以及生成环节,处理大多数所指提取特征初处理,生成一般是指利用特征来选取相应算法进行匹配计算。数据的整个生命周期如下:
也就是从数据获取,一直到最后的加工输出,经历的整个环节,最终给我们提供相应的有效信息,采取相应的有效手段,才是数据价值的最终体现。
在正式开始前,对于数据收集的要求也是很高,如果数据不准确或有偏差,很可能之后做的都是徒劳无功,下表为目前常见的数据收集时常见的问题:
对于新闻内容的推荐系统,让人们最顺畅获取到人们想看到的内容,从而形成核心竞争力。推荐系统的常规推荐系统,一共分为两条线,第一条线是用户,第二条线是项目,计算两者间的相关近似值,从而完成推荐。计算近似值一定有所媒介,这个媒介就是标签(Tag)系统,所以在建设整个体系之前,最优先需要建设的就是标签系统,其次是用户体系,也就是用户模型,我们在感知用户唯一的途径就是通过用户操作,换言之既用户行为,所以相对用户行为微妙的变化,要求我们的用户体系是十分敏感的,而最后是项目体系,这里特指新闻内容。
下面将从产品层面尽量描述如何搭建推荐体系相关流程及细节,整体搭建思路流程如下:
整体相对比较复杂,下面将逐一阐述其中细节。
1. 标签体系
1.1 搭建流程
要做标签体系,我们要先确定的就是系统结构,常规来看一般都是讲标签随内容或用户建设(但是我觉得那样是不完整的,在之后获取不到更加有效有帮助的信息,这也就是为什么我认为一定要将标签体系一定要单独拎出来的原因)。
在确定系统结构之后,我们要进行相关的算法选择,并且大致选定学习的范围和地点,以供机器学习,至此整个标签体系的搭建流程就此完毕。随着不断的内容填充进来,要有相应的标签不断补充进来。这是一个长期的过程,并且也需要及时依据用户反馈修正算法,实时调整,并非一日之功。
1.2 二维化结构
常规网络的标签是随用户和内容添加的,但是会有局限性,也就是标签体系较难或无法透彻追查其它相关联内容。实际上标签体系的核心价值,体现在相应建立起信息和人、人与人之间的关联。所以我在思考:如何能够进行最深入的追查最深处的关联?有一个常规方案就是单独建立标签体系,将标签平铺于系统中,也就是二维化。通过机器学习,建立标签的基本联系网络,之后贴合于用户与内容中即可。无立体结构的上下层级展示,好处是可以避免了一维化的后果。换句话说如果有层级,那么不可避免的就会变成一级、二级。
简单来说:与某标签周遭相关联的一切标签均展示;那周遭的标签还会又有标签,再展示;也就变成无穷尽的立体结构化的标签网络,也就是价值基础。最终价值的输出还要结合其它的相关行为、操作、用户物理属性、内容载体以及效果评定等因素综合考量。
1.3 机器学习
常规机器训练流程是:先确定方法→训练集→特征选取→训练→分类器;分类:新样本→特征选取→分类→判决。
所以最开始我们就要确定机器学习的方法。方法有许多种,需要具体根据情况来具体确定。下面仅以产品角度罗列常见经典的机器学习方法、特点、利弊等。以供数据工程师进行选择、对比,辅助做出最优选择,以供参考。
方法当中,首先分为两个大类别:监督学习和非监督学习。监督学习又称为分类或者归纳学习。几乎适用于所有领域,包括内容处理。常见算法有决策树、贝叶斯模型、KNN、SVM等。
与这一方式相对的是非监督学习,在这种方式中,所有的类属性都是未知的,从零开始摸索,算法需要根据数据集的特征自动产生类属性。其中算法中用于进行学习的数据集叫做训练数据集:当使用学习算法用训练数据集学习得到一个模型以后,我们使用测试数据集来评测这个模型的精准度。常见的有聚类、特征矩阵。下表为常规推荐算法的分类,一共是三类:分类算法、关联规则和聚类,依据不同场景选择不同算法进行调整即可。表格后面列出最常用算法的利弊以及用人话描述的算法原理,以供产品同事参考。
朴素贝叶斯:
对于给出的待分类项,求解在此项出现的条件下各个类别出现的概率;哪个最大,就认为此待分类项属于哪个类别。非常好理解,单纯的概率问题。
优点:算法十分稳定,并且对数据参数无要求;运用较为简单。
缺点:在属性个数比较多或者属性之间相关性较大时效率不理想,并且重前期数据格式,需要知道先验概率,存在一定错误率。但是结合聚类算法,可以一定程度解决属性个数问题。
使用场景:常见于垃圾邮件分类场景。
决策树:
哈利波特中的分院帽应用的是个非常典型的决策树模型:帽子往学生头上一扣,读取学生的显著特征,然后分到某个类别里。所以你看,哈利波特一开始表现出来的特征都是格兰芬多的特征,分院帽读取数据时候发现这个人有两类显著特征,于是犹豫不决,最后还是波特自己提出了要求,这就证明应用模型时的人工干预必不可少。
优点:决策树较为通俗易懂,并且对数据格式不敏感,较为聪明;易于通过静态测试测量模型可信度,善于短时间处理大量数据源,对属性数量兼容性好,有很好的扩展性。
缺点:对样本数量不一致的数据,结果有偏向,处理缺失数据时候会有困难,并且有过度拟合现象,容易忽略数据集中属性之间的相关性。
使用场景:可结合随机森林算法,减少相应过度拟合现象。常见于用户行为分析场景。
KNN:
说白了就是我们要寻找邻居,但是为什么要寻找邻居?如何选取邻居,选取多少邻居?怎么样去寻找我们想要的邻居,以及如何利用邻居来解决分类问题这是KNN算法需要解决的几大问题。
为什么我们要寻找邻居?古话说的好:人以类聚,物以群分。要想知道一个人怎
么样,去看看他的朋友就知道了。我们如果要判断一个样本点的类别,去看看和它相似的样本点的类别就行了。
优点:该算法简单有效,重新训练代价较低,对于类域有较差或重叠较多的样本较为适合。同样适用于样本量较大的情况。
缺点:样本量较小时反而有误差。而且该算法是懒散学习方法,不主动,类别评分不规格且输出可解释性不高。当样本量不平衡时,有可能导致当输入一个新样本时,该样本的K个邻居中大容量类的样本占多数,并且计算量较大。可以采用权值的方法,和该样本距离小的邻居权值大,来改进问题,对于计算量较大,可以事先对已知样本点进行剪辑,去除对分类作用不大的样本来优化。
使用场景:常见于预测价格场景。
SVM:
说到这个算法之前,先得配一张图:
这图啥意思呢?不用管。但是这两种分法哪种更好呢?从直观上来说,显然右侧好。也就是分割的间隙越大越好,把两个类别的点分得越开越好。就像我们平时判断一个人是男还是女,就是很难出现分错的情况,这就是男、女两个类别之间的间隙非常的大导致的,让我们可以更准确的进行分类。从实践的角度来说,这样的效果非常好,错误率低。
优点:该算法适用于样本量较小的情况,可提高泛化性能,可解决高维度问题。并且对线性和非线性问题均可解决,可避免神经网络结构选择和局部极小点问题。
缺点:对缺失数据较敏感,对非线性问题没有通用解决方案,需要选择核函数来处理,算法使用并且极其复杂。
使用场景:常见于社交网站用户分类场景。
Ad boosting:
这个算法说实话我也解释不清,没真正运用过,凭自己查资料的理解试着说一下。这个算法核心的思想是整合多个弱分类器,成为一个强大的分类器。这时候,集合分类器出现了。用人话说就是三个臭皮匠赛过诸葛亮,好理解了吧?识别一组条件特征概念判断的正确率比随机猜测略好,但是还不够,这就是弱分类器;多个弱分类器的效果叠加起来,就变成一个强分类器,识别率就会很高了。
优点:该算法精度较高,可用任意方法构建子分类器;使用简单分类器时结果容易理解,且弱分类器构造极其简单,而且不用做特征筛选,不用担心过度拟合情况。
缺点:对离群值比较敏感。
使用场景:常见于人脸检测、目标识别场景。
K-means:
给你一万个人,分成四群,需要能够解释每一群人的突出特征,如果有两群人的特征很相似,那就要重新分群了;或者有一群人的特征不明显,那就要增加分群了。好处在于样本量大的时候,可以快速分群,但需要在分群后注意每个群体的可解释性。
优点:这个算法属于经典算法,简单快速,对处理大数据集可伸缩,高效。并且在簇密集度高、球状或团状时,且有明显于其他簇区别时,聚类效果好。
缺点:但是只有簇平均值被定义情况下才能使用,且对分类属性数据不适用,并且要求用户必须事先给出要生成的簇的数目。对初始值敏感,不适合发现非凸面形状的簇,或者大小差别很大的簇。对噪声和孤立数据敏感,少量该类数据能直接影响平均值。
使用场景:常见于CRM筛选目标客户场景。
神经网络:
这个算法不想解释啥,就想放张图,觉得不放可惜了。
以上摘要从产品角度来说只要大概心里有数即可,一般情况下从产品数据、应用场景等决定。
一般来看,冷启动期间应选择非监督学习,如聚类;等数据丰富之后,转换为监督学习,择优选择算法方可;但仍需具体问题具体分析。更多的还是配合技术、算法人员来选择和实现,详细算法和原理、公式等可以到后面附录1进行查看,给予参考。
1.4 学习地点
这里我建议从百科类产品进行机器学习,国内最大的百科就是百度百科了,在国际上自然还有维基百科。
查了一些相关方法,发现从百度百科利用机器学习标签,已经有相应的案例并且成本相对不是很大,具体的方法也放在后文中的附录2中。
文中探究的是微博标签相关的项目,与本文无关,但整体思路可借鉴。大致流程为先抓取页面下相关标签内容,要注意特殊情况,会有歧义页面;将标签抓取存储之后通过算法计算之间的关联性、权重分数,而后输出验证。整体的过程非常简单快捷,能在前期非常快速的补充相关数据,但是要注意数据量的问题,很可能导致无穷,所以收集哪些主要领域,收集多少,是需要我们最开始定义好的,及时踩刹车。
1.5 输出展示
这里的展示更多指的还是相应的后台页面,要满足几个条件:其中最基本的一定要满足可视化的要求,点击标签以后相应的关联标签可形成关联展示;可以选择展示两级或者三级,清晰直观的看到关联情况。更进一步的是点击后,每个标签里面的详细情况也会展示出来。比如说标签的历史类型情况、载体情况、分别的打开情况、受众用户群体,所以这也是需要依托于用户体系的相关标签结合之后的产出物。
结合基本数据维度比如昨日新增多少标签、文章类型走向是什么样的受众是什么样的走向,都是属于基础数据范畴,达到实时监控,定位报警的作用。
1.6 小结总结
本节总体来说阐述了搭建标签体系的整体流程和相关经典算法的展示与利弊分析,并且提供了标签学习机制的思路。下面,将进行用户模型的体系搭建,详见明日发布的中篇。
附录1 常见机器学习方法算法
附录2 提取百度百科标签建立关联性思路
百度百科介绍
构成百度百科的基础内容是词条。一个词条页面大致可以分为百科名片、词条正文、开放分类、相关词条、参考资料和扩展阅读这个几个部分,根据每个词条的具体情况,某些部分可以没有。
其中,百科名片是词条的概括性描述;词条正文是可以由多个段落组成的对词条的详细描述;开放分类提供词条的属性标签,最多有5个,通常这种标签具有一定的类别信息;相关词条是与当前词条联系比较紧密的相关条目,而一般这种联系必须是横向的,例如“乔峰”的相关词条可以是“段誉”、“阿朱”、“虚竹”等,但不可以是“天龙八部”。
尽管在百科的词条页面上,我们只能看到该词条的开放分类标签;但实际上在百科内部,有一个具有层次的三层分类体系。第一层具有十二个大类;每个大类下面又包含若干个中类,这就是第二层分类;每个中类下面又可细分为若干个小类。
生成方法
我们将百度百科三层分类体系第三层的小类别作为查询,在百度百科中将搜索得到该类别下的词条页面。但是通过这种方式,对于每一个小类别,我们最多只能获取760个相关的词条页面,而更多的实际上可以被划分为该类别的词条页面,我们获取不到。
我们搜索“技术_互联网_电子商务”类别下的页面,结果显示共有词条3469个,但是,我们遍历搜索结果页面,最多只能查看到760个词条页面。在该方法中,我们需要使用百度百科的三层分类体系例如“技术_互联网_编程”、“生活_娱乐_影视”作为用户的标签候选集合。因此,我们可利用的资源便是能够获取到的每个小类别下的最多760个词条页面。
我们通过分析用户发布的微博,将其最感兴趣的百科三层类别作为他的标签。方法的主要思想是:将用户发布的每一条微博映射到最相关的百科词条页面,获取其类别,通过一定的投票策略决策出用户的标签。
下面,具体介绍一下方法中涉及的关键步骤。
百科页面获取与处理
我们按照百度百科提供的开放分类浏览页面,爬取到所有第三层小类别的查询URL,形如http://baike.baidu.com/taglist?tag=****,该URL指向的就是该类别标签的搜索页面。我们通过解析该搜索页面,下载得到百科开放的760 个相关的词条页面。获取页面后,并且按照第三层小类别分类存储后,我们进行正文的提取。词条页面一共有两种,一种是歧义页面,即一个词条包含多种义项,下图所示:
一种是非歧义页面。我们需要分别对其做处理:对于歧义页面,将每一个义项单独作为一个页面提取出来。我们提取百科页面的标题、百科名片、正文、类别,进行分词等处理后,建立索引,待后续使用。
搜索与微博相关的词条页面
给定一条微博,我们需要找到与其相似或者说相关的百科页面,以获取其类别。我们将这个问题转换成为搜索问题。从微博中提炼出查询,从索引过的百科页面中搜索出最相关的。我们使用Indri 对词条页面建立索引。Indri 源自Lemur系统,是CMU和UMass 联合推出的一个用于语言模型和信息检索研究的系统。在这之上可以实现基于语言模型和传统的向量空间模型等的检索。Indri早已经受到了学术界的广泛欢迎。
我们将分别抽取微博中的名词、名词及形容词的组合构成带有权重的查询,其权重采用TFIDF 计算得到,构造的查询形如“#weight(0.45巨蟹座0.35性格0.20特点)”。用构建的查询,我们搜寻到与该查询最相关的词条页面,并获取其对应的类别。
用户标签生成
假定有m种具有三层分类的类别标签,我们将其作为用户的候选标签集合,表示为C={}。
给定某个用户u,抽取其发布的微博文本集合W={},文本数目为n。我们分别对其构造查询,得到查询集合Q={}。对每一个查询q,我们获取Top N个结果,作为该查询相关的词条页面。因为每个词条可能属于若干个类别,因此我们得到的与该查询(或者说其对应的微博)关联的类别可能不止N个。对关联的类别中的每一个类别c,我们计算其分数,如公式。其中, freq(c)指c在该次查询中出现的频数,而d是我们设置的一个常数,例如,我们将其设置为1,则c的分数就是在该次查询中出现的次数;若将d设置为该类别关联的词条页面出现在Top N结果中的具体位置,则说明c的分数受到搜索结果排序的影响,排序越靠前的,对分数的贡献越大。
整个查询过程停止后,我们将对候选标签集合中的每一个标签c计算一个排序分数,可以利用这个算法,其中n 就是指查询的次数。我们取排序前10 的作为为用户自动生成的标签。
2. 用户体系
2.1 搭建流程
首先应该先确定用户动机,因为从用户的根本动机,我们才好做相应的推荐处理。
那么我们应该如何获取用户动机?只有一种方法,就是通过用户行为。所以我们应该优先建立用户行为体系,依据用户行为,分析用户动机;不管是主动动机还是被动动机,之后提取这些动机特征,结合用户物理属性,再进行后处理。再有要将特征值加以过滤,分配权重,结合衰减因子进行最终输出。最终输出的结果应该分为基本属性、用户兴趣、用户关系及用户行为,结合所有综合分析用户动机,在适时的时候推荐合适的内容从而形成推荐最佳化的最终目的,让用户最小成本的获取信息。
所以在分析的时候,依据用户动机分析,推断我们应该注意的哪些环节点的哪些事情。
2.2 动机经典理论
在建立行为体系之前,一定要介绍动机和行为的关系。而又不得不介绍行为科学界一直以来的一个经典理论:“使用与满足”理论,该理论是1974年E·卡茨在其著作《个人对大众传播的使用》中被首先提出。
使用与满足理论是站在受众的立场上,通过分析受众对媒介的使用动机和获得需求满足来考察大众传播给人类带来的心理和行为上的效用。但同传统的讯息如何作用受众的思路不同:它强调受众的作用,突出受众的地位。该理论认为受众通过对媒介的积极使用,从而制约着媒介传播的过程,并指出使用媒介完全基于个人的需求和愿望。
E·卡茨将媒介接触行为概括为一个“社会因素+心理因素→媒介期待→媒介接触→需求满足”的因果连锁过程,提出了“使用与满足”过程的基本模式。经后人的补充和发展,综合提出“使用与满足”的过程:
人们接触使用传媒的目的都是为了满足自己的需要这种需求和社会因素、个人的心理因素有关。
人们接触和使用传媒的两个条件:接触媒介的可能性;媒介印象即受众对媒介满足需求的评价,这种媒介印象或成为评价是在过去媒介接触使用经验基础上形成的。
受众选择特定的媒介和内容并开始使用。
接触使用后的结果有两种:一种是满足需求,一种是未满足。
无论满足与否,都将影响到以后的媒介选择使用行为,人们根据满足结果来修正既有的媒介印象,不同程度上改变着对媒介的期待。
总结了使用与满足理论的要素,包括:
受众是主动的,对于大众媒介的使用是有目标的。
受众需要的满足和对媒介的选择间的联系中,受众拥有主动权。
媒介相互竞争以满足受众需要。
所以最终映射到网络,不难分析出用户使用网络一般是是为了:
(1)人际交往;
(2)打发时间;
(3)搜寻信息;
(4)方便快速;
(5)信息分享;
(6)自我表达;
(7)娱乐放松。
社会心理学的理性行为理论和建立在该理论基础上的技术接受模型(Technology Acceptance Model,简称TAM)最早探究了哪些因素对人们有意识的行为产生影响。1989年,Davis在理性行为理论的基础上,针对技术接受和使用行为提出了技术接受模型:
TAM认为系统使用行为是由行为意向决定的,而行为意向由想用的态度和感知的有用性共同决定,想用的态度由感知的有用性和感知易用性共同决定,感知的有用性是由感知的易用性和外部变量共同决定,感知的易用性由外部变量决定的。
外部变量包括系统设计特征、用户特征(包括感知形式和其他个性特征)等,为技术接受模型中存在的内部信念、态度、意向和不同的个人之间的差异、环境约束、可控制的干扰因素之间建立起一种联系。
2.3 今日头条动机分析
理论介绍完毕,也应该从理论切入分析当前最厉害的内容推荐平台,也就是不得不提的今日头条了。那么从有限的研究论述当中,可以从已经成功的产品中获取到用户使用头条产品的相关动机大致是什么,以指导我们日后的产品方向。
头条相关的研究论文里的方法,也注明与附录3中,以供查看,下面将直接节选结论部分,以供参考。
今日头条流行的主要原因是抓住了受众对个性化需求的心理。对用户需求的研究结果表明,“个性化推荐”(60.79%)、“更新速度快”(60%)、“推送内容多(45.26%)是用户最为强烈的三种动机。
个性化主要体现在三个方面:
1. 频道定制:用户可以订阅自己感兴趣的频道(“今日头条”提供了社会、娱乐、政治、热点等48个频道),同时提供位置信息享受本地化新闻服务(还包含同城活动信息),而且“今日头条”也和微信一样开辟了自媒体平台,用户可关注自己感兴趣自媒体账号。
2. 个性化推荐:“今日头条”若在新闻标题最左方标注一个蓝色的“荐”字,则表示为是根据用户兴趣专门推荐的内容。“今日头条”的信息分发完全基于智能推荐,用户浏览、收藏、转发、评论每一条新闻的行为都会被记录,用户的阅读习惯、阅读时间、阅读位置也会被分析,两者结合形成“用户模型”。通过绑定社交媒体账号和大数据挖掘,后续还会根据用户使用产品的信息反馈(用户在“今日头条”上的“顶”、“踩”、“转发”、“收藏”等行为),不断进行算法的演进,用户分析越精准,推荐内容越来越精确。
3.个性化体验:服务性功能如“离线阅读”“同步收藏”“我的话题”“摘要模式”“阅读模式”“字体设置”都可以根据自己需求定制,体现了良好的用户体验。
更新方法主要分为以下三种:
1. 自动更新:手动更新以及推送更新。自动更新一般几分钟到几十分钟不等;
2. 手动更新的设置是为了满足用户实时对信息的需求,每一次刷新都会有8-12 条不等的信息;
3. 推送更新是将信息发送到用户手机通知上,一天大约 6-10条不等,主要为社会要闻。
并且头条为了满足碎片化阅读的需求,在新闻类型方面,新闻主要以消息和图片为主,鲜少特写、通讯和深度报道等传统意义上报纸的新闻体材,字数控制在1000字左右。
根据《今日头条年度数据报告》,衡量读者阅读习惯的有两个指标:第一个是平均停留时长,第二个是跳出率。1000字的文章跳出率是22.1%,平均停留时长是48.3秒。4000字的文章则刚好相反,跳出率高达65.8%,超过一半以上的人打开一篇文章发现太长后会选择跳出。可见1000字以内的文章的传播率会更高。
同时,头条还加入视频新闻;但并未像搜狐或是新浪客户端那样做成一个单独的功能,而是将其嵌入频道中。视频内容长度在1分钟以内,以减少流量的消耗,主要以轻松、搞笑的内容为主。
所以结合研究结论不难看出,头条用户的最大使用动机仍是精准的个性化推荐,也就是仍需要以精准的推荐为吸引用户打开的核心来源。
2.4 分析模型
由上图可知,我们应该依据已经成熟的用户行为,推断用户的动机因子,再推断至心里因素。实际来说是用户其实已经是带动机才打开APP,先依据有限的数据进行分析推荐,等有相关的行为之后,反推回去用户的动机,根据用户动机调整推荐内容,达到核心目的。
这么做的好处是什么呢?头条类产品全都是依托于用户行为,进行调整,但是用户行为实际是不准确的。心情好与不好看的内容,操作的流程细节,很可能都不一样;如果一味的只记录行为,只会不准确偏离。所以当我们记录了用户在任何情况之下的行为之后,反推回用户动机,进一步推回用户心里因素,依据心里结合喜好和行为,完成完美推荐。
前文理论中同样表明,是社会因素与心里因素决定动机,所以当行为习惯模型建立,社会因素已经量化的时候,只有心理因素是变量,那么我们也能分析出不同的心理因素,依据不同心理因素改变本次的推荐内容,我想应该会大大提升转化率,并且可能是目前头条产品所不具备的一个点。
结合常规的用户画像的相关属性,我们可以看到如下图(增加了购买):
所以两者,也就可以合并成为两条大的脉络,一条是实际,一条是内心,而我们是要依据实际行为猜测内心。两张图结合,将会无比清晰的阐述用户脉络和之间的关系:
用户的浏览行为反映了用户的兴趣,两者之间的关系具有如下特点:
不同年龄、性别、职业的用户偏好反映在用户对商品的浏览行为上;
用户偏好具有动态转移性,将其反映在用户兴趣度上,即若用户偏好发生转移,则原来的兴趣度值减少;
用户对感兴趣的商品会高频度地点击和浏览,假设用户对某种/某类商品的浏览时间越长、频率越高,顾客对该种/类商品越感兴趣,反映用户偏好的兴趣度值也会随之增加。
所以最终,我们会确定需要收集的量化数字,以代表行为的部分,反推分析,达到最终目标。
2.5 行为收集
一般情况下,动机拆分为媒介、社交和体验需求,分别代表的可能原因有:
媒介需求一般有:更新速度快、推送内容多;
社交需求一般有:社交性强、互动性强;
体验需求一般有:个性化推荐精准、智能搜索快速全面、操作方便、离线下载。
依据两种形式,主动行为和被动行为进行分类,主动行为就是用户主动自然操作,被动行为也就是APP人为增加拦截、问题、问卷等收集,所以整理一下我们通过不同动作需要收集的相关动作应该是,主动行为:
媒介:PUSH消息、打开时间;
社交:PUSH通知、分享、攒、回复、收藏、举报、等级;
体验:打开内容类型、内容载体、内容长度、历史搜索行为、历史打开偏好、间隔点击时间、滑动内容位置、阅读设置、下载缓存;
人口属性:年龄、性别、地区、收入、签名等;
周边场景:地理位置、网络环境、端、信号强度、耳机扬声器、高度等;
被动行为:增加拦截、询问兴趣区域、反馈、小问题、问卷、×、卸载等。
通过已经非常成熟的广告领域,可以参考到某些重要的信息,仍是我们的获取重要参考。例如用户来源追踪,以及跨域追踪,所谓跨域追踪是利用指的是比如你在百度上跳转到新浪,同样可以追踪到。利用的手段一般是cookie和缓存,前者一般是自带key,与用户关系不大。
2.6 后处理
后处理一般有三个环节,过滤、权重、衰减因素。过滤一般指过滤提取的无效特征或干扰数据,权重一般根据不同的行为偏好等因素综合考量后进行调整,衰减一般要考虑到用户某个兴趣会随时间延长而降低,相关变量是用户点击频率和浏览时长,依据相关变量进行调整遗忘因子系数。还有一点是利用自然范数梯度下降算法,来进行准确度的修正。从技术方面来说都已经相对成熟,也有成熟算法,不多做阐述。
2.7 模型输出
所谓输出,实际是可依据上方分析后建模完成的相关体现。其作用是辅助我们发现问题,定位并解决。我们要考虑到时效性、便捷性、准确性等问题。
从效果来看是数据,从特征来看是标签。所以数据的展现要求的是可视化,以及灵活性,并且要准确,最小时间间隔维度不能过大。所以选定如:折线图、漏斗图、饼图、柱形图等常见格式,结合不同的区域位置和目的,实现最优展示方式选择。最小时间间隔可以有实时报表或半点报表,每日会汇总报表进行输出,设置相应阀值,波动过阀值后进行相应报警等机制处理。
那么用户标签,其实就是行为标签,依据行为进行计算贴合。是根据标签体系中的标签建设,在标签体系中所有标签二维化平铺,但是在用户体系中贴合的具体标签将有层级划分。其实两者不难发现是包含与被包含的关系,既整个标签体系给用户标签体系提供“素材”,而用户体系是直接拿来用,所以既然是使用者,就要有详细的层级以及权重计算,这个是非常重要,这与我们的终极目标有关。
我们希望知道用户被打上这个标签的背后动机是什么,不同内容之间一定存在某种弱关联,弱关联的发现是通过内容标签背后的二维化体系支撑;但是关联侧重和确定选择,是通过用户层级标签来做到的,最终借此我们就可以相应的给一部分猜测,并给予惊喜推荐,完成超越用户所想的目的。通过弱关联,我们还可以完成用户之间的相互推荐,或者用户聚类等工作,建立用户之间的关系网络,为搭建社交氛围做好铺垫。
上面是通过用户行为获取的标签,还有一部分是用户物理属性,也就是如性别、地区、客户端、网络环境等属性,尽量收集全,并且每日收集,记录维度以登陆时间为维度。最终行为标签与物理标签相结合,综合展示于内容标签及用户标签系统中。之后,需要根据用户的标签体系,通过算法分析用户性格,性格会帮我们在之后的个性化产品中不去招惹用户,让每个用户获有满足感。
至此,应输出的用户标签实际为四类,属性、兴趣、关系、行为,属性包含物理属性和性格属性,以上四个维度,有助于我们全方位分析用户,最终输出的应是用户动机的最大可能性猜测,猜测用户这次想看什么类型的内容,结合内容体系,进行推荐。
2.8 小结总结
本节阐述的是整个用户体系的搭建思路,包括之前的经典理论引用和搭建分析模型,最终到用户分析和输出展示形式,下面将阐述项目体系的搭建思路。
3. 项目体系
项目体系分为许多种,有商品、用户、内容、广告等,本文仅以内容作为搭建思路叙述。
3.1 内容特征
内容向量通常存在维数大的问题,即使去掉低频词和高报词等停用词后,仍然会有数万维的特征留下。为了提高机器学习的效率和精度,有必要降低文本向量的维数。特征选择是内容降维的有效方法。
具体做法是构造一个评估函数对特征向量中的所有特征逐一评分,选取分值高于设定阑值的特征。常用的评估函数有:文档频数、词频函数、TIFDF、期望交叉摘、CHI、信息增益、互信息等。虽然实验表明IG和CHI等基于信息熵的方法的可以取得较好的特征选择效果,但是计算费用高,系统开销大,使用起来浪费时间和资源。因此实际应用中,计算量较小、评估效果较好的TIFDF方法是非常可取的。
并且内容不仅是文字,仍会有图片、视频、语音等,对于这三者,因为维度完全不同,所以使用手段与方法也完全不同。
3.2 图片特征
将二维平面降维手段仍是标签,一般称为图片标注;标注方法可以简单分为基于模型学习的方法和基于实例检索的方法。
基于模型学习的方法具有较高的标注性能,但是模型训练的计算复杂性较高,不具备实战意义。基于实例检索的方法将图像标注问题看作图像检索问题,是基于数据驱动的模型方法。所以一般选择后者,其中算法也是层出不穷;提升准确性和过滤垃圾标签是共同目标,需要择优选择,方法和技术已经同样有许多种,不多做赘述。
3.3 视频特征
视频为三维载体,又增加了时间性质;常规手段有:将视频逐一降维成二维平面,也就是等分切割,转化为图片标注,即可。但是该方法成本巨大,在大量数据当中应用不现实。更加较为新兴手段有视频弹幕,弹幕是直接在视频上用户编辑的文字内容,类似字幕,将每时刻弹幕内容提取,直接把视频变为标签,按权重划分删除垃圾标签即可,较为简单高效。
3.4 音频特征
常见音频一般以脱口秀、音乐为主,其中标题提供的信息标签权重会非常大,但仍是有限的。所以对于脱口秀,衍生出了语音识别技术:将语音转化为文字信息进行标记。对于音乐,我们只能从其它手段进行补充。比如波形识别,一般音乐含有曲风、风格等属性,利用音频的波形识别技术可顺利获取相关标签。
3.5 评论特征
评论虽然是文字类型,但是由于评论都不可能过长,所以问题就会出现语义不完全,严重的数据稀疏问题。这里非常像微博,微博只有140个字,相对较少。所以针对微博的这种情况,也有许多新技术来进行改进。例如:通过拓展微博文本的特征,通过分析微博数据中的某些现象或特性等手段来改善数据稀疏问题;所以充分借鉴在微博领域中的研究成果利用,结合实际使用。
3.6 垃圾标签抵御
对于以上载体,不可避免的都会有垃圾标签的出现,不管是主动还是被动,所谓主动是由于识别率或技术局限性等问题,导致的垃圾标签的产生,对于被动更多的场景比如说是图片的水印,视频的广告或是由于恶意攻击、恶意添加等行为的产生,那么对于垃圾标签同样有许多手段进行相关抵御:
基于检测的垃圾标签抵御,通常分为两个阶段:首先,系统管理员可以手动标注垃圾标签或其对应的恶意用户,也可以由系统根据统计分析和机器学习的相关理论来自动识别出垃圾标签或其对应的恶意用户;然后,由系统做出响应,这种响应可以是在垃圾标签上做出标识,也可以是直接删除垃圾标签并调整搜索结果或者限制恶意用户的权限。
基于降级的抵御,是通过降低受垃圾标签污染的资源在用户搜索结果列表中排列的位置来实现对垃圾标签的抵御.利用特定的算法将那些受垃圾标签污染的资源排在结果列表中尽可能靠后的位置,这样用户就不会看到这些受污染资源。相关会有Coincidence—based模型、SpamClean模型、DSpam模型等对这种形式进行处理。
基于预防的垃圾标签抵御,统计表明,很大一部分的垃圾标签来自于僵尸网络中被控制的主机或者可以标注标签的自动化程序,这些主机或者程序可以根据攻击者的需要来产生大量垃圾标签,从而对社交网站中正常用户的标签服务构成威胁。所以该手段主要是通过对产生标签的用户的权限进行隐藏或者限制从而抑制垃圾标签的出现,即确保每个标签的产生都来自于自然人而不是僵尸网络等.需要指出,目前基于预防的垃圾标签抵御方法的效果尚无法通过量化指标来衡量,这主要是因为无法统计因采用了此类方法而预防成功的垃圾标签的数量。
最终,标签的抵御效果可以由如下两个属性进行评价:服务执行效率与服务可用性。
3.7 模型输出
对于内容标签,综上有许多种方法,但是还有一条标签线是载体标签。所谓载体,纯文字、纯视频、纯图片相册、图文、视频文字、视频图片文字,主流常见的只有这三种。需要详细的进行展示,例如文字以千字为一档进行划分,比如1000字以下、1001-2000字等,图片以十张图为一档,视频以一分钟为一档,可以辅助我们进行内容效果评估。并且进一步结合用户实际场景,实际情况来进行推荐提供了又一维度。
所以最终输出应为内容类型、内容载体、内容分类以及内容适配场景,最终计算内容的核心亮点,以供于贴合用户群,结合用户动机,实现用户这次想看什么内容的需求供给,达到转化率最大化的目的。
3.8 小结总结
本节阐述了对于内容标签的搭建体系,针对不同的元素有不同的获取方式,其中对于垃圾标签的抵御也阐述相关手段和方法,最终的展现上仍要求可视化,对于了解某种内容的详细受众用户群,是有极大好处的,下一节将会阐述推荐流程中的核心流程,推荐环节。
附录3 今日头条心理动机研究
研究模型
“今日头条”用户的年龄,性别等人口统计特征和用户媒介偏好,自变量为“今日头条”用户的使用动机,中介变量为“今日头条”用户的使用态度,因变量为“今日头条”用户的使用行为。本研究的主要研究方向是利用使用态度这个中介变量研究使用动机(需求)对使用行为的影响。
控制变量
控制变量主要包括性别、年龄、教育程度、职业等人口统计学特征。
自变量——动机(需求)
根据“使用与满足”理论,用户是被看作有特定“需求”的个人,而他们接触媒介的活动被看作是基于某种特定的需求动机来“使用媒介”,最终使这些需求得到满足的过程。而这种特定的需求的产生,主要有两个方面:一个是社会因素,另一个是个人心理因素。本研究从个人因素和社会因素出发,兼顾“今日头条”的用户体验(易用性、有用性)等方面,总结了用户使用“今日头条”的若干动机。本调查将用户使用今日头条的需求分为三个维度:媒介需求,社交需求,体验需求。
中介变量
本研究以用户对“今日头条”的使用态度(满意度)为中介变量。在理性行为理论和技术接受模型(TAM)中,中介变量包括两个方面:使用态度和行为意向。使用态度包含个人对某种使用行为所持的正面或负面的看法;行为意向反映个人从事某项行为的意愿。但在社会心理学中,“态度”界定为个体对事物的反应方式,已
文章评论(0)