Kom igångKom igång gratis

Skapa tränings- och testuppdelningar och bygg din ALS-modell

Du vet redan hur man bygger en ALS-modell efter att ha gjort det i föregående kapitel. Vi gör det igen, men den här gången tar vi några extra steg för att bygga ut en korsvaliderad modell.

Låt oss börja med att importera de nödvändiga funktionerna och skapa våra tränings- och testdatamängder inför korsvalideringssteget.

Den här övningen är en del av kursen

Bygg rekommendationsmotorer med PySpark

Visa kurs

Övningsinstruktioner

  • Importera RegressionEvaluator från ml.evaluation, ALS-algoritmen från ml.recommendation, samt ParamGridBuilder och CrossValidator från ml.tuning.
  • Skapa en 80/20-uppdelning av ratings-data i tränings- och testdatamängder med metoden randomSplit. Namnge datamängderna train och test, och sätt det slumpmässiga frönumret till 1234.
  • Bygg ALS-modellen och ange för Spark namnen på de kolumner i dataframe:n ratings som motsvarar userCol, itemCol och ratingCol. Sätt argumentet nonnegative till True, coldStartStrategy till "drop", och ange att det inte rör sig om implicita preferenser genom att sätta implicitPrefs till False. Kalla modellen als.
  • Verifiera att modellen skapades genom att anropa funktionen type()als. Utdata ska visa vilken typ av modell det är.

Interaktiv övning med praktiskt arbete

Testa den här övningen genom att slutföra den här exempelkoden.

# Import the required functions
from pyspark.ml.evaluation import ____
from pyspark.ml.recommendation import ____
from pyspark.ml.tuning import ____, ____

# Create test and train set
(train, test) = ratings.___([0.____, 0.____], seed = ____)

# Create ALS model
als = ALS(userCol="____", itemCol="____", ratingCol="____", nonnegative = ____, implicitPrefs = ____)

# Confirm that a model called "als" was created
type(____)
Redigera och kör kod