Factorizarea non-negativă a matricelor
Este posibil ca o matrice să aibă două factorizări la fel de apropiate: una cu valori exclusiv pozitive și alta care conține și valori negative.
Matricea M a fost factorizată de două ori, folosind două metode diferite. Analizează fiecare pereche de matrice factor — L și U, respectiv W și H — pentru a observa diferențele. Apoi folosește produsele lor pentru a verifica că rezultatele sunt practic identice.
Acest exercițiu face parte din cursul
Construiește motoare de recomandare cu PySpark
Instrucțiuni pentru exercițiu
- Folosește
print()pentru a vizualiza matriceleLșiU. Observă că unele valori din matriceleLșiUsunt negative. - Folosește
print()pentru a vizualiza matriceleWșiH. Observă că toate valorile din aceste două matrice sunt pozitive. - Matricele
LșiU, respectivWșiH, au fost înmulțite pentru a produce matriceleLUși, respectiv,WH. FoloseștegetRMSE(product_matrix, original_matrix)pentru a vedea cât de apropiată esteLUdeMfață deWH. Sunt rezultatele similare?
Exercițiu interactiv practic
Încearcă acest exercițiu completând acest cod de exemplu.
# 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(____, ____))