एसवीडी 50x50 मैट्रिक्स का सबसे बड़ा आइगनवेल्यू खोजने के लिए - क्या मैं महत्वपूर्ण मात्रा में समय बर्बाद कर रहा हूं?


13

मुझे एक प्रोग्राम मिला है जो उन सभी पर एकवचन-मूल्य के विघटन का प्रदर्शन करके कई वास्तविक सममित 50x50 मैट्रिसेस के सबसे बड़े आइगेनवेल्यू की गणना करता है। एसवीडी कार्यक्रम में एक अड़चन है।

क्या ऐसे एल्गोरिदम हैं जो सबसे बड़े ईजेनवल्यू को खोजने में बहुत तेज हैं, या इस हिस्से को बेहतर बनाने के लिए निवेश पर ज्यादा रिटर्न नहीं देंगे।


क्या आप अपने मैट्रिसेस पर कुछ और जानकारी दे सकते हैं, जैसे कि अगर उनकी संरचना के बारे में कुछ भी जाना जाता है, तो उनके आइजनवेल्स की रेंज या उनकी एक-दूसरे से समानता?
पेड्रो

यह एक सहसंयोजक मैट्रिक्स ( ) है। परीक्षण से पता चलता है कि सभी लेकिन 5 या इतने बड़े eigenvalues ​​शून्य के करीब हैं, और सबसे बड़ा eigenvalue दूसरे सबसे बड़े से कम से कम ~ 20% बड़ा है। चूँकि शून्य के करीब बहुत सारे आईजेनवेल्यूज़ हैं, मुझे लगता है कि सीमा महत्वपूर्ण नहीं है? इसे किसी भी रेंज में रखा जा सकता है। वर्तमान में मैं जिस पैमाने का उपयोग कर रहा हूं वह मुझे 150 ~ 200 की सीमा देता है। XXT
अन्ना

इसके अलावा, मैट्रिक्स बहुत बारीकी से एकवचन नहीं है, इसलिए एसवीडी समस्या अच्छी तरह से वातानुकूलित है।
अन्ना

चूंकि सममित और धनात्मक (अर्ध) है, इसलिए आप SVD के बजाय चोल्स्की फ़ैक्टरीकरण का उपयोग कर सकते हैं। चोल्स्की का कारकत्व एसवीडी से गणना करने के लिए बहुत कम फ्लॉप लेता है, लेकिन एक सटीक विधि होने के बाद भी फ्लॉप होता है। ( एन 3 )XXTO(n3)
केन

@ अन्ना: क्या आपने यहां प्रस्तावित कई दृष्टिकोणों में से किसी को आज़माया है? मुझे यह जानने के लिए काफी उत्सुकता होगी कि आपके लिए सबसे अच्छा काम क्या है ...
पेड्रो

जवाबों:


12

सबसे बड़ी प्रतिध्वनि के लिए आपको जिस सटीकता की आवश्यकता होती है, उसके आधार पर, आप पावर इरीटेशन का उपयोग करके देख सकते हैं ।

आपके विशिष्ट उदाहरण के लिए, मैं स्पष्ट रूप से नहीं बनाने के लिए , लेकिन प्रत्येक पुनरावृति में गणना करें । कम्प्यूटिंग को संचालन की आवश्यकता होगी जबकि मैट्रिक्स-वेक्टर उत्पाद को केवल । एक्स एक्स ( एक्स टी एक्स ) ( एन 3 ) ( एन 2 )A=XXTxX(XTx)AO(n3)O(n2)

अभिसरण की दर सबसे बड़े दो आइगेनवेल्स के बीच अलगाव पर निर्भर करती है, इसलिए यह सभी मामलों में एक अच्छा समाधान नहीं हो सकता है,


