Bästa modell och dess parametrar
Nu när vi har byggt vår korsvaliderare, cv, kan vi instruera Spark att ta våra data, anpassa ALS-algoritmen till dem och testa de olika kombinationerna av hyperparametervärden från vår param_grid – så att den kan identifiera vilka värden som ger minst RMSE. Tyvärr tar detta för lång tid att köra här, men som referens är det så här det går till:
#Fit cross validator to the 'train' dataset
model = cv.fit(train)
#Extract best model from the cv model above
best_model = model.bestModel
Den här koden har körts separat, och best_model har identifierats och sparats åt dig. Använd de angivna kommandona för att extrahera modellens parametrar.
Den här övningen är en del av kursen
Bygg rekommendationsmotorer med PySpark
Övningsinstruktioner
- Skriv ut
type(best_model)för att bekräfta att den modell som ALS byggde utifrån våra hyperparameteralternativ är klar. En print-sats behövs här för att fungera tillsammans med efterföljande print-satser. - Extrahera
rankfrånbest_modelgenom att anropa metoden.getRank()påbest_model. - Extrahera
maxIterfrånbest_modelgenom att anropa metoden.getMaxIter()påbest_model. - Extrahera
regParamfrånbest_modelgenom att anropa metoden.getRegParam()påbest_model.
Interaktiv övning med praktiskt arbete
Testa den här övningen genom att slutföra den här exempelkoden.
# Print best_model
print(____)
# Complete the code below to extract the ALS model parameters
print("**Best Model**")
# Print "Rank"
print(" Rank:", best_model.get____())
# Print "MaxIter"
print(" MaxIter:", best_model.get____())
# Print "RegParam"
print(" RegParam:", best_model.get____())