2025-11-19T05:43:14.227603

torchsom: The Reference PyTorch Library for Self-Organizing Maps

Berthier, Shokry, Moreaud et al.
This paper introduces torchsom, an open-source Python library that provides a reference implementation of the Self-Organizing Map (SOM) in PyTorch. This package offers three main features: (i) dimensionality reduction, (ii) clustering, and (iii) friendly data visualization. It relies on a PyTorch backend, enabling (i) fast and efficient training of SOMs through GPU acceleration, and (ii) easy and scalable integrations with PyTorch ecosystem. Moreover, torchsom follows the scikit-learn API for ease of use and extensibility. The library is released under the Apache 2.0 license with 90% test coverage, and its source code and documentation are available at https://github.com/michelin/TorchSOM.
academic

torchsom: स्व-संगठित मानचित्रों के लिए संदर्भ PyTorch पुस्तकालय

बुनियादी जानकारी

  • पेपर ID: 2510.11147
  • शीर्षक: torchsom: स्व-संगठित मानचित्रों के लिए संदर्भ PyTorch पुस्तकालय
  • लेखक: Louis Berthier, Ahmed Shokry, Maxime Moreaud, Guillaume Ramelet, Eric Moulines
  • वर्गीकरण: stat.ML cs.LG
  • प्रकाशन तिथि: 13 अक्टूबर 2025
  • पेपर लिंक: https://arxiv.org/abs/2510.11147

सारांश

यह पेपर torchsom का परिचय देता है, जो PyTorch पर आधारित एक ओपन-सोर्स Python पुस्तकालय है जो स्व-संगठित मानचित्रों (SOM) के लिए संदर्भ कार्यान्वयन प्रदान करता है। यह पुस्तकालय तीन मुख्य कार्यक्षमताएं प्रदान करता है: (1) आयामीता में कमी, (2) क्लस्टरिंग, (3) उपयोगकर्ता-अनुकूल डेटा दृश्यांकन। PyTorch बैकएंड के माध्यम से, यह पुस्तकालय (1) GPU त्वरण के माध्यम से तेज़ और कुशल SOM प्रशिक्षण, (2) PyTorch पारिस्थितिकी तंत्र के साथ आसान विस्तारयोग्य एकीकरण को सक्षम करता है। इसके अलावा, torchsom scikit-learn API डिज़ाइन का पालन करता है, जिससे इसका उपयोग और विस्तार आसान है। यह पुस्तकालय Apache 2.0 लाइसेंस के तहत 90% परीक्षण कवरेज के साथ जारी किया गया है।

अनुसंधान पृष्ठभूमि और प्रेरणा

समस्या परिभाषा

हालांकि स्व-संगठित मानचित्र (SOM) एक मूल्यवान और स्थायी मशीन लर्निंग तकनीक है, आधुनिक डेटा विश्लेषण में अभी भी महत्वपूर्ण है, लेकिन मौजूदा Python SOM कार्यान्वयन में महत्वपूर्ण कमियां हैं:

  1. पुरानी तकनीकी आर्किटेक्चर: GPU त्वरण समर्थन की कमी
  2. अपर्याप्त पारिस्थितिकी तंत्र एकीकरण: आधुनिक गहन शिक्षण ढांचे के साथ एकीकरण में कठिनाई
  3. खराब उपयोगकर्ता अनुभव: उपयोगकर्ता-अनुकूल API और दृश्यांकन कार्यक्षमता की कमी
  4. रखरखाव समस्याएं: मौजूदा पुस्तकालय अपर्याप्त रूप से बनाए रखे जाते हैं, दस्तावेज़ अधूरे हैं

अनुसंधान का महत्व

SOM के कई क्षेत्रों में व्यापक अनुप्रयोग मूल्य है:

  • ऊर्जा उद्योग: प्रणाली निगरानी और नियंत्रण
  • जैव चिकित्सा: जीन अभिव्यक्ति विश्लेषण, चिकित्सा इमेजिंग प्रसंस्करण
  • IoT सिस्टम: विसंगति पहचान और पैटर्न पहचान
  • रासायनिक पर्यावरण अनुप्रयोग: प्रदूषक विश्लेषण और पर्यावरण निगरानी
  • व्यावसायिक मामले: बाजार विभाजन और ग्राहक विश्लेषण

