एक आयताकार घने मैट्रिक्स का नल-स्थान


16

एक घने मैट्रिक्स को देखते हुए क्या सबसे अच्छा तरीका है कुछ सहिष्णुता के भीतर अपनी अशक्त अंतरिक्ष आधार मिल रहा है ε ?

ARm×n,m>>n;max(m)100000
ϵ

उस आधार के आधार पर मैं तो कह सकते हैं कि कुछ कॉलम रैखिक भीतर निर्भर कर रहे हैं ? दूसरे शब्दों में, अशक्त अंतरिक्ष आधार गणना की हो रही है, किस के कॉलम एक आदेश व्युत्क्रमणीय मैट्रिक्स प्राप्त करने के लिए हटाया जा करने के लिए है?ϵA

संदर्भ की सराहना की है।

जवाबों:


12

मैट्रिक्स के अशक्त स्थान को निर्धारित करने के लिए मानक तरीके क्यूआर अपघटन या एसवीडी का उपयोग करते हैं। यदि सटीकता सर्वोपरि है, तो एसवीडी को प्राथमिकता दी जाती है; क्यूआर अपघटन तेज है।

, SVD का उपयोग करता है, तो , तो के स्तंभों वी छोटे विलक्षण मूल्यों (यानी, के छोटे विकर्ण प्रविष्टियों के लिए इसी Σ ) अशक्त अंतरिक्ष के लिए एक आधार बनाते हैं। यहां प्रासंगिक सहिष्णुता वह है जो एक "छोटा" एकवचन मूल्य मानता है। MATLAB उदाहरण के तौर पर होना करने के लिए छोटा सा लेता अधिकतम ( मीटर , n ) ε , जहां ε मशीन सटीकता से संबंधित है (देखें MATLAB के दस्तावेज में यहाँ )।A=UΣVHVΣmax(m,n)εε

QR अपघटन का उपयोग करना, अगर , और के पद एक है आर , तो पिछले एन - आर के स्तंभों क्यू अप की nullspace बनाने के एक , यह सोचते हैं कि QR अपघटन रैंक खुलासा है। निर्धारित करने के लिए आर , के मुख्य विकर्ण पर प्रविष्टियों की संख्या की गणना आर जिसका परिमाण एक सहिष्णुता (SVD दृष्टिकोण में इस्तेमाल किया है कि के समान) से अधिक है।AT=QRArnrQArR

LU अपघटन का उपयोग न करें। सटीक अंकगणित में, यह एक व्यवहार्य दृष्टिकोण है, लेकिन फ्लोटिंग पॉइंट अंकगणित के साथ, संख्यात्मक त्रुटियों का संचय इसे गलत बनाता है।

विकिपीडिया यहाँ इन विषयों को शामिल करता है


ज्योफ, क्यूआर के संदर्भ में बात करते हुए, मान लें कि मेरे पास अपघटन है, तो मैं मूल मैट्रिक्स में अशक्त अंतरिक्ष आधार और स्तंभों से कैसे संबंधित हूं? दूसरे शब्दों में, अशक्त स्थान से छुटकारा पाने के लिए मुझे से कौन से कॉलम हटाने चाहिए ? यहां बात ए के साथ काम करने की है न कि उसके अपघटन से। AA
अलेक्जेंडर

सामान्य रूप से क्यूआर अपघटन की गणना करने वाले रूटीन में एक क्रमचय वेक्टर वापस करने का एक विकल्प शामिल होता है जो दर्शाता है कि कैसे स्तंभों को क्यूआर फैक्टराइजेशन प्राप्त करने की अनुमति है। उस क्रमपरिवर्तन सदिश की अंतिम प्रविष्टियाँ A की पंक्तियों ( A T के स्तंभ ) के अनुरूप होंगी जो कि नल क्षेत्र में हैं। उस सदिश की पहली r प्रविष्टियाँ A T के स्तंभों से मेल खाती हैं जो रैखिक रूप से स्वतंत्र हैं। मुझे यकीन नहीं है कि आप "शून्य स्थान से छुटकारा" से क्या मतलब है। क्या आपका मतलब है कि आप एक nonsingular मैट्रिक्स प्राप्त करने के लिए A के कॉलम हटाना चाहते हैं ? nrAATrATA
ज्योफ ऑक्सीबेरी

हां, मेरा मतलब है कि। मैं क्रमपरिवर्तन पर देखूंगा, धन्यवाद।
अलेक्जेंडर

