एसवीडी के पीछे अंतर्ज्ञान क्या है?


50

मैंने विलक्षण मूल्य अपघटन (SVD) के बारे में पढ़ा है। लगभग सभी पाठ्यपुस्तकों में यह उल्लेख किया गया है कि यह मैट्रिक्स को दिए गए विनिर्देशन के साथ तीन मैट्रीक में बदल देता है।

लेकिन ऐसे रूप में मैट्रिक्स को विभाजित करने के पीछे अंतर्ज्ञान क्या है? पीसीए और अन्य एल्गोरिदम आयामी कमी के लिए इस अर्थ में सहज हैं कि एल्गोरिथ्म में अच्छा दृश्य गुण है लेकिन एसवीडी के साथ ऐसा नहीं है।


4
आप eigenvalue-eigenvector अपघटन के अंतर्ज्ञान से शुरू करना चाहते हैं क्योंकि SVD सिर्फ वर्ग वाले के बजाय सभी प्रकार के मैट्रिस के लिए इसका एक विस्तार है।
जॉन्स

एसवीडी और इसके कामकाज के बारे में सीवी पर इंटरनेट और उत्तर पर बहुत सारे नोट हैं।
व्लादिस्लाव्स डोवलगेक्स

2
SVD को कम्प्रेशन / लर्निंग एल्गोरिथम के रूप में सोचा जा सकता है। यह एक लीनियर कम्प्रेशर डिकम्प्रेसर है। एक मैट्रिक्स एम को एसवीडी के गुणन द्वारा दर्शाया जा सकता है। S कंप्रेसर है V यह निर्धारित करता है कि आपके पास (हानिपूर्ण संपीड़न) के लिए कितनी त्रुटि होगी और डी डिकम्प्रेसर है। यदि आप V के सभी विकर्ण मान रखते हैं तो आपके पास एक दोषरहित कंप्रेसर है। यदि आप छोटे एकल मूल्यों (उन्हें शून्य करना) को फेंकना शुरू करते हैं, तो आप प्रारंभिक मैट्रिक्स को ठीक से फिर से संगठित नहीं कर सकते हैं लेकिन फिर भी करीब होंगे। यहां क्लोजर शब्द को फ्रोबेनियस मानदंड से मापा जाता है।
Cagdas Ozgenc

2
अगर आप ऐसा करते हैं तो कृपया ध्यान से परिभाषित करें कि आप "S" "V" और "D" को गणितीय रूप से परिभाषित कर रहे हैं। मैंने पहले नोटेशन को पहले ही ओवरलोडेड नहीं देखा है (जो कि इसमें एकवचन मान हैं, उदाहरण के लिए)। यह भ्रम की संभावना का स्रोत प्रतीत होता है,
ग्लेन_ब

3
क्या आप जानते हैं कि एसवीडी के साथ पीसीए का अनुमान कैसे लगाया जाता है? यदि आप करते हैं, तो क्या आप समझा सकते हैं कि आपको ऐसा क्यों लगता है कि एसवीडी की आपकी समझ में कुछ गायब है? देखें इस
Aksakal

जवाबों:


63

मैट्रिक्स के SVD लिखें (असली, ) के रूप में जहां है , विकर्ण है और है । मैट्रिसेस और के कॉलम के संदर्भ में हम । यह को रैंक -1 मेट्रिसेस की राशि के रूप में लिखा गया है । रैंक -1 मैट्रिक्स कैसा दिखता है? चलो देखते हैं: n × पी एक्स = यू डी वी टी यू एन × पी डी पी × पी वी टी पी × पी यू वी एक्स = Σ पी मैं = 1मैं यू मैं v टी मैं एक्स पी ( 1 2 3 ) ( 4 5 6 ) = ( 4 5 6 8 10 12 12 15Xn×p

X=UDVT
Un×pDp×pVTp×pUVX=i=1pdiuiviTXp
(123)(456)=(45681012121518)
पंक्तियाँ आनुपातिक हैं, और स्तंभ आनुपातिक हैं।

बारे में अब एक ब्लैक-एंड-वाइट छवि के ग्रेस्केल मानों के बारे में सोचें , मैट्रिक्स में प्रत्येक प्रविष्टि एक पिक्सेल का प्रतिनिधित्व करती है। उदाहरण के लिए एक बबून की निम्न तस्वीर:X

एक बबून की छवि

फिर इस छवि को आर में पढ़ें और परिणामी संरचना का मैट्रिक्स हिस्सा प्राप्त करें, शायद पुस्तकालय का उपयोग कर pixmap


यदि आप चरण-दर-चरण मार्गदर्शिका चाहते हैं कि परिणाम कैसे पुन: पेश करें, तो आप यहां कोड पा सकते हैं ।


SVD की गणना करें:

baboon.svd  <-  svd(bab) # May take some time

हम इस बारे में कैसे सोच सकते हैं? हम मिल लंगूर छवि की राशि के रूप में प्रतिनिधित्व , हर एक ही दिखा ऊर्ध्वाधर और क्षैतिज संरचना के साथ, सरल छवियों यानी यह ऊर्ध्वाधर और क्षैतिज धारियों की एक छवि है! तो, बाबून का एसवीडी सरल चित्रों के सुपरपोजिशन के रूप में बैबून छवि का प्रतिनिधित्व करता है , हर एक केवल क्षैतिज / ऊर्ध्वाधर पट्टियाँ दिखा रहा है। आइए और घटकों के साथ छवि के निम्न-रैंक पुनर्निर्माण की गणना करें :512 512 1 20512×512512512120

baboon.1  <-  sweep(baboon.svd$u[,1,drop=FALSE],2,baboon.svd$d[1],"*") %*%
                   t(baboon.svd$v[,1,drop=FALSE])

baboon.20 <-  sweep(baboon.svd$u[,1:20,drop=FALSE],2,baboon.svd$d[1:20],"*") %*%
                   t(baboon.svd$v[,1:20,drop=FALSE])

निम्नलिखित दो छवियों के परिणामस्वरूप:

रैंक एक और बाबून छवि के 20 पुनर्निर्माण रैंक

बाईं ओर हम रैंक -1 छवि में ऊर्ध्वाधर / क्षैतिज पट्टियों को आसानी से देख सकते हैं।

आइए हम अंत में "अवशिष्ट छवि" को देखें, सबसे निचले एकवचन मूल्यों के साथ रैंक-एक छवियों से पुनर्निर्मित छवि (ऊपर, कोड नहीं दिखाया गया है) । यह रहा:20

20 बबून पुनर्निर्माण से अवशेषों की छवि

जो काफी दिलचस्प है: हम मूल छवि के उन हिस्सों को देखते हैं जो ऊर्ध्वाधर / क्षैतिज रेखाओं के सुपरपोजिशन के रूप में प्रतिनिधित्व करना मुश्किल है, ज्यादातर विकर्ण नाक के बाल और कुछ बनावट, और आँखें!


11
मुझे लगता है कि आपका मतलब लो-रैंक रीकंस्ट्रक्शन है, न कि कम रेंज। कोई बात नहीं। यह एक बहुत अच्छा चित्रण (+1) है। यही कारण है कि यह एक रैखिक कंप्रेसर डीकंप्रेसर है। छवि लाइनों के साथ अनुमानित है। यदि आप वास्तव में रैखिक सक्रियण कार्यों के साथ एक तंत्रिका नेटवर्क के साथ एक समान ऑटोपेंसर करते हैं, तो आप वास्तव में देखेंगे कि यह किसी भी ढलान के साथ लाइनों को न केवल ऊर्ध्वाधर और क्षैतिज रेखाओं की अनुमति देता है, जो इसे SVD से थोड़ा अधिक शक्तिशाली बनाता है।
कागदस ओजेंक

@ Kjetil-बी-Halvorsen चाहिए SVD नहीं एक के लिए मैट्रिक्स में परिणाम जा रहा है , जा रहा है और जा रहा है ? लेखन त्रुटि है? n × पी एक्स यू एन × n Σ n × पी वी पी × पीX=UΣVn×pXUn×nΣn×pVp×p
मार्टिन क्रैमर

1
अन्य कुछ उदाहरणों के लिए math.stackexchange.com/questions/92171/… देखें
kjetil b halvorsen

@ kjetil-b-halvorsen मुझे यह जानने में दिलचस्पी है कि अगर मैं आवेदन को अस्वीकार करने के लिए पीसीए का उपयोग करता तो डिक्लेरेशन कैसे बदलता। अगर आप मेरे सवाल का जवाब दे सकते हैं, तो मैं इसकी सराहना करूंगा। आंकड़े
दुष्यंत कुमार

@CowboyTrader दिलचस्प अवलोकन। मशीन लर्निंग / न्यूरल नेटवर्क के बारे में मेरी समझ बहुत सीमित है। इसलिए, मैं यह समझने में असफल हूं कि अगर किसी के पास शोर करने वाली छवि है और उसे प्रशिक्षित करने के लिए और कुछ नहीं है, तो तंत्रिका नेटवर्क कैसे काम करेगा?
दुष्यंत कुमार

3

चलो एक वास्तविक होना मैट्रिक्स। मुझे लगता है कि सादगी के लिए । यह पूछने के लिए किस दिशा में स्वाभाविक है करता है सबसे अधिक प्रभाव (या सबसे स्फोटकता, या सबसे amplifying शक्ति) है। उत्तर है एक प्राकृतिक अनुवर्ती प्रश्न है, बाद , लिए अगली सबसे विस्फोटक दिशा क्या है ? उत्तर है Am×nmnvA

(1)v1=argmaxvRnAv2subject to v2=1.
v1A
v2=argmaxvRnAv2subject to v1,v=0,v2=1.
इस तरह जारी रखते हुए, हम एक orthonormal आधार of । का यह विशेष आधार हमें उन दिशाओं को बताता है, जो कुछ अर्थों में, को समझने के लिए सबसे महत्वपूर्ण हैं ।v1,,vnRnRnA

चलो (ताकि के विस्फोटक शक्ति quantifies दिशा में )। मान लीजिए कि यूनिट वैक्टर को परिभाषित किया गया है, तो समीकरण (2) संक्षेप के रूप में मैट्रिक्स संकेतन का उपयोग कर व्यक्त किया जा सकता जहां है मैट्रिक्स जिसका th स्तंभ है , है मैट्रिक्स जिसका वें कॉलम , औरσi=Avi2σiAviui

(2)Avi=σiuifor i=1,,n.
(3)AV=UΣ,
Vn×niviUm×niuiΣहै विकर्ण मैट्रिक्स जिसका th विकर्ण प्रविष्टि है । मैट्रिक्स ऑर्थोगोनल है, इसलिए हम को प्राप्त करने के लिए द्वारा दोनों पक्षों को (3) गुणा कर सकते हैं ऐसा प्रतीत हो सकता है कि हमने अब लगभग शून्य प्रयास के साथ का एसवीडी प्राप्त कर लिया है । अब तक कोई भी कदम मुश्किल में नहीं पड़ा है। हालांकि, तस्वीर का एक महत्वपूर्ण टुकड़ा गायब है - हमें अभी तक नहीं पता है कि ऑर्थोगोनल है।n×niσiVVT
A=UΣVT.
AU

यह पता चला है कि: यहाँ महत्वपूर्ण तथ्य, लापता टुकड़ा है के लिए ओर्थोगोनल है : मैं दावा है कि अगर यह सच नहीं थे, तो समस्या के लिए इष्टतम नहीं होगा (1)। वास्तव में, अगर (4) संतुष्ट नहीं थे, तो यह संभव हो सकता है में सुधार यह दिशा में एक सा perturbing द्वारा ।Av1Av2

(4)Av1,Av2=0.
v1 v1v2

मान लीजिए (एक विरोधाभास के लिए) कि (4) संतुष्ट नहीं है। यदि orthogonal दिशा में थोड़ा परेशान है , के आदर्श परिवर्तन नहीं करता है (या कम से कम, के आदर्श में परिवर्तन नगण्य है)। जब मैं पृथ्वी की सतह पर चलता हूं, तो पृथ्वी के केंद्र से मेरी दूरी नहीं बदलती है। हालांकि, जब दिशा में परेशान है , वेक्टर में परेशान कर रहा है गैर orthogonal दिशा , और इतने के आदर्श में परिवर्तन है गैर नगण्य । का मानदंडv1v2v1v1v1v2Av1Av2Av1Av1एक गैर-नगण्य राशि से बढ़ाया जा सकता है। इसका मतलब है कि समस्या (1) के लिए इष्टतम नहीं है, जो एक विरोधाभास है। मुझे यह तर्क पसंद है क्योंकि: 1) अंतर्ज्ञान बहुत स्पष्ट है; 2) अंतर्ज्ञान को एक कठोर प्रमाण में सीधे रूप में परिवर्तित किया जा सकता है।v1

