阅读背景:

机器学习之推荐算法

来源:互联网 

1、知识点

"""
推荐系统
    1、相似度计算:
        1、欧几里德距离
        2、皮尔逊相关系数
        3、Cosin距离
        
    2、推荐相似度选择:
            1、固定数量的邻居
            2、基于相似度门槛的邻居
            
    3、基于用户的协同过滤:根据用户和其他用户之间的相关系数值,选择值越小的用户数据,并和该用户比较,推荐物品
            需要解决的问题:1、已知用户评分矩阵R(一般很稀疏) 2、推断矩阵中空格empty cells处的值
        基于用户的协同过滤不利于对全0矩阵进行推荐,其解决方案:
            1、相似度计算最好使用皮尔逊相似度
            2、考虑共同打分物品的数目
            3、对打分进行归一化处理
            4、设置一个相似度阈值  
        缺点:1、稀疏问题(很多值为0)   2、大用户量不利于计算,因此不推荐基于用户的协同过滤
        row:为用户  ,column:为物品
        场景:实时新闻、突发情况(实时数据)


    4、基于物品的协同过滤:根据物品和物品之间的相似度,然后取阈值,获取相邻的值,即推荐物品   (一般使用皮尔逊相关系数)
        优点:1、计算性能高,用户数量大于物品数量
        row:为用户物品  ,column:为用户
        场景:图书、电子商务、电影(离线数据)
        
    5、用户冷启动问题(即用户注册的时候):
            1、引导用户把自己的一些属性表达出来
            2、利用现有的开发数据平台
            3、根据用户注册的属性
            4、推荐排序榜单
      
    6、物品冷启动问题:
        1、文本分析
        2、主题模型
        3、打标签
        4、推荐排行榜单   
          
    7、隐语义模型:将矩阵进行分解,然后求解隐含特征F,从而可以根据F得到一个先的具有填充值的NM矩阵,从而实现推荐,即NM = NF * FM
            1、从数据出发,今天个性化推荐
            2、用户和物品之间有着隐含联系
            3、隐含因子让计算机能理解就好
            4、将用户和物品通过中介隐含因子联系起来
        隐语义模型参数选择:
            1、隐特征的个数F,通常F=100
            2、学习率alpha 别太大
            3、正则化参数lambda,别太大
            4、负样本和正样本比例ratio    
    8、协同过滤与  隐语义对比
        1、原理:协同过滤基于统计方法,隐语义基于建模
        2、空间复杂度,隐语义模型较小
        3、实时推荐依旧难,目前离线计算多
      
    9、模型评估指标
        1、准确率 :均方误差
        2、召回率 :正负样本中,推荐正样本中正确的比例
        3、覆盖率
        4、多样性
        
推荐难点:
    1、计算量解决
    2、模型的好坏怎么评估,怎么更新


suprise 推荐系统api
    url:https://surprise.readthedocs.io/en/stable/getting_started.html
    数据地址:https://files.grouplens.org/datasets/movielens/ml-100k-README.txt

基于用户的协同过滤:

推荐系统
    1、相似度计算:
        1、欧几里



你的当前访问异常,请进行认证后继续阅读剩余内容。

分享到: