เคอร์เนล PCA มีข้อดีเหนือกว่า PCA มาตรฐานอย่างไร


18

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

  1. ทำไมวิธีเคอร์เนล หรือประโยชน์ของวิธีการเคอร์เนลคืออะไร? จุดประสงค์ที่เข้าใจง่ายคืออะไร?

    มันสมมติว่าพื้นที่มิติที่สูงขึ้นมากเป็นจริงในปัญหาโลกแห่งความจริงและสามารถเปิดเผยความสัมพันธ์ที่ไม่เชิงเส้นในข้อมูลเมื่อเทียบกับวิธีการที่ไม่ใช่เคอร์เนล? ตามวัสดุวิธีการเคอร์เนลฉายข้อมูลลงในพื้นที่คุณลักษณะมิติสูง แต่พวกเขาไม่จำเป็นต้องคำนวณพื้นที่คุณลักษณะใหม่อย่างชัดเจน แต่ก็เพียงพอที่จะคำนวณเฉพาะผลิตภัณฑ์ภายในระหว่างรูปภาพของจุดข้อมูลทั้งหมดในพื้นที่คุณลักษณะ เหตุใดจึงต้องฉายลงในพื้นที่มิติที่สูงขึ้น

  2. ในทางตรงกันข้าม SVD ลดพื้นที่คุณสมบัติ ทำไมพวกเขาทำมันในทิศทางที่แตกต่างกัน? วิธีการเคอร์เนลค้นหาขนาดที่สูงขึ้นในขณะที่ SVD แสวงหามิติที่ต่ำกว่า สำหรับฉันมันฟังดูแปลก ๆ ที่จะรวมมันเข้าด้วยกัน จากบทความที่ฉันกำลังอ่าน ( Symeonidis et al. 2010 ) การแนะนำ Kernel SVD แทน SVD สามารถแก้ไขปัญหาการกระจัดกระจายในข้อมูลและปรับปรุงผลลัพธ์

ป้อนคำอธิบายรูปภาพที่นี่

จากการเปรียบเทียบในรูปเราจะเห็นว่า KPCA ได้รับ eigenvector ที่มีความแปรปรวนสูงกว่า (eigenvalue) มากกว่า PCA ฉันคิดว่า? เนื่องจากความแตกต่างที่ใหญ่ที่สุดของการประมาณค่าของจุดบน eigenvector (พิกัดใหม่) KPCA เป็นวงกลมและ PCA เป็นเส้นตรงดังนั้น KPCA จึงมีความแปรปรวนสูงกว่า PCA นั่นหมายความว่า KPCA ได้รับส่วนประกอบหลักสูงกว่า PCA หรือไม่


3
มีความคิดเห็นมากกว่าคำตอบ: KPCA คล้ายกับ Spectral Clustering มากในบางการตั้งค่ามันก็เหมือนกัน (ดูเช่นcirano.qc.ca/pdf/publication/2003s-19.pdf )

ขออภัยสำหรับการตอบกลับล่าช้า. ใช่คำตอบของคุณสว่างมาก
Tyler 傲来国主

คำตอบ:


24

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

ดูรูปนี้นำมาจากตำราเรียน "การจดจำรูปแบบและการเรียนรู้ของเครื่อง" ของบิชอป (รูปที่ 12.16):

kernel PCA จากหนังสือ ML ของ Bishop

จุดข้อมูลที่นี่ (ด้านซ้าย) ตั้งอยู่ส่วนใหญ่ตามแนวโค้งในแบบ 2D PCA ไม่สามารถลดมิติจากสองเป็นหนึ่งเนื่องจากจุดไม่อยู่ในแนวเส้นตรง แต่ถึงกระนั้นข้อมูลก็คือ "ชัดเจน" อยู่รอบ ๆ เส้นโค้งที่ไม่ใช่เชิงเส้นหนึ่งมิติ ดังนั้นในขณะที่ PCA ล้มเหลวจะต้องมีวิธีอื่น! และที่จริงแล้วเคอร์เนล PCA สามารถหาท่อร่วมที่ไม่เป็นเชิงเส้นนี้และพบว่าข้อมูลนั้นอยู่ในความจริงเกือบหนึ่งมิติ

มันทำได้โดยการแมปข้อมูลลงในพื้นที่มิติที่สูงขึ้น นี่อาจดูเหมือนขัดแย้ง (คำถามของคุณ # 2) แต่ไม่ใช่ ข้อมูลจะถูกแมปไปยังพื้นที่มิติที่สูงขึ้น แต่จากนั้นกลับกลายเป็นพื้นที่ย่อยของมิติที่ต่ำกว่า ดังนั้นคุณเพิ่มมิติเพื่อที่จะสามารถลดได้

สาระสำคัญของ "เคล็ดลับเคอร์เนล" คือไม่จำเป็นต้องพิจารณาพื้นที่มิติที่สูงขึ้นอย่างชัดเจนดังนั้นสิ่งนี้อาจทำให้เกิดความสับสนในมิติข้อมูลได้อย่างแท้จริง อย่างไรก็ตามความคิดยังคงเหมือนเดิม


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

ขอบคุณ @user ฉันเดาว่ามันขึ้นอยู่กับการใช้ PCA / kPCA ตัวอย่างเช่นหากนำไปใช้เป็นขั้นตอนการประมวลผลล่วงหน้าสำหรับการจำแนกประเภทการถดถอยหรืออัลกอริทึมการจัดกลุ่มบางอย่างสามารถตัดสินว่า PCA กับ kPCA ทำได้ดีเพียงใด
อะมีบาพูดว่า Reinstate Monica

1
ขอบคุณ @amoeba แต่ฉันเดาว่าสิ่งที่ฉันต้องการถามคือเหมือนที่คุณพูดถึงข้างต้นเราจำเป็นต้องใช้ kPCA เมื่อข้อมูลไม่เป็นเชิงเส้นแล้วใครจะรู้ได้อย่างไรว่าข้อมูลมีความไม่เป็นเชิงเส้นถ้าไม่ใช่ คุณลักษณะมากกว่า 3? เราไม่สามารถจินตนาการได้ว่าไม่ถึงขนาดนั้นแล้วมันก็เหมือนปัญหาไก่และไข่
Baktaawar

2
@Baktaawar หากคุณกำลังเรียนรู้ด้วยเครื่องอย่ามองภาพให้โมเดลของคุณเรียนรู้ด้วยตัวเอง โดยทั่วไปจะรวมขั้นตอน KPCA ในลูปการสุ่มตัวอย่างภายในของคุณอีกครั้งและทดสอบเคอร์เนลเป็นพารามิเตอร์รวมถึงเคอร์เนลเชิงเส้นและอื่น ๆ ที่คุณต้องการ / สามารถที่จะทดสอบได้
Firebug
โดยการใช้ไซต์ของเรา หมายความว่าคุณได้อ่านและทำความเข้าใจนโยบายคุกกี้และนโยบายความเป็นส่วนตัวของเราแล้ว
Licensed under cc by-sa 3.0 with attribution required.