PCA, ICA และ Laplacian eigenmaps


11

คำถาม

ฉันสนใจวิธีการ Laplacian Eigenmaps มาก ขณะนี้ฉันกำลังใช้เพื่อทำการลดขนาดของชุดข้อมูลทางการแพทย์ของฉัน

อย่างไรก็ตามฉันพบปัญหาโดยใช้วิธีการ

ตัวอย่างเช่นฉันมีข้อมูลบางอย่าง (สัญญาณสเปกตรัม) และฉันสามารถใช้ PCA (หรือ ICA) เพื่อรับพีซี (หรือไอซี) บางอย่าง ปัญหาคือวิธีการรับมิติที่คล้ายกันลดองค์ประกอบของข้อมูลต้นฉบับโดยใช้ LE?

จากวิธีการของไอแลปแมชีทแลปเลียนเราจำเป็นต้องแก้ปัญหาค่าลักษณะเฉพาะทั่วไปซึ่งก็คือ

Ly=λDy

ที่นี่ yเป็นไอเกนวีค ถ้าฉันพล็อตเช่น eigenvector 3 อันดับแรก (การแก้ปัญหาตาม 3 eigenvalues) ผลลัพธ์จะไม่สามารถตีความได้

อย่างไรก็ตามเมื่อฉันพล็อตพีซี 3 อันดับแรกและไอซี 3 อันดับแรกผลลัพธ์ดูเหมือนจะชัดเจน (มองเห็น) แสดงข้อมูลต้นฉบับ x.

ฉันถือว่าเหตุผลเป็นเพราะเมทริกซ์ L ถูกกำหนดโดยเมทริกซ์น้ำหนัก (Adjacency matrix W) และข้อมูล x ได้รับการติดตั้งเคอร์เนลความร้อนเพื่อสร้าง Wซึ่งใช้ฟังก์ชันเลขชี้กำลัง คำถามของฉันคือวิธีดึงส่วนประกอบที่ลดลงของx (ไม่ใช่ eigenvector y ของเมทริกซ์ L)?


ข้อมูล

ชุดข้อมูลของฉันถูก จำกัด และไม่ใช่เรื่องง่ายที่จะแสดงให้เห็นถึงปัญหา ที่นี่ฉันสร้างปัญหาของเล่นเพื่อแสดงสิ่งที่ฉันหมายถึงและสิ่งที่ฉันต้องการถาม

โปรดดูรูปภาพ,

ประการแรกฉันสร้างคลื่นไซน์ A, B, C แสดงเป็นเส้นโค้งสีแดง (คอลัมน์แรกของรูป) A, B และ C มีตัวอย่าง 1,000 รายการหรือบันทึกไว้ใน 1x1000 เวกเตอร์

ประการที่สองฉันผสมแหล่ง A, B, C โดยใช้ชุดค่าผสมเชิงเส้นที่สร้างขึ้นแบบสุ่มเช่น M=r1A+r2B+r3C, ซึ่งใน r1,r2,r3เป็นค่าสุ่ม สัญญาณผสมM อยู่ในพื้นที่มิติสูงมากเช่น MR1517×10001517 ถูกสุ่มเลือกพื้นที่มิติสูง ฉันแสดงสัญญาณ M สามแถวแรกเท่านั้นในโค้งสีเขียว (คอลัมน์ที่สองของรูป)

ต่อไปฉันใช้ PCA, ICA และ Laplacian eigenmaps เพื่อรับผลการลดขนาด ฉันเลือกที่จะใช้พีซี 3 เครื่อง, 3 ICs และ 3 LE เพื่อทำการเปรียบเทียบอย่างยุติธรรม (เส้นโค้งสีน้ำเงินแสดงให้เห็นว่าเป็น 3, 4 และคอลัมน์สุดท้ายของรูปตามลำดับ)

จากผลลัพธ์ของ PCA และ ICA (คอลัมน์ที่ 3, 4 ของตัวเลข) เราจะเห็นว่าเราสามารถตีความผลลัพธ์เป็นการลดขนาดบางส่วนเช่นสำหรับผลลัพธ์ ICA เราสามารถกู้คืนสัญญาณแบบผสมโดย M=b1IC1+b2IC2+b3IC3 (ฉันไม่แน่ใจว่าเราจะได้ M=a1PC1+a2PC2+a3PC3 กับผลลัพธ์ PCA แต่ผลลัพธ์ดูเหมือนจะเหมาะสมสำหรับฉัน)

อย่างไรก็ตามโปรดดูที่ผลลัพธ์ของ LE ฉันแทบจะไม่สามารถตีความผลลัพธ์ได้ (คอลัมน์สุดท้ายของรูป) ดูเหมือนว่ามีบางอย่างผิดปกติกับส่วนประกอบที่ลดลง นอกจากนี้ฉันต้องการพูดถึงว่าในที่สุดพล็อตของคอลัมน์สุดท้ายคือ eigenvectory ในสูตร Ly=λDy

คุณมีความคิดเพิ่มเติมหรือไม่?

รูปที่ 1 ใช้ 12 เพื่อนบ้านที่ใกล้ที่สุดและซิกมาในเคอร์เนลการทำความร้อนคือ 0.5: คอลัมน์จากซ้ายไปขวา: สัญญาณดั้งเดิม, สัญญาณผสม, พีซี, ไอซี, LE

รูปที่ 2 ใช้ 1,000 เพื่อนบ้านที่ใกล้ที่สุดและซิกมาในเคอร์เนลการทำความร้อนคือ 0.5: คอลัมน์จากซ้ายไปขวา: สัญญาณดั้งเดิม, สัญญาณผสม, พีซี, ไอซี, LE

Sourcecode: รหัส Matlab พร้อมแพ็คเกจที่จำเป็น


2
คุณหมายถึงอะไรโดยการลดองค์ประกอบของ x? คุณหมายถึงว่าการฝัง x ในระดับต่ำหรือไม่?
ได้ยิน

ฟังดูน่าสนใจ คุณช่วยอธิบายรายละเอียดเพิ่มเติมเกี่ยวกับสิ่งที่จริงแล้วข้อมูลของคุณเป็นอย่างไร
Placidia

คำตอบ:


4

คำตอบสำหรับคำถามของคุณได้จากการทำแผนที่ที่ด้านล่างของหน้า 6 ของกระดาษ Laplacian Eigenmaps ต้นฉบับ:

xi(f1(i),,fm(i))

ตัวอย่างเช่นการฝังจุด x5 ในกล่าวว่า "ส่วนประกอบ" อันดับ 2 จะได้รับจาก (f1(5),f2(5)) ที่ไหน f1 และ f2 เป็นค่าลักษณะเฉพาะที่สอดคล้องกับค่าลักษณะเฉพาะที่ไม่ใช่ศูนย์สองค่าที่สุดจากปัญหาค่าลักษณะเฉพาะทั่วไป Lf=λDf.

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


ฉันสับสนเล็กน้อยเกี่ยวกับสิ่งที่คุณกำลังพิจารณาว่าเป็นตัวแปรของคุณ จากสิ่งที่ฉันเข้าใจเมทริกซ์ของคุณMประกอบด้วยตัวอย่าง 1,517 ตัวอย่างจากพื้นที่ 1,000 มิติ เมื่อคุณทำ PCA (หรือ ICA) ในเมทริกซ์นี้คุณสามารถกู้คืนโหมดการผันแปรของการเปลี่ยนแปลงได้ค่อนข้างดีตัวอย่างเช่นในคอลัมน์ 3 ในรูปของคุณแถว 1,2,3 ตรงกับฐาน C, A, B ตามลำดับ มันสมเหตุสมผลแล้ว อย่างไรก็ตามในรหัสของคุณเมื่อคุณดำเนินการ LEM คุณจะต้องเรียกใช้ฟังก์ชันนี้MT( mixedSignal') ซึ่งไม่สอดคล้องกับข้างต้น
Shantanu

ดังนั้นก่อนอื่นในเมทริกซ์ Mคุณเป็นตัวแปรอะไรและคุณสังเกตอะไร ประการที่สองจากการวิเคราะห์ของคุณปรากฏว่าคุณไม่ได้กำลังมองหาการฝังMใช้ LEM แต่ยังเทียบเท่ากับ eigenvector เหมือนใน PCA ใช่ไหม? คุณไม่สามารถทำ LEM นี้ได้อย่างน้อยก็ไม่ง่าย อ่านบทความนี้เพื่อทำความเข้าใจว่าทำไม
Shantanu

หากสิ่งที่คุณกำลังมองหาคือการฝังจากนั้นจะได้รับจากการทำแผนที่ xi(f1(i),,fm(i)). ค้นหาคำตอบของฉันสำหรับรายละเอียด ในรหัสของคุณเปลี่ยนบรรทัด 47 และใช้mixedSignalแทนการแปลง ผลลัพธ์mappedXจะให้การฝัง 3 มิติของคะแนน 1517 ของคุณ
Shantanu

PS: ข้างต้นฉันหมายถึง "คุณไม่สามารถทำได้โดยใช้ LEM อย่างน้อยก็ไม่สะดวก"
Shantanu

2

นี่คือลิงค์ไปยังเว็บเพจของ Prof Trossetและเขากำลังเขียนหนังสือ http://mypage.iu.edu/~mtrosset/Courses/675/notes.pdfซึ่งได้รับการอัพเดตทุกสัปดาห์ นอกจากนี้ยังมีฟังก์ชั่น R สำหรับแผนที่ Laplacian eigen ด้วย ลองด้วยตัวคุณเอง คุณอาจพิจารณาบทความนี้โดย Belkin

ขอบคุณ Abhik Student of Prof Trosset


1

ซึ่งแตกต่างจาก PCA- Laplacian eigenmaps ใช้เวกเตอร์ eigen ทั่วไปที่สอดคล้องกับค่าลักษณะเฉพาะที่เล็กที่สุด มันข้ามเวกเตอร์ eigen ที่มีค่า eigen น้อยที่สุด (อาจเป็นศูนย์) และใช้เวกเตอร์ eigen ที่สอดคล้องกับค่า eigen ที่น้อยที่สุดถัดไป PCA เป็นความแปรปรวนสูงสุดที่เก็บรักษาไว้โดยใช้เคอร์เนล / แกรมเมทริกซ์ Laplacian Eigenmaps ถูกวางให้เป็นปัญหาการย่อให้เล็กที่สุดเทียบกับ laplacian กราฟ combinatorial (เอกสารอ้างอิงโดย Trosset)


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