ПочатиПочніть безкоштовно

Побудуйте імпліцитні моделі

Тепер, коли ви задали всі значення гіперпараметрів, доручімо Spark побудувати достатньо моделей, щоб перевірити кожну комбінацію. Щоб це спростити, тут наведено цикл for. Дотримуйтеся інструкцій нижче, щоб автоматично створити ці моделі ALS. У наступних вправах ви запустите ці моделі на тестових наборах даних і визначите, яка працює найкраще.

Алгоритм ALS уже імпортовано для вас. Списки, які ви створили в попередній вправі (ranks, maxIters, regParams, alphas), також підготовлені для вас.

Ця вправа є частиною курсу

Створення рушіїв рекомендацій у PySpark

Переглянути курс

Інструкції до вправи

  • Тут надано порожній список model_list. Цикл for створить модель для кожної комбінації гіперпараметрів, які йому передадуть, і збереже її в model_list.
  • Доповніть цикл for, посилаючись на вміст кожного списку, де r відповідає елементам списку ranks, mi — елементам maxIters, rp — елементам regParams, а a — елементам alphas.
  • Виведіть len(model_list) і model_list, щоб переконатися, що кожну модель створено. Довжина має дорівнювати добутку довжин усіх списків гіперпараметрів вище. Можете запустити додаткову валідацію, щоб упевнитися.

Інтерактивна практична вправа

Спробуйте виконати цю вправу, доповнивши цей зразок коду.

# For loop will automatically create and store ALS models
for r in ____:
    for mi in ____:
        for rp in ____:
            for a in ____:
                model_list.append(ALS(userCol= "userId", itemCol= "songId", ratingCol= "num_plays", rank = r, maxIter = mi, regParam = rp, alpha = a, coldStartStrategy="drop", nonnegative = True, implicitPrefs = True))

# Print the model list, and the length of model_list
print (model_list, "Length of model_list: ", len(____))

# Validate
len(model_list) == (len(ranks)*len(maxIters)*len(regParams)*len(alphas))
Редагувати та запускати код