Mulai sekarangMulai gratis

Membangun model implisit

Sekarang setelah semua nilai hiperparameter Anda ditentukan, mari minta Spark membangun cukup banyak model untuk menguji setiap kombinasi. Untuk memfasilitasi hal ini, sebuah for loop disediakan di sini. Ikuti instruksi di bawah untuk membuat model ALS ini secara otomatis. Pada latihan berikutnya Anda akan menjalankan model-model ini pada himpunan data uji untuk melihat mana yang berkinerja terbaik.

Algoritme ALS sudah diimpor untuk Anda. Daftar yang Anda buat pada latihan sebelumnya (ranks, maxIters, regParams, alphas) telah dibuat untuk Anda.

Latihan ini merupakan bagian dari kursus

Membangun Recommendation Engine dengan PySpark

Lihat Kursus

Instruksi latihan

  • Sebuah daftar kosong bernama model_list disediakan di sini. for loop akan membuat sebuah model untuk setiap kombinasi hiperparameter yang diberikan dan menempatkannya ke dalam model_list.
  • Lengkapi for loop dengan mereferensikan isi masing-masing daftar, di mana r merepresentasikan elemen dari daftar ranks, mi merepresentasikan elemen dari daftar maxIters, rp merepresentasikan elemen dari daftar regParams, dan a merepresentasikan elemen dari daftar alphas.
  • Cetak len(model_list) serta model_list untuk memastikan setiap model telah dibuat. Panjangnya harus sama dengan hasil perkalian semua panjang masing-masing daftar hiperparameter di atas. Anda dapat menjalankan validasi tambahan yang disediakan untuk memastikan.

Latihan interaktif langsung praktik

Cobalah latihan ini dengan melengkapi kode contoh ini.

# 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))
Edit dan Jalankan Kode