Muziekaartiesten aanbevelen deel I
In deze oefening en de volgende ga je wat je over NMF hebt geleerd gebruiken om populaire muziekaartiesten aan te bevelen! Je krijgt een sparse array artists waarbij de rijen overeenkomen met artiesten en de kolommen met gebruikers. De waarden geven aan hoe vaak elke artiest door elke gebruiker is beluisterd.
Bouw in deze oefening een pipeline en zet de array om naar genormaliseerde NMF-features. De eerste stap in de pipeline, MaxAbsScaler, transformeert de data zodat alle gebruikers evenveel invloed hebben op het model, ongeacht hoeveel verschillende artiesten ze hebben beluisterd. In de volgende oefening gebruik je de resulterende genormaliseerde NMF-features voor aanbevelingen!
Deze oefening maakt deel uit van de cursus
Unsupervised Learning in Python
Oefeninstructies
- Importeer:
NMFuitsklearn.decomposition.NormalizerenMaxAbsScaleruitsklearn.preprocessing.make_pipelineuitsklearn.pipeline.
- Maak een instantie van
MaxAbsScalermet de naamscaler. - Maak een
NMF-instantie met20componenten met de naamnmf. - Maak een instantie van
Normalizermet de naamnormalizer. - Maak een pipeline met de naam
pipelinediescaler,nmfennormalizeraan elkaar schakelt. - Pas de methode
.fit_transform()vanpipelinetoe opartists. Ken het resultaat toe aannorm_features.
Praktische interactieve oefening
Probeer deze oefening eens door deze voorbeeldcode in te vullen.
# Perform the necessary imports
from ____ import ____
from ____ import ____, ____
from ____ import ____
# Create a MaxAbsScaler: scaler
scaler = ____
# Create an NMF model: nmf
nmf = ____
# Create a Normalizer: normalizer
normalizer = ____
# Create a pipeline: pipeline
pipeline = ____
# Apply fit_transform to artists: norm_features
norm_features = ____