非负矩阵分解
同一个矩阵可能有两种同样接近的分解,其中一种全部为正值,另一种包含一些负值。
矩阵 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(____, ____))