推荐系统| 基于人口统计学| 基于内容

推荐系统| 基于人口统计学| 基于内容,第1张

概述  常用推荐算法分类 基于人口统计学的推荐与用户画像 基于内容的推荐与特征工程 基于协同过滤的推荐 1. 基于人口统计学的推荐         基于人口统计学的推荐机制(Demographic-based Recommendation)是一种最易于实现的推荐方法,它只是简单的根据系统用户的基本信息发现用户的相关程度,然后将相似用户喜爱的其他物品推荐给当前用户 对于没有明确含义的用户信息(比如登录时

 

常用推荐算法分类 基于人口统计学的推荐与用户画像 基于内容的推荐与特征工程 基于协同过滤的推荐 1. 基于人口统计学的推荐

   

 

 

基于人口统计学的推荐机制(Demographic-based Recommendation)是一种最易于实现的推荐方法,它只是简单的根据系统用户的基本信息发现用户的相关程度,然后将相似用户喜爱的其他物品推荐给当前用户 对于没有明确含义的用户信息(比如登录时间、地域等上下文信息),可以通过聚类等手段,给用户打上分类标签 对于特定标签的用户,又可以根据预设的规则(知识)或者模型,推荐出对应的物品 用户信息标签化的过程一般又称为用户画像(User Profiling)

 

用户画像

用户画像(User Profile)就是企业通过收集与分析消费者社会属性、生活习惯、消费行为等主要信息的数据之后,完美地抽象出一个用户的商业全貌作是企业应用大数据技术的基本方式 用户画像为企业提供了足够的信息基础,能够帮助企业快速找到精准用户群体以及用户需求等更为广泛的反馈信息 作为大数据的根基,它完美地抽象出一个用户的信息全貌,为进一步精准、快速地分析用户行为习惯、消费习惯等重要信息,提供了足够的数据基础

 

 

2. 基于内容的推荐

        

 

 

Content-based Recommendations (CB) 根据推荐物品或内容的元数据,发现物品的相关性,再基于用户过去的喜好记录,为用户推荐相似的物品。 通过抽取物品内在或者外在的特征值,实现相似度计算。比如一个电影,有导演、演员、用户标签UGC、用户评论、时长、风格等等,都可以算是特征。 将用户(user)个人信息的特征(基于喜好记录或是预设兴趣标签),和物品(item)的特征相匹配,就能得到用户对物品感兴趣的程度;   在一些电影、音乐、图书的社交网站有很成功的应用,有些网站还请专业的人员对物品进行基因编码/打标签(PGC)

相似度计算
相似度的评判,可以用距离表示,而一般更常用的是“余弦相似度”
欧式距离

       

余弦相似度

    

@H_404_89@

 

       

 

 

对于物品的特征提取 —— 打标签(tag)

专家标签(PGC) 用户自定义标签(UGC) 降维分析数据,提取隐语义标签(LFM)

对于文本信息的特征提取 —— 关键词

分词、语义处理和情感分析(NLP) 潜在语义分析(LSA)

基于内容推荐系统的高层次结构

     

 

 

特征工程
特征:作为判断条件的一组输入变量,是做出判断的依据
目标:判断和预测的目标,模型的输出变量,是特征所产生的结果

     

 

 

特征 (feature):数据中抽取出来的对结果预测有用的信息。 特征的个数就是数据的观测维度 特征工程是使用专业背景知识和技巧处理数据,使得特征能在机器学习算法上发挥更好的作用的过程 特征工程一般包括特征清洗(采样、清洗异常样本),特征处理和特征选择 特征按照不同的数据类型分类,有不同的特征处理方法

    数值型
    类别型
    时间型
    统计型

数值型特征处理
用连续数值表示当前维度特征,通常会对数值型特征进行数学上的处理,主要的做法是 归一化 和 离散化
幅度调整/归一化
特征与特征之间应该是平等的,区别应该体现在特征内部
例如房屋价格和住房面积的幅度是不同的,房屋价格可能在3000000 ~ 15000000(万)之间,而住房面积在40~300(平方米)之间,那么明明是平等的两个特征,输入到相同的模型中后由于本身的幅值不同导致产生的效果不同,这是不合理的

   

 

 归一化

          

 

 

         

 离散化 

将原始连续值切断,转化为离散值:

               

让座问题:假设我们要训练一个模型判断在公交车上应不应该给一个人让座,按照常理,应该是给年龄很大和年龄很小的人让座 对于以上让座问题中的年龄特征,对于一些模型,假设模型为 y = θx,输入的 x(年龄)对于最后的贡献是正/负相关的,即 x 越大越应该让座,但很明显让座问题中,年龄和是否让座不是严格的正相关或者负相关,这样只能兼顾年龄大的人,无法兼顾年龄大的人和年龄小的人

对于让座问题,我们可以使用阈值将年龄进行分段,将一个 age 特征分为多个特征,将连续值离散化:

         

 

 

        

在电商中,每个人对于价格的喜好程度不同,但它不一定是严格的正相关或负相关,某些人可能就喜欢某一价格段内的商品。

数值型特征处理 —— 离散化

离散化的两种方式

等步长     —— 简单但不一定有效 等频        —— min --->  25%  -->  75% --->  max

两种方法对比

等频的离散化方法很精准,但需要每次都对数据分布进行一遍从新计算,因为昨天用户在淘宝上买东西的价格分布和今天不一定相同,因此昨天做等频的切分点可能并不适用,而线上最需要避免的就是不固定,需要现场计算,所以昨天训练出的模型今天不一定能使用 等频不固定,但很精准,等步长是固定的,非常简单,因此两者在工业上都有应用

类别型特征处理

类别型数据本身没有大小关系,需要将它们编码为数字,但它们之间不能有预先设定的大小关系,因此既要做到公平,又要区分开它们,那么直接开辟多个空间
One-Hot 编码/哑变量
One-Hot 编码/哑变量所做的就是将类别型数据 平行地展开,也就是说,经过 One-Hot 编码/哑变量后,这个特征的空间会膨胀

           

 

 

          

 

 

 

时间型特征处理

 时间型特征既可以做连续值,又可以看做离散值。

连续值

    持续时间(网页浏览时长)
    间隔时间(上一次购买/点击离现在的时间间隔)

离散值

    一天中哪个时间段
    一周中的星期几
    一年中哪个月/星期
    工作日/周末
统计型特征处理

加减平均:商品价格高于平均价格多少,用户在某个品类下消费超过多少。 分位线:商品属于售出商品价格的分位线处。 次序性:商品处于热门商品第几位。 比例类:电商中商品的好/中/差评比例。

推荐系统常见反馈数据

     

基于 UGC 的推荐

用户用标签来描述对物品的看法,所以用户生成标签(UGC)是联系用户和物品的纽带,也是反应用户兴趣的重要数据源 一个用户标签行为的数据集一般由一个三元组(用户,物品,标签)的集合表示,其中一条记录(u,i,b)表示用户 u 给物品 i 打上了标签 b 一个最简单的算法: @H_419_373@统计每个用户最常用的标签 对于每个标签,统计被打过这个标签次数最多的物品 对于一个用户,首先找到他常用的标签,然后找到具有这些标签的最热门的物品,推荐给他 所以用户 u 对物品 i 的兴趣公式为:  

 

其中,nu,b 是用户 u 打过标签 b 的次数,nb,i 是物品 i 被打过标签 b 的次数;

基于 UGC 简单推荐的问题

简单算法中直接将用户打出标签的次数和物品得到的标签次数相乘,可以简单地表现出用户对物品某个特征的兴趣 这种方法倾向于给热门标签(谁都会给的标签,如“大片”、“搞笑”等)、热门物品(打标签人数最多)比较大的权重,如果一个热门物品同时对应着热门标签,那它就会“霸榜”,推荐的个性化、新颖度就会降低 类似的问题,出现在新闻内容的关键字提取中。比如以下新闻中,哪个关键字应该获得更高的权重?

            

@H_469_404@

TF-IDF

词频-逆文档频率(Term Frequency–Inverse document Frequency, TF-IDF)是一种用于资讯检索与文本挖掘的常用加权技术 TF-IDF 是一种统计方法,用以评估一个字词对于一个文件集或一个语料库中的其中一份文件的重要程度。字词的重要性随着它在文件中出现的次数成正比增加,但同时会随着它在语料库中出现的频率成反比下降 : ??????????=????×?????? TF-IDF 的主要思想是:如果某个词或短语在一篇文章中出现的频率 TF 高,并且在其他文章中很少出现,则认为此词或者短语具有很好的类别区分能力,适合用来分类 TF-IDF 加权的各种形式常被搜索引擎应用,作为文件与用户查询之间相关程度的度量或评级

词频(Term Frequency,TF)
指的是某一个给定的词语在该文件中出现的频率。这个数字是对词数的归一化,以防止偏向更长的文件。(同一个词语在长文件里可能会比短文件有更高的词数,而不管该词语重要与否。)   

    其中 TFi,j 表示词语 i 在文档 j 中出现的频率,ni,j 表示 i 在 j 中出现的次数,n*,j 表示文档 j 的总词数
逆向文件频率(Inverse document Frequency,IDF)
是一个词语普遍重要性的度量,某一特定词语的 IDF,可以由总文档数目除以包含该词语之文档的数目,再将得到的商取对数得到:

   

其中 IDFi 表示词语 i 在文档集中的逆文档频率,N 表示文档集中的文档总数,Ni 表示文档集中包含了词语 i 的文档数

TF-IDF 对基于 UGC 推荐的改进

                           

为了避免热门标签和热门物品获得更多的权重,我们需要对“热门”进行惩罚
借鉴 TF-IDF 的思想,以一个物品的所有标签作为“文档”,标签作为“词语”,从而计算标签的“词频”(在物品所有标签中的频率)和“逆文档频率”(在其它物品标签中普遍出现的频率)
由于“物品 i 的所有标签”n*,i 应该对标签权重没有影响,而“所有标签总数”N 对于所有标签是一定的,所以这两项可以略去。在简单算法的基础上,直接加入对热门标签和热门物品的惩罚项:

                 

其中,??_??^((??))记录了标签 b 被多少个不同的用户使用过,??_??^((??))记录了物品 i 被多少个不同的用户打过标签

3. 基于协同过滤的推荐 总结

以上是内存溢出为你收集整理的推荐系统| 基于人口统计学| 基于内容全部内容,希望文章能够帮你解决推荐系统| 基于人口统计学| 基于内容所遇到的程序开发问题。

如果觉得内存溢出网站内容还不错,欢迎将内存溢出网站推荐给程序员好友。

欢迎分享,转载请注明来源:内存溢出

原文地址: https://outofmemory.cn/yw/1023978.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2022-05-23
下一篇 2022-05-23

发表评论

登录后才能评论

评论列表(0条)

保存