logo

小白学苑PBCP

PBCP, 让大数据竞赛更简单!

2023江苏省赛样题解析-数据挖掘_任务二:基于SVD分解的推荐系统

任务描述

1、根据任务一的结果,对其进行SVD分解,对数据进行降维(保留95%以上的特征信息),根据该用户已购买的产品分别与未购买的商品计算余弦相似度再进行累加求均值,将累加值最大的5件商品key进行输出作为推荐使用。将输出结果保存至MySQL的part_machine表中。然后在Linux的MySQL命令行中查询出前5条数据,将SQL语句与执行结果截图粘贴至对应报告中。

任务分析

降维(Dimensionality Reduction) 是机器学习中的一种重要的特征处理手段,它可以减少计算过程中考虑到的随机变量(即特征)的个数,其被广泛应用于各种机器学习问题中,用于消除噪声、对抗数据稀疏问题。它在尽可能维持原始数据的内在结构的前提下,得到一组描述原数据的,低维度的隐式特征(或称主要特征)。简单来说,在高维数据中筛选出对我们有用的变量,减小计算复杂度提高模型训练效率和准确率,这就是我们要说的降维。

MLlib机器学习库提供了两个常用的降维方法:奇异值分解(Singular Value Decomposition,SVD)和主成分分析(Principal Component Analysis,PCA)。本任务要求使用SVD进行降维,下面就对SVD的原理进行说明。

SVD(奇异值分解)的重点是提出一组低秩矩阵(通常是三个),它近似于原始矩阵,但数据少得多,而不是选择使用大型M × N矩阵。

SVD降维算法实现原理,如下图所示:

会员登录