Coursera机器学习——Recommender System测验

  第一题本应该是基础题,考察Cost Function不同形式的表示方法,但却难住了我,说明基本概念掌握不够到位。

1. 在求和的部分,有两种可能,一种是(i,j)同时求和,即∑(i,j):r(i,j)=1,另一种是∑j=1nu∑i:r(i,j)=1或者∑i=1nu∑j:r(i,j)=1都可以。

2. 后面的部分,一是要注意括号的位置,如果是对K项Theta和X求和,必须是求和后的结果再减去y(i,j),而不要把y(i,j)也放入求和表达式中

3. 如果不是K项求和,说明使用向量的方法直接求Theta*X,那么此时Theta是转置的,上标有T符号存在

第二题是比较协同过滤和线性回归以及逻辑回归的不同使用场景

1. 选项A是想要得到一个书籍销售量与书籍评分之间的关系函数,这里使用线性回归最为恰当

2. 选项B我们得到有不同客户对款式和品牌的review信息,然后向顾客推荐,所以这里用协同过滤推荐很合适

3. 选项C是标准的协同过滤使用场景,我们有不同顾客对书的评分,然后给顾客推荐书籍

4. 选项D有一句很重要的关键句是and each client purchases at most 1 portrait. 所以不同用户对每幅作品的评分并没有重叠性,用协同过滤不能得到好的预测结果

 第三题是说对于几个不同的评分系统能否对数据进行融合(三个系统的评分分数范围不同)

首先肯定是可以的,只是我们必须要先做特征放缩,再融合数据,否则直接融合会导致数据范围不同,影响推荐系统的表现

第四题是对协同过滤的考察

1. 选项A是说为了构建推荐系统,用户必须对训练集中所有的书籍进行评分。事实上如果有空缺的数据我们可以用均值填充

2. 选项B是说如果用户只对少部分产品打分,我们依然可以通过协同过滤构建一个推荐系统。是的,如上所说。只是性能可能不够好

3. 选项C是说我们需要使用梯度下降进行算法优化,不能使用高级算法,因为我们必须同时计算X和Theta。事实上,我们可以使用高级算法进行优化,也能做到同时        更新X和Theta

第五题是协同过滤算法实现的考察,因为我们只需要R(i,j) = 1的数据,所以若使用向量化方法实现需要进行预处理

1. 选项A是在求和计算结果前对矩阵和R做了点乘,所以R = 0的数据不会计入结果,可以√

2. 选项B先对矩阵A*B与R做点乘,在求和计算结果,也可以√

3. 选项C看似与A相同,但点乘改为普通矩阵乘法,就会导致结果错误,甚至两矩阵根本无法相乘

4. 选项D也是一样,将点乘改为普通乘法,不得行

还有一种写法也是可以的

总结:协同过滤适合于多特征,多用户(数据)的系统,当用户较少时,与线性回归效果大致相同,(当N= 1时,Jcost与线性回归完全相同),当特征较少时,协同过滤也不能较好的发挥它的效果

 

转载于:https://www.cnblogs.com/RB26DETT/p/10457875.html

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值