Crea particiones de test/train y construye tu modelo ALS
Ya sabes cómo construir un modelo ALS; lo hiciste en el capítulo anterior. Vamos a repetirlo, pero daremos algunos pasos adicionales para crear un modelo con validación cruzada completa.
Primero, importemos las funciones necesarias y creemos nuestros conjuntos de entrenamiento y prueba para preparar el paso de validación cruzada.
Este ejercicio forma parte del curso
Creación de motores de recomendación con PySpark
Instrucciones del ejercicio
- Importa
RegressionEvaluatordeml.evaluation, el algoritmoALSdeml.recommendation, yParamGridBuilderyCrossValidatordeml.tuning. - Crea una partición de entrenamiento/prueba .80/.20 sobre los datos
ratingsusando el métodorandomSplit. Llama a los conjuntostrainytest, y fija la semilla aleatoria en1234. - Construye el modelo ALS, indicándole a Spark los nombres de las columnas del dataframe
ratingsque corresponden auserCol,itemColyratingCol. Establece el argumentononnegativeenTrue,coldStartStrategyen"drop"e indica a Spark que no se trata deimplicitPrefsconfigurando el argumentoimplicitPrefsenFalse. Llama a este modeloals. - Verifica que el modelo se haya creado llamando a la función
type()sobreals. La salida debería indicar de qué tipo de modelo se trata.
ejercicio interactivo práctico
Prueba este ejercicio completando este código de ejemplo.
# 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(____)