Kolmogorov-Arnold नेटवर्क से neural network की समझ बढ़ाने की संभावना
(quantamagazine.org)- अप्रैल 2024 में प्रकाशित हुआ Kolmogorov-Arnold network(KAN) मौजूदा MLP-आधारित neural network की तुलना में आंतरिक कामकाज को अधिक आसानी से पढ़े जा सकने वाले विकल्प के रूप में प्रस्तावित किया गया, और कुछ समस्या-समूहों में यह सामान्य neural network के लगभग सभी काम कर सकता है
- KAN आउटपुट को सही करने के लिए edges पर संख्यात्मक weights की जगह सीखने योग्य nonlinear functions रखता है, और यह संरचना 1957 के Kolmogorov-Arnold theorem में निहित है
- MIT के Ziming Liu और Max Tegmark की शोध टीम ने 2-layer KAN की सीमाओं का सामना करने के बाद 3-layer या उससे अधिक संरचना आजमाई, और दिखाया कि 3-layer KAN उन functions को व्यक्त कर सकता है जिन्हें 2-layer KAN सटीक रूप से व्यक्त नहीं कर सकता
- knot theory और Anderson localization समस्याओं में KAN ने सिर्फ उत्तर ही नहीं दिए, बल्कि संबंधित समीकरणों और संबंधों को भी दिखाया; इसलिए कम variables वाले scientific problems, जैसे physics, में यह खास तौर पर उपयोगी हो सकता है
- बाद के शोध में interpretability tasks और partial differential equation solving में इसकी ताकत की पुष्टि हुई, लेकिन computer vision और audio processing में MLP बेहतर रहा, और KAN 2.0 को अधिक उपयोगी रूप में जारी किया गया
MLP ब्लैक बॉक्स और KAN का आगमन
- आधुनिक neural network का एक प्रमुख बुनियादी घटक multilayer perceptron(MLP) है, जो बड़े datasets तक scale करने पर मजबूत प्रदर्शन देता है
- MLP-आधारित networks सफलता के बावजूद ऐसे हैं जिनमें इंसान के लिए यह समझना कठिन होता है कि निष्कर्ष तक कैसे पहुँचा गया, और यह जानना भी आसान नहीं कि परिणाम को समझाने वाला कोई मूलभूत सिद्धांत है या नहीं
- अप्रैल 2024 के KAN paper ने अधिक पारदर्शी, और कुछ समस्या-समूहों में सामान्य neural network के लगभग हर काम को कर सकने वाले Kolmogorov-Arnold network(KAN) का प्रस्ताव दिया
- Johns Hopkins University के Alan Yuille का मानना है कि KAN में interpretability अधिक है और यह उन scientific applications में विशेष रूप से उपयोगी हो सकता है जहाँ data से वैज्ञानिक नियम निकालने होते हैं
KAN functions को कैसे fit करता है
- सामान्य neural network artificial neurons या nodes की layers को edges से जोड़ते हैं, और training के दौरान हर edge के weight को समायोजित करके output को सही उत्तर के करीब लाते हैं
- neural network का एक सामान्य लक्ष्य वह mathematical function या curve ढूँढना होता है जो data points को सबसे अच्छी तरह जोड़ सके
- अगर कोई physical process model की जा रही हो, तो उम्मीद की जाती है कि output function physics को समझाने वाले equation, यानी physical law, के रूप में निकले
- MLP के लिए ऐसे mathematical theorems हैं जो बताते हैं कि वह किसी संभावित optimal function के कितना करीब जा सकता है, लेकिन परिणाम यह है कि MLP उस function को पूरी तरह व्यक्त नहीं कर सकता
- KAN edges पर साधारण संख्यात्मक weights नहीं रखता, बल्कि सीखने योग्य nonlinear functions रखता है
- ये edge functions अधिक जटिल curves को व्यक्त कर सकते हैं
- इन्हें MLP के numerical weights की तुलना में अधिक सूक्ष्मता से समायोजित किया जा सकता है
1957 का theorem और 35 वर्षों का संदेह
- KAN के केंद्र में 1957 में Andrey Kolmogorov और Vladimir Arnold द्वारा अलग-अलग प्रकाशित mathematical results हैं
- इनका सार यह है कि कई variables वाले एक mathematical function को single-variable functions के संयोजन में बदला जा सकता है
- एक महत्वपूर्ण सीमा यह है कि theorem से बनने वाले single-variable functions smooth नहीं भी हो सकते
- उनमें V-आकार के vertex जैसी नुकीली जगहें हो सकती हैं
- training के दौरान target values के अनुसार मुड़ने के लिए network को smooth single-variable pieces की आवश्यकता होती है
- 1989 में MIT के Tomaso Poggio आदि के paper ने स्पष्ट रूप से कहा कि KAN का मूल mathematical idea “learning के लिए network context में अप्रासंगिक” है
- Ziming Liu और Max Tegmark ने इस बात पर ध्यान दिया कि भले ही single-variable functions smooth न हों, network them smooth functions से approximate कर सकता है, और science में मिलने वाले अधिकांश functions smooth होते हैं
- 1989 के बाद software और hardware में भारी प्रगति हुई है, इसलिए Liu ने उस विचार को फिर से आजमाया जिसे अतीत में ज्यादा ध्यान नहीं मिला था
2-layer से multi-layer KAN की ओर
- Liu ने लगभग एक सप्ताह में सबसे सरल रूप 2-layer KAN का prototype बनाया, लेकिन लक्षित scientific tasks पर अच्छा प्रदर्शन नहीं मिला
- 2-layer KAN, Kolmogorov-Arnold theorem की उस संरचना से स्वाभाविक रूप से मेल खाता दिखता था जिसमें multivariable function को internal functions और external functions के समूह में बाँटा जाता है
- Tegmark ने 2-layer से अधिक layers वाले KAN को आजमाने का सुझाव दिया, और इसी approach से परिणाम मिले
- शोध टीम ने MIT, California Institute of Technology और Northeastern University के सहयोगियों के साथ ऐसा collaboration बनाया जिसमें mathematicians और application-domain experts शामिल थे
- अप्रैल 2024 के paper में टीम ने दिखाया कि 3-layer KAN संभव है, और ऐसे उदाहरण दिए जिनमें 3-layer KAN उन functions को सटीक रूप से व्यक्त करता है जिन्हें 2-layer KAN सटीक रूप से व्यक्त नहीं कर सकता
- इसके बाद उन्होंने 6 layers तक प्रयोग किए और पाया कि layers बढ़ने पर network अधिक जटिल output functions को fit कर सकता है
वास्तविक समस्याओं में दिखी interpretability
-
knot theory
- 2021 में DeepMind की एक टीम ने ऐसा MLP बनाया था जो किसी knot के कई गुणों को input लेकर उस knot के topological गुण का prediction करता था
- नए KAN ने उस उपलब्धि को दोहराया और यह भी दिखाया कि predicted property का अन्य properties से क्या संबंध है
- Liu ने इसे ऐसा काम बताया जो MLP बिल्कुल नहीं कर सकता
-
Anderson localization
- दूसरी समस्या condensed matter physics की Anderson localization phenomenon से जुड़ी थी
- लक्ष्य था उस boundary का prediction करना जहाँ एक खास phase transition होता है, और उस प्रक्रिया को समझाने वाला mathematical formula खोजना
- MLP यह काम पहले कभी नहीं कर पाया था, लेकिन शोध टीम का KAN इसे कर सका
- Tegmark का मानना है कि KAN का सबसे बड़ा फायदा और हालिया विकास की मुख्य प्रेरणा interpretability है
- उनके अनुसार, data दिए जाने पर ऐसा formula निकालना जिसे T-shirt पर लिखा जा सके, interpretability का एक रूप है
- Johns Hopkins के Brice Ménard ने कहा कि अगर समस्या वास्तव में किसी सरल equation से समझाई जा सकती है, तो KAN उसे खोजने में काफी अच्छा हो सकता है
- हालांकि, KAN जिस क्षेत्र में सबसे अच्छा काम करता है, वह शायद physics जैसे उन problems तक सीमित हो जहाँ equations में variables बहुत कम हों
बाद के शोध और KAN 2.0
- Liu और Tegmark के KAN paper को लगभग 3 महीनों में 75 citations मिले, और दूसरे research groups ने भी अपने KAN शोध शुरू किए
- Tsinghua University के Yizheng Wang आदि का जून 2024 में ऑनलाइन प्रकाशित paper कहता है कि Kolmogorov-Arnold-inspired neural network(KINN) ने partial differential equation(PDE) solving में MLP को काफी पीछे छोड़ दिया
- Wang का कहना है कि PDE पूरे science में मौजूद हैं
- National University of Singapore की research team के जुलाई 2024 के paper में अधिक mixed results मिले
- interpretability-संबंधित tasks में KAN, MLP से बेहतर था
- computer vision और audio processing में MLP ने बेहतर नतीजे दिए
- natural language processing और अन्य machine learning tasks में दोनों networks का प्रदर्शन मोटे तौर पर समान था
- Liu के अनुसार, ये परिणाम चौंकाने वाले नहीं हैं
- मूल KAN research का focus उन scientific tasks पर था जहाँ interpretability सर्वोच्च प्राथमिकता है
- अगस्त 2024 में Liu और उनके collaborators ने KAN 2.0 paper प्रकाशित किया
- Liu ने इसे पारंपरिक research paper से अधिक user manual जैसा बताया
- KAN 2.0 इस्तेमाल में आसान है और इसमें multiplication tools जैसी सुविधाएँ भी हैं जो मूल model में नहीं थीं
application-केंद्रित से understanding-केंद्रित दिशा में
- Liu और उनके सहलेखकों का मानना है कि KAN केवल उद्देश्य-पूर्ति का साधन नहीं, बल्कि curiosity-driven science को बढ़ावा देता है
- machine learning में लंबे समय से हावी approach application-centered science रही है
- उदाहरण के लिए, अगर कोई ग्रहों की गति का observation कर रहा हो, तो application-centered researcher भविष्य की स्थिति का prediction करने पर ध्यान देगा
- जबकि curiosity-driven researcher उस गति के पीछे की physics को समझना चाहेगा
- KAN के माध्यम से researcher सिर्फ कठिन computational problems हल करने में मदद नहीं लेते, बल्कि understanding को ही लक्ष्य बनाकर neural networks का उपयोग कर सकते हैं
1 टिप्पणियां
Hacker News की रायें
KAN के मुख्य लेखक ने कल MLCAD में एक ट्यूटोरियल सेशन किया था; यह hardware/semiconductor design और machine learning/deep learning के intersection पर केंद्रित conference थी
physical systems के बारे में insight और interpretation पाने—जैसे symbolic expressions, conservation quantities, और symmetries—के उपयोग के लिए यह वाकई दिलचस्प और अच्छी तरह फिट बैठता लगा
science और mathematics में यह उपयोगी हो सकता है, लेकिन engineering में ऐसी interpretability machine learning/deep learning का सबसे बड़ा लक्ष्य न भी हो सकती है
अधिक कठिन tasks सीखने की क्षमता या learning capacity अभी अनिश्चित है, और KAN “activation” में इस्तेमाल होने वाले basis functions का चयन या इस layer को किस architecture में जोड़ने से फायदा होगा, यह भी अभी बहुत explore नहीं हुआ है
लोग KAN के साथ और experiments करेंगे तो इन सवालों के ज्यादा जवाब मिल सकते हैं
मुझे यह असंभव लगता है
किसी एक internal operation के समझ में आने योग्य होने से पूरा neural network समझ में आने योग्य नहीं हो जाता
काफी सरल decision tree को ही देखें: textbooks में इसे एक ऐसे understandable system के रूप में पेश किया जाता है जो एक बार में एक feature पर decision लेता है और leaf पर output देता है
90s में, जब computers धीमे थे और trees छोटे थे, यह बात सही थी; लेकिन अब विशाल decision trees और random forests लाखों nodes वाले trees बना सकते हैं, और वे interpretable नहीं होते
complex systems को समझने में एक बुनियादी mathematical gap है, और एक और neural network type से यह हल नहीं होगा
पहले मैंने एक physics professor से पूछा था कि principle में यह संभव है या नहीं, तो उन्होंने कहा था कि संभव है
KAN experimental data दिए जाने पर ऐसी equations खोज पाएगा, ऐसा लगता है; और अगर यह सच है, तो मुझे लगता है कि इसे interpretability कहना उचित होगा
complexity पर reasoning करने के लिए संभव है कि वास्तव में वही complexity पूरी तरह execute करनी पड़े
फिर भी nonlinear dynamics या pattern formation के क्षेत्र में अगर कभी कोई सफल breakthrough न आए, तो मुझे उल्टा आश्चर्य होगा
क्योंकि tree को follow करते हुए “अगर यह condition true नहीं होती तो क्या result बदल जाता?” जैसे सवालों का जवाब दिया जा सकता है
पूरे tree को एक साथ दिमाग में रखना मुश्किल होगा, लेकिन वास्तव में जिस path से गुजरा गया उसे जरूरत पड़ने पर investigate करके समझना संभव है
मुझे वे grey box या dark grey box के ज्यादा करीब लगते हैं
चाहें तो interpret कर सकते हैं, लेकिन असल में कौन 500 trees को पूरा खंगालना चाहेगा
KAN paper में दिया गया semi-automatic simplification algorithm https://arxiv.org/pdf/2112.04035 जैसी समस्या हल करता दिखता है
बस इसमें generalized abstract compressor नहीं, बल्कि feedforward function interpretability को लक्ष्य बनाने की अतिरिक्त constraint है
ऐसा नहीं है
trivial function-fitting problems में KAN यह visualize करने देता है कि हर basis function अगली layer में कितना contribute करता है
लेकिन ऐसे shallow और trivial neural networks को वैसे भी अंदर से देखने की शायद ही जरूरत होती है
deep neural networks इस approach से explainable नहीं बनते
लाखों से अरबों parameters वाली चीज़ हमारी चाही हुई तरह “explainable” बन सकती है या नहीं, पता नहीं
कल्पना करें कि अरबों terms वाला एक generic multivariate function बहुत बड़े whiteboard पर लिखा हो—क्या आप सच में समझ पाएँगे कि वह ऐसा number क्यों देता है?
KAN में parameters शायद एक order of magnitude कम हो सकते हैं, लेकिन मूल समस्या वही रहती है
यह topic से सीधे जुड़ा न भी हो, लेकिन एक बात जानना चाहता हूँ
neural networks की एक ताकत GPU द्वारा दी जाने वाली विशाल parallelism का लाभ उठाने में है; तो क्या सिर्फ scalar weights इस्तेमाल करके हम compute resources खाली छोड़ रहे हैं?
weight matrix की जगह function matrix इस्तेमाल करें तो कैसा होगा?
layers में stacked nodes के groups एक complex nonlinear function बन जाते हैं
उदाहरण के लिए, छोटा 3-layer neural network भी cubic spline function model करने के लिए train हो सकता है
function का अंदरूनी हिस्सा हर step, हर addition और multiplication में सीखा जाता है
neural network में functions की संख्या weights की संख्या का एक fraction मानी जा सकती है, इसलिए यह अधिक complex functions को सीधे model करने की तुलना में theoretically ज्यादा flexible और powerful है
अगर सही function पता हो, तो किसी specific function के साथ छोटा fixed-function MLP model करके learning efficiency बढ़ाई जा सकती है, लेकिन सावधान न रहें तो performance खो भी सकते हैं
मुख्य समस्या यह है कि कौन-सा function इस्तेमाल करें यह पता नहीं, और nonlinear functions जोड़ने से performance, precision, initialization, और normalization के लिहाज से नई कठिनाइयाँ आ सकती हैं
linear math आसान और powerful है और पहले से complex functions model कर सकता है, लेकिन nonlinear math भी उपयोगी हो सकता है, इसलिए और research की जरूरत लगती है
हाल ही में https://news.ycombinator.com/item?id=40219205 पर भी इस पर चर्चा हुई थी
scientific applications में interpretability की कुंजी symbolic regression में है
MLP किसी dataset के लिए हमेशा equation output नहीं कर सकता, लेकिन KAN कर सकता है
क्या आप समझा सकते हैं कि neural network में ठीक-ठीक “अज्ञात” क्या है?
हमने इसे बनाया है, यह किन चीज़ों से बना है और कैसे काम करता है, यह भी जानते हैं
इस “multi-layer perceptron” के nodes के बीच हर connection को एक-एक करके map नहीं कर सकते, लेकिन क्या हम यह नहीं जानते कि ऐसे connections कैसे बनते हैं?
हमारे पास भी b64 text को decode और encode करने का algorithm है, लेकिन क्या GPT-4o वही algorithm हूबहू चलाता है?
क्या training ने वह algorithm सीख लिया? साफ़ तौर पर नहीं, या कम-से-कम पूरी तरह तो नहीं
क्योंकि b64 में ऐसी typo, जिससे हमारे algorithm के लिए original meaning निकालना असंभव हो जाएगा, 4o के लिए लगभग समस्या नहीं बनती
तो फिर यह b64 को कैसे decode करता है? हमें नहीं पता
हम neural network को सचमुच “बनाते” नहीं, बल्कि उसकी संरचना बनाते हैं और उसे train करते हैं
training data देने के अलावा, वह क्या सीखता है यह इंसानों के सीधे control से बाहर है
मामूली toy examples को छोड़ दें, तो उसने क्या सीखा है यह अधिकतर पता नहीं होता
हमें पता है कि connections बनते हैं, weights भी देख सकते हैं, matrix multiplication भी देख सकते हैं
लेकिन ये computations क्या कर रही हैं और इनका मतलब क्या है, यह नहीं जानते
क्या कोई alien सिर्फ C code को चलते हुए देखकर कह सकता है कि वह उस code को समझता है?
लाखों से लेकर खरबों weights में से हर एक को बदलने पर behavior कैसे बदलेगा, यह भी नहीं पता
dictionary से तुलना करें तो dictionary में यह साफ़ होता है कि हर page और हर line में कौन-सी जानकारी है
weights के dimensions को इंसानों द्वारा पढ़े जा सकने वाले values में घटाना मामूली काम नहीं है, और कई neurons ऐसे तरीकों से interact करते हैं जिनकी भविष्यवाणी करना मुश्किल है
interpretability research ने कई उपयोगी नतीजे और अच्छी visualizations[1][2] दी हैं, और Transformer को समझने की कोशिशें[3][4] भी बहुत हुई हैं, लेकिन आज इस्तेमाल हो रहे बड़े models को पूरी तरह explain करने से हम अभी बहुत दूर हैं
[1] - https://distill.pub/2018/building-blocks/
[2] - https://distill.pub/2019/activation-atlas/
[3] - https://transformer-circuits.pub/
[4] - https://arxiv.org/pdf/2407.02646
जैसे हमारे सारे neurons को देख लेने भर से हम यह पूरी तरह नहीं समझ सकते कि हम कैसे सोचते हैं, वैसे ही LLM को भी उसके individual components के analysis भर से नहीं समझा जा सकता
LLM को decode करना शायद दिमाग़ से आसान होगा, लेकिन इसका मतलब यह नहीं कि वह आसान है
लेकिन यह नहीं जानते कि उसी खास तरीके से बना structure सामने की problem को क्यों हल करता है
अब तो यह expression भी कड़ाई से पूरी तरह सही नहीं है
क्योंकि black box के अंदर क्या हो रहा है, इस पर बहुत research हो रही है
समस्या यह है कि यह कभी पूरी तरह black box था ही नहीं। अंदर कभी भी देखा जा सकता है, लेकिन समझना मुश्किल रहा है
KAN इसका एक हिस्सा mathematical formulation में ले जाने में मदद करता है, और data के लिए activation maps बनाना भी इसी तरह insight देता है