कोल्मोगोरोव-अर्नोल्ड नेटवर्क्स (KANs) क्या हैं?
कोल्मोगोरोव-अर्नोल्ड नेटवर्क्स (KANs) कोल्मोगोरोव-अर्नोल्ड प्रतिनिर्देशन प्रमेय पर आधारित हैं, जो इनकी गणितीय नींव है। यह प्रमेय कहता है कि कोई भी सतत बहु-चर (multivariable) फ़ंक्शन सरल, एक-चर (univariate) फ़ंक्शन्स के योग में विभाजित किया जा सकता है।
हालाँकि, यह प्रमेय इन एक-चर फ़ंक्शन्स के अस्तित्व की गारंटी देता है, लेकिन यह नहीं बताता कि उन्हें कैसे खोजा जाए। यहीं पर KANs काम आते हैं।
अधिकांश अन्य मॉडलों की तरह पूरे जटिल फ़ंक्शन का प्रतिरूपण (approximation) सीधे करने के बजाय, KANs इन सरल एक-चर फ़ंक्शन्स को सीखने पर ध्यान केंद्रित करते हैं। यह तरीका मॉडल को लचीला तो बनाता ही है, साथ ही अत्यधिक व्याख्यनीय भी, विशेषकर जब डेटा में गैर-रेखीय संबंधों से निपटना हो।
कोल्मोगोरोव-अर्नोल्ड नेटवर्क्स (KANs) बनाम मल्टी-लेयर परसेप्ट्रॉन्स (MLPs)
KANs और पारंपरिक मल्टी-लेयर परसेप्ट्रॉन्स (MLPs) के बीच मुख्य अंतर सीखने के तरीके में है।
MLPs में, न्यूरॉन्स को ReLU या सिग्मॉइड जैसी निश्चित सक्रियण फ़ंक्शन्स से सक्रिय किया जाता है, और ये सक्रियण रैखिक वेट मैट्रिसेज़ से होकर गुजरते हैं। इसके विपरीत, KANs सक्रियण फ़ंक्शन्स को न्यूरॉन्स के बजाय उनके बीच की किनारों (कनेक्शन्स) पर सीखने योग्य बनाते हैं। मूल इम्प्लीमेंटेशन में, इन फ़ंक्शन्स को B-splines के रूप में पैरामीटराइज़ किया गया है, हालाँकि लेखक उल्लेख करते हैं कि समस्या के आधार पर Chebyshev बहुपद जैसे अन्य प्रकार के फ़ंक्शन्स भी इस्तेमाल किए जा सकते हैं।
उथले और गहरे दोनों प्रकार के KANs जटिल फ़ंक्शन्स को सरल, एक-चर फ़ंक्शन्स की श्रृंखला में तोड़ते हैं। नीचे का चित्र इस आर्किटेक्चरल अंतर को रेखांकित करता है: MLPs न्यूरॉन्स के भीतर निश्चित सक्रियण का उपयोग करते हैं, जबकि KANs किनारों के साथ सीखने योग्य फ़ंक्शन्स लागू करते हैं और उन्हें नोड्स पर जोड़ते हैं। यह आर्किटेक्चरल बदलाव KANs को डेटा के अनुरूप गतिशील रूप से ढलने देता है, जिससे वे संभवतः MLPs की तुलना में कम पैरामीटर्स में अधिक शुद्धता हासिल कर सकते हैं। इसके अलावा, प्रशिक्षण के बाद, यदि सभी किनारों का प्रतिरूपण के लिए उपयोग नहीं हुआ है, तो मॉडल को छोटा भी किया जा सकता है।

