पीसीए वास्तव में सिर्फ एक रोटेशन है। गंभीरता से, यह सब है: यह एक नए आधार पर डेटा को स्पिन करने का एक चतुर तरीका है। इस आधार में ऐसे गुण हैं जो इसे कई प्रक्रियाओं के लिए पूर्व-प्रसंस्करण कदम के रूप में उपयोगी बनाते हैं।
आधार अलंकारिक है । यह अविश्वसनीय रूप से उपयोगी है यदि आपकी विशेषताएं मल्टीकोलिनरिटी (दो या अधिक विशेषताएं रैखिक रूप से निर्भर हैं) प्रदर्शित करती हैं: पीसीए लगाने की गारंटी आपको एक आधार देने की है जहां यह अब कोई समस्या नहीं है। इस प्रक्रिया को प्रमुख घटक प्रतिगमन के रूप में जाना जाता है
आधार वैक्टर डेटा के प्रसार के संबंध में सार्थक कर रहे हैं: वे कर रहे हैं eigenvectors की सहप्रसरण मैट्रिक्स । यह दूसरी संपत्ति एक आयामी कमी तकनीक के रूप में पीसीए की प्रसिद्ध उपयोगिता को जन्म देती है: डेटा को घुमाने के बाद, कुल वैरिएंट के एक महत्वपूर्ण हिस्से से जुड़े आधार वैक्टर के एक सबसेट पर डेटा को प्रोजेक्ट करके एक कम आयामी प्रतिनिधित्व प्राप्त होता है जो (अक्सर) बनाए रखता है ( डेटा के अधिकांश) (दिलचस्प) संरचनात्मक गुण।
तो: क्या यह एक लर्निंग एल्गोरिथम है? यह एक दार्शनिक प्रश्न की तरह है। क्या कुछ सीखने के लिए एक एल्गोरिथ्म बनाता है? निश्चित रूप से पीसीए एक "पर्यवेक्षित" शिक्षण एल्गोरिथ्म नहीं है क्योंकि हम इसे लक्ष्य चर के साथ या इसके बिना कर सकते हैं, और हम आम तौर पर "अनसुनी" तकनीकों को क्लस्टरिंग के साथ जोड़ते हैं।
हां, पीसीए एक प्रीप्रोसेसिंग प्रक्रिया है। लेकिन इससे पहले कि आप इसे बंद लिखना कुछ पूरी तरह से के रूप में नहीं "सीखने", मैं तुम्हें निम्नलिखित पर विचार करना चाहते हैं: पीसीए कर सकते हैं सचमुच सहप्रसरण मैट्रिक्स के eigenvectors निकालकर किया जा सकता, लेकिन यह कैसे यह आम तौर पर व्यवहार में किया है नहीं है। संख्यात्मक रूप से समतुल्य और अधिक कम्प्यूटेशनल रूप से कुशल प्रक्रिया केवल डेटा के एसवीडी को लेना है । इसलिए, पीसीए एसवीडी का सिर्फ एक विशिष्ट अनुप्रयोग है, इसलिए यह पूछना कि क्या पीसीए एक शिक्षण एल्गोरिथ्म है वास्तव में पूछ रहा है कि क्या एसवीडी एक सीखने का एल्गोरिथ्म है।
अब, हालाँकि आप PCA को सीखने के एल्गोरिथम के रूप में लिखने में सहज महसूस कर सकते हैं, यहाँ आपको SVD के साथ ऐसा करने में कम सहज क्यों होना चाहिए: यह विषय मॉडलिंग और सहयोगी फ़िल्टरिंग के लिए आश्चर्यजनक रूप से शक्तिशाली तरीका है । एसवीडी के गुण जो इसे इन अनुप्रयोगों के लिए उपयोगी बनाते हैं, वे बिल्कुल वैसा ही गुण हैं जो इसे आयामी कमी (यानी पीसीए) के लिए उपयोगी बनाते हैं।
SVD eigendecomposition का एक सामान्यीकरण है, और वह भी SVD के विवश संस्करण के रूप में बेहद शक्तिशाली है। आप आसन्न मैट्रिक्स के eigenvectors को देखकर एक ग्राफ पर समुदाय का पता लगा सकते हैं , या ट्रांज़िशन मैट्रिक्स के eigenvectors को देखकर एक मार्कोव मॉडल की स्थिर-राज्य संभावनाओं को निर्धारित कर सकते हैं , जो संयोगवश यह भी आवश्यक है कि PageRank की गणना कैसे की जाती है।
हुड के तहत, पीसीए एक सरल रैखिक बीजगणित ऑपरेशन कर रहा है। लेकिन, यह बिल्कुल वही ऑपरेशन है जो बहुत सारे अनुप्रयोगों को रेखांकित करता है जो कि ज्यादातर लोग "मशीन लर्निंग" के लेबल को लागू करने पर सवाल नहीं उठाते। एल्गोरिदम के इस वर्ग को मैट्रिक्स फैक्टराइजेशन कहा जाता है , और यहां तक कि वर्ड 2vec जैसी परिष्कृत तकनीकों तक फैली हुई है : वास्तव में, आप वास्तव में वर्ड 2vec-जैसे परिणाम प्राप्त कर सकते हैं, केवल पीसीए को एक शब्द सह-ऑप्रेशन मैट्रिक्स में लागू करना । पीसीए के परिणामों के लिए एक और शब्द फिर से सामान्य करना, एक एम्बेडिंग है । Word2vec संभवतः एक एम्बेडिंग का सबसे प्रसिद्ध उदाहरण है, लेकिन एम्बेडिंग का निर्माण (बिचौलियों के रूप में) RNN में उपयोग किए गए एनकोडर-डिकोडर आर्किटेक्चर का एक महत्वपूर्ण घटक भी हैऔर जीएएन , जो कि अभी एमएल अनुसंधान के रक्तस्रावी किनारे हैं।
तो वापस अपने प्रश्न के लिए: पीसीए एक "मशीन लर्निंग एल्गोरिदम?" ठीक है, अगर यह नहीं है, तो आपको सहयोगी फ़िल्टरिंग, विषय मॉडलिंग, सामुदायिक पहचान, नेटवर्क केंद्रीयता और एम्बेडिंग मॉडल के बारे में भी कहने के लिए तैयार रहना चाहिए।
सिर्फ इसलिए कि यह सरल रैखिक बीजगणित है इसका मतलब यह नहीं है कि यह भी जादू नहीं है।