5

में सबसे अधिक भिन्नता दिखाने वाले घटकों का चयन करना मेरे पास एक विशाल डेटा सेट (32000 * 2500) है जिसे मुझे प्रशिक्षण की आवश्यकता है। यह मेरे वर्गीकरण के लिए बहुत अधिक प्रतीत होता है, इसलिए मैंने आयामी कमी और विशेष रूप से पीसीए में कुछ पढ़ने का फैसला किया।पीसीए

मेरी समझ से, पीसीए वर्तमान डेटा का चयन करता है और उन्हें दूसरे (x, y) डोमेन/पैमाने पर दोहराता है। इन नए निर्देशांक का अर्थ कुछ भी नहीं है लेकिन एक धुरी अधिकतम भिन्नता देने के लिए डेटा को पुन: व्यवस्थित किया जाता है। इन नए गुणांक के बाद मैं न्यूनतम बदलाव वाले cooeff को छोड़ सकता हूं।

अब मैं इसे मैटलैब में लागू करने की कोशिश कर रहा हूं और प्रदान किए गए आउटपुट में परेशानी हो रही हूं। MatLab हमेशा पंक्तियों को चर के रूप में अवलोकन और कॉलम के रूप में मानता है। तो pca फ़ंक्शन में मेरा आउटपुट आकार (32000*2500) का मेरा मैट्रिक्स होगा। यह पीसीए गुणांक को 2500*2500 आकार के आउटपुट मैट्रिक्स में वापस कर देगा।

पीसीए राज्यों के लिए मदद:

coeff की प्रत्येक स्तंभ एक प्रमुख घटक के लिए गुणांक होता है, और स्तंभों घटक विचरण के अवरोही क्रम में कर रहे हैं।

इस आउटपुट में, कौन सा आयाम मेरे डेटा के अवलोकन है? मेरा मतलब है कि अगर मुझे क्लासिफायर को यह देना है, तो coeff की पंक्तियां मेरे डेटा अवलोकनों का प्रतिनिधित्व करती हैं या अब यह coeff का कॉलम है?

और मैं कम से कम भिन्नता वाले गुणांक को कैसे हटा सकता हूं?

उत्तर

5

(अस्वीकरण: यह एक लंबे समय के बाद से मैं matlab SciPy करने से बदल चुके हैं, लेकिन सिद्धांतों ही हैं।)

आप svd function

[U,S,V] = svd(X) 
तो

का उपयोग करते हैं के आयाम को कम करने X से k, आप V के पहले k कॉलम से गुणा करेंगे। matlab में, मेरा अनुमान है कि कि

X * V(:, 1: k); 

सिद्धांत के लिए Elements of Statistical Learning का संदर्भ लें है।

+0

यह सही है। अच्छा काम अमी। +1। – rayryeng

+0

@rayryeng :-) धन्यवाद! –

संबंधित मुद्दे