यह एक अलग सवाल है। इसके बाद आप क्या करेंगे इसके बजाय के QR अपघटन (या SVD) की गणना करें । आप में से QR अपघटन की गणना तो एक है, तो आप के पद गणना कर सकते हैं एक पहले से ऊपर (मैट्रिक्स स्थानांतरित करने के लिए कोई जरूरत नहीं) जवाब में के रूप में, और उसके बाद आर प्रविष्टियों (जहां आर के पद है एक क्रमचय वेक्टर अनुरूप की) A के स्वतंत्र कॉलम में । एल्गोरिथ्म का एक ही प्रकार एसवीडी पर लागू होता है; यदि आप अपघटन के साथ एक क्रमचय वेक्टर वापस कर सकते हैं, तो आवश्यक जानकारी प्रदान करनी चाहिए। AAArrAA
बजे ज्योफ ऑक्सीबेरी

8

यदि , के रूप में अपने प्रश्न को इंगित करता है, तो आप कुछ काम पहले एक सूचकांक उठा द्वारा बचा सकता है सेट मैं के पी 5 एन (माना) यादृच्छिक पंक्तियों और orthogonal गुणन का उपयोग कर एक टी मैं : = क्यू आर । (QR-गुणन एक जहाँ है क्यू sqare है और आर रैंक के आयताकार है आर , और शेष एन - आर के स्तंभों आर शून्य हैं एक permuted क्यूआर गुणन का उपयोग स्थिरता में वृद्धि होगी; क्रमचय तो एक में माना जा सकता है। अधिक विस्तृत नुस्खा।)mnIp5nAI:T=QRQRrnrR

आमतौर पर, यह आपको कॉलम, Q के अंतिम n - r कॉलम द्वारा फैलाए गए बहुत कम आयामी उप-स्थान देगा । इस उप-स्थान में A का रिक्त स्थान है । अब एक और चुनें, रैंडम इंडेक्स सेट को डिसऑइंट करें और ( I : N ) T के क्यूआर फैक्टराइजेशन की गणना करें । संभवत: कम आयाम के एक बेहतर एन प्राप्त करने के लिए एन द्वारा बाईं ओर परिणामस्वरूप रिक्त स्थान को गुणा करें । तब तक Iterate करें जब तक N का आयाम कम न हो जाए। तब आपके पास संभवत: सही अशक्त स्थान होगा और A N की गणना करके जांच कर सकते हैंNnrQA(AI:N)TNNNAN। यदि यह अभी तक नगण्य नहीं है, तो सबसे महत्वपूर्ण पंक्तियों के साथ पुनरावृत्तियों को करें।

संपादित करें: एक बार जब आपके पास , तो आप धुरी के साथ एन टी = क्यू आर के ऑर्थोगोनल फैक्टराइजेशन द्वारा ए के अधिकतम स्वतंत्र स्तंभों का एक अधिकतम सेट जे पा सकते हैं । वास्तव में, पिसेट के रूप में चुने गए सूचकांकों के सेट J में यह संपत्ति नहीं होगी।NJANT=QRJ


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

वास्तव में, यह उचित लगता है, हालांकि मेरे मैट्रिस 16 जीबी रैम में फिट होते हैं, इसलिए मैं मानक मैटलैब क्यूआर के साथ रहूंगा।
अलेक्जेंडर

प्रो Neumaier, मैं परीक्षण है कि एल्गोरिथ्म करने का फैसला किया है, लेकिन मुझे समझ नहीं आता कि वास्तव में क्या है और क्या "की क्यूआर गुणन की गणना करता है ( एक मैं : एन ) टी " मतलब? क्या आप कृपया थोड़ा और समझा सकते हैं। N(AI:N)T
अलेक्जेंडर

मैंने अपने उत्तर को थोड़ा संपादित किया। की गणना ज्योफ ऑक्सीबेरी के नुस्खा द्वारा की जाती है। N
अर्नोल्ड न्यूमैयर

धन्यवाद। मैंने इसे लागू किया। लेकिन, जैसा कि जहाँ तक मैं देख, इस एल्गोरिथ्म मेरे रैखिक स्वतंत्र कॉलम का समूह को परिभाषित करने की अनुमति नहीं है (के बाद से हम विघटित एक टी मैं : के बजाय एक मैं : ), लेकिन सिर्फ nullspace आधार ही अनुमान लगाने के लिए मदद करता है? AAI:TAI:
अलेक्जेंडर
हमारी साइट का प्रयोग करके, आप स्वीकार करते हैं कि आपने हमारी Cookie Policy और निजता नीति को पढ़ और समझा लिया है।
Licensed under cc by-sa 3.0 with attribution required.