एक ALS मॉडल तैयार करें
चलिए आपका पहला ALS मॉडल स्पेसिफाई करते हैं। नीचे दिए गए कोड को पूरा करके अपना पहला ALS मॉडल बनाएँ.
याद रखें, आप ratings डेटा फ्रेम पर .columns मेथड का उपयोग करके यह देख सकते हैं कि यूज़र, मूवी और रेटिंग्स डेटा किन कॉलम नामों में है। Spark को ALS सही तरह से चलाने के लिए इन कॉलमों के नाम पता होने चाहिए.
यह अभ्यास पाठ्यक्रम का हिस्सा है
PySpark के साथ Recommendation Engines बनाना
अभ्यास निर्देश
- ALS मॉडल बनाने से पहले, हमें डेटा को ट्रेनिंग और टेस्ट डेटा में बाँटना है।
randomSplit()मेथड का उपयोग करकेratingsडेटा फ्रेम को क्रमशः 0.8/0.2 स्प्लिट के साथtraining_dataऔरtest_dataमें बाँटें, और रैंडम नंबर जेनरेटर के लिएseedको42रखें. - Spark को बताएँ कि किन कॉलमों में
userCol,itemColऔरratingColहैं। ज़रूरत हो तो.columnsमेथड का उपयोग करें। हाइपरपैरामीटर्स पूरी कीजिए।rankको 10,maxIterको 15,regParamया lambda को .1,coldStartStrategyको"drop",nonnegativeआर्ग्यूमेंट कोTrue, और क्योंकि हमारे डेटा में explicit ratings हैं,implicitPrefsआर्ग्यूमेंट कोFalseसेट करें. - अब
ratingsडेटा केtraining_dataहिस्से परals.fit()मेथड कॉल करकेalsमॉडल फिट करें। फिट हुए मॉडल कोmodelनाम दें. ratingsडेटा केtest_dataहिस्से परmodel.transform()मेथड कॉल करके प्रेडिक्शंस बनाएँ। प्रेडिक्शंस कोtest_predictionsनाम दें। चाहें तोtest_predictionsपर.show()मेथड कॉल करके इन प्रेडिक्शंस को देख सकते हैं.
इंटरैक्टिव व्यावहारिक अभ्यास
इस अभ्यास को इस नमूना कोड को पूरा करके आज़माएँ।
# 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()