插补
克兰归因于
缺少数据插补(也称为矩阵完成)是一门非常困难的科学,它试图用最好的猜测来填充数据集的缺失值。最近,Netflix挑战赛(Netflix Challenge)普及了,在该挑战中,Netflix用户及其电影评分的矩阵已呈现给数据科学界,以查看是否可以开发算法,以预测用户如何对用户尚未尚未尚未的某些电影进行评分。看到。
参考:
- DNA微阵列的缺少价值估计方法。 Troyanskaya等。
- 矩阵完成的单数值阈值算法。 CAI,糖果,神。
##提出的插入算法
- 平均插补
- k-near最邻居
- SVD插补
- SVT归纳
- 促进树的归纳
- 当地加权最小二乘
##亮点
- MeanImpute是启动任何丢失数据问题的好方法。这是最快的插补技术,做得很好
- 有时,我们想通过通过其邻居拟合一条线来识别缺失的值并将其归为原样。这可以通过取一组{y_t,x_t}并在索引t上回归y_t来完成。此外,我们可以使用局部加权的最小二乘回归线来将泰勒在缺失附近观察到的数据点的权重。这是在lmimpute中完成的
- GBMIMPUTE是一种技术,可以在可用的分类数据和数值数据时将丢失的数据归为数据。它使用增强的决策树,这需要大量数据才能正常工作。它具有分区数据的优势,然后将不同的手段拟合到分区
- tsimpute是一种估算时间序列数据的技术。任何时间序列问题都有三个重要组成部分:时间,维度和指标。尺寸是描述数据点的分类变量,指标是实际的时间序列数据。 tsImp用钟表投影将时间变量投影,然后再次使用增压树划定指标。时间预测有助于进一步细分数据点,例如识别Day vs Night段,工作日与周末段等。
- KNN和SVD插入是Troyanskaya中描述的经典插补方法。 SVD发现数据的级别k近似较低,这可能适用于嘈杂的数据。 KNN仅在功能数量很小时才好
- SVT是一种最近普及的插入算法,在数字数据方面非常好。但是,它是此处介绍的最慢的算法,需要计算许多SVD。 Svtapproximpute可以用作估计值,只需计算一次SVD,在lambda处的单数值,然后再次乘以分解以获取插补
##算法设计
此软件包中的每个函数都包括插图算法以及交叉验证算法。 CV算法人为地消除了数据集中的1/3数据,并运行插补函数。使用完整的数据,RMSE是根据仅人为删除的数据部分计算的。不同的归合算法在不同的数据集上的性能会有所不同,因此具有这些功能以进行比较很重要。