शुरू करेंमुफ़्त में शुरू करें

Stopwords और hashing

अगला चरण stopwords हटाना है और फिर hashing ट्रिक लागू करना है, ताकि नतीजों को TF-IDF में बदला जा सके.

इन कॉन्सेप्ट्स का एक त्वरित रिमाइंडर:

  • Hashing ट्रिक बहुत बड़े (संभवतः अनंत) आइटम सेट को (यहाँ, SMS संदेशों के सभी शब्द) छोटे, सीमित मानों की संख्या पर मैप करने का तेज और स्पेस-कुशल तरीका देती है.
  • TF-IDF मैट्रिक्स दिखाती है कि हर डॉक्यूमेंट के लिए कोई शब्द कितना महत्वपूर्ण है. यह प्रत्येक डॉक्यूमेंट के भीतर उस शब्द की फ़्रीक्वेंसी के साथ-साथ कलेक्शन के सभी डॉक्यूमेंट्स में उस शब्द की फ़्रीक्वेंसी — दोनों को ध्यान में रखती है.

टोकनाइज़ किया हुआ SMS डेटा sms में words नाम के कॉलम में स्टोर है. आपने डेटा में स्पेस हैंडलिंग को क्लीन कर दिया है ताकि टोकनाइज़्ड टेक्स्ट और व्यवस्थित हो जाए.

यह अभ्यास पाठ्यक्रम का हिस्सा है

PySpark के साथ Machine Learning

पाठ्यक्रम देखें

अभ्यास निर्देश

  • StopWordsRemover, HashingTF और IDF classes इम्पोर्ट करें.
  • एक StopWordsRemover ऑब्जेक्ट बनाएँ (इनपुट कॉलम words, आउटपुट कॉलम terms). इसे sms पर अप्लाई करें.
  • एक HashingTF ऑब्जेक्ट बनाएँ (पिछले स्टेप के नतीजे इनपुट, आउटपुट कॉलम hash). इसे wrangled पर अप्लाई करें.
  • एक IDF ऑब्जेक्ट बनाएँ (पिछले स्टेप के नतीजे इनपुट, आउटपुट कॉलम features). इसे wrangled पर अप्लाई करें.

इंटरैक्टिव व्यावहारिक अभ्यास

इस अभ्यास को इस नमूना कोड को पूरा करके आज़माएँ।

from pyspark.ml.____ import ____, ____, ____

# Remove stopwords
wrangled = ____(inputCol=____, outputCol=____)\
      .____(sms)

# Apply the hashing trick
wrangled = ____(____, ____, numFeatures=1024)\
      .____(wrangled)

# Convert hashed symbols to TF-IDF
tf_idf = ____(____, ____)\
      .____(wrangled).____(wrangled)
      
tf_idf.select('terms', 'features').show(4, truncate=False)
कोड संपादित करें और चलाएँ