टेस्ट/ट्रेन स्प्लिट बनाएँ और अपना ALS मॉडल तैयार करें
आप पहले ही पिछले अध्याय में ALS मॉडल बनाना सीख चुके हैं. हम वही फिर करेंगे, लेकिन इस बार हम क्रॉस-वैलिडेटेड मॉडल को पूरा तैयार करने के लिए कुछ अतिरिक्त स्टेप्स भी लेंगे.
सबसे पहले, आवश्यक फंक्शंस इम्पोर्ट करें और क्रॉस वैलिडेशन स्टेप की तैयारी के लिए अपने train और test डेटा सेट बनाएँ.
यह अभ्यास पाठ्यक्रम का हिस्सा है
PySpark के साथ Recommendation Engines बनाना
अभ्यास निर्देश
ml.evaluationसेRegressionEvaluator,ml.recommendationसेALSएल्गोरिदम, औरml.tuningसेParamGridBuilderतथाCrossValidatorइम्पोर्ट करें.ratingsडेटा परrandomSplitमेथड का उपयोग करके .80/.20 का train/test स्प्लिट बनाएँ. डेटासेट्स के नामtrainऔरtestरखें, और random seed1234सेट करें.- ALS मॉडल बनाएँ और Spark को
ratingsडेटाफ़्रेम में उन कॉलम्स के नाम बताएँ जोuserCol,itemColऔरratingColसे संबंधित हैं.nonnegativeआर्ग्युमेंट कोTrueरखें,coldStartStrategyको"drop"पर सेट करें, औरimplicitPrefsआर्ग्युमेंट कोFalseसेट करके बताएँ कि ये implicit preferences नहीं हैं. इस मॉडल का नामalsरखें. alsपरtype()फंक्शन कॉल करके जाँचें कि मॉडल बन गया है. आउटपुट यह संकेत देगा कि यह किस प्रकार का मॉडल है.
इंटरैक्टिव व्यावहारिक अभ्यास
इस अभ्यास को इस नमूना कोड को पूरा करके आज़माएँ।
# 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(____)