रैंडमाइज़ेशन

व्यावहारिक विचार

अपने डेटा जनरेशन पाइपलाइन को फिर से बनाएं. मान लें कि आप किसी सुविधा को जोड़ना चाहते हैं, ताकि आप जान सकें कि मॉडल की क्वालिटी पर इसका क्या असर पड़ता है. फ़ेयर प्रयोग के लिए, आपके डेटासेट इस नई सुविधा को छोड़कर एक जैसे होने चाहिए. अगर आपका डेटा जनरेट करने के बाद उसे फिर से जनरेट नहीं किया जा सकता, तो आप ये डेटासेट नहीं बना सकते.

इस पहल को ध्यान में रखते हुए, पक्का करें कि डेटा जनरेट करने के तरीके में किसी भी तरह का बदलाव किया जा सके:

  • किसी भी क्रम में जनरेट हुए जनरेटर का पता लगाया (RNG). सीडिंग से यह पक्का होता है कि जब भी आप डेटा रन करेंगे, तो RNG उसी क्रम में एक ही वैल्यू का आउटपुट देगा जो आपका डेटासेट सेट करता है.
  • इनवेरिएट हैश कुंजियों का इस्तेमाल करें. हैशिंग, डेटा को बांटने या सैंपल करने का एक आम तरीका है. हर उदाहरण को हैश किया जा सकता है और नतीजे के तौर पर दिए गए इंटेजर का इस्तेमाल करके, यह तय किया जा सकता है कि किस एलिमेंट को स्प्लिट करना है. जब भी आप डेटा जनरेट करने वाले प्रोग्राम चलाते हैं, तो आपके हैश फ़ंक्शन के इनपुट बदलने नहीं चाहिए. अपनी हैश में किसी भी समय या रैंडम नंबर का इस्तेमाल न करें. उदाहरण के लिए, अगर आपको मांग पर अपने हैश को फिर से बनाना है.

ऊपर बताए गए तरीके, आपके डेटा के नमूने का विश्लेषण और बंटवारे पर लागू होते हैं.

हैशिंग के लिए विचार

मान लें कि आप खोज क्वेरी इकट्ठा कर रहे थे और उन क्वेरी को शामिल करने या न करने के लिए हैशिंग का इस्तेमाल कर रहे थे. अगर हैश कुंजी सिर्फ़ क्वेरी का इस्तेमाल करती है, तो डेटा के एक से ज़्यादा दिनों में, आपको हमेशाउस क्वेरी को शामिल करना होगा या हमेशा उसे निकालना होगा. क्वेरी को हमेशा शामिल करना या हमेशा निकालना बहुत अच्छा नहीं होता, क्योंकि:

  • आपके ट्रेनिंग सेट में क्वेरी के कम सेट दिखेंगे.
  • आपके इवैलुएशन सेट में मुश्किल होगी, क्योंकि उनसे आपकी ट्रेनिंग का डेटा ओवरलैप नहीं होगा. असल में, पेश करने के दौरान आपने अपनी ट्रेनिंग के डेटा में लाइव ट्रैफ़िक देखा होगा. इसलिए, आपके आकलन में यह दिखना चाहिए.

इसके बजाय, आप क्वेरी और तारीख को हैश कर सकते हैं. ऐसा करने पर हर दिन अलग-अलग हैशिंग होगी.

 

ऐनिमेशन वाले विज़ुअलाइज़ेशन से यह पता चलता है कि सिर्फ़ क्वेरी पर हैशिंग की वजह से डेटा हर दिन एक ही बकेट में चला जाता है, लेकिन क्वेरी के साथ हैशिंग करने के साथ-साथ 
क्वेरी समय के ज़रिए डेटा हर दिन अलग-अलग बकेट में जाता है. ये तीन बकेट हैं 
ट्रेनिंग, आकलन, और अनदेखा किए गए.