开始使用免费开始使用

非负矩阵分解

同一个矩阵可能有两种同样接近的分解,其中一种全部为正值,另一种包含一些负值。

矩阵 M 已使用两种不同的方法进行了两次分解。请查看两组因子矩阵 L 与 U,以及 W 与 H 的差异。然后相乘它们,看看所得的乘积基本一致。

本练习是课程的一部分

使用 PySpark 构建推荐引擎

查看课程

练习说明

  • 使用 print() 查看矩阵 L 和 U。请注意,L 和 U 中有些值为负数。
  • 使用 print() 查看矩阵 W 和 H。请注意,这两个矩阵中的所有值都是正数。
  • 已分别将 L 与 U、W 与 H 相乘,得到 LU 和 WH 矩阵。使用 getRMSE(product_matrix, original_matrix) 比较 LU 与 M 的接近程度,以及 WH 与 M 的接近程度。它们是否相近?

交互式实操练习

通过完成这段示例代码来试试这个练习。

# View the L, U, W, and H matrices.
print("Matrices L and U:") 
print(____)
print(____)

print("Matrices W and H:")
print(____)
print(____)

# Calculate RMSE between LU and M
print("RMSE of LU: ", getRMSE(____, ____))

# Calculate RMSE between WH and M
print("RMSE of WH: ", getRMSE(____, ____))
编辑并运行代码