คำถามติดแท็ก pca

การวิเคราะห์องค์ประกอบหลัก (PCA) เป็นเทคนิคการลดขนาดเชิงเส้น จะช่วยลดชุดข้อมูลหลายตัวแปรให้เป็นชุดเล็ก ๆ ของตัวแปรที่สร้างขึ้นรักษาข้อมูลให้มากที่สุดเท่าที่จะเป็นไปได้ ตัวแปรเหล่านี้เรียกว่าองค์ประกอบหลักคือการรวมกันเชิงเส้นของตัวแปรอินพุต

1
จะเลือกเคอร์เนลสำหรับ kernel PCA ได้อย่างไร?
อะไรคือวิธีเลือกเคอร์เนลที่จะส่งผลให้มีการแยกข้อมูลที่ดีในเอาต์พุตข้อมูลขั้นสุดท้ายโดย kernel PCA (การวิเคราะห์องค์ประกอบหลัก) และวิธีใดที่จะปรับพารามิเตอร์ของเคอร์เนลให้เหมาะสม? เงื่อนไขของคนธรรมดาถ้าเป็นไปได้จะได้รับการชื่นชมอย่างมากและการเชื่อมโยงไปยังเอกสารที่อธิบายวิธีการดังกล่าวก็จะดี

3
เหตุใดเราจึงใช้ PCA เพื่อเพิ่มความเร็วในการเรียนรู้อัลกอริธึมเมื่อเราสามารถลดจำนวนฟีเจอร์ได้?
ในหลักสูตรการเรียนรู้ของเครื่องฉันได้เรียนรู้ว่าการใช้งานทั่วไปของ PCA ( การวิเคราะห์องค์ประกอบหลัก ) คือการเร่งความเร็วอัลกอริทึมการเรียนรู้ของเครื่อง ตัวอย่างเช่นสมมติว่าคุณกำลังฝึกอบรมโมเดลการถดถอยแบบโลจิสติกส์ หากคุณมีชุดฝึกอบรมสำหรับ i จาก 1 ถึง n และปรากฎมิติของเวกเตอร์ x ของคุณใหญ่มาก (สมมุติว่าส่วนหนึ่ง) คุณสามารถใช้ PCA เพื่อรับ ขนาดเล็กลง (สมมุติว่าขนาด k) เวกเตอร์ของคุณลักษณะ z จากนั้นคุณสามารถฝึกรูปแบบการถดถอยโลจิสติกของคุณในชุดฝึกอบรม( z ( i ) , y ( i )( x( i ), y( i ))(x(i),y(i))(x^{(i)},y^{(i)})สำหรับฉันตั้งแต่ 1 ถึง n การฝึกอบรมโมเดลนี้จะเร็วขึ้นเนื่องจากฟีเจอร์ของคุณมีขนาดน้อย( z( i ), y( i …

1
ขั้นตอนในการวิเคราะห์ปัจจัยเปรียบเทียบกับขั้นตอนที่ทำใน PCA
ฉันรู้วิธีดำเนินการ PCA (การวิเคราะห์องค์ประกอบหลัก) แต่ฉันต้องการทราบขั้นตอนที่ควรใช้สำหรับการวิเคราะห์ปัจจัย ในการดำเนินการ PCA ให้เราพิจารณาเมทริกซ์ตัวอย่างเช่นAAA 3 1 -1 2 4 0 4 -2 -5 11 22 20 ฉันได้คำนวณเมทริกซ์สหสัมพันธ์แล้วB = corr(A): 1.0000 0.9087 0.9250 0.9087 1.0000 0.9970 0.9250 0.9970 1.0000 จากนั้นฉันได้ทำการประเมินค่าการสลายตัวของ[V,D] = eig(B)ไอเคิล 0.5662 0.8209 -0.0740 0.5812 -0.4613 -0.6703 0.5844 -0.3366 0.7383 และค่าลักษณะเฉพาะ: 2.8877 0 0 0 0.1101 0 …

4
การเลือกรุ่น PCA โดยใช้ AIC (หรือ BIC)
ฉันต้องการใช้ Akaike Information Criterion (AIC) เพื่อเลือกจำนวนปัจจัยที่เหมาะสมในการแยก PCA ปัญหาเดียวคือฉันไม่แน่ใจว่าจะกำหนดจำนวนพารามิเตอร์ได้อย่างไร พิจารณาเมทริกซ์ที่หมายถึงจำนวนของตัวแปรและจำนวนของการสังเกตเช่นว่าขวา) ตั้งแต่เมทริกซ์ความแปรปรวนเป็นสมมาตรแล้วประมาณการความน่าจะเป็นสูงสุดของสามารถกำหนดจำนวนของพารามิเตอร์ใน AIC เท่ากับ{2}X N T X ∼ N ( 0 , Σ ) Σ N ( N + 1 )T×NT×NT\times NXXXNNNTTTX∼N(0,Σ)X∼N(0,Σ)X\sim \mathcal N\left(0,\Sigma\right)ΣΣ\SigmaN(N+1)2N(N+1)2\frac{N\left(N+1\right)}{2} อีกวิธีหนึ่งใน PCA คุณสามารถแยกeigenvectorและค่าลักษณะเฉพาะของแรกเรียกพวกเขาและแล้วคำนวณ โดยที่เป็นความแปรปรวนที่เหลือโดยเฉลี่ย โดยการนับของฉันถ้าคุณมีปัจจัยแล้วคุณจะพารามิเตอร์ใน ,พารามิเตอร์ในและพารามิเตอร์ใน{2}Σ β ฉ Λ ฉ Σ = β ฉ Λ ฉ β ' …

2
PCA และฟอเรสต์แบบสุ่ม
สำหรับการแข่งขัน Kaggle เมื่อเร็ว ๆ นี้ฉัน (กำหนดเอง) กำหนดคุณสมบัติเพิ่มเติมอีก 10 รายการสำหรับชุดการฝึกอบรมของฉันซึ่งจะใช้ในการฝึกอบรมตัวจําแนกป่าแบบสุ่ม ฉันตัดสินใจเรียกใช้ PCA บนชุดข้อมูลด้วยคุณสมบัติใหม่เพื่อดูว่าพวกเขาเปรียบเทียบกันอย่างไร ฉันพบว่าประมาณ 98% ของความแปรปรวนดำเนินการโดยองค์ประกอบแรก (eigenvector แรก) จากนั้นฉันฝึกตัวจําแนกหลายครั้งเพิ่มคุณสมบัติทีละรายการและใช้การตรวจสอบข้ามและข้อผิดพลาด RMS เพื่อเปรียบเทียบคุณภาพของการจําแนก ฉันพบว่าการจัดหมวดหมู่ได้รับการปรับปรุงด้วยคุณสมบัติเพิ่มเติมแต่ละรายการและผลลัพธ์สุดท้าย (พร้อมคุณสมบัติใหม่ทั้ง 10 รายการ) นั้นดีกว่าการเรียกใช้ครั้งแรกด้วย (พูด) คุณสมบัติ 2 อย่าง เนื่องจาก PCA อ้างว่า ~ 98% ของความแปรปรวนอยู่ในองค์ประกอบแรกของชุดข้อมูลของฉันทำไมคุณภาพของการจำแนกประเภทจึงพัฒนาขึ้นมาก สิ่งนี้จะเป็นจริงสำหรับตัวแยกประเภทอื่นหรือไม่ RF ปรับข้ามหลายคอร์ดังนั้นจึงเร็วกว่าในการฝึกอบรม (พูด) SVM ถ้าฉันแปลงชุดข้อมูลไปเป็นพื้นที่ "PCA" แล้วเรียกใช้ตัวจําแนกในพื้นที่แปลง ผลลัพธ์ของฉันจะเปลี่ยนแปลงอย่างไร

5
ฉันสามารถใช้ PCA เพื่อทำการเลือกตัวแปรสำหรับการวิเคราะห์กลุ่มได้หรือไม่
ฉันต้องลดจำนวนของตัวแปรเพื่อดำเนินการวิเคราะห์กลุ่ม ตัวแปรของฉันมีความสัมพันธ์อย่างมากดังนั้นฉันจึงคิดว่าจะทำการวิเคราะห์ปัจจัย PCA (การวิเคราะห์องค์ประกอบหลัก) อย่างไรก็ตามถ้าฉันใช้คะแนนผลลัพธ์กลุ่มของฉันไม่ถูกต้อง (เทียบกับการจำแนกประเภทก่อนหน้านี้ในวรรณคดี) คำถาม: ฉันสามารถใช้เมทริกซ์การหมุนเพื่อเลือกตัวแปรที่มีโหลดมากที่สุดสำหรับแต่ละส่วนประกอบ / ตัวประกอบและใช้เฉพาะตัวแปรเหล่านี้สำหรับการจัดกลุ่มของฉันได้หรือไม่ การอ้างอิงบรรณานุกรมใด ๆ ก็จะมีประโยชน์เช่นกัน ปรับปรุง: clarifiations บาง: เป้าหมายของฉัน: ฉันต้องเรียกใช้การวิเคราะห์กลุ่มด้วยอัลกอริทึมแบบสองขั้นตอนโดย SPSS แต่ตัวแปรของฉันไม่ได้เป็นอิสระดังนั้นฉันจึงคิดถึงการทิ้งบางอย่าง ชุดข้อมูลของฉัน: ฉันทำงานกับพารามิเตอร์สเกลาร์ 15 รายการ (ตัวแปรของฉัน) จำนวน 100,000 ราย ตัวแปรบางตัวมีความสัมพันธ์กันอย่างมาก ( Pearson)>0.9>0.9>0.9 ข้อสงสัยของฉัน: เนื่องจากฉันต้องการเพียงตัวแปรอิสระฉันจึงคิดว่าจะทำการวิเคราะห์องค์ประกอบหลัก (ขออภัย: ฉันพูดถึงการวิเคราะห์ปัจจัยในคำถามเดิมของฉันผิดพลาด) และเลือกเฉพาะตัวแปรที่มีการโหลดมากที่สุดสำหรับแต่ละองค์ประกอบ ฉันรู้ว่ากระบวนการ PCA นำเสนอบางขั้นตอนโดยพลการ แต่ฉันพบว่าการเลือกนี้คล้ายกับ " วิธี B4 " ที่เสนอโดย IT Jolliffe (1972 & 2002) …

2
ปัจจัย
ในการวิเคราะห์องค์ประกอบหลักองค์ประกอบหลักแรกคือทิศทางk orthogonal ที่มีความแปรปรวนสูงสุด กล่าวอีกนัยหนึ่งองค์ประกอบหลักตัวแรกถูกเลือกให้เป็นทิศทางของความแปรปรวนสูงสุดองค์ประกอบหลักที่สองถูกเลือกให้เป็นทิศทางมุมฉากไปยังทิศทางแรกกับความแปรปรวนสูงสุดและอื่น ๆkkkkkk มีการตีความที่คล้ายกันสำหรับการวิเคราะห์ปัจจัยหรือไม่ ตัวอย่างเช่นฉันคิดว่าปัจจัยแรกคือปัจจัยที่อธิบายองค์ประกอบนอกแนวทแยงของเมทริกซ์สหสัมพันธ์เดิมได้ดีที่สุด(ในแง่ของการพูดข้อผิดพลาดกำลังสองระหว่างเมทริกซ์สหสัมพันธ์เดิมและเมทริกซ์สหสัมพันธ์ที่กำหนดโดย ปัจจัย). นี่เป็นเรื่องจริง (หรือมีบางอย่างที่คล้ายกันที่เราสามารถพูดได้)?kkk

2
วิธีใช้การวิเคราะห์องค์ประกอบหลักเพื่อเลือกตัวแปรสำหรับการถดถอย
ฉันกำลังใช้การวิเคราะห์องค์ประกอบหลักเพื่อเลือกตัวแปรที่จะใช้ในการสร้างแบบจำลอง ในตอนนี้ฉันทำการวัด A, B และ C ในการทดลองของฉัน - สิ่งที่ฉันอยากรู้คือฉันสามารถทำการวัดน้อยลงและหยุดการบันทึก C และหรือ B เพื่อประหยัดเวลาและความพยายามได้หรือไม่? ฉันพบว่าตัวแปรทั้ง 3 ตัวโหลดอย่างหนักในองค์ประกอบหลักตัวแรกซึ่งคิดเป็น 60% ของความแปรปรวนในข้อมูลของฉัน คะแนนองค์ประกอบบอกฉันว่าถ้าฉันเพิ่มตัวแปรเหล่านี้เข้าด้วยกันในอัตราส่วนที่แน่นอน (aA + bB + cC) ฉันสามารถรับคะแนนบน PC1 สำหรับแต่ละกรณีในชุดข้อมูลของฉันและสามารถใช้คะแนนนี้เป็นตัวแปรในการสร้างแบบจำลอง แต่นั่นไม่อนุญาตให้ฉันหยุดการวัด B และ C ถ้าฉันยกกำลังสองของ A และ B และ C บน PC1 ฉันพบว่าตัวแปร A คิดเป็น 65% ของความแปรปรวนใน PC1 และตัวแปร B คิดเป็น 50% ของความแปรปรวนใน …

1
ความแตกต่างระหว่างการใช้งาน scikit-Learn ของ PCA และ TruncatedSVD
ฉันเข้าใจความสัมพันธ์ระหว่างการวิเคราะห์องค์ประกอบหลักและการสลายตัวของค่าเอกพจน์ในระดับพีชคณิต / แน่นอน คำถามของฉันเป็นเรื่องเกี่ยวกับการดำเนินงาน scikit เรียนรู้ เอกสารกล่าวว่า: " [TruncatedSVD] คล้ายกับ PCA มาก แต่ทำงานกับเวกเตอร์ตัวอย่างโดยตรงแทนที่จะเป็นเมทริกซ์ความแปรปรวนร่วม " ซึ่งจะสะท้อนความแตกต่างพีชคณิตระหว่างทั้งสองวิธี อย่างไรก็ตามภายหลังได้กล่าวว่า: " ตัวประมาณนี้ [TruncatedSVD] รองรับสองอัลกอริทึม: ตัวแก้ SVD แบบสุ่มที่รวดเร็วและอัลกอริทึม“ ไร้เดียงสา” ที่ใช้ ARPACK เป็น eigensolver บน (X * XT) หรือ (XT * X) มีประสิทธิภาพ ". เกี่ยวกับPCAมันบอกว่า: "การลดขนาดเชิงเส้นโดยใช้การแยกส่วนประกอบของข้อมูลเพื่อฉายภาพ ... " และการติดตั้ง PCA รองรับสองอัลกอริทึม (สุ่มและ ARPACK) ตัวแก้ปัญหาบวกอีกหนึ่ง LAPACK เมื่อมองดูโค้ดฉันจะเห็นว่าทั้ง …
12 pca  scikit-learn  svd  scipy 

2
จะทำการตรวจสอบความถูกต้องข้ามสำหรับ PCA เพื่อกำหนดจำนวนขององค์ประกอบหลักได้อย่างไร
ฉันกำลังพยายามเขียนฟังก์ชั่นของตัวเองสำหรับการวิเคราะห์องค์ประกอบหลัก PCA (แน่นอนมีหลายอย่างที่เขียนไปแล้ว แต่ฉันแค่สนใจที่จะใช้สิ่งต่าง ๆ ด้วยตัวเอง) ปัญหาหลักที่ฉันพบคือขั้นตอนการตรวจสอบข้ามและการคำนวณผลรวมของสี่เหลี่ยมที่คาดการณ์ไว้ (PRESS) มันไม่สำคัญว่าฉันจะใช้การตรวจสอบข้ามซึ่งเป็นคำถามส่วนใหญ่เกี่ยวกับทฤษฎีที่อยู่เบื้องหลัง แต่พิจารณาการตรวจสอบความถูกต้องแบบข้ามครั้งเดียว (LOOCV) จากทฤษฎีฉันพบว่าในการดำเนินการ LOOCV คุณต้อง: ลบวัตถุ ขนาดที่เหลือ ดำเนินการ PCA ด้วยองค์ประกอบจำนวนหนึ่ง ปรับขนาดวัตถุที่ถูกลบตามพารามิเตอร์ที่ได้รับใน (2) ทำนายวัตถุตามโมเดล PCA คำนวณ PRESS สำหรับวัตถุนี้ ปฏิบัติขั้นตอนวิธีเดียวกันกับวัตถุอื่นอีกครั้ง สรุปค่า PRESS ทั้งหมด กำไร เนื่องจากฉันใหม่มากในฟิลด์เพื่อให้แน่ใจว่าฉันถูกต้องฉันเปรียบเทียบผลลัพธ์กับผลลัพธ์จากซอฟต์แวร์บางตัวที่ฉันมี (เพื่อเขียนโค้ดบางตัวฉันทำตามคำแนะนำในซอฟต์แวร์) ฉันได้ผลลัพธ์เดียวกันทั้งหมดโดยคำนวณผลรวมที่เหลือของกำลังสองและแต่การคำนวณ PRESS เป็นปัญหาR2R2R^2 คุณช่วยบอกฉันหน่อยได้ไหมว่าสิ่งที่ฉันใช้ในขั้นตอนการตรวจสอบข้ามถูกต้องหรือไม่: case 'loocv' % # n - number of objects % # p - …

4
การแสดง PCA ด้วยเมทริกซ์ระยะทางเท่านั้น
ฉันต้องการจัดกลุ่มชุดข้อมูลขนาดใหญ่ที่ฉันมีระยะทางแบบคู่เท่านั้น ฉันใช้อัลกอริทึม k-medoids แต่ใช้เวลานานเกินไปที่จะเรียกใช้ดังนั้นฉันต้องการเริ่มต้นด้วยการลดมิติของปัญหาโดยใช้ PCA อย่างไรก็ตามวิธีเดียวที่ฉันรู้ในการทำวิธีนี้คือการใช้เมทริกซ์ความแปรปรวนร่วมที่ฉันไม่ได้มีในสถานการณ์ของฉัน มีวิธีในการใช้ PCA ที่รู้ระยะทางแบบคู่เท่านั้นหรือไม่

2
PCA มีความโดดเด่นหรือไม่?
เมื่อฉันเรียกใช้ PCA ในชุดข้อมูลบางอย่างฉันจะได้รับโซลูชันที่ไม่ซ้ำกันหรือไม่ นั่นคือฉันได้รับชุดพิกัด 2d ตามระยะทางระหว่างจุด เป็นไปได้หรือไม่ที่จะหาจุดจัดเรียงอย่างน้อยหนึ่งจุดที่จะตรงตามข้อ จำกัด เหล่านี้? หากคำตอบคือใช่ฉันจะหาวิธีแก้ปัญหาที่แตกต่างได้อย่างไร
12 pca 

4
วิธีการ PCA สำหรับข้อมูลมิติสูงมาก?
ในการทำการวิเคราะห์องค์ประกอบหลัก (PCA) คุณต้องลบค่าเฉลี่ยของแต่ละคอลัมน์ออกจากข้อมูลคำนวณเมทริกซ์สัมประสิทธิ์สหสัมพันธ์แล้วหาค่า eigenvectors และค่าลักษณะเฉพาะ ทีนี้, นี่คือสิ่งที่ฉันทำเพื่อนำไปใช้ใน Python, ยกเว้นมันจะทำงานกับเมทริกซ์เล็ก ๆ เท่านั้นเพราะวิธีการหาเมทริกซ์สัมประสิทธิ์สหสัมพันธ์ (corrcoef) ไม่ให้ฉันใช้อาร์เรย์ที่มีมิติสูง เนื่องจากฉันต้องใช้มันสำหรับรูปภาพการใช้งานปัจจุบันของฉันจึงไม่ช่วยฉันจริงๆ ฉันได้อ่านว่ามันเป็นไปได้ที่จะใช้เวลาเพียงแค่ข้อมูลเมทริกซ์ของคุณและคำนวณแทนD ^ \ D ด้านบน / nแต่ที่ไม่ทำงานสำหรับฉัน ดีฉันไม่แน่ใจอย่างแน่นอนว่าฉันเข้าใจความหมายของมันนอกเหนือจากข้อเท็จจริงที่ว่ามันควรจะเป็นเมทริกซ์n \ times nแทนที่จะเป็นp \ times p (ในกรณีของฉันp \ gg n ) ฉันอ่านเกี่ยวกับบทเรียนเหล่านี้ใน eigenfaces แต่ดูเหมือนว่าไม่มีใครอธิบายได้ในแบบที่ฉันจะได้รับD D ⊤ / n D ⊤ D / n n × n P × …
12 pca  python 

3
มีค่าใดในการลดมิติข้อมูลของชุดข้อมูลที่ตัวแปรทั้งหมดมีค่าประมาณมุมฉากหรือไม่?
สมมติว่าฉันมีชุดข้อมูล -dimensional ซึ่งมีมิติอยู่มุมฉาก (มีความสัมพันธ์เป็นศูนย์)Nยังไม่มีข้อความNNยังไม่มีข้อความNN มีประโยชน์ใด ๆ ในแง่ของ: การแสดง การแสดง (เพื่อประสิทธิภาพลักษณนาม) หรือเกณฑ์อื่น ๆ ทำการลดขนาดข้อมูลได้อย่างไร?

1
อะไรคือความแตกต่างระหว่าง "การบรรทุก" และ "การโหลดความสัมพันธ์" ใน PCA และ PLS
สิ่งหนึ่งที่ต้องทำเมื่อทำการวิเคราะห์ส่วนประกอบหลัก (PCA) คือการพล็อตการโหลดสองครั้งต่อกันเพื่อตรวจสอบความสัมพันธ์ระหว่างตัวแปร ในกระดาษที่มาพร้อมกับแพคเกจ PLS Rสำหรับการทำส่วนประกอบหลักการถดถอยและการถดถอย PLS มีพล็อตที่แตกต่างกันที่เรียกว่าพล็อตโหลดความสัมพันธ์ (ดูรูปที่ 7 และหน้า 15 ในกระดาษ) การโหลดความสัมพันธ์ตามที่อธิบายไว้คือความสัมพันธ์ระหว่างคะแนน (จาก PCA หรือ PLS) และข้อมูลที่สังเกตได้จริง สำหรับฉันแล้วการโหลดและความสัมพันธ์มีความคล้ายคลึงกันยกเว้นว่าอัตราส่วนจะถูกปรับให้แตกต่างกันเล็กน้อย ตัวอย่างที่ทำซ้ำได้ใน R พร้อมกับชุดข้อมูล mtcars ในตัวมีดังนี้: data(mtcars) pca <- prcomp(mtcars, center=TRUE, scale=TRUE) #loading plot plot(pca$rotation[,1], pca$rotation[,2], xlim=c(-1,1), ylim=c(-1,1), main='Loadings for PC1 vs. PC2') #correlation loading plot correlationloadings <- cor(mtcars, pca$x) plot(correlationloadings[,1], …

โดยการใช้ไซต์ของเรา หมายความว่าคุณได้อ่านและทำความเข้าใจนโยบายคุกกี้และนโยบายความเป็นส่วนตัวของเราแล้ว
Licensed under cc by-sa 3.0 with attribution required.