1
यदि सबसे बड़ा ईगेंवल्यू अगले की तुलना में 20% बड़ा है, तो पावर पुनरावृत्ति को बहुत तेज़ी से परिवर्तित करना चाहिए (प्रत्येक पुनरावृत्ति में 5/6 के कारक से अन्य सभी
ईजेनवेल्यूज़ खराब

2
क्रायलोव उप-विधि विधियां शक्ति विधियों की तुलना में कड़ाई से बेहतर हैं, क्योंकि उनमें समान पुनरावृत्तियों के साथ शक्ति पुनरावृत्ति से वेक्टर होता है।
जैक पॉल्सन

1
@JackPoulson: हाँ, लेकिन प्रत्येक पुनरावृत्ति गणना करने के लिए अधिक महंगा है ... क्या यह वास्तव में इस तरह की छोटी समस्या के लिए इसके लायक होगा?
पेड्रो

@Proro: बेशक, मैटवे को द्विघात कार्य की आवश्यकता होती है और रेलेह भागफल ईगेंस्विलेंस और बाद में विस्तार तुलना में तुच्छ होते हैं।
जैक पॉल्सन

1
कोड खर्च? चूंकि @JackPoulson ने इस मुद्दे को भुनाया, B. Parlett et al (1982) ("लैंसज़ो एल्गोरिथ्म के साथ सबसे बड़े आइगेनवेल्यू का अनुमान लगाने पर") पावर मेथड, पॉवर मेथड + Aitken त्वरण की तुलना करें, और लैंक्ज़ोस के एक एप्लिकेशन को एक वास्तविक के सबसे बड़े आइजनवेल को लक्षित करने वाला एप्लिकेशन सममित (या हर्मिटियन) स्थिति। डीईएफ़। आव्यूह। वे निष्कर्ष निकालते हैं कि लैंसजोस विधि अधिक कुशल है अगर मामूली सटीकता (दूसरे के सापेक्ष पहले प्रतिध्वनि) की जरूरत है, और गलतफहमी से बचने के लिए बेहतर है।
हार्डमैथ

5

यदि केवल 5 eigenvalues ​​बहुत महत्वपूर्ण हैं, तो मैट्रिक्स-वेक्टर के रूप में साथ लैंक्ज़ोस एल्गोरिथ्म को 5 प्रारंभिक चरणों के बाद तेजी से रैखिक अभिसरण देना चाहिए, इसलिए कुछ पुनरावृत्तियों के साथ एक बिल्कुल सटीक सबसे बड़ा eigenvalue।X(XTx)


क्या आप (@ArnoldNeumaier) कुछ इस तरह से सोच रहे हैं, जो सरलता से सरल ( ) है? यह दिलचस्प है कि यह लैंक्ज़ोस से एक अलग वेक्टर देता है अगर एक तीसरे वेक्टर को उसी क्रायलोव उप-स्थान पर रखा जाता है। B=T=I
हार्डमैथ

नहीं; मेरा मतलब था मानक Lanczsos एल्गोरिथ्म लेकिन जल्दी सीजी में लिखा था। अब सही किया गया।
अर्नोल्ड न्यूमैयर

4

जैसे एक सकारात्मक अर्ध-निश्चित मैट्रिक्स के लिए, यह स्पेक्ट्रम बदलाव के साथ अभिसरण में तेजी लाने के प्रयास के लायक हो सकता है । यह है कि, एक उपयुक्त अदिश चुना जाता है और बिजली की विधि के लिए लागू किया जाता है के बजाय ।A=XXTμAμIA

मूल शक्ति विधि के कुछ पुनरावृत्तियों आपको एक मोटा अनुमान देना चाहिएसबसे बड़े । प्रमुख प्रतिध्वनि मान लें कि गुणनफल 1 है और अन्य सभी , तो सबसे बड़ा eigenvalue और बाकी ।||Ax||/||x||λ1[0,56λ1]A512λ1I712λ1[512λ1,512λ1]

दूसरे शब्दों में, आप सबसे बड़े eigenvalue के प्रभुत्व को 20% से अगले सबसे बड़े से 40% से अधिक (अगले aigen) के सबसे बड़े (निरपेक्ष मान) से बढ़ा देंगे। विद्युत विधि का ज्यामितीय अभिसरण तदनुसार गति करेगा। एक बार का सबसे बड़ा पर्याप्त सटीकता के लिए मिला, का अनुमान शिफ्ट लगाया गया है जो दूर ले जाया गया था।λ 1 μAμIλ1μ

ध्यान दें कि आपको स्पष्ट रूप से की आवश्यकता नहीं है क्योंकि गणना अभी भी प्रयास से की जा सकती है।( A - μ I ) x = X ( X T x ) - μ x O ( n 2 )AμI(AμI)x=X(XTx)μxO(n2)


ऐसा लगता है कि दूसरे सबसे बड़े eigenvalue की भयावहता का एक अच्छा विचार होने की आवश्यकता है। ऐसे मामले में आप इसे कैसे समझेंगे?
पेड्रो

@Pedro: स्थानांतरित कर दिया शक्ति यात्रा को लागू करने ही के एक अनुमान की आवश्यकता है सबसे बड़ा eigenvalue , लेकिन साथ के रूप में unshifted बिजली विधि, विश्लेषण से पता चलता है अभिसरण की दर पर निर्भर करता है(पेट में फेंकना। मान जो हाथ के लिए अनावश्यक हैं। हाथ में अर्ध-निश्चित मामला)। बदले में अभिसरण की दरों का अनुमान लगाने के लिए उपयोग किया जा सकता है, और इसलिए का आकार के सापेक्ष वांछित है। मैं सुझाव दे रहा था कि अन्ना जैसे मामले में आपको क्या लाभ होगा, यह सवाल के नीचे की टिप्पणियों में वर्णित है। | λ 2 | / | λ 1 | | λ 2 | / | λ 1 | λ 2 λ 1λ1|λ2|/|λ1||λ2|/|λ1|λ2λ1
हार्डमैथ
हमारी साइट का प्रयोग करके, आप स्वीकार करते हैं कि आपने हमारी Cookie Policy और निजता नीति को पढ़ और समझा लिया है।
Licensed under cc by-sa 3.0 with attribution required.