ระยะทาง Mahalanobis ผ่าน PCA เมื่อ


10

ฉันมีเมทริกซ์โดยที่คือจำนวนยีนและคือจำนวนผู้ป่วย ทุกคนที่ทำงานกับข้อมูลดังกล่าวรู้ว่านั้นใหญ่กว่าเสมอ โดยใช้การเลือกคุณลักษณะฉันมีอากาศลงไปจำนวนที่เหมาะสมมากขึ้น แต่ยังคงสูงกว่าnn×ppnpnppn

ฉันต้องการคำนวณความคล้ายคลึงกันของผู้ป่วยตามโปรไฟล์ทางพันธุกรรมของพวกเขา ฉันสามารถใช้ระยะทางแบบยุคลิดได้ แต่มาฮาโลโนบิสดูเหมือนจะเหมาะสมกว่าเพราะมันเกี่ยวข้องกับความสัมพันธ์ระหว่างตัวแปร ปัญหาที่เกิดขึ้น (ตามที่ระบุไว้ในนี้โพสต์ ) เป็นว่าระยะทาง Mahalanobis เฉพาะเมทริกซ์ความแปรปรวนร่วมไม่ทำงานเมื่อ<p เมื่อฉันเรียกใช้ระยะทาง Mahalanobis ใน R ข้อผิดพลาดที่ฉันได้รับคือ:n<p

 Error in solve.default(cov, ...) :    system is computationally
 singular: reciprocal condition number = 2.81408e-21

จนถึงตอนนี้ที่จะลองแก้ปัญหานี้ฉันใช้ PCA และแทนที่จะใช้ยีนฉันใช้ส่วนประกอบและดูเหมือนว่าจะทำให้ฉันคำนวณระยะทาง Mahalanobis ได้ 5 ส่วนประกอบแทนประมาณ 80% ของความแปรปรวนดังนั้นตอนนี้Pn>p

คำถามของฉันคือ:ฉันสามารถใช้ PCA เพื่อให้ได้ระยะทาง Mahalanobis ที่มีความหมายระหว่างผู้ป่วยหรือไม่เหมาะสมหรือไม่? มีการวัดระยะทางอื่นที่ทำงานเมื่อและมีความสัมพันธ์กันมากในหมู่ตัวแปรหรือไม่?n<pn


สิ่งนี้PCAสามารถทำลายความสัมพันธ์ของตัวแปรได้เว้นแต่คุณจะใช้การหมุนแบบเอียง ฉันยังไม่แน่ใจว่าการกระจายความแปรปรวนPCAจะส่งผลต่อระยะทาง Mahalanobis ระหว่างผู้ป่วยที่คล้ายกันอย่างไร
มิเชล

หาก PCA แบ่งความสัมพันธ์ของตัวแปรฉันสามารถใช้การวัดระยะทางอื่น ๆ (เช่นระยะทางของเพียร์สัน) แทนระยะทาง Mahalanobis ได้หรือไม่
user4673

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

ฉันไม่ใช่ผู้เชี่ยวชาญในพื้นที่ ผมแค่อยากจะแบ่งปันที่ผมเคยเป็นปัญหา smilar ของคุณและผมเคยใช้ 'cov.shrink จากแพคเกจ corpcor
Bruno Sousa

คำตอบ:


8

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

ฉันแค่หมายความว่าถ้าคุณต้องการประเมินระยะทาง Mahalanobis ระหว่างผู้ป่วยคุณสามารถใช้ PCA และประเมินระยะทางแบบยุคลิด การประเมินระยะทาง Mahalanobis หลังจากใช้ PCA นั้นเป็นสิ่งที่ไม่มีความหมายสำหรับฉัน


นี่เป็นบทความสั้น ๆ ที่พูดถึงความสัมพันธ์: Brereton, RG ระยะทาง Mahalanobis และความสัมพันธ์กับคะแนนองค์ประกอบหลักวารสาร Chemometrics, Wiley-Blackwell, 2015, 29, 143–145 dx.doi.org/10.1002/cem.2692 โปรดทราบว่า PCA ในเคมีเป็นค่าเริ่มต้นการหมุนของข้อมูลอย่างแท้จริงดังนั้นไม่ใช่รุ่น Dmitry ที่อ้างอิงถึงหน่วยความแปรปรวน
cbeleites ไม่มีความสุขกับ SX

2

ดูที่กระดาษต่อไปนี้:

Zuber, V. , Silva, APD, & Strimmer, K. (2012) อัลกอริทึมใหม่สำหรับการเลือก SNP พร้อมกันในมิติสูงการศึกษาสมาคมจีโนมทั้ง ชีวสารสนเทศศาสตร์ BMC , 13 (1), 284

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

วิธีการรวมอยู่ใน R-package 'การดูแล' ที่มีอยู่ใน CRAN


0

คะแนน PCA (หรือผลลัพธ์ PCA) ถูกนำมาใช้ในวรรณคดีเพื่อคำนวณระยะทาง Mahalanobis ระหว่างตัวอย่างและการกระจายตัวอย่าง ยกตัวอย่างให้ดูบทความนี้ ภายใต้ส่วน "วิธีการวิเคราะห์" รัฐผู้เขียน:

ชุดข้อมูลของสเปกตรัมฟลูออเรสเซนต์ (681) จะถูกลดขนาดลง (11) โดยการประเมินส่วนประกอบหลัก (พีซี) ของเมทริกซ์สหสัมพันธ์ (681 × 681) คะแนน PC นั้นประมาณจากการฉายข้อมูลต้นฉบับตามพีซี การจำแนกระหว่างชุดข้อมูลได้ทำโดยใช้แบบจำลองระยะทาง Mahalanobis โดยคำนวณระยะทาง Mahalanobis สำหรับคะแนน PC

ฉันได้เห็นตัวอย่างอื่น ๆ ของการวิเคราะห์จำแนกตาม PCA / Mahalanobis ทางไกลในวรรณคดีและในเมนูช่วยเหลือของซอฟต์แวร์เคมีเภสัชศาสตร์ GRAMS IQ ชุดค่าผสมนี้เหมาะสมเนื่องจากระยะทาง Mahalanobis ทำงานได้ไม่ดีเมื่อจำนวนตัวแปรมากกว่าจำนวนตัวอย่างที่มีอยู่และ PCA จะลดจำนวนตัวแปร

อัลกอริทึมการเรียนรู้เครื่องจำแนกระดับหนึ่ง (เช่น Isolation Forest, One-ClassSVM และอื่น ๆ ) เป็นทางเลือกที่เป็นไปได้สำหรับการวิเคราะห์จำแนกตามระยะทาง PCA / Mahalanobis ในห้องปฏิบัติการของเรา Isolation Forest รวมกับการประมวลผลข้อมูลล่วงหน้าได้ผลลัพธ์ที่ดีในการจำแนกสเปกตรัมอินฟราเรดใกล้

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


ยินดีต้อนรับสู่เว็บไซต์ของเรา เพราะมันไม่ได้อย่างชัดเจนในคำตอบของคุณคุณสามารถอธิบายวิธีการที่จะอยู่กรณี posited ในคำถาม? n<p
whuber

เมื่อ n <p, PCA จะถูกใช้เพื่อลด p จำนวนของส่วนประกอบที่เก็บไว้จากการวิเคราะห์ PCA (nc) มักจะมีขนาดเล็กกว่า p และมันอาจจะเล็กกว่า n ขึ้นอยู่กับขนาดของ n ดังนั้น PCA เปลี่ยนปัญหา "n by p" เป็นปัญหา "n by nc" ในห้องแล็บของเราที่ซึ่งเราวิเคราะห์สเปกตรัม NIR นั้น p แสดงถึงจำนวนของความยาวคลื่นซึ่งโดยทั่วไปจะมากกว่าสองพัน n แสดงจำนวนตัวอย่างการฝึกอบรม (~ 20 ถึง 150) โดยทั่วไปแล้ว nc คือ 3 ถึง 11 เมื่อ n> nc การวิเคราะห์ PCA / Mahalanobis ให้ผลลัพธ์ที่ดี
Cherif Diallo

1
ปัญหาไม่ใช่สิ่งที่ PCA ทำ มีเนื้อหาครอบคลุมในหัวข้ออื่น ๆ ในเว็บไซต์นี้ ปัญหาคือว่าระยะทาง mahalanobis ไม่สามารถคำนวณได้ในกรณีนี้เพราะความแปลกประหลาดของเมทริกซ์ความแปรปรวนร่วม: นี่คือสถานการณ์ที่อธิบายไว้ในคำถาม
whuber

ขอบคุณสำหรับความคิดเห็นของคุณ ดูเหมือนว่าเรามีการตีความที่แตกต่างกันในสิ่งที่ผู้ใช้ถาม คำตอบที่ได้รับการยอมรับ "ถ้าคุณต้องการประเมินระยะห่างระหว่างผู้ป่วยกับ Mahalanobis คุณสามารถใช้ PCA และประเมินระยะทางแบบยุคลิดการประเมินระยะทาง Mahalanobis หลังจากการใช้ PCA นั้นเป็นสิ่งที่ไม่มีความหมาย ... " ฉันคิดว่าประโยคสุดท้ายขัดแย้งกับวรรณคดีที่ฉันเคยเห็นและอ้างถึง คุณคิดอย่างไร? ขอแสดงความนับถืออย่างสูง.
Cherif Diallo

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