स्रोत: Liu et al., 2024
इसके अलावा, प्रशिक्षण के बाद, KANs हमें सीखे गए एक-चर फ़ंक्शन्स निकालने देते हैं, जिससे प्राप्त बहु-चर फ़ंक्शन का पुनर्निर्माण संभव हो जाता है। जब व्याख्यनीयता अत्यावश्यक हो, तो यह विशेषता खास उपयोगी होती है। हम आगे उदाहरण अनुभाग में इस प्रक्रिया को प्रदर्शित करेंगे।
pip install git+https://github.com/KindXiaoming/pykan.git
उपयोग
pykan इंस्टॉल करने के बाद, हम आवश्यक मॉड्यूल इम्पोर्ट कर सकते हैं और एक सरल KAN परिभाषित कर सकते हैं:
from kan import *
model = KAN(width=[2,5,1])
यहाँ, हम width पैरामीटर में मॉडल के आयाम निर्दिष्ट करते हैं। इस विशेष मामले में, हम 2 इनपुट, 1 आउटपुट और 5 हिडन न्यूरॉन्स की एक लेयर वाला मॉडल बना रहे हैं।अब, अपने प्रयोग के लिए एक डेटासेट बनाते हैं। मैं तुरंत सोचा हुआ एक रैंडम 2-चर बहुपद उपयोग करूँगा:
from kan.utils import create_dataset
f = lambda x: 3*x[:,[0]]**3+2*x[:,[0]]+4 + 2 * x[:,[0]] * x[:,[1]] ** 2 + 3 * x[:,[1]] ** 3
dataset = create_dataset(f, n_var=2)
यहाँ, मैं एक लैम्ब्डा फ़ंक्शन से बहुपद परिभाषित करता हूँ। यह लाइब्रेरी अंदरूनी तौर पर numpy का उपयोग करती प्रतीत होती है—इसीलिए यह सिंटैक्स है। अब, हम डेटासेट को मॉडल में लोड कर सकते हैं और उसे विज़ुअलाइज़ कर सकते हैं:
model(dataset['train_input']);
model.plot()
आउटपुट कुछ ऐसा दिखता है:

प्रशिक्षण
प्रशिक्षण चलाने के लिए, हमें .fit() मेथड का उपयोग करना होगा:
model.fit(dataset, steps=1000);
प्रशिक्षण के बाद, हमारा KAN कुछ ऐसा दिखता है:

अब, मॉडल को prune करते हैं और फिर से प्लॉट करते हैं:
model = model.prune()
model.plot()
अब मॉडल ऐसा दिखता है। जैसा कि आप देख सकते हैं, हमने एक सक्रियण फ़ंक्शन को prune कर दिया है:

यह तार्किक है, क्योंकि हमारे बहुपद में इनपुट चर की शक्तियों के पाँच अलग-अलग संयोजनों का उपयोग नहीं होता।
KANs के उपयोग के मामले
कोल्मोगोरोव-अर्नोल्ड नेटवर्क्स (KANs) ने विभिन्न क्षेत्रों में संभावनाएँ दिखाई हैं, क्योंकि वे पारंपरिक न्यूरल नेटवर्क्स की तुलना में कम पैरामीटर्स के साथ जटिल, गैर-रेखीय संबंधों को मॉडल कर सकते हैं। यहाँ कुछ प्रमुख उपयोग के मामले हैं:
- वैज्ञानिक मॉडलिंग और डेटा फिटिंग: ऐसे वैज्ञानिक समस्याओं के लिए KANs विशेष रूप से प्रभावी हैं जिनमें जटिल फ़ंक्शन्स का सटीक मॉडलिंग आवश्यक है। चूँकि KANs बहु-चर फ़ंक्शन्स का प्रतिरूपण सरल एक-चर फ़ंक्शन्स को सीखकर करते हैं, वे वैज्ञानिक डेटा में जटिल पैटर्न को कुशलतापूर्वक पकड़ सकते हैं। कर्व फिटिंग जैसे कार्यों में, KANs अक्सर अपनी लचीली आर्किटेक्चर के कारण पारंपरिक MLPs से बेहतर प्रदर्शन करते हैं।
- आंशिक अवकल समीकरणों (PDEs) का हल: KANs ने PDEs को हल करने में मजबूत क्षमता दिखाई है, जिनका उपयोग भौतिकी और अभियांत्रिकी में ऊष्मा संचरण और द्रव गतिविज्ञान जैसी प्रक्रियाओं को मॉडल करने के लिए किया जाता है। उच्च-आयामी, गैर-रेखीय समस्याओं को संभालने की उनकी क्षमता इस डोमेन में उन्हें विशेष रूप से उपयोगी बनाती है, जहाँ वे शुद्धता और व्याख्यनीयता में MLPs से आगे निकल सकते हैं।
- सांकेतिक प्रतिगमन (symbolic regression): KANs सांकेतिक प्रतिगमन में उत्कृष्ट हैं, जहाँ लक्ष्य ऐसे गणितीय व्यंजक ढूँढ़ना होता है जो किसी डेटासेट का सर्वोत्तम वर्णन करें। समाकारी (compositional) संरचनाएँ सीखने की उनकी क्षमता उन्हें डेटा से सीधे भौतिक और गणितीय नियमों की पुनः खोज के लिए आदर्श उपकरण बनाती है।
KANs के लाभ और सीमाएँ
आइए देखें कि KANs किस प्रकार पारंपरिक न्यूरल नेटवर्क्स की सीमाओं में सुधार करते हैं:
- व्याख्यनीयता: पारंपरिक डीप लर्निंग मॉडलों के विपरीत, KANs अधिक व्याख्यनीय संरचना प्रदान करते हैं। सीखने योग्य फ़ंक्शन्स को विज़ुअलाइज़ और विश्लेषित किया जा सकता है, जिससे मॉडल की निर्णय-प्रक्रिया के बारे में अंतर्दृष्टि मिलती है। यह गुण वैज्ञानिक क्षेत्रों में विशेष रूप से मूल्यवान है, जहाँ उच्च शुद्धता जितनी महत्वपूर्ण है, उतना ही मॉडल की कार्यप्रणाली को समझना भी।
- लचीलापन: KANs किसी एक प्रकार के सक्रियण फ़ंक्शन तक सीमित नहीं हैं। यद्यपि वे अक्सर B-splines का उपयोग करते हैं, विशिष्ट कार्य के अनुसार Chebyshev बहुपद जैसे अन्य आधार फ़ंक्शन्स भी अपनाए जा सकते हैं। यह लचीलापन आर्किटेक्चर को बहुउद्देश्यीय और विभिन्न अनुप्रयोगों के लिए अनुकूल बनाता है।
KANs डीप लर्निंग के लिए एक आशाजनक नया दृष्टिकोण प्रस्तुत करते हैं, लेकिन अन्य किसी तकनीक की तरह, इनके साथ भी कुछ कमियाँ आती हैं:
- संगणकीय जटिलता: KANs की एक चुनौती प्रशिक्षण चरण के दौरान उनकी संगणकीय तीव्रता है। चूँकि KANs किनारों पर सीखने योग्य सक्रियण फ़ंक्शन्स का उपयोग करते हैं, इन फ़ंक्शन्स का मूल्यांकन करना पारंपरिक MLPs की तुलना में प्रशिक्षण प्रक्रिया को काफी धीमा कर सकता है। यह जटिलता उन कार्यों में और बढ़ जाती है जिनमें गहरी KAN आर्किटेक्चर या अत्यधिक विस्तृत आधार फ़ंक्शन्स की आवश्यकता होती है।
- विशेषज्ञता की आवश्यकता: KANs को इम्प्लीमेंट करना और ट्यून करना पारंपरिक MLPs की तुलना में अधिक जटिल हो सकता है। उपयुक्त आधार फ़ंक्शन्स (जैसे, B-splines, Chebyshev बहुपद) का चयन और किसी विशिष्ट कार्य के लिए मॉडल को कॉन्फ़िगर करना गहन गणितीय समझ और अधिक मानव/मॉडल इंटरैक्शन की मांग करता है। यह KANs को उन प्रैक्टिशनर्स के लिए कम सुलभ बना सकता है जिनके पास विशेष ज्ञान नहीं है।
मानव–KAN इंटरेक्शन
कोल्मोगोरोव-अर्नोल्ड नेटवर्क्स (KANs) का एक विशिष्ट पहलू यह है कि वे मॉडल और मानवीय अंतर्ज्ञान के बीच सार्थक इंटरेक्शन को संभव बनाते हैं। मूल शोधपत्र बताता है कि शोधकर्ता मॉडल के सीखने की प्रक्रिया से ऐसे तरीकों से जुड़ सकते हैं जो पारंपरिक न्यूरल नेटवर्क्स में संभव नहीं थे।
किसी विशिष्ट समस्या पर KAN को प्रशिक्षित करने के बाद, शोधकर्ता वे सीखे गए एक-चर फ़ंक्शन्स निकाल सकते हैं जिनका उपयोग मॉडल जटिल बहु-चर फ़ंक्शन का प्रतिरूपण करने के लिए करता है। इन सीखे गए फ़ंक्शन्स का अध्ययन करके, शोधकर्ताओं को डेटा में अंतर्निहित संबंधों के बारे में अंतर्दृष्टि मिलती है।
इसके आगे, इस इंटरेक्शन से मिली अंतर्दृष्टियाँ पुनरावृत्त परिष्करण (iterative refinement) को सक्षम करती हैं। शोधकर्ता KAN की आर्किटेक्चर में बदलाव कर सकते हैं, आधार फ़ंक्शन्स के प्रकारों में संशोधन कर सकते हैं (जैसे B-splines से Chebyshev बहुपद पर स्विच करना), या निकाले गए फ़ंक्शन्स के आधार पर प्रशिक्षण प्रक्रिया को समायोजित कर सकते हैं। यह मानव–इन–द–लूप दृष्टिकोण अनुकूलित मॉडलिंग प्रक्रिया की अनुमति देता है, जिससे KANs विभिन्न वैज्ञानिक या गणितीय समस्याओं के अनुरूप ढल सकते हैं।
इस प्रकार, KANs द्विदिश इंटरेक्शन को सुगम बनाते हैं: वे डेटा से सीखकर जटिल फ़ंक्शन्स बनाते हैं, और मनुष्य इस सीख को निर्देशित व व्याख्यायित कर मॉडल को परिष्कृत कर सकते हैं या नया ज्ञान भी खोज सकते हैं। यही अंतःक्रिया KANs को अलग बनाती है, जो मशीन लर्निंग को अधिक सहयोगात्मक और अन्वेषी प्रयास में बदल देती है।
निष्कर्ष
समग्र रूप से, कोल्मोगोरोव-अर्नोल्ड नेटवर्क्स (KANs) न्यूरल नेटवर्क आर्किटेक्चर में एक रोमांचक और आशाजनक प्रगति का प्रतिनिधित्व करते हैं। उनकी विशिष्ट डिज़ाइन MLPs का एक लचीला और व्याख्यनीय विकल्प प्रदान करती है, जिसमें विभिन्न कार्यों में पारंपरिक मॉडलों से बेहतर प्रदर्शन करने की क्षमता है।
जैसे-जैसे समुदाय ओपन-सोर्स सहयोग और विविध अनुप्रयोगों के माध्यम से KANs का अन्वेषण जारी रखता है, ये नेटवर्क और उनके एक्सटेंशन शक्तिशाली, अत्याधुनिक उपकरणों में विकसित हो सकते हैं।

हाल ही में शोधकर्ताओं ने कोल्मोगोरोव-अर्नोल्ड नेटवर्क (KAN) नामक एक नई न्यूरल नेटवर्क आर्किटेक्चर पेश की है। KANs का उद्देश्य भौतिकी जैसे क्षेत्रों में वैज्ञानिकों की सहायता करना है, ताकि जटिल समस्याओं को हल करने के लिए एक अधिक व्याख्यनीय मॉडल उपलब्ध कराया जा सके।
पारंपरिक न्यूरल नेटवर्क्स के विपरीत, KANs यह वादा करते हैं कि वे अपने परिणाम तक कैसे पहुँचते हैं, इसमें अधिक पारदर्शिता देंगे—जो वर्तमान मॉडलों की “ब्लैक बॉक्स” प्रकृति को लेकर प्रमुख आलोचनाओं में से एक का समाधान है।
KANs कोल्मोगोरोव-अर्नोल्ड प्रतिनिर्देशन प्रमेय से प्रेरित हैं और व्यापक रूप से उपयोग होने वाले मल्टी-लेयर परसेप्ट्रॉन (MLP) का एक नया विकल्प प्रस्तुत करते हैं। वे न्यूरॉनों के भीतर के बजाय न्यूरॉनों के बीच की किनारों (edges) पर सीखने योग्य सक्रियण फ़ंक्शन्स पेश करते हैं।
इस लेख में, मैं KAN आर्किटेक्चर को विस्तार से समझाऊँगा और हाथ-से-हाथ कोडिंग उदाहरणों का उपयोग करूँगा।