इसी तरह के तर्क से पता चलता है कि और दोनों का ऑर्थोगोनल है , और इसी तरह। वैक्टर ऑर्थोगोनल हैं। इसका मतलब है कि इकाई वैक्टर जोड़ो में orthogonal, जो मैट्रिक्स का मतलब होने के लिए चुना जा सकता है के ऊपर एक orthogonal मैट्रिक्स है। यह एसवीडी की हमारी खोज को पूरा करता है।Av3Av1Av2Av1,,Avnu1,,unU


उपरोक्त सहज ज्ञान युक्त तर्क को एक कठोर प्रमाण में परिवर्तित करने के लिए, हमें इस तथ्य का सामना करना चाहिए कि यदि दिशा , तो perturbed वेक्टर सही मायने में एक इकाई वेक्टर नहीं है। (इसका मानक ।) कठोर प्रमाण प्राप्त करने के लिए, वेक्टर वास्तव में एक इकाई वेक्टर है। लेकिन जैसा कि आप आसानी से दिखा सकते हैं, अगर (4) संतुष्ट नहीं है, तो पर्याप्त छोटे मूल्यों के लिए हमारे पास (यह मानते हुए कि का चिन्हv1v2

v~1=v1+ϵv2
1+ϵ2
v¯1(ϵ)=1ϵ2v1+ϵv2.
v¯1(ϵ)ϵ
f(ϵ)=Av¯1(ϵ)22>Av122
ϵसही ढंग से चुना गया है)। यह दिखाने के लिए, बस उस । इसका मतलब है कि समस्या (1) के लिए इष्टतम नहीं है, जो एक विरोधाभास है।f(0)0v1

