Aan de slagBegin gratis

Niet-negatieve matrixfactorisatie

Het is mogelijk dat één matrix twee even goede factorisaties heeft, waarbij de ene alleen positieve waarden bevat en de andere ook enkele negatieve waarden.

De matrix M is twee keer gefactoriseerd met twee verschillende factorisaties. Bekijk elk paar factormatrices L en U, en W en H om de verschillen te zien. Gebruik daarna hun producten om te controleren dat ze in essentie hetzelfde product opleveren.

Deze oefening maakt deel uit van de cursus

Aanbevelingssystemen bouwen met PySpark

Bekijk cursus

Oefeninstructies

  • Gebruik print() om de matrices L en U te bekijken. Let op dat sommige waarden in L en U negatief zijn.
  • Gebruik print() om de matrices W en H te bekijken. Let op dat alle waarden in deze twee matrices positief zijn.
  • De matrices L en U en W en H zijn met elkaar vermenigvuldigd tot respectievelijk de matrices LU en WH. Gebruik getRMSE(product_matrix, original_matrix) om te zien hoe dicht LU bij M ligt vergeleken met hoe dicht WH bij M ligt. Lijken ze op elkaar?

Interactieve oefening met praktijkervaring

Probeer deze oefening door deze voorbeeldcode aan te vullen.

# 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(____, ____))
Code bewerken en uitvoeren