ALS原理
来源:互联网 发布:淘宝直通车官网 编辑:程序博客网 时间:2024/04/23 20:18
推荐系统中添加用户评分偏好:
假设现在要预测june对the fox的评分值,假设所有歌曲的平均分是3.7分
而且the fox比一般神曲更好,所以the fox高于平均值假设为0.5分
我们假设june是一个非常严格的评分者,他评的分普遍低于平均分0.3分
所以june对the fox的评分制应该3.7+0.5-0.3分
1,用户隐式反馈包含purchase browsed watched...
2.用户属性(如人口特征属性)gender ageGroup income_level
然后我们在用户矩阵中加入1,2的信息,得到线性加权。
对于时间动态:
1,产品的功能特性,洞察力以及流行度是随时间变化发展的
2,用户的偏好,口味,价值观也是随时间不断变化的
对于矩阵分解模型,下面参数会随时间变化而变化:
1,用户离差
2,项目离差
3,用户偏好
基于矩阵分解常用的优化方法:
一种是交替最小二乘,交替优化用户特征矩阵和物品特征矩阵,思想就是EM的思想,期望最大化。交替优化用户特征矩阵和物品特征矩阵,在优化其一的时候固定另一个的值视为已知,这样就相当于每轮解决一个标准最小二乘问题,最后收敛到局部最优解。该方法的优点是收敛速度快,缺点是需要对用户数和物品数大小的方正求逆,难以规模化。
另一种是随机梯度下降,对每个用户与物品(评分矩阵的行和列)分别求偏导建立牛顿迭代公式,然后用可见评分顺序对这些迭代公式进行更新。该方法的优点是可以并行化,效率高,目前大规模矩阵分解都是用的这种方法:缺点可能是收敛速度没有第一种快。
模型并行化和数据平行化结合才是分布式机器学习的主流,ALS非常适合
0 0
- ALS原理
- 如何解释spark mllib中ALS算法的原理?
- 最小二乘法-ALS
- ALS介绍
- ALS 【转载】
- ALS spark
- ALS ,ALS-WR算法1
- 协同过滤(ALS)算法原理及Spark MLlib调用实例(Scala/Java/Python)
- Mahout ALS Recommendations
- ALS(python pyspark)
- IDEA+MR实现ALS
- ALS实现电影推荐
- Explicit ALS公式推导
- Spark ALS源码总结
- ALS算法讲解
- ALS推荐系统实战
- ALS过程推导
- ALS 推荐系统
- ROS学习笔记(消息msg和服务srv)
- IsMouseOver 和MouseEnter\MouseLeave 事件
- 卡尔曼滤波(Kalman Filter)的通俗解释
- 一个Python小白5个小时爬虫经历
- 限制textarea字符长度
- ALS原理
- [bzoj4136][fjoi2015]带字串包含约束lcs问题
- 常用正则表达式
- (四)Android 样式的开发:drawable 篇
- 学习笔记-ActiveMQ
- 函数式编程
- AppCan MVVM框架简单介绍
- 剑指Offer面试题3二维数组查找
- 利用div内容改变事件,处理业务