BaşlayınÜcretsiz başlayın

Bir ALS modeli oluştur

Hadi ilk ALS modelini tanımlayalım. Aşağıdaki kodu tamamlayarak ilk ALS modelini oluştur.

ratings veri çerçevesi üzerinde .columns yöntemini kullanarak kullanıcı, film ve puan verilerini içeren sütunların adlarını görebileceğini unutma. Spark'ın ALS'yi doğru bir şekilde çalıştırabilmesi için bu sütun adlarını bilmesi gerekir.

Bu egzersiz, kursun bir parçasıdır

PySpark ile Öneri Motorları Oluşturma

Kursa Göz Atın

Egzersiz talimatları

  • ALS modelimizi kurmadan önce veriyi eğitim ve test olarak ayırmamız gerekiyor. ratings veri çerçevesini randomSplit() yöntemiyle sırasıyla 0.8/0.2 oranında training_data ve test_data olarak ayır ve rastgele sayı üreteci için seed değerini 42 yap.
  • Spark'a hangi sütunların userCol, itemCol ve ratingCol içerdiğini bildir. Gerekirse .columns yöntemini kullan. Hiperparametreleri tamamla. rank değerini 10, maxIter değerini 15, regParam ya da lambda değerini .1, coldStartStrategy değerini "drop", nonnegative argümanını True ve verimiz açık puanlar içerdiği için implicitPrefs argümanını False olarak ayarla.
  • Şimdi als modelini ratings verisinin training_data kısmına als.fit() yöntemini training_data üzerinde çağırarak uydur. Uydurulan modele model adını ver.
  • ratings verisinin test_data kısmı üzerinde model.transform() yöntemini test_data üzerinde çağırarak tahminler üret. Tahminlere test_predictions adını ver. İstersen .show() yöntemini test_predictions üzerinde çağırarak tahminleri görüntüleyebilirsin.

Uygulamalı etkileşimli egzersiz

Bu egzersizi bu örnek kodu tamamlayarak deneyin.

# Split the ratings dataframe into training and test data
(training_data, test_data) = ratings.____([____, ____], seed=42)

# Set the ALS hyperparameters
from pyspark.ml.recommendation import ALS
als = ALS(userCol="____", itemCol="____", ratingCol="____", rank =____, maxIter =____, regParam =____,
          coldStartStrategy="____", nonnegative =____, implicitPrefs = ____)

# Fit the mdoel to the training_data
____ = ____.fit(____)

# Generate predictions on the test_data
____ = ____.transform(____)
test_predictions.show()
Kodu Düzenle ve Çalıştır