
传统的推荐算法
文章平均质量分 98
在大数据时代,深度学习大行其道。然而,工程实践中很多传统的推荐技术依然存在,这些算法有的简单易行,有的可解释性强,大都使用一些传统的技术。但它们确是推荐算法工程师的必经之路。
博主将在本栏每周至少更新一次推荐系统的传统算法解读。感兴趣的同学可以一起学习哦~
如雨星空
推荐系统在读研究生
展开
-
传统推荐算法(六)Facebook的GBDT+LR模型(2)理论浅析+实战
文章目录公众号前言GBDT+LR模型反思与总结GBDT局限性GBDT+LR缺点几十行代码的小例子参考公众号更多精彩内容请移步公众号:推荐算法工程师公众号后台回复”进群“,加入学习交流群,和小伙伴们一起学习,一起进步~前言介绍GBDT+LR背景点击率预估模型涉及的训练样本一般是上亿级别,样本量大,模型常采用速度较快的LR(logistic regression)。LR虽然是线性模型线性...原创 2019-08-24 10:27:05 · 2237 阅读 · 0 评论 -
传统推荐算法(六)Facebook的GBDT+LR模型(1)剑指GBDT
文章目录写在前面1. GBM1.1 从参数空间到函数空间:1.2 从非参估计到参数估计1.3 泰勒展开近似2. GBM的基学习器2.1 基学习器选择2.2 CART回归树3. GBDT之回归4. GBDT之分类4.1 二类逻辑回归和分类4.2 多类逻辑回归和分类5. 反思总结5.1 样本权重调整5.2 GBDT优缺点6. GBDT资料推荐参考公众号写在前面学习GBDT的时候,被网上的几篇文章...原创 2019-08-22 17:39:33 · 1970 阅读 · 2 评论 -
传统推荐算法(五) FFM模型(3) 反思tf.estimator的小"bug"
文章目录写在前面训练过程中的指标显示tf.summarylog_hook参数阶段训练和直接训练tf.estimator的另一种使用结论参考写在前面有关如何使用tf.estimator,请官网中文版:https://www.tensorflow.org/guide/custom_estimators?hl=zh-cn有关tf.estimator检查点checkpoints的详细分析,请参考...原创 2019-08-06 20:49:58 · 2044 阅读 · 6 评论 -
传统推荐算法(五) FFM模型(2) 原理及实现
文章目录FFM写在前面:1.FFM基本原理2.注意事项2.1 省略零值特征2.2 样本归一化2.3 特征归一化2.4 隐向量维度2.5 参数量2.6 时间复杂度2.7 SGD寻优小技巧3. tensorflow实现参考公众号FFM写在前面:FM算法被用来解决解决稀疏数据下的特征组合问题.它的改进有不少.[1]中提出了基于FM的PITF(pairwise interaction tensor ...原创 2019-07-30 17:08:29 · 3032 阅读 · 3 评论 -
传统推荐算法(五) FFM模型(1) 逻辑回归损失函数
文章目录1. 逻辑回归2. y(1,0) 逻辑回归损失3. y(-1,-1) 逻辑回归损失公众号1. 逻辑回归逻辑回归使用回归手段来做分类问题(主要是二分类).它使用sigmoid函数减小预测范围,将线性回归的结果限定在(0,1)之间,并将其作为条件概率进行建模.[1]中解释了为什么这么做是合理的.对于单个样本,逻辑回归的构造函数为:]也就是给出了线性参数和x的条件概率函数.也就是似然概率...原创 2019-07-29 22:46:42 · 828 阅读 · 0 评论 -
传统推荐算法(三) 不一般的SVD++
SVD++在LFM中,只考虑了用户特征向量和物品特征向量(显示反馈)和偏置向量,在SVD++中,进一步考虑了用户对其有过浏览/评分行为的商品的隐式反馈.其中Nu是用户有过浏览等行为的物品组合,没有隐性反馈数据(比如浏览等)时,Nu和用户评过分的物品集合Ru就是重复的,此时一个数据用两次,给人两种不同模型的组合的感觉.隐性反馈的理解说说我自己的理解吧,感觉不像之前的LFM理解那么透彻,欢...原创 2019-07-04 22:00:41 · 1813 阅读 · 0 评论 -
传统推荐算法(一)利用SVD进行推荐(4)tensorflo实战SVD推荐
1.SVD用于推荐本文的SVD推荐不是FunkSVD,是利用我们在上篇文章中分析过的SVD分解进行推荐。怎么说呢?这才是真正的SVD推荐!应用的思路是在基于物品的协同过滤的基础上,利用SVD将物品稀疏表示转化为低维的特征表示。2.实战这部分的代码改自机器学习实战的第14章,保证可读性不保证运行效率。2.1 基于物品的协同过滤计算过程:对每个用户u未评分的物品item: 对每个u已评...原创 2019-06-14 22:54:48 · 2278 阅读 · 0 评论 -
传统推荐算法(一)利用SVD进行推荐(3)6个层面透彻了解奇异值分解
文章目录写在前面1. 从几何变换到奇异值分解2. 代数角度理解奇异值与奇异向量2.1 从正交基映射推导SVD2.2 特征值分解求解奇异值和奇异向量2.2.1 求解过程2.2.2 推论2.3 SVD的另一种形式3. 几何角度理解奇异值与奇异向量3.1 从坐标变换理解3.1.1 从例子到一般3.1.2 两个问题3.2 形变的角度理解奇异值4. 奇异值的最好解读5. 特征值分解和奇异值分解区别6. 奇异...原创 2019-06-14 22:08:03 · 2454 阅读 · 1 评论 -
传统推荐算法(一)利用SVD进行推荐(2)特征值与特征向量的直观理解
勘误1.上篇文章标题应该为:矩阵相乘的本质而不是“矩阵分解的本质”。2.上篇文章中"为什么非对称实矩阵不能像实对称矩阵一样分解呢?因为非对称实矩阵不能找到一组正交基(无解),使得矩阵相乘达到只在这组正交基的基向量上进行缩放。"这种说法不准确,不过结合这句话下面的内容大家应该可以理解我在说什么。就是非对称实矩阵无法进行形如A=USU-1的特征值分解。写在前面英国的数学家凯莱 (A.Cayle...原创 2019-06-07 00:14:21 · 1585 阅读 · 0 评论 -
传统推荐算法(一)利用SVD进行推荐(1)五个角度看矩阵乘法的本质
写在前面在机器学习算法中,矩阵相乘非常常见。对矩阵乘法这种底层操作进行分析,有时候可以帮助我们更好地理解算法。那矩阵乘法的本质到底该怎样理解呢?针对这个问题,我查阅了很多资料,大体上可以分为5个角度来解读,现整理如下,分享给大家。需要说明的是,1,2,3,4章对矩阵乘法的分析都是向量左乘矩阵,当然这很容易扩展到矩阵相乘,但是不免有一些局限性,只能说提供一些思考的思路。部分内容对其他文章的直接...原创 2019-06-01 23:26:22 · 1682 阅读 · 0 评论