Zacznij terazZacznij za darmo

Nieujemna faktoryzacja macierzy

Jedna macierz może mieć dwie równie dobre faktoryzacje – jedną z samymi wartościami dodatnimi i drugą zawierającą wartości ujemne.

Macierz M została rozłożona na czynniki na dwa różne sposoby. Przyjrzyj się obu parom macierzy czynnikowych: L i U oraz W i H, i zwróć uwagę na różnice. Następnie sprawdź ich iloczyny – zobaczysz, że dają praktycznie taki sam wynik.

To ćwiczenie jest częścią kursu

Budowanie silników rekomendacji w PySpark

Zobacz kurs

Instrukcje do ćwiczenia

  • Użyj print(), aby wyświetlić macierze L i U. Zwróć uwagę, że niektóre wartości w tych macierzach są ujemne.
  • Użyj print(), aby wyświetlić macierze W i H. Zwróć uwagę, że wszystkie wartości w tych dwóch macierzach są dodatnie.
  • Macierze L i U oraz W i H zostały przemnożone, tworząc odpowiednio macierze LU i WH. Użyj funkcji getRMSE(product_matrix, original_matrix), aby sprawdzić, jak blisko M znajduje się LU w porównaniu z WH. Czy wyniki są podobne?

Interaktywne ćwiczenie praktyczne

Spróbuj tego ćwiczenia, uzupełniając ten przykładowy kod.

# 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(____, ____))
Edytuj i uruchom kod