【人工智能】推荐系统算法

【人工智能】推荐系统算法,第1张

【人工智能】推荐系统算法 推荐系统算法详解 一、推荐系统详解 1. 基于人口统计学的推荐算法

  • 基于人口统计学的推荐机制(Demographic-based Recommendation)是一种最易于实现的推荐方法,它只是简单的根据系统用户的基本信息发现用户的相关程度,然后将相似用户喜爱的其他物品推荐给当前用户
  • 对于没有明确含义的用户信息(比如登录时间、地域等上下文信息),可以通过聚类等手段,给用户打上分类标签
  • 对于特定标签的用户,又可以根据预设的规则(知识)或者模型,推荐出对应的物品
  • 用户信息标签化的过程一般又称为用户画像(User Profiling)
  • 用户画像(User Profile)就是企业通过收集与分析消费者社会属性、生活习惯、消费行为等主要信息的数据之后,完美地抽象出一个用户的商业全貌作,是企业应用大数据技术的基本方式
  • 用户画像为企业提供了足够的信息基础,能够帮助企业快速找到精准用户群体以及用户需求等更为广泛的反馈信息
  • 作为大数据的根基,它完美地抽象出一个用户的信息全貌,为进一步精准、快速地分析用户行为习惯、消费习惯等重要信息,提供了足够的数据基础
2. 基于内容的推荐算法

  • Content-based Recommendations (CB)根据推荐物品或内容的元数据,发现物品的相关性,再基于用户过去的喜好记录,为用户推荐相似的物品。
  • 通过抽取物品内在或者外在的特征值,实现相似度计算。
    • 比如一个电影,有导演、演员、用户标签UGC、用户评论、时长、风格等等,都可以算是特征。
  • 用户(user)个人信息的特征(基于喜好记录或是预设兴趣标签),和物品(item)的特征相匹配,就能得到用户对物品感兴趣的程度
    • 在一些电影、音乐、图书的社交网站有很成功的应用,有些网站还请专业的人员对物品进行基因编码/打标签(PGC)
  • 相似度计算
  • 对于物品的特征提取 —— 打标签(tag)
    • 专家标签(PGC)
    • 用户自定义标签(UGC)
    • 降维分析数据,提取隐语义标签(LFM)
  • 对于文本信息的特征提取——关键词
    • 分词、语义处理和情感分析(NLP)
    • 潜在语义分析(LSA)
  • 基于内容推荐系统的高层次结构
3. 特征工程

  • 特征:作为判断条件的一组输入变量,是做出判断的依据
  • 目标:判断和预测的目标,模型的输出变量,是特征所产生的结果
  • 特征(feature):数据中抽取出来的对结果预测有用的信息。
  • 特征的个数就是数据的观测维度
  • 特征工程是使用专业背景知识和技巧处理数据,使得特征能在机器学习算法上发挥更好的作用的过程
  • 特征工程一般包括特征清洗(采样、清洗异常样本),特征处理和特征选择
  • 特征按照不同的数据类型分类,有不同的特征处理方法
    • 数值型
    • 类别型
    • 时间型
    • 统计型
4. 数值型特征处理
  • 用连续数值表示当前维度特征,通常会对数值型特征进行数学上的处理,主要的做法是归一化和离散化

  • 幅度调整/归一化

  • 特征与特征之间应该是平等的,区别应该体现在特征内部

  • 例如房屋价格和住房面积的幅度是不同的,房屋价格可能在3000000 ~ 15000000 (万)之间,而住房面积在40-300 (平方米)之间,那么明明是平等的两个特征,输入到相同的模型中后由于本身的幅值不同导致产生的效果不同,这是不合理的

  • 用之前的特征除以特征的最大值和最小值之差得出新的特征

5. 数值型特征处理(归一化)

6. 数值型特征处理(离散化)

  • 离散化的两种方式
    • 等步长:简单但不一定有效
    • 等频:min -> 25% -> 75% -> max
  • 两种方法对比
    • 等频的离散化方法很精准,但需要每次都对数据分布进行一遍重新计算,因为昨天用户在淘宝上买东西的价格分布和今天不一定相同,因此昨天做等频的切分点可能并不适用, 而线上最需要避免的就是不固定,需要现场计算,所以昨天训练出的模型今天不一定能使用
    • 等频不固定,但很精准,等步长是固定的,非常简单,因此两者在工业上都有应用
7. 类别型特征处理
  • 类别型数据本身没有大小关系,需要将它们编码为数字,但它们之间不能有预 先设定的大小关系,因此既要做到公平,又要区分开它们,那么直接开辟多个空间
  • One-Hot编码/哑变量
    • One-Hot编码/哑变量所做的就是将类别型数据平行地展开,也就是说,经过One-Hot编码/哑变量后,这个特征的空间会膨胀

8. 时间型特征处理
  • 时间型特征既可以做连续值,又可以看做离散值。
  • 连续值
    • 持续时间(网页浏览时长)
    • 间隔时间(上一次购买/点击离现在的时间间隔)
  • 离散值
    • 一天中哪个时间段
    • —周中的星期几
    • —年中哪个月/星期
    • 工作日/周末
9. 统计型特征处理
  • 加减平均:商品价格高于平均价格多少,用户在某个品类下消费超过多少。
  • 分位线:商品属于售出商品价格的分位线处。
  • 次序性:商品处于热门商品第几位。
  • 比例类:电商中商品的好/中/差评比例。
10. 推荐系统常见反馈数据

11. 基于 UGC 的推荐

  • 问题
    • 简单算法中直接将用户打出标签的次数和物品得到的标签次数相乘,可以简单地表现出用户对物品某个特征的兴趣
    • 这种方法倾向于给热门标签(谁都会给的标签,如“大片”、“搞笑”等)、热门物品(打标签人数最多)比较大的权重,如果一个热门物品同时对应着热门标签,那它就会“霸榜”,推荐的个性化、新颖度就会降低
    • 类似的问题,出现在新闻内容的关键字提取中。比如以下新闻中,哪个关键字应该获得更高的权重?
12. TF-IDF
  • 词频-逆文档频率(Term Frequency-Inverse document Frequency, TF-IDF)是一种用于资讯检索与文本挖掘的常用加权技术
  • TF-IDF是一种统计方法,用以评估一个字词对于一个文件集或一个语料库中的其中一份文件的重要程度。字词的重要性随着它在文件中出现的次数成正比增加,但同时会随着它在语料库中出现的频率成反比下降
    • TFIDF = TF X IDF
  • TF-IDF的主要思想是:如果某个词或短语在一篇文章中出现的频率TF高,并且在其他文章中很少出现,则认为此词或者短语具有很好的类别区分能力,适合用来分类
  • TF-IDF加权的各种形式常被搜索引擎应用,作为文件与用户查询之间相关程度的度量或评级

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

原文地址: http://outofmemory.cn/zaji/5653586.html

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

发表评论

登录后才能评论

评论列表(0条)

保存