欢迎关注“程序杂货铺”公众号,里面有精彩内容,欢迎大家收看^_^

1.XGBoost算法

1.1 算法特性

    用于解决二分类问题,同时通过使用许多策略能够防止过拟合现象发生,模型准确率比普通算法要高。XGBoost支持并行化计算,使得算法在模型训练及模型计算时运行速度快,效率高。XGBoost考虑了训练数据为稀疏值的情况,可以为缺失值或者指定的值指定分支的默认方向,这能大大提升算法的效率。

1.2 案例链接

https://blog.csdn.net/kwame211/article/details/81098025

https://blog.csdn.net/HHTNAN/article/details/81079257#6-xgboost%E5%AE%9E%E6%88%98

2.基于用户的协同过滤推荐算法

2.1 算法特性

    这种算法给用户推荐和他感兴趣相似的其他用户喜欢的物品,基于用户的偏好进行推荐,从全量数据集中找出哪些人有相同偏好,针对人群之间的相似偏好性进行推荐。最大的优点是算法简单,工程上容易实现,可以方便应用到产品中。目前绝大多数实际应用的推荐算法都是协同过滤推荐算法。

    在现今很流行的社交网络站点中,基于用户的协同过滤推荐算法是一个更不错的选择,基于用户的协同过滤推荐算法加上社会网络信息,可以增加用户对推荐解释的信服程度。

2.2 案例链接

https://blog.csdn.net/shixiaoguo90/article/details/80253567

https://www.jianshu.com/p/79d24fa3664f

3.基于物品的协同过滤推荐算法

3.1 算法特性

    基于物品的协同过滤推荐算法不是根据物品内容的属性计算物品之间的相似度,而是通过分析用户的行为记录来计算用户的相似度。从物品角度找到相似度高的商品,进行推荐。最大的优点是算法简单,工程上容易实现,可以方便应用到产品中。目前绝大多数实际应用的推荐算法都是协同过滤推荐算法。

    在非社交网络的网站中,内容内在的联系是很重要的推荐原则,它比基于相似用户的推荐原则更加有效。同时,基于物品的协同过滤推荐算法便于为推荐做出解释。

3.2 案例链接

https://cloud.tencent.com/developer/article/1366089

https://blog.csdn.net/u011630575/article/details/78649331

4.ALS算法

4.1 算法特性

    ALS算法适用于推荐系统。ALS是alternating least squares的缩写 , 意为交替最小二乘法。交替最小二乘法是对最小二乘法处理多个变量时的扩展。其基本原理是如果有两个变量需要确定,那ALS先固定第一个变量,然后求解第二个变量。之后固定第二个变量,求解第一个变量。如此交替迭代直至收敛或者达到最大迭代次数。ALS算法属于User-Item CF,也叫做混合CF。它同时考虑了用户和物品两个方面,相当于融合了基于用户的协同过滤推荐算法和基于用户的协同过滤推荐算法。ALS能够解决稀疏矩阵分解的问题。

4.2 案例链接

https://www.cnblogs.com/jackchen-Net/p/6648274.html#_label0

https://www.cnblogs.com/lengyue365/p/5689219.html

5.算法组合——ALS+随机森林算法

5.1 算法特性

    传统推荐系统中直接使用协同过滤推荐算法或ALS算法对用户进行产品推荐,无法实现“千人千面”的推荐以及实时变化推荐,即不同用户不同场景推荐不同产品。对于不同推荐算法触发出来的候选集,只是根据算法的历史效果决定算法产生的item的位置显得有点简单粗暴了,同时在每个算法的内部,不同item的顺序也只是简单的由一个或者几个因素决定,因此这些排序结果需要使用随机森林算法,综合多方面的因素来决定。这样一方面通过使用ALS算法融合候选集,提高推荐的覆盖率,多样性和精度,另一方面通过使用随机森林算法,解决了候选集增加以后deal之间排列顺序的问题。

5.2 案例链接

https://blog.csdn.net/wangqi880/article/details/49838619/

6.深度学习算法——DeepFM

6.1 算法特性

    DeepFM主要包括两个部分,神经网络部分和因子分解机部分,分别负责提取低阶特征和高阶特征。并且这两部分共享权重矩阵,即共享Embedding层。通过引入深度学习,能够解决模型计算复杂度以及特征复杂组合的问题,另外不需要人工特征工程,能同时学习低阶和高阶的组合特征。通过结合FM模块和Deep模块共享Feature Embedding部分,可以加快模型训练速度,以及更精准的训练学习。

6.2 案例链接

https://blog.csdn.net/maqunfi/article/details/99635620

https://mp.weixin.qq.com/s/vI1t_Z_0WVE_u--ruOaREA

欢迎关注“程序杂货铺”公众号,里面有精彩内容,欢迎大家收看^_^

Logo

CSDN联合极客时间,共同打造面向开发者的精品内容学习社区,助力成长!

更多推荐