मौजूदा विधियों की सीमाएं

मौजूदा Python SOM पुस्तकालयों (MiniSom, SimpSOM, SOMPY, somoclu, som-pbc) की तुलनात्मक विश्लेषण के माध्यम से, निम्नलिखित समस्याएं पाई गई हैं:

  1. प्रदर्शन सीमाएं: अधिकांश NumPy पर आधारित हैं, CUDA त्वरण की कमी है
  2. अधूरी कार्यक्षमता: अंतर्निहित क्लस्टरिंग और उन्नत दृश्यांकन कार्यक्षमता की कमी
  3. अपर्याप्त सॉफ्टवेयर इंजीनियरिंग प्रथाएं: कम परीक्षण कवरेज, अधूरा दस्तावेज़
  4. कमजोर विस्तारयोग्यता: कम मॉड्यूलरिटी, अनुकूलन और विस्तार में कठिनाई

मुख्य योगदान

  1. पहली व्यापक PyTorch-आधारित SOM पुस्तकालय: GPU त्वरण और आधुनिक गहन शिक्षण कार्यप्रवाह एकीकरण का समर्थन करने वाला पूर्ण SOM कार्यान्वयन प्रदान करता है
  2. मानकीकृत API डिज़ाइन: scikit-learn API शैली का पालन करता है, सुसंगत उपयोग अनुभव प्रदान करता है
  3. समृद्ध दृश्यांकन उपकरण: 9 वर्गों की दृश्यांकन कार्यक्षमता प्रदान करता है, आयताकार और षट्भुज टोपोलॉजी का समर्थन करता है
  4. अंतर्निहित क्लस्टरिंग कार्यक्षमता: K-means, GMM और HDBSCAN क्लस्टरिंग एल्गोरिदम को एकीकृत करता है
  5. उच्च गुणवत्ता वाली सॉफ्टवेयर इंजीनियरिंग: 90% परीक्षण कवरेज, पूर्ण दस्तावेज़, मॉड्यूलर डिज़ाइन

विधि विवरण

कार्य परिभाषा

torchsom का उद्देश्य एक आधुनिक SOM कार्यान्वयन प्रदान करना है जो समर्थन करता है:

  • इनपुट: उच्च-आयामी डेटासेट X ∈ R^(N×k), जहां N नमूनों की संख्या है, k विशेषता आयाम है
  • आउटपुट: प्रशिक्षित SOM नेटवर्क, कम-आयामी मानचित्रण प्रतिनिधित्व, क्लस्टरिंग परिणाम
  • बाधाएं: टोपोलॉजिकल संरचना बनाए रखना, परिमाणीकरण त्रुटि और टोपोलॉजिकल त्रुटि को कम करना

मॉडल आर्किटेक्चर

1. मुख्य मॉड्यूल (torchsom.core)

क्लासिक SOM एल्गोरिदम की मुख्य कार्यक्षमता को लागू करता है:

  • fit(): स्वचालित GPU त्वरण का समर्थन करने वाला मॉडल प्रशिक्षण
  • cluster(): क्लस्टरिंग कार्यक्षमता
  • build_map(): दृश्यांकन के लिए उपयुक्त मानचित्रण उत्पन्न करता है
  • collect_sample(): टोपोलॉजिकल और संभावित स्थान दूरी का उपयोग करके इष्टतम नमूने की पहचान करता है

2. उपयोगिता मॉड्यूल (torchsom.utils)

SOM पैरामीटराइजेशन और प्रशिक्षण के लिए बुनियादी घटक प्रदान करता है:

  • क्षय कार्य: सीखने की दर और पड़ोस चौड़ाई शेड्यूलिंग
  • दूरी मेट्रिक्स: यूक्लिडियन, कोसाइन, मैनहट्टन, चेबिशेव दूरी
  • पड़ोस कर्नेल: गाऊसी, मेक्सिकन हैट, बबल, त्रिकोणीय कर्नेल कार्य
  • क्लस्टरिंग विधियां: K-means, GMM, HDBSCAN

3. दृश्यांकन मॉड्यूल (torchsom.visualization)

