स्ट्रैसेन अपने मैट्रिक्स गुणन विधि के साथ कैसे आया?


18

प्रसिद्ध स्ट्रैसेन मैट्रिक्स मैट्रिक्स एल्गोरिथ्म हमारे लिए एक वास्तविक उपचार है, क्योंकि यह पारंपरिक ओ (एन 3 ) से ओ (एन 2.8 ) तक समय की जटिलता को कम करता है ।

लेकिन सभी संसाधनों के माध्यम से मैं यहां तक ​​कि कॉर्मेन और स्टीवन स्कोयाना की पुस्तक के माध्यम से चला गया हूं, वे स्पष्ट रूप से यह नहीं बताते हैं कि स्ट्रैसेन ने इसके बारे में कैसे सोचा था।

स्ट्रैसेन के मैट्रिक्स गुणन एल्गोरिथम का औचित्य क्या है? क्या यह एक भाग्यशाली दुर्घटना है या इसमें कुछ गहरा है?


मुझे बताया गया है कि कोई भी वास्तव में नहीं जानता है, कुछ भी मुख्य रूप से अटकलें होंगी। हालांकि, मैं मिला यह (हालांकि मैं यह नहीं पढ़ा है), जो लागू हो सकता है।
Dukeling

मुझे लगता है कि स्ट्रैसन ऑलग। विकिपीडिया में स्पष्ट है।
मार्शल

4
@ मीशूई मुझे लगता है कि सिर्फ यह बताता है कि यह काम क्यों करता है , न कि वह कैसे इसके बारे में सोचता है , जैसा कि अधिकांश अन्य संसाधनों के साथ है।
Dukeling

2
आप स्ट्रैसेन के मूल पेपर पर नज़र डाल सकते हैं: scgroup.hpclab.ceid.upatras.gr/class/SC/Papers/Strassen.pdf
एक्सल केम्पर

जवाबों:


26

स्ट्रैसन के अलावा, कोई भी आपको यह बताने में सक्षम नहीं है कि स्ट्रैसेन को अपना विचार कैसे मिला है। Howeber could, मैं आपको बता सकता हूं, कि आप कैसे उस सूत्र को पा सकते हैं - बशर्ते कि आप बीजीय ज्यामिति और प्रतिनिधित्व सिद्धांत में रुचि रखते हैं। यह आपको यह दिखाने के लिए उपकरण भी देता है कि स्ट्रैसेन का फॉर्मूला उतना ही अच्छा है, या इससे अधिक सटीक है, कि दो 2 × 2 मैट्रिसेस के उत्पाद की गणना करने वाला कोई सूत्र नहीं है जो 7 से कम गुणा का उपयोग करता है

चूंकि आप मैट्रिसेस से रुचि रखते हैं, इसलिए मैं मानता हूं कि आप बुनियादी रैखिक बीजगणित जानते हैं और अधिक उन्नत विवरण के लिए थोड़ा धुंधला हो जाएगा।

पहले E को एक हवाई जहाज़ से एक हवाई जहाज़ के सभी रैखिक नक्शों का सेट होने दें । यह मूल रूप से सभी 2 × 2 मैट्रिस का सेट है, लेकिन हम एक विशेष समन्वय प्रणाली के बारे में भूल जाते हैं- क्योंकि, यदि "डिफ़ॉल्ट एक" से बेहतर समन्वय प्रणाली थी, तो हम मैट्रिक्स गुणन के लिए इसका उपयोग करने में रुचि रख सकते थे। हम यह भी निरूपित द्वारा ई † की दोहरी अंतरिक्ष और के द्वारा एक्स = पी (E⊗E † ⊗E †) प्रक्षेपीय टेन्सर उत्पाद से जुड़े अंतरिक्ष E⊗E † ⊗E †