(वैसे, मैं यहाँ SVD के Qiaochu युआन के स्पष्टीकरण को पढ़ने की सलाह देता हूँ । विशेष रूप से, "की लेम्मा # 1" पर एक नज़र डालें, जिस पर हमने ऊपर चर्चा की है। जैसा कि क़ियाचू कहते हैं, कुंजी लेम्मा # 1 तकनीकी दिल है। एकवचन मूल्य अपघटन "।"


0

दोस्त आपके दिन का एक घंटा लेते हैं और इस व्याख्यान को देखते हैं: https://www.youtube.com/watch?v=EokL7E6o1AE

यह आदमी सुपर सीधे आगे है, यह महत्वपूर्ण है कि इसे किसी को भी न छोड़ें क्योंकि यह अंत में एक साथ आता है। यहां तक ​​कि अगर यह शुरुआत में थोड़ा धीमा लग सकता है, तो वह एक महत्वपूर्ण बिंदु को कम करने की कोशिश कर रहा है, जो वह करता है!

मैं आपको इसके लिए केवल तीन मैट्रिसेस देने के बजाय आपके लिए योग करूंगा (क्योंकि जब मैं अन्य विवरण पढ़ता हूं तो मुझे भ्रमित कर रहा था)। वे मैट्रिसेस कहां से आते हैं और हम इसे इस तरह सेट क्यों करते हैं? व्याख्यान यह नाखून! प्रत्येक मैट्रिक्स (कभी-कभी इतिहास में) का निर्माण एक आधार मैट्रिक्स से समान आयामों के साथ किया जा सकता है, फिर इसे घुमाएं, और इसे फैलाएं (यह रैखिक बीजगणित का मौलिक प्रमेय है)। उन तीन मैट्रिसेस लोगों में से प्रत्येक एक प्रारंभिक मैट्रिक्स (यू), ए स्केलिंग मैट्रिक्स (सिग्मा) और एक रोटेशन मैट्रिक्स (वी) का प्रतिनिधित्व करते हैं।

स्केलिंग मैट्रिक्स आपको दिखाता है कि कौन से घुमाव वाले वैक्टर हावी हो रहे हैं, इन्हें एकवचन मान कहा जाता है। अपघटन यू, सिग्मा और वी के लिए हल कर रहा है।

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