हां, मौजूदा मैट्रिक्स में एक नई पंक्ति जोड़ने के बाद कोई SVD अपघटन को अद्यतन कर सकता है।
सामान्य तौर पर यह " एक में जोड़ें " समस्या सूत्रीकरण रैंक वन अपडेट के रूप में जाना जाता है । यदि आप मामले में गहराई से देखना शुरू करना चाहते हैं तो @amoeba द्वारा " कुशल रैंक-दो अपडेट्स ऑफ एजेनवेल्यू डिकम्पोजिशन" पर उपलब्ध कराया गया MathOverflow लिंक एक बेहतरीन पहला कदम है; पहला पेपर आपके विशिष्ट प्रश्न का एक स्पष्ट समाधान प्रदान करता है। बस स्पष्ट करने के लिए क्या रैंक-एक और रैंक-दो मतलब हैं, ताकि आप उलझन में नहीं मिलता है, तो अपने नए है कि इस तरह है:A∗
A∗=A−uvT
जहां और v वैक्टर हैं तो आप इसे रैंक-वन अपडेट (या गड़बड़ी ) के रूप में संदर्भित करते हैं । इस अद्यतन का मूल शर्मन-मॉरिसन सूत्र द्वारा तय किया गया है। । यदि गड़बड़ी एक रैंक से अधिक है यानी।
ए - = ए - यू वी टीuv
A∗=A−UVटी
वुडबरी सूत्र खेलने में आता है। यदि आप इन सूत्रों को देखते हैं तो आप देखेंगे कि उलटा बहुत सारे हैं। आप सीधे इनका समाधान नहीं करते हैं। जैसा कि आप पहले से ही उनके सबसिस्टम का एक बड़ा सौदा पहले से ही हल कर चुके हैं (यानी आपके पास पहले से गणना की गई कुछ अपघटन है) आप इनका उपयोग तेज और / या अधिक स्थिर अनुमान प्राप्त करने के लिए करते हैं। (यही कारण है कि लोग अभी भी इस क्षेत्र पर शोध करते हैं।) मैंने जेई जेंटल द्वारा एक संदर्भ के रूप में " कम्प्यूटेशनल स्टेटिस्टिक्स " पुस्तक का उपयोग किया है ; मुझे लगता है कि अध्याय। 5 न्यूमेरिकल रैखिक बीजगणित आपको ठीक से स्थापित करेगा। (द यूबर-क्लासिक: " हार्वेस्टी द्वारा एक सांख्यिकीविद के दृष्टिकोण से मैट्रिक्स बीजगणित " अनजाने में रैंक अपडेट पर बिल्कुल भी स्पर्श नहीं करता है।)
चीजों के आंकड़ों / आवेदन पक्ष को देखते हुए, रेंक वन अपडेट रेकमेंडर सिस्टम में आम हैं क्योंकि किसी में हजारों ग्राहक प्रविष्टियां हो सकती हैं और एसवीडी (या उस मामले के लिए कोई भी अपघटन) को फिर से जोड़ सकते हैं) हर बार एक नया उपयोगकर्ता रजिस्टर या एक नया उत्पाद। जोड़ा या हटाया काफी बेकार है (यदि अप्राप्य नहीं है)। आमतौर पर सिफारिश करने वाला सिस्टम मैट्रस विरल होता है और यह एल्गोरिदम को और अधिक कुशल बनाता है। एक सुलभ पहला पेपर एम। ब्रांड द्वारा पांडुलिपि " हल्के ऑनलाइन एसवीडी संशोधन के लिए हल्का सिफारिशकर्ता सिस्टम " है। सघन मैट्रिसेस में जाने से मुझे लगता है कि पैटर्न रिकॉग्निशन और इमेजिंग प्रोसेसिंग के कागजात को देखने से आपको उपयोग करने के लिए वास्तविक एल्गोरिथ्म प्राप्त करने में काफी मदद मिल सकती है। उदाहरण के लिए कागजात:
- रेन और दाई द्वारा फेस रिकग्निशन (2009) के लिए द्विदिश प्रमुख घटकों का वृद्धिशील शिक्षण
- ली एट अल द्वारा वृद्धिशील और मजबूत सबस्पेस सीखने (2003) पर ।
- अनुक्रमिक करहुनेन-लोवे आधार निष्कर्षण और लीवे और लिंडेनबाम द्वारा छवियों (2000) के लिए इसके आवेदन ।
- रॉस एट अल द्वारा रोबस्ट विजुअल ट्रैकिंग (2007) के लिए वृद्धिशील शिक्षण ।
सभी अपने मूल में एक ही समस्या से निपटने लगते हैं; नई सुविधाएँ आ रही हैं और हमें अपने प्रतिनिधित्व को तेजी से अद्यतन करने की आवश्यकता है । ध्यान दें कि ये मैट्रेस सममित या चौकोर नहीं हैं। एम। ब्रांड का एक अन्य काम इस समस्या को भी हल कर सकता है (देखें कागज " पतले एकवचन मूल्य अपघटन का तेज़-रैंक संशोधन) (2006) " - यह पोस्ट की शुरुआत में दिए गए एमओ लिंक में भी उल्लेख किया गया है।) विषय पर बहुत सारे महान कागज हैं, लेकिन सबसे अधिक गणितीय हैं (उदाहरण के लिए, बेनेच-जॉर्जेस और नादकुदिती का पेपर) " बड़े आयताकार यादृच्छिक मेट्रिसेस (2012) के निम्न श्रेणी के गड़बड़ी के विलक्षण मान और वैक्टर") और मुझे नहीं लगता कि वे जल्द ही समाधान पाने में मदद करेंगे। मेरा सुझाव है कि आप इमेज प्रोसेसिंग साहित्य पर अपना ध्यान केंद्रित रखें।
दुर्भाग्य से मैं रैंक-वन अपडेट रूटीन के लिए किसी भी आर कार्यान्वयन में नहीं आया हूं। कम्प्यूटेशनल साइंस एसई से " पायथन, सी, या फोरट्रान में अपडेटेबल एसवीडी कार्यान्वयन " पर जवाब MATLAB और सी ++ कार्यान्वयन की एक संख्या देता है जिसे आप विचार करना चाह सकते हैं। आमतौर पर आर, पायथन आदि कार्यान्वयन सी, सी ++ या फोरट्रान कार्यान्वयन के आसपास के रैपर हैं।
rank 1 updates
। ब्रांड द्वारा लाइटवेट अनुशंसाकर्ता प्रणालियों के लिए फास्ट ऑनलाइन एसवीडी संशोधन एक सुलभ पहला पेपर है। मैं दुर्भाग्य से एसवीडी के लिए पहले से ही आर में लागू नहीं देखा था। चोलस्की अपडेट्स (updown
सेMatrix
) CHOLMOD की बदौलत मौजूद हैं । आपके मैट्रिक्स की विरलता वास्तव में आपके अंतिम समाधान के लिए एक अलग बना देगी; क्या आप एक सघन या विरल मैट्रिक्स मानते हैं?