मनमुताबिक अनुभव देने के लिए, मशीन लर्निंग का इस्तेमाल किया जाता है. खास तौर पर, कॉन्टेक्चुअल मल्टी-आर्म्ड बैंडिट एल्गोरिदम का इस्तेमाल किया जाता है. इससे, किसी लक्ष्य को हासिल करने के लिए, हर उपयोगकर्ता के लिए सबसे अच्छा अनुभव तय किया जाता है. हमारे मामले में, लक्ष्य यह है कि खास Google Analytics इवेंट की कुल संख्या या कुल पैरामीटर वैल्यू को ऑप्टिमाइज़ किया जाए.
कॉन्टेक्चुअल मल्टी-आर्म्ड बैंडिट एल्गोरिदम क्या है?
"मल्टी-आर्म्ड बैंडिट" एक मेटाफ़र है. इसका इस्तेमाल, ऐसी स्थिति के बारे में बताने के लिए किया जाता है जहां हमें लगातार ऐसा पाथ चुनना होता है जिससे कई पाथ की सूची में से सबसे ज़्यादा और भरोसेमंद इनाम मिलें. इसे समझने के लिए, स्लॉट मशीन की लाइन के सामने खड़े जुआरी के मेटाफ़र का इस्तेमाल किया जा सकता है. स्लॉट मशीन को आम तौर पर "वन-आर्म्ड बैंडिट" कहा जाता है, क्योंकि स्लॉट मशीन में एक हैंडल (या आर्म) होता है और वह आपका पैसा ले लेती है. हमें एक से ज़्यादा "आर्म" के लिए समस्या हल करनी है. इसलिए, वन-आर्म्ड बैंडिट, मल्टी-आर्म्ड बैंडिट बन जाता है.
उदाहरण के लिए, मान लें कि हमारे पास तीन विकल्प हैं और हमें यह तय करना है कि इनमें से कौनसे विकल्प से सबसे भरोसेमंद इनाम मिलेगा. इसके लिए, हम हर विकल्प को आज़मा सकते हैं. इसके बाद, नतीजे मिलने पर, हम सिर्फ़ उस आर्म को चुन सकते हैं जिससे सबसे ज़्यादा इनाम मिले. इसे ग्रीडी एल्गोरिदम कहा जाता है: जब हम पहली बार किसी विकल्प को आज़माते हैं, तो जो विकल्प सबसे अच्छा नतीजा देता है उसे हम चुनते रहते हैं. हालांकि, हम समझ सकते हैं कि यह तरीका हमेशा काम नहीं कर सकता. इसकी एक वजह यह है कि ज़्यादा इनाम मिलने की वजह कोई फ़्लूक हो सकता है. इसके अलावा, हो सकता है कि उपयोगकर्ता के हिसाब से कोई ऐसा कॉन्टेक्स्ट हो जिसकी वजह से उस समयावधि के दौरान ज़्यादा इनाम मिले हों, लेकिन बाद में वह उतना असरदार न हो.
इसलिए, एल्गोरिदम को ज़्यादा असरदार बनाने के लिए, उसमें कॉन्टेक्स्ट जोड़ा जाता है. मनमुताबिक अनुभव देने की सुविधा के लिएRemote Config, शुरुआती कॉन्टेक्स्ट रैंडम सैंपलिंग या अनिश्चितता होती है. इससे प्रयोग में कुछ एंट्रॉपी मिलती है. इससे "कॉन्टेक्चुअल मल्टी-आर्म्ड बैंडिट" लागू होता है. प्रयोग जारी रहने पर, लगातार एक्सप्लोरेशन और ऑब्ज़र्वेशन से मॉडल को, असली कॉन्टेक्स्ट के बारे में जानकारी मिलती है. इससे यह पता चलता है कि किन आर्म से इनाम मिलने की संभावना सबसे ज़्यादा है. इससे मॉडल ज़्यादा असरदार बनता है.
इसका मतलब मेरे ऐप्लिकेशन के लिए क्या है?
अब बात करते हैं कि आपके ऐप्लिकेशन के संदर्भ में, मल्टी-आर्म्ड बैंडिट एल्गोरिदम का क्या मतलब है. मान लें कि आपने बैनर विज्ञापन पर क्लिक के लिए ऑप्टिमाइज़ किया है. इस मामले में, मनमुताबिक अनुभव देने की सुविधा के "आर्म", वैकल्पिक वैल्यू होंगी. ये वैल्यू, उन अलग-अलग बैनर विज्ञापनों को दिखाने के लिए तय की जाती हैं जो आपको उपयोगकर्ताओं को दिखाने हैं. बैनर विज्ञापन पर क्लिक को इनाम माना जाता है. इसे हम लक्ष्य कहते हैं.
जब पहली बार मनमुताबिक अनुभव देने की सुविधा लॉन्च की जाती है, तो मॉडल को यह नहीं पता होता कि हर उपयोगकर्ता के लिए, कौनसी वैकल्पिक वैल्यू आपके लक्ष्य को हासिल करने में ज़्यादा मददगार होगी. मनमुताबिक अनुभव देने की सुविधा, आपके लक्ष्य को हासिल करने की संभावना को समझने के लिए, हर वैकल्पिक वैल्यू की जांच करती है. इससे, मॉडल को ज़्यादा जानकारी मिलती है. साथ ही, हर उपयोगकर्ता के लिए सबसे अच्छा अनुभव चुनने और उसका अनुमान लगाने की क्षमता बेहतर होती है.
मनमुताबिक अनुभव देने की सुविधा, 24 घंटे की स्टिकिनेस विंडो का इस्तेमाल करती है. यह वह समय है जिसके दौरान, मनमुताबिक अनुभव देने का एल्गोरिदम, किसी एक वैकल्पिक वैल्यू की जांच करता है. आपको मनमुताबिक अनुभव देने की सुविधा को, हर वैकल्पिक वैल्यू की कई बार जांच करने के लिए काफ़ी समय देना चाहिए. आम तौर पर, इसमें करीब 14 दिन लगते हैं. सबसे अच्छा तरीका यह है कि इन्हें हमेशा चालू रखा जाए, ताकि आपके ऐप्लिकेशन और उपयोगकर्ता के व्यवहार में बदलाव होने पर, ये लगातार बेहतर हो सकें और उनके हिसाब से अडजस्ट हो सकें.
अन्य मेट्रिक ट्रैक करना
Remote Config मनमुताबिक अनुभव देने की सुविधा के लिए, दो अन्य मेट्रिक ट्रैक करने की सुविधा भी मिलती है. इससे आपको अपने नतीजों को कॉन्टेक्चुलाइज़ करने में मदद मिलती है. मान लें कि आपने एक सोशल ऐप्लिकेशन बनाया है और उपयोगकर्ताओं को दोस्तों के साथ कॉन्टेंट शेयर करने के लिए बढ़ावा देने के लिए, अलग-अलग वैकल्पिक वैल्यू सेट की हैं, ताकि कुल जुड़ाव बढ़ाया जा सके.
इस मामले में, किसी Analytics इवेंट के लिए ऑप्टिमाइज़ किया जा सकता है. जैसे,
link_received साथ ही, user_engagement और
link_opened के लिए दो मेट्रिक सेट की जा सकती हैं, ताकि यह समझा जा सके कि उपयोगकर्ता का जुड़ाव और उपयोगकर्ता के खोले गए लिंक की संख्या बढ़ती है (असल जुड़ाव) या कम होती है (संभवतः स्पैम वाले बहुत ज़्यादा लिंक).
इन अन्य मेट्रिक को, मनमुताबिक अनुभव देने के एल्गोरिदम में शामिल नहीं किया जाएगा. हालांकि, इन्हें मनमुताबिक अनुभव देने के नतीजों के साथ ट्रैक किया जा सकता है. इससे, मनमुताबिक अनुभव देने की सुविधा की मदद से, अपने कुल लक्ष्यों को हासिल करने की क्षमता के बारे में अहम जानकारी मिलती है.
मनमुताबिक अनुभव देने के नतीजों को समझना
मनमुताबिक अनुभव देने की सुविधा, डेटा इकट्ठा करने के लिए काफ़ी समय तक चलने के बाद, उसके नतीजे देखे जा सकते हैं.
मनमुताबिक अनुभव देने के नतीजे देखने के लिए:
Firebase console में, DevOps और जुड़ाव > Remote Config > मनमुताबिक अनुभव देने की सुविधाएं पेज पर जाएं.
वह सुविधा चुनें जिसके नतीजे आपको देखने हैं. खास सुविधा को नाम या लक्ष्य के हिसाब से खोजा जा सकता है. साथ ही, नाम, शुरू होने का समय या कुल लिफ़्ट के हिसाब से क्रम में लगाया जा सकता है.
नतीजों वाले पेज पर, कुल लिफ़्ट या परफ़ॉर्मेंस में अंतर का प्रतिशत दिखता है. यह अंतर, बेसलाइन ग्रुप के मुकाबले, मनमुताबिक अनुभव देने की सुविधा से मिला है.
नतीजों वाले पेज पर, मनमुताबिक अनुभव देने की सुविधा का मौजूदा स्टेटस, उसके एट्रिब्यूट, और एक इंटरैक्टिव ग्राफ़ भी दिखता है. इस ग्राफ़ में:
यह दिखता है कि मनमुताबिक अनुभव देने की सुविधा ने, बेसलाइन के मुकाबले हर दिन और कुल मिलाकर कैसा परफ़ॉर्म किया.
यह दिखता है कि बेसलाइन ग्रुप में, हर वैल्यू ने कुल मिलाकर कैसा परफ़ॉर्म किया.
लक्ष्य के नतीजे और चुनी गई अन्य मेट्रिक के मुकाबले परफ़ॉर्मेंस दिखती है. इन्हें, खास जानकारी के सबसे ऊपर मौजूद टैब का इस्तेमाल करके ऐक्सेस किया जा सकता है.
मनमुताबिक अनुभव देने की सुविधा को हमेशा चालू रखा जा सकता है. साथ ही, उसकी परफ़ॉर्मेंस पर नज़र रखने के लिए, नतीजों वाले पेज पर बार-बार जाया जा सकता है. एल्गोरिदम, लगातार सीखता और अडजस्ट होता रहेगा, ताकि उपयोगकर्ता के व्यवहार में बदलाव होने पर, वह उसके हिसाब से अडजस्ट हो सके.
मनमुताबिक अनुभव देने की सुविधा को मिटाने के बारे में जानकारी
Firebase Firebase console का इस्तेमाल करके, मनमुताबिक अनुभव देने की सुविधा को मिटाया जा सकता है. इसके अलावा, Firebase Remote Config Firebase Remote Config API का इस्तेमाल करके, अपने टेंप्लेट से मनमुताबिक अनुभव देने की सुविधा का पैरामीटर हटाकर भी इसे मिटाया जा सकता है. मिटाई गई मनमुताबिक अनुभव देने की सुविधाओं को वापस नहीं लाया जा सकता. डेटा के रखरखाव के बारे में जानने के लिए, डेटा मिटाना लेख पढ़ें.
टेंप्लेट को वापस लाकर या इंपोर्ट करके भी, मनमुताबिक अनुभव देने की सुविधाओं को मिटाया जा सकता है.
रोलबैक
अगर आपके मौजूदा टेंप्लेट में, मनमुताबिक अनुभव देने की सुविधाएं हैं और आपने किसी ऐसे टेंप्लेट पर रोलबैक किया है जिसमें वे सुविधाएं नहीं हैं, तो मनमुताबिक अनुभव देने की सुविधाएं मिट जाती हैं. पिछले टेंप्लेट पर वापस जाने के लिए, Firebase console का इस्तेमाल करें या Firebase Remote Config API का इस्तेमाल करके, roll back करें.
जब आप किसी मनमुताबिक अनुभव देने की सुविधा को मिटाते हैं और पिछले टेंप्लेट पर रोल बैक करते हैं, तो Firebase console में, उस अमान्य सुविधा का रेफ़रंस दिखता है. Remote Config पेज के पैरामीटर टैब में, मनमुताबिक अनुभव देने की सुविधा में बदलाव करके, Firebase console से अमान्य सुविधा को हटाया जा सकता है.
इंपोर्ट
किसी ऐसे टेंप्लेट को इंपोर्ट करने से भी, मौजूदा मनमुताबिक अनुभव देने की सुविधाएं मिट जाती हैं जिसमें वे सुविधाएं शामिल नहीं हैं. किसी टेंप्लेट को इंपोर्ट करने के लिए, Firebase console का इस्तेमाल करें या Remote Config REST API का इस्तेमाल करें.
अगले चरण
मनमुताबिक अनुभव देने की सुविधा के इस्तेमाल के उदाहरण देखें Remote Config .
मनमुताबिक अनुभव देने की सुविधा का इस्तेमाल शुरू करेंRemote Config.