AI 101
फेडरेटेड लर्निंग क्या है?

फेडरेटेड लर्निंग क्या है?
पारंपरिक तरीके से एआई मॉडल्स को प्रशिक्षित करने में सर्वर सेट करना शामिल होता है जहां मॉडल्स को डेटा पर प्रशिक्षित किया जाता है, अक्सर क्लाउड-आधारित कंप्यूटिंग प्लेटफ़ॉर्म का उपयोग करके। हालांकि, पिछले कुछ वर्षों में, मॉडल निर्माण का एक विकल्प उभरा है, जिसे फेडरेटेड लर्निंग कहा जाता है। फेडरेटेड लर्निंग मशीन लर्निंग मॉडल्स को डेटा स्रोत तक ले जाता है, न कि डेटा को मॉडल तक ले जाना। फेडरेटेड लर्निंग कई गणना उपकरणों को एक विकेंद्रीकृत प्रणाली में जोड़ती है जो डेटा इकट्ठा करने वाले व्यक्तिगत उपकरणों को मॉडल को प्रशिक्षित करने में मदद करने की अनुमति देती है।
एक फेडरेटेड लर्निंग सिस्टम में, लर्निंग नेटवर्क के हिस्से वाले विभिन्न उपकरणों में प्रत्येक उपकरण पर मॉडल की एक प्रति होती है। विभिन्न उपकरण/क्लाइंट अपने स्थानीय डेटा का उपयोग करके मॉडल की अपनी प्रति को प्रशिक्षित करते हैं, और फिर व्यक्तिगत मॉडल्स से पैरामीटर/वजन को एक मास्टर डिवाइस, या सर्वर में भेजा जाता है जो पैरामीटर को एकत्रित करता है और वैश्विक मॉडल को अपडेट करता है। यह प्रशिक्षण प्रक्रिया तब तक दोहराई जा सकती है जब तक कि एक वांछित स्तर की सटीकता प्राप्त नहीं हो जाती। संक्षेप में, फेडरेटेड लर्निंग के पीछे का विचार यह है कि प्रशिक्षण डेटा कभी भी उपकरणों या पार्टियों के बीच संचारित नहीं किया जाता है, केवल मॉडल से संबंधित अपडेट ही संचारित किए जाते हैं।
फेडरेटेड लर्निंग को तीन अलग-अलग चरणों या चरणों में विभाजित किया जा सकता है। फेडरेटेड लर्निंग आमतौर पर एक जेनेरिक मॉडल से शुरू होती है जो एक बेसलाइन के रूप में कार्य करती है और एक केंद्रीय सर्वर पर प्रशिक्षित होती है। पहले चरण में, इस जेनेरिक मॉडल को एप्लिकेशन के क्लाइंट्स में भेजा जाता है। ये स्थानीय प्रतियां फिर क्लाइंट सिस्टम द्वारा उत्पन्न डेटा पर प्रशिक्षित होती हैं, सीखती हैं और अपना प्रदर्शन बेहतर बनाती हैं।
दूसरे चरण में, क्लाइंट्स सभी अपने सीखे हुए मॉडल पैरामीटर्स को केंद्रीय सर्वर में भेजते हैं। यह एक निर्धारित अनुसूची पर आवर्ती रूप से होता है।
तीसरे चरण में, जब सर्वर पैरामीटर्स प्राप्त करता है, तो वह उन्हें एकत्रित करता है। पैरामीटर्स एकत्रित होने के बाद, केंद्रीय मॉडल को अपडेट किया जाता है और फिर से क्लाइंट्स के साथ साझा किया जाता है।整个 प्रक्रिया तब दोहराई जाती है।
मॉडल की एक प्रति विभिन्न उपकरणों पर होने का लाभ यह है कि नेटवर्क लेटेंसी कम हो जाती है या समाप्त हो जाती है। सर्वर के साथ डेटा साझा करने से जुड़ी लागत भी समाप्त हो जाती है। फेडरेटेड लर्निंग तरीकों के अन्य लाभों में यह तथ्य शामिल है कि फेडरेटेड लर्निंग मॉडल्स गोपनीयता संरक्षित हैं, और मॉडल प्रतिक्रियाएं डिवाइस के उपयोगकर्ता के लिए व्यक्तिगत होती हैं।
फेडरेटेड लर्निंग मॉडल्स के उदाहरणों में रिकमेंडेशन इंजन, फ्रॉड डिटेक्शन मॉडल्स, और मेडिकल मॉडल्स शामिल हैं। मीडिया रिकमेंडेशन इंजन, नेटफ्लिक्स या अमेज़ॅन द्वारा उपयोग किए जाने वाले प्रकार, हजारों उपयोगकर्ताओं से एकत्रित डेटा पर प्रशिक्षित किए जा सकते हैं। क्लाइंट डिवाइस अपने अलग-अलग मॉडल्स को प्रशिक्षित करेंगे और केंद्रीय मॉडल बेहतर भविष्यवाणियां करना सीखेगा, भले ही व्यक्तिगत डेटा बिंदु विभिन्न उपयोगकर्ताओं के लिए अद्वितीय हों। इसी तरह, बैंकों द्वारा उपयोग किए जाने वाले फ्रॉड डिटेक्शन मॉडल्स को विभिन्न उपकरणों से गतिविधि के पैटर्न पर प्रशिक्षित किया जा सकता है, और कुछ बैंक एक सामान्य मॉडल को प्रशिक्षित करने के लिए सहयोग कर सकते हैं। मेडिकल फेडरेटेड लर्निंग मॉडल के संदर्भ में, कई अस्पताल एक सामान्य मॉडल को प्रशिक्षित करने के लिए मिलकर काम कर सकते हैं जो मेडिकल स्कैन के माध्यम से संभावित ट्यूमर को पहचान सकता है।
फेडरेटेड लर्निंग के प्रकार
फेडरेटेड लर्निंग स्कीमा आम तौर पर दो अलग-अलग वर्गों में आती हैं: मल्टी-पार्टी सिस्टम और सिंगल-पार्टी सिस्टम। सिंगल-पार्टी फेडरेटेड लर्निंग सिस्टम को “सिंगल-पार्टी” कहा जाता है क्योंकि केवल एक ही इकाई लर्निंग नेटवर्क में सभी क्लाइंट डिवाइसों में डेटा के कब्जे और प्रवाह की देखरेख के लिए जिम्मेदार होती है। क्लाइंट डिवाइसों पर मौजूद मॉडल्स को डेटा पर प्रशिक्षित किया जाता है जो संरचना में समान होते हैं, हालांकि डेटा बिंदु आमतौर पर विभिन्न उपयोगकर्ताओं और डिवाइसों के लिए अद्वितीय होते हैं।
सिंगल-पार्टी सिस्टम के विपरीत, मल्टी-पार्टी सिस्टम दो या दो से अधिक इकाइयों द्वारा प्रबंधित किए जाते हैं। ये इकाइयां एक साझा मॉडल को प्रशिक्षित करने के लिए सहयोग करती हैं जिसमें वे विभिन्न उपकरणों और डेटासेट्स का उपयोग करती हैं। पैरामीटर और डेटा संरचनाएं आमतौर पर विभिन्न इकाइयों के उपकरणों में समान होती हैं, लेकिन उन्हें समान होना आवश्यक नहीं है। मॉडल के इनपुट्स को मानकीकृत करने के लिए प्री-प्रोसेसिंग की जाती है। विभिन्न इकाइयों के उपकरणों द्वारा स्थापित वजन को एकत्रित करने के लिए एक तटस्थ इकाई का उपयोग किया जा सकता है।
फेडरेटेड लर्निंग के लिए फ्रेमवर्क
फेडरेटेड लर्निंग के लिए लोकप्रिय फ्रेमवर्क में टेंसरफ्लो फेडरेटेड, फेडरेटेड एआई टेक्नोलॉजी एनेबलर (FATE), और पीसिफ्ट शामिल हैं। पीसिफ्ट एक ओपन-सोर्स फेडरेटेड लर्निंग लाइब्रेरी है जो डीप लर्निंग लाइब्रेरी पायटॉर्च पर आधारित है। पीसिफ्ट का उद्देश्य सर्वर और एजेंटों के बीच एन्क्रिप्टेड गणना का उपयोग करके निजी, सुरक्षित डीप लर्निंग सुनिश्चित करना है। जबकि टेंसरफ्लो फेडरेटेड एक और ओपन-सोर्स फ्रेमवर्क है जो गूगल के टेंसरफ्लो प्लेटफ़ॉर्म पर बनाया गया है। इसके अलावा उपयोगकर्ताओं को अपने स्वयं के अल्गोरिदम बनाने की अनुमति देने के अलावा, टेंसरफ्लो फेडरेटेड उपयोगकर्ताओं को अपने मॉडल्स और डेटा पर शामिल किए गए फेडरेटेड लर्निंग अल्गोरिदम को सिम्युलेट करने की अनुमति देता है। अंत में, FATE भी एक ओपन-सोर्स फ्रेमवर्क है जो वेबैंक एआई द्वारा डिज़ाइन किया गया है, और इसका उद्देश्य फेडरेटेड एआई इकोसिस्टम को एक सुरक्षित कंप्यूटिंग फ्रेमवर्क प्रदान करना है।
फेडरेटेड लर्निंग की चुनौतियाँ
चूंकि फेडरेटेड लर्निंग अभी भी अपेक्षाकृत नया है, कई चुनौतियाँ अभी भी हैं जिन्हें इसकी पूरी क्षमता हासिल करने के लिए नेविगेट करना होगा। लोकल प्रशिक्षण के लिए एज डिवाइसों की गणना क्षमताएं, डेटा लेबलिंग और मानकीकरण, और मॉडल कॉन्वर्जेंस फेडरेटेड लर्निंग दृष्टिकोण के लिए संभावित रोड़ब्लॉक हैं।
स्थानीय प्रशिक्षण के लिए एज डिवाइसों की गणना क्षमताओं पर विचार किया जाना चाहिए जब फेडरेटेड लर्निंग दृष्टिकोण को डिज़ाइन किया जाता है। जबकि अधिकांश स्मार्टफ़ोन, टैबलेट और अन्य आईओटी संगत उपकरण मशीन लर्निंग मॉडल्स को प्रशिक्षित करने में सक्षम हैं, यह आमतौर पर डिवाइस के प्रदर्शन को प्रभावित करता है। मॉडल सटीकता और डिवाइस प्रदर्शन के बीच समझौते करने होंगे।
डेटा लेबलिंग और मानकीकरण फेडरेटेड लर्निंग सिस्टम के लिए एक और चुनौती है। पर्यवेक्षित लर्निंग मॉडल्स को प्रशिक्षण डेटा की आवश्यकता होती है जो स्पष्ट रूप से और लगातार लेबल किया गया हो, जो लर्निंग नेटवर्क में शामिल कई क्लाइंट डिवाइसों पर करना मुश्किल हो सकता है। इस कारण से, यह महत्वपूर्ण है कि मॉडल डेटा पाइपलाइन्स विकसित की जाएं जो घटनाओं और उपयोगकर्ता क्रियाओं के आधार पर स्वचालित रूप से लेबल लागू करें।
मॉडल कॉन्वर्जेंस समय फेडरेटेड लर्निंग के लिए एक और चुनौती है, क्योंकि फेडरेटेड लर्निंग मॉडल्स आमतौर पर स्थानीय रूप से प्रशिक्षित मॉडल्स की तुलना में अधिक समय लेते हैं। प्रशिक्षण में शामिल डिवाइसों की संख्या मॉडल प्रशिक्षण में एक अनिश्चितता का तत्व जोड़ती है, क्योंकि कनेक्शन समस्याएं, अनियमित अपडेट, और यहां तक कि विभिन्न अनुप्रयोग उपयोग समय भी कॉन्वर्जेंस समय को बढ़ा सकते हैं और विश्वसनीयता को कम कर सकते हैं। इस कारण से, फेडरेटेड लर्निंग समाधान आमतौर पर तब सबसे अधिक उपयोगी होते हैं जब वे केंद्रीय रूप से एक मॉडल को प्रशिक्षित करने की तुलना में महत्वपूर्ण लाभ प्रदान करते हैं, जैसे कि जब डेटासेट बहुत बड़े और वितरित होते हैं।

फोटो: जेरोमेमेट्रोनोम द्वारा विकिमीडिया कॉमन्स, सीसी बाय एसए 4.0 (https://en.wikipedia.org/wiki/File:Federated_learning_process_central_case.png)












