Factorisation de matrices non négatives
Il est possible qu'une même matrice ait deux factorisations tout aussi proches, où l'une ne contient que des valeurs positives et l'autre inclut certaines valeurs négatives.
La matrice M a été factorisée deux fois en utilisant deux factorisations différentes. Examinez chaque paire de matrices facteurs L et U, ainsi que W et H, pour voir les différences. Ensuite, utilisez leurs produits pour constater qu'elles donnent essentiellement le même résultat.
Cette activité fait partie du cours
Créer des moteurs de recommandation avec PySpark
Instructions de l’exercice
- Utilisez
print()pour afficher les matricesLetU. Remarquez que certaines valeurs dansLetUsont négatives. - Utilisez
print()pour afficher les matricesWetH. Remarquez que toutes les valeurs dans ces deux matrices sont positives. - Les matrices
LetU, ainsi queWetH, ont été multipliées pour produire respectivement les matricesLUetWH. UtilisezgetRMSE(product_matrix, original_matrix)pour voir à quel pointLUest proche deMcomparativement àWH. Sont-elles similaires?
Exercice interactif pratique
Essayez cet exercice en complétant ce code d’exemple.
# 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(____, ____))