विशेष रूप [c⊗α⊗β] के एक्स = पी (E⊗E of †E () का एक तत्व मेट्रिसेस पर एक प्राथमिक ऑपरेशन के रूप में व्याख्या किया जा सकता है, जो कुछ एपोप्रीट समन्वय प्रणालियों में एक मैट्रिक्स के गुणांक को पढ़ता है। A और मैट्रिक्स B का गुणांक है और इन गुणांक के उत्पाद को कुछ मैट्रिक्स C में लिखते हैं । का एक सामान्य तत्व एक्स , इन प्राथमिक संचालन का एक संयोजन है तो उत्पाद π दो मैट्रिक्स की, से एक नक्शे के रूप में समझा पी (ई) × पी (ई) के लिए पी (ई), में एक बिंदु है एक्स

सामान्य मैट्रिक्स उत्पाद सूत्र और स्ट्रैसेन के सूत्र को इन रैखिक कार्यों के संयोजन के रूप में व्यक्त किया जा सकता है, इसलिए मुझे इन प्राथमिक कार्यों के सेट को W these द्वारा निरूपित करें [coteα⊗β] और मुझे ज्यामितीय रूप से उनके संयोजनों का वर्णन करने दें।

चलो W₂ की विविधता हो secants की W₁ में एक्स यह दो (सामान्य) के अंक के माध्यम से सभी लाइनों जाने का संघ (के बंद होने) लेने के द्वारा प्राप्त किया जाता है W₁ । हम इसे दो ग्यारह संचालन के सभी संयोजनों के सेट के रूप में सोच सकते हैं।

बता दें कि W₃ X में W sec के अलग-अलग विमानों की विविधता है । यह W₁ के तीन (जेनेरिक) बिंदुओं से गुजरने वाले सभी विमानों के मिलन को बंद करने से प्राप्त होता है । हम इसे तीन एलिमेंट्री ऑपरेशन के सभी संयोजनों के सेट के रूप में सोच सकते हैं।

इसी प्रकार, हम अधिक से अधिक सूचकांकों के लिए प्रतिभूत किस्मों को परिभाषित करते हैं। ध्यान दें कि ये किस्में बड़े और बड़े होते हैं, वह है W₂⊂W₃⊂W⋯ classical इसलिए शास्त्रीय मैट्रिक्स उत्पाद सूत्र से पता चलता है कि मेट्रिसेस का उत्पाद W₈ का एक बिंदु है । वास्तव में

प्रस्ताव (Strassen) - की मैट्रिक्स उत्पाद π में निहित है W₇।

जहां तक ​​मुझे पता है, स्ट्रैसन ने इस तरह की चीजों को नहीं रखा, हालांकि यह इस सवाल पर एक ज्यामितीय दृष्टिकोण है। क्योंकि यह भी आप को साबित Strassen के सूत्र सबसे अच्छा है कि, कि है, कि सुविधा देता है देखने के इस बिंदु, बहुत उपयोगी है π में झूठ नहीं करता W₆ । यहां विकसित ज्यामितीय विधियों का उपयोग व्यापक स्तर की समस्याओं के लिए भी किया जा सकता है।

मुझे आशा है, मैंने आपकी जिज्ञासा को पकड़ लिया। लैंड्सबर्ग और मैनिवेल के इस लेख को पढ़कर आप आगे बढ़ सकते हैं:

http://arxiv.org/abs/math/0601097

Fix मैं इस टाइपो को ठीक नहीं करूंगा, क्योंकि मैंने एक ठंडा पकड़ा है।


यह दिखाना काफी सरल है कि 21 गुणा के साथ एक (3x3) मैट्रिक्स उत्पाद करने में सक्षम होने के कारण एक एसिम्पटोट तेजी से एल्गोरिथ्म में ले जाएगा। किसी भी विचार अगर यह संभव / असंभव / अज्ञात है?
gnasher729

3

मुझे सिर्फ होमवर्क के लिए ऐसा करने का काम सौंपा गया है, और मुझे लगा कि मेरे पास एक साफ सुथरा मिजाज था: स्ट्रैसन का एल्गोरिथ्म "प्री-समन" घटकों के बदले में कम संचालन का उपयोग करने के लिए इसके प्री-समेशन घटकों की "चौड़ाई" का त्याग करता है। कि अभी भी अंतिम जवाब निकालने के लिए इस्तेमाल किया जा सकता है। (यह कहने का सबसे अच्छा तरीका नहीं है, लेकिन मेरे लिए इसे समझाना मुश्किल है)।

मैं " ऑपरेशन बनाम घटकों " के संतुलन को स्पष्ट करने के लिए दो जटिल संख्याओं को एक साथ गुणा करने के उदाहरण का उपयोग करने जा रहा हूं :

जटिल संख्याओं के लिए समीकरण।

ध्यान दें कि हम 4 गुणन का उपयोग करते हैं, जिसके परिणामस्वरूप 4 उत्पाद घटक हैं :

हमारे पास 4 उत्पाद घटक हैं।

ध्यान दें कि 2 अंतिम घटक जो हम चाहते हैं: वास्तविक और जटिल संख्या के काल्पनिक भाग, वास्तव में रैखिक समीकरण हैं: वे स्केल किए गए उत्पादों के योग हैं। इसलिए हम यहां दो ऑपरेशन कर रहे हैं: जोड़ और गुणा।

तथ्य यह है कि हमारे 4 उत्पाद घटक हमारे 2 अंतिम घटकों का प्रतिनिधित्व कर सकते हैं यदि हम बस हमारे घटकों को जोड़ते हैं या घटाते हैं:

हमारे उत्पाद घटक हमारे अंतिम लोगों का प्रतिनिधित्व कर सकते हैं।

लेकिन, हमारे अंतिम 2 घटकों को उत्पादों के रूप में दर्शाया जा सकता है यहाँ मैं क्या लेकर आया हूँ:

हमें वास्तव में केवल 3 अलग-अलग उत्पाद घटकों की आवश्यकता है।

यदि आप देख सकते हैं, हम वास्तव में केवल तीन अलग-अलग उत्पाद घटकों की जरूरत है हमारे अंतिम दो बनाने के लिए:

हमारे 3 अलग-अलग घटक।

लेकिन रुकें! प्रत्येक कैपिटल लेटर अपने आप में उत्पादों में है! लेकिन पकड़ यह है कि हम जानते हैं कि हम (ए + बी + सी + डी) (ए + बी) (सी + डी) से उत्पन्न कर सकते हैं, जो केवल १ गुणा है।

इसलिए अंत में, हमारे एल्गोरिथ्म को कम उपयोग करने के लिए अनुकूलित किया गया है, लेकिन "फैटर" घटक हैं, जहां हम लगभग दो ऑपरेशन के लिए गुणा की मात्रा का व्यापार करते हैं।

यह जो सक्षम करता है उसका एक हिस्सा वितरण योग्य संपत्ति है, जो ए (बी + सी) को (एबी + एसी) के बराबर होने की अनुमति देता है। ध्यान दें कि 1 ऐड और 1 मल्टीप्ल ऑपरेशन का उपयोग करके पहले की गणना कैसे की जा सकती है, जबकि दूसरे में 2 गुणा और 1 योग की आवश्यकता होती है।

स्ट्रैसन का एल्गोरिथ्म जटिल संख्या वाले उत्पादों पर लागू किए गए अनुकूलन का एक विस्तार है, सिवाय इसके कि अधिक लक्षित उत्पाद शर्तें और संभव अधिक उत्पाद घटक हैं जो हम उन शब्दों को प्राप्त करने के लिए उपयोग कर सकते हैं। 2x2 मैट्रिक्स के लिए, स्ट्रैसन के एल्गोरिथ्म में एक एल्गोरिथ्म मॉर्फ होता है, जिसमें 7 गुणा की आवश्यकता वाले 8 गुणन की आवश्यकता होती है, और वितरण गुण को एक ऑपरेशन में दो गुणा करने के लिए "मर्ज" करता है, और इसके बजाय एक निकालने के लिए नए "फैटर" नोड से दूर ले जाता है। उत्पाद शब्द या अन्य, आदि।

एक अच्छा उदाहरण: पाने के लिए (-1) और (2) और (5), आप इसके बारे में सिर्फ (-1), (2), (5) के बारे में सोच सकते हैं, या आप इस बारे में सोच सकते हैं (2-3 ), (2), (2 + 3)। दूसरे ऑपरेशन कम अलग संख्या का उपयोग करते हैं, हालांकि। पकड़ यह है कि विभिन्न संख्याओं की संख्या मैट्रिक्स गुणन के लिए आवश्यक उत्पाद घटकों की संख्या के बराबर है। हम बस इस के लिए अनुकूलन करते हैं कि अंतर्निहित संचालन का एक निश्चित दृश्य मिल जाए जो वितरण संपत्ति के माध्यम से एक भिन्न भिन्नता का उपयोग करके आइसोमोर्फिक आउटपुट का लाभ उठाता है।

शायद इसे किसी तरह टोपोलॉजी से जोड़ा जा सकता है? यह सिर्फ मेरे आम आदमी का तरीका है।

संपादित करें: यहां मेरे नोटों की एक तस्वीर है जो मैंने जटिल संख्या स्पष्टीकरण बनाने की प्रक्रिया में खींची थी:

जटिल संख्या भाग का पता लगाने के लिए कुछ नोट्स।

हमारी साइट का प्रयोग करके, आप स्वीकार करते हैं कि आपने हमारी Cookie Policy और निजता नीति को पढ़ और समझा लिया है।
Licensed under cc by-sa 3.0 with attribution required.