คำถาม
ฉันสนใจวิธีการ Laplacian Eigenmaps มาก ขณะนี้ฉันกำลังใช้เพื่อทำการลดขนาดของชุดข้อมูลทางการแพทย์ของฉัน
อย่างไรก็ตามฉันพบปัญหาโดยใช้วิธีการ
ตัวอย่างเช่นฉันมีข้อมูลบางอย่าง (สัญญาณสเปกตรัม) และฉันสามารถใช้ PCA (หรือ ICA) เพื่อรับพีซี (หรือไอซี) บางอย่าง ปัญหาคือวิธีการรับมิติที่คล้ายกันลดองค์ประกอบของข้อมูลต้นฉบับโดยใช้ LE?
จากวิธีการของไอแลปแมชีทแลปเลียนเราจำเป็นต้องแก้ปัญหาค่าลักษณะเฉพาะทั่วไปซึ่งก็คือ
ที่นี่ เป็นไอเกนวีค ถ้าฉันพล็อตเช่น eigenvector 3 อันดับแรก (การแก้ปัญหาตาม 3 eigenvalues) ผลลัพธ์จะไม่สามารถตีความได้
อย่างไรก็ตามเมื่อฉันพล็อตพีซี 3 อันดับแรกและไอซี 3 อันดับแรกผลลัพธ์ดูเหมือนจะชัดเจน (มองเห็น) แสดงข้อมูลต้นฉบับ .
ฉันถือว่าเหตุผลเป็นเพราะเมทริกซ์ ถูกกำหนดโดยเมทริกซ์น้ำหนัก (Adjacency matrix ) และข้อมูล ได้รับการติดตั้งเคอร์เนลความร้อนเพื่อสร้าง ซึ่งใช้ฟังก์ชันเลขชี้กำลัง คำถามของฉันคือวิธีดึงส่วนประกอบที่ลดลงของ (ไม่ใช่ eigenvector ของเมทริกซ์ )?
ข้อมูล
ชุดข้อมูลของฉันถูก จำกัด และไม่ใช่เรื่องง่ายที่จะแสดงให้เห็นถึงปัญหา ที่นี่ฉันสร้างปัญหาของเล่นเพื่อแสดงสิ่งที่ฉันหมายถึงและสิ่งที่ฉันต้องการถาม
โปรดดูรูปภาพ,
ประการแรกฉันสร้างคลื่นไซน์ A, B, C แสดงเป็นเส้นโค้งสีแดง (คอลัมน์แรกของรูป) A, B และ C มีตัวอย่าง 1,000 รายการหรือบันทึกไว้ใน 1x1000 เวกเตอร์
ประการที่สองฉันผสมแหล่ง A, B, C โดยใช้ชุดค่าผสมเชิงเส้นที่สร้างขึ้นแบบสุ่มเช่น , ซึ่งใน เป็นค่าสุ่ม สัญญาณผสม อยู่ในพื้นที่มิติสูงมากเช่น 1517 ถูกสุ่มเลือกพื้นที่มิติสูง ฉันแสดงสัญญาณ M สามแถวแรกเท่านั้นในโค้งสีเขียว (คอลัมน์ที่สองของรูป)
ต่อไปฉันใช้ PCA, ICA และ Laplacian eigenmaps เพื่อรับผลการลดขนาด ฉันเลือกที่จะใช้พีซี 3 เครื่อง, 3 ICs และ 3 LE เพื่อทำการเปรียบเทียบอย่างยุติธรรม (เส้นโค้งสีน้ำเงินแสดงให้เห็นว่าเป็น 3, 4 และคอลัมน์สุดท้ายของรูปตามลำดับ)
จากผลลัพธ์ของ PCA และ ICA (คอลัมน์ที่ 3, 4 ของตัวเลข) เราจะเห็นว่าเราสามารถตีความผลลัพธ์เป็นการลดขนาดบางส่วนเช่นสำหรับผลลัพธ์ ICA เราสามารถกู้คืนสัญญาณแบบผสมโดย (ฉันไม่แน่ใจว่าเราจะได้ กับผลลัพธ์ PCA แต่ผลลัพธ์ดูเหมือนจะเหมาะสมสำหรับฉัน)
อย่างไรก็ตามโปรดดูที่ผลลัพธ์ของ LE ฉันแทบจะไม่สามารถตีความผลลัพธ์ได้ (คอลัมน์สุดท้ายของรูป) ดูเหมือนว่ามีบางอย่างผิดปกติกับส่วนประกอบที่ลดลง นอกจากนี้ฉันต้องการพูดถึงว่าในที่สุดพล็อตของคอลัมน์สุดท้ายคือ eigenvector ในสูตร
คุณมีความคิดเพิ่มเติมหรือไม่?
รูปที่ 1 ใช้ 12 เพื่อนบ้านที่ใกล้ที่สุดและซิกมาในเคอร์เนลการทำความร้อนคือ 0.5:
รูปที่ 2 ใช้ 1,000 เพื่อนบ้านที่ใกล้ที่สุดและซิกมาในเคอร์เนลการทำความร้อนคือ 0.5:
Sourcecode: รหัส Matlab พร้อมแพ็คเกจที่จำเป็น