9 वर्गों की व्यापक दृश्यांकन कार्यक्षमता प्रदान करता है:

  • U-matrix: मानचित्रण टोपोलॉजी और क्लस्टरिंग संरचना
  • Hit maps: न्यूरॉन सक्रियण पैटर्न
  • Component planes: विशेषता-स्तरीय विश्लेषण
  • Classification/metric maps: लक्ष्य सांख्यिकी
  • Score/rank maps: गुणवत्ता मूल्यांकन
  • Training curves: अभिसरण निगरानी
  • Clustering maps: क्लस्टरिंग गुणवत्ता संकेतक

तकनीकी नवाचार बिंदु

1. PyTorch एकीकरण लाभ

# वजन अद्यतन समीकरण
w_ij(t+1) = w_ij(t) + α(t) · h_ij(t) · (x - w_ij(t))

जहां:

  • α(t): सीखने की दर
  • h_ij(t): पड़ोस कार्य
  • x: इनपुट विशेषता वेक्टर

2. कुशल बैच प्रसंस्करण कार्यान्वयन

PyTorch के टेंसर संचालन और GPU समानांतर कंप्यूटिंग के माध्यम से, बैच प्रसंस्करण को लागू करता है, प्रशिक्षण दक्षता में उल्लेखनीय सुधार करता है।

3. कई पड़ोस कार्य

चार पड़ोस कार्यों का समर्थन करता है:

  • गाऊसी कर्नेल: h^Gaussian_ij(t) = exp(-d²_ij / (2σ(t)²))
  • मेक्सिकन हैट कर्नेल: अधिक जटिल पड़ोस संबंध प्रदान करता है
  • बबल कर्नेल: स्टेप फ़ंक्शन रूप
  • त्रिकोणीय कर्नेल: रैखिक क्षय

4. अनुकूली शेड्यूलिंग रणनीति

कई पैरामीटर क्षय रणनीतियों को लागू करता है:

  • व्युत्क्रम क्षय: α(t+1) = α(t) · γ/(γ + t)
  • रैखिक क्षय: α(t+1) = α(t) · (1 - t/T)
  • स्पर्शोन्मुख क्षय: घातीय अभिसरण के लिए

प्रायोगिक सेटअप

डेटासेट

scikit-learn के make_blobs() का उपयोग करके सिंथेटिक डेटासेट उत्पन्न करता है:

  • नमूना पैमाना: {240, 4000, 16000}
  • विशेषता आयाम: {4, 50, 300}
  • ग्रिड आकार: 25×15 (छोटा), 90×70 (बड़ा)

मूल्यांकन मेट्रिक्स

  1. परिमाणीकरण त्रुटि (QE): QE = (1/N) Σ ||x_i - w_BMU(x_i)||₂
  2. टोपोलॉजिकल त्रुटि (TE): पड़ोस संबंध संरक्षण की डिग्री को मापता है
  3. चलने का समय: आरंभीकरण और प्रशिक्षण समय सहित

तुलना विधियां

  • MiniSom (CPU): सबसे व्यापक रूप से उपयोग की जाने वाली SOM पुस्तकालय
  • torchsom (CPU): CPU संस्करण कार्यान्वयन
  • torchsom (GPU): GPU त्वरित संस्करण

कार्यान्वयन विवरण

  • PCA आरंभीकरण
  • आयताकार टोपोलॉजी
  • 100 प्रशिक्षण पुनरावृत्तियां
  • गाऊसी पड़ोस कार्य
  • यूक्लिडियन दूरी

प्रायोगिक परिणाम

मुख्य परिणाम

प्रदर्शन तुलना (25×15 ग्रिड)

डेटासेटMiniSom(CPU)torchsom(CPU)torchsom(GPU)
QE0.15-5.430.23-5.210.23-5.21
TE सुधारआधार34-81%↓34-81%↓
गति वृद्धिआधार77-99%↑77-99%↑

मुख्य निष्कर्ष

  1. टोपोलॉजी संरक्षण लाभ: MiniSom की तुलना में TE में 34-81% की कमी
  2. कम्प्यूटेशनल दक्षता में सुधार: प्रशिक्षण समय हजारों सेकंड से दसियों सेकंड तक कम हो गया
  3. तुलनीय परिमाणीकरण गुणवत्ता: सभी डेटासेट पर समान QE प्राप्त करता है
  4. स्केलेबिलिटी: GPU संस्करण उच्च-आयामी बड़े डेटासेट पर सर्वश्रेष्ठ प्रदर्शन करता है

विलोपन प्रयोग

प्रयोग प्रत्येक घटक के योगदान को सत्यापित करते हैं:

  • बैच प्रसंस्करण अनुकूलन: प्रशिक्षण गति में उल्लेखनीय सुधार
  • GPU त्वरण: बड़े पैमाने के डेटा पर परिमाण क्रम के प्रदर्शन सुधार प्रदान करता है
  • PyTorch बैकएंड: बेहतर मेमोरी प्रबंधन और समानांतर कंप्यूटिंग को सक्षम करता है

केस विश्लेषण

wine डेटासेट और Boston हाउस प्राइस डेटासेट के दृश्यांकन विश्लेषण के माध्यम से, निम्नलिखित को प्रदर्शित करता है:

  • स्पष्ट क्लस्टरिंग सीमाएं: U-matrix क्लस्टरिंग संरचना को प्रभावी ढंग से प्रदर्शित करता है
  • उचित विशेषता मानचित्रण: Component planes विशेषता वितरण को प्रतिबिंबित करते हैं
  • अच्छा वर्गीकरण प्रभाव: Classification maps स्पष्ट निर्णय सीमाएं दिखाते हैं

संबंधित कार्य

मौजूदा SOM पुस्तकालय तुलना

विशेषताtorchsomMiniSomSimpSOMSOMPYsomoclu
ढांचाPyTorchNumPyNumPyNumPyC++
GPU समर्थनCUDACuPYCUDA
API डिज़ाइनscikit-learnकस्टमकस्टमMATLABकस्टम
दृश्यांकनउन्नतमध्यममध्यमबुनियादी
क्लस्टरिंग

तकनीकी लाभ

  1. आधुनिक आर्किटेक्चर: PyTorch पारिस्थितिकी तंत्र पर आधारित
  2. मानकीकृत इंटरफेस: scikit-learn सम्मेलनों का पालन करता है
  3. पूर्ण कार्यक्षमता: प्रशिक्षण, क्लस्टरिंग, दृश्यांकन को एकीकृत करता है
  4. उच्च गुणवत्ता कार्यान्वयन: 90% परीक्षण कवरेज, पूर्ण दस्तावेज़

निष्कर्ष और चर्चा

मुख्य निष्कर्ष

  1. torchsom पहली व्यापक PyTorch-आधारित SOM कार्यान्वयन प्रदान करता है
  2. तुलनीय परिमाणीकरण गुणवत्ता बनाए रखते हुए, टोपोलॉजी संरक्षण और कम्प्यूटेशनल दक्षता में उल्लेखनीय सुधार
  3. समृद्ध दृश्यांकन उपकरण मौजूदा SOM पुस्तकालयों के महत्वपूर्ण अंतराल को भरते हैं
  4. मानकीकृत API डिज़ाइन आधुनिक ML कार्यप्रवाह के साथ एकीकरण को बढ़ावा देता है

सीमाएं

  1. GPU निर्भरता: सर्वोत्तम प्रदर्शन के लिए CUDA समर्थन की आवश्यकता है
  2. मेमोरी आवश्यकताएं: बड़े पैमाने के डेटासेट को बड़ी GPU मेमोरी की आवश्यकता हो सकती है
  3. हाइपरपैरामीटर संवेदनशीलता: अभी भी सावधानीपूर्वक ट्यूनिंग की आवश्यकता है
  4. विशिष्ट अनुप्रयोग अनुकूलन: कुछ डोमेन-विशिष्ट आवश्यकताओं के लिए अतिरिक्त अनुकूलन की आवश्यकता हो सकती है

भविष्य की दिशाएं

  1. एल्गोरिदम विस्तार: अधिक SOM वेरिएंट का समर्थन करता है (जैसे Growing SOM)
  2. वितरित प्रशिक्षण: मल्टी-GPU और वितरित कंप्यूटिंग का समर्थन करता है
  3. स्वचालित हाइपरपैरामीटर ट्यूनिंग: हाइपरपैरामीटर अनुकूलन कार्यक्षमता को एकीकृत करता है
  4. डोमेन विशेषज्ञता: विशिष्ट अनुप्रयोग डोमेन के लिए अनुकूलन

गहन मूल्यांकन

शक्तियां

  1. तकनीकी नवाचार: पहली बार SOM को आधुनिक गहन शिक्षण ढांचे के साथ गहराई से एकीकृत करता है
  2. उच्च इंजीनियरिंग गुणवत्ता: 90% परीक्षण कवरेज, पूर्ण दस्तावेज़, मॉड्यूलर डिज़ाइन
  3. मजबूत व्यावहारिक मूल्य: उल्लेखनीय प्रदर्शन सुधार और समृद्ध कार्यक्षमता
  4. अच्छी पुनरुत्पादनशीलता: ओपन-सोर्स कार्यान्वयन, विस्तृत प्रायोगिक सेटअप

कमियां

  1. सीमित सैद्धांतिक योगदान: मुख्य रूप से इंजीनियरिंग कार्यान्वयन, एल्गोरिदम स्तर पर सीमित नवाचार
  2. सीमित मूल्यांकन दायरा: मुख्य रूप से सिंथेटिक डेटा पर परीक्षण, वास्तविक अनुप्रयोग मामले कम हैं
  3. अपूर्ण तुलना: सभी मौजूदा SOM पुस्तकालयों के साथ विस्तृत तुलना नहीं की गई है
  4. अपर्याप्त विस्तारयोग्यता सत्यापन: अति-बड़े पैमाने के डेटा पर प्रदर्शन को आगे सत्यापन की आवश्यकता है

प्रभाव

  1. डोमेन योगदान: SOM अनुसंधान के लिए एक आधुनिक उपकरण मंच प्रदान करता है
  2. व्यावहारिक मूल्य: SOM अनुप्रयोग के तकनीकी बाधा को कम करता है
  3. पारिस्थितिकी तंत्र प्रभाव: पारंपरिक ML एल्गोरिदम और आधुनिक ढांचे के संलयन को बढ़ावा देता है
  4. सामुदायिक मूल्य: ओपन-सोर्स योगदान SOM तकनीक के प्रसार और विकास में सहायता करता है

लागू परिदृश्य

  1. अन्वेषणात्मक डेटा विश्लेषण: उच्च-आयामी डेटा का दृश्यांकन और समझ
  2. विसंगति पहचान: औद्योगिक निगरानी और गुणवत्ता नियंत्रण
  3. क्लस्टरिंग विश्लेषण: ग्राहक विभाजन, बाजार विश्लेषण
  4. विशेषता सीखना: गहन शिक्षण पाइपलाइन के लिए प्रीप्रोसेसिंग चरण के रूप में
  5. शिक्षा अनुसंधान: SOM एल्गोरिदम के शिक्षण और अनुसंधान मंच

संदर्भ

  1. Kohonen, T. (1982). स्व-संगठित टोपोलॉजिकल रूप से सही विशेषता मानचित्रों का गठन
  2. Kohonen, T. (1990). स्व-संगठित मानचित्र
  3. Vettigli, G. (2018). MiniSom: स्व-संगठित मानचित्रों का न्यूनतमवादी कार्यान्वयन
  4. Pedregosa, F. et al. (2011). Scikit-learn: Python में मशीन लर्निंग

समग्र मूल्यांकन: यह एक उच्च गुणवत्ता वाला सॉफ्टवेयर इंजीनियरिंग पेपर है जो आधुनिक कार्यान्वयन के माध्यम से SOM की उपयोगिता और प्रदर्शन में उल्लेखनीय सुधार करता है। हालांकि एल्गोरिदम स्तर पर नवाचार सीमित है, लेकिन इसका इंजीनियरिंग मूल्य और व्यावहारिक महत्व अनदेखा नहीं किया जा सकता है, जो आधुनिक कम्प्यूटिंग वातावरण में पारंपरिक मशीन लर्निंग एल्गोरिदम के अनुप्रयोग के लिए एक उत्कृष्ट उदाहरण प्रदान करता है।