Spark.mllib中ALS predictAll返回结果缺失

cloudq1120 2017-12-19 05:23:03
任务:
使用mllib中ALS做一个推荐系统的评分估计工作
训练数据约2w user , 60w item, 500w评分记录
测试数据约11w待测评分
遇到问题:
在使用测试集进行测试时 model.predicAll 返回数据少于测试条目
部分代码如下(之前已完成训练):
test_data = sc.textFile(".\data-new\\test")
tdata = test_data.map(lambda x: x.split("\t")[0:2]).map(lambda x:[int(x[0]), int(x[1])])
print(tdata.count())
# tgrade = model.predictAll(tdata).collect()
tgrade = model.predictAll(tdata)
print(tgrade.count())

上段代码输出:
119010
117567
少了1443个评分,实在搞不懂为什么
我又将缺失的评分项挑出来再送进去测试 返回结果是空
如有指教感激不尽
...全文
607 1 打赏 收藏 转发到动态 举报
写回复
用AI写文章
1 条回复
切换为时间正序
请发表友善的回复…
发表回复
见丰 2018-03-19
  • 打赏
  • 举报
回复
https://stackoverflow.com/questions/37379751/spark-als-predictall-returns-empty
推荐算法系统实战全系列精品课 :一、课程优势本课程有陈敬雷老师的清华大学出版社配套新书教材《分布式机器学习实战》人工智能科学与技术丛书,新书配合此实战课程结合学习,一静一动,互补高效学习!本课程由互联网一线知名大牛陈敬雷老师全程亲自授课,技术前沿热门,这个《推荐算法系统实战全系列精品课》来自陈敬雷在一线大型互联网公司的多年实战经验总结,比较完备的包含了各个算法系统模块,实实在在的重量级干货分享!听完此系列课,可以实现一个完整的推荐系统!二、课程简介       首先推荐系统不等于推荐算法,更不等于协同过滤。推荐系统是一个完整的系统工程,从工程上来讲是由多个子系统有机的组合,比如基于Hadoop数据仓库的推荐集市、ETL数据处理子系统、离线算法、准实时算法、多策略融合算法、缓存处理、搜索引擎部分、二次重排序算法、在线web引擎服务、AB测试效果评估、推荐位管理平台等,每个子系统都扮演着非常重要的角色,当然大家肯定会说算法部分是核心,这个说的没错,的确。推荐系统是偏算法的策略系统,但要达到一个非常好的推荐效果,只有算法是不够的。比如做算法依赖于训练数据,数据质量不好,或者数据处理没做好,再好的算法也发挥不出价值。算法上线了,如果不知道效果怎么样,后面的优化工作就无法进行。所以AB测试是评价推荐效果的关键,它指导着系统该何去何从。为了能够快速切换和优化策略,推荐位管理平台起着举足轻重的作用。推荐效果最终要应用到线上平台去,在App或网站上毫秒级别的快速展示推荐结果,这就需要推荐的在线Web引擎服务来保证高性能的并发访问。这么来说,虽然算法是核心,但离不开每个子系统的配合,另外就是不同算法可以嵌入到各个子系统,算法可以贯穿到每个子系统。       从开发人员角色上来讲,推荐系统不仅仅只有算法工程师角色的人就能完成整个系统,需要各个角色的工程师相配合才行。比如大数据平台工程师负责Hadoop集群和数据仓库,ETL工程师负责对数据仓库的数据进行处理和清洗,算法工程师负责核心算法,Web开发工程师负责推荐Web接口对接各个部门,比如网站前端、APP客户端的接口调用等,后台开发工程师负责推荐位管理、报表开发、推荐效果分析等,架构师负责整体系统的架构设计等。所以推荐系统是一个多角色协同配合才能完成的系统。       下面我们就从推荐系统的整体架构以及各个子系统的实现给大家深度解密来自一线大型互联网公司重量级的实战产品项目!!!推荐算法系统实战课程大纲如下:1、推荐系统架构设计2、推荐数据仓库集市3、推荐系统ETL数据处理4、CF协同过滤用户行为挖掘5、推荐算法ALS交替最小二乘法6、推荐系统ContentBase文本挖掘算法7、用户画像兴趣标签提取算法8、基于用户心理学模型推荐9、推荐系统多策略融合算法10、准实时在线学习推荐引擎11、Redis分布式缓存处理12、分布式搜索引擎13、推荐Rerank二次重排序算法(基于逻辑回归、GBDT、随机森林、神经网络的算法思想做二次排序)【可试听】14、推荐Rerank二次重排序算法(基于Learning TO rank排序学习思想做二次排序)15、推荐Rerank二次重排序算法(基于加权公式思想做二次排序)16、在线Web实时推荐引擎服务原理及核心处理算法17、在线Web实时推荐引擎服务核心源代码解析18、在线AB测试推荐效果评估19、离线AB测试推荐效果评估20、推荐位管理平台 21、大数据用户画像系统架构图深度解密与详细介绍22、大数据用户画像系统各个子系统详细讲解三、老师介绍陈敬雷  充电了么创始人,CEO兼CTO陈敬雷,北京充电了么科技有限公司创始人,CEO兼CTO,十几年互联网从业经验,曾就职于用友、软、凡客、乐蜂网(唯品会)、猎聘网、人民日报(灵思云途)、北京万朝科技,曾任架构师、首席技术官、首席科学家等职务,对业务领域B端、C端、电商、职场社交招聘、内容文娱、营销行业都有着丰富的经验,在技术领域,尤其在大数据和人工智能方向有丰富的算法工程落地实战经验,其在猎聘网任职期间主导的推荐算法系统项目获得公司优秀项目奖,推荐效果得到5倍的提升。陈敬雷著有清华大学出版社两本人工智能书籍,分别是《分布式机器学习实战(人工智能科学与技术丛书)》已出版、《自然语言处理原理与实战(人工智能科学与技术丛书)》。目前专注于大数据和人工智能驱动的上班族在线教育行业,研发了充电了么app和网站,用深度学习算法、nlp、推荐引擎等技术来高效提升在线学习效率。

1,258

社区成员

发帖
与我相关
我的任务
社区描述
Spark由Scala写成,是UC Berkeley AMP lab所开源的类Hadoop MapReduce的通用的并行计算框架,Spark基于MapReduce算法实现的分布式计算。
社区管理员
  • Spark
  • shiter
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