อะไรคือความแตกต่างระหว่าง "การบรรทุก" และ "การโหลดความสัมพันธ์" ใน PCA และ PLS


11

สิ่งหนึ่งที่ต้องทำเมื่อทำการวิเคราะห์ส่วนประกอบหลัก (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], correlationloadings[,2],
     xlim=c(-1,1), ylim=c(-1,1),
     main='Correlation Loadings for PC1 vs. PC2')

loadingplot correlationloadinsplot

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


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

6
R prcompแพคเกจโทรประมาท eigenvectors "โหลด" ฉันแนะนำให้แยกข้อกำหนดเหล่านี้ออก การรับน้ำหนักจะถูกปรับขนาดตามค่าลักษณะเฉพาะ
ttnphns

1
การอธิบายรูปทรงเรขาคณิตของพล็อตการโหลด: stats.stackexchange.com/a/119758/3277
ttnphns

คำตอบ:


13

คำเตือน: Rใช้คำว่า "การโหลด" ในลักษณะที่สับสน ฉันอธิบายไว้ด้านล่าง

พิจารณาชุดข้อมูลด้วยตัวแปร (กึ่งกลาง) ในคอลัมน์และจุดข้อมูลในแถว การแสดง PCA ของชุดข้อมูลจำนวนนี้จะสลายตัวมูลค่าเอกพจน์\ คอลัมน์ของเป็นองค์ประกอบหลัก (PC "score") และคอลัมน์ของเป็นแกนหลัก ความแปรปรวนร่วมได้รับดังนั้นแกนหลักจึงเป็น eigenvectors ของเมทริกซ์ความแปรปรวนร่วมXNX=USVUSV1N1XX=VS2N1VV

"การโหลด" ถูกกำหนดให้เป็นคอลัมน์ของกล่าวคือพวกมัน eigenvectors มาตราส่วนโดยรากที่สองของค่าลักษณะเฉพาะ พวกมันแตกต่างจาก eigenvectors! ดูคำตอบของฉันที่นี่เพื่อสร้างแรงจูงใจL=VSN1

การใช้วิธีการนี้เราสามารถคำนวณ cross-covariance matrix ระหว่างตัวแปรดั้งเดิมและพีซีมาตรฐาน:นั่นคือมันได้รับจากการโหลด เมทริกซ์ความสัมพันธ์ข้ามระหว่างตัวแปรดั้งเดิมกับพีซีได้รับจากนิพจน์เดียวกันหารด้วยค่าเบี่ยงเบนมาตรฐานของตัวแปรดั้งเดิม (โดยนิยามของสหสัมพันธ์) หากตัวแปรเดิมได้มาตรฐานก่อนที่จะดำเนิน PCA (เช่น PCA กำลังดำเนินการสัมพันธ์เมทริกซ์) พวกเขาทั้งหมดเท่ากับ1ในกรณีนี้ล่าสุดเมทริกซ์ข้ามความสัมพันธ์จะได้รับอีกครั้งโดยเพียงแค่{L}

1N1X(N1U)=1N1VSUU=1N1VS=L,
1L

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

Biplots

แผนย่อยด้านซ้ายแสดงชุดข้อมูล 2D มาตรฐาน (แต่ละตัวแปรมีความแปรปรวนของหน่วย) ยืดออกไปตามแนวทแยงมุมหลัก Middle Subplotเป็นbiplot : มันเป็นพล็อตการกระจายของ PC1 เทียบกับ PC2 (ในกรณีนี้ชุดข้อมูลหมุนโดย 45 องศา) โดยมีแถวของพล็อตด้านบนเป็นเวกเตอร์ โปรดสังเกตว่าเวกเตอร์และอยู่ห่างกัน 90 องศา พวกเขาบอกคุณว่าแกนดั้งเดิมมุ่งเน้นอย่างไร แผนขวาเป็น biplot เดียวกัน แต่ตอนนี้เวกเตอร์แสดงแถวของ{L} โปรดสังเกตว่าตอนนี้เวกเตอร์และมีมุมแหลมระหว่างพวกมัน พวกเขาบอกคุณว่าตัวแปรดั้งเดิมมีความสัมพันธ์กับพีซีมากน้อยเพียงใดและทั้งและ x y L x yVxyLxyxyมีความสัมพันธ์กับ PC1 มากกว่าพีซี 2 ฉันเดาว่าคนส่วนใหญ่มักชอบดูประเภทของ biplot ที่ถูกต้อง

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

ให้เราดูที่ชุดข้อมูลmtcarsอีกครั้ง นี่คือ biplot ของ PCA ที่ทำกับ matrix correlation:

mtcars pca biplot

เส้นสีดำที่มีการวางแผนโดยใช้ , เส้นสีแดงที่มีการวางแผนโดยใช้{L}VL

และนี่คือ biplot ของ PCA ที่ทำกับเมทริกซ์ความแปรปรวนร่วม:

mtcars pca biplot

ที่นี่ฉันปรับขนาดเวกเตอร์และวงกลมหน่วยทั้งหมดด้วยเพราะไม่เช่นนั้นมันจะไม่ปรากฏให้เห็น (เป็นเคล็ดลับที่ใช้กันทั่วไป) อีกครั้งเส้นสีดำแสดงแถวของและเส้นสีแดงแสดงความสัมพันธ์ระหว่างตัวแปรและพีซี (ซึ่งไม่ได้รับโดยอีกต่อไปดูด้านบน) โปรดทราบว่ามีเพียงเส้นดำสองเส้นเท่านั้นที่มองเห็นได้ นี่เป็นเพราะตัวแปรสองตัวมีความแปรปรวนสูงมากและครองชุดข้อมูลmtcars ในทางกลับกันเส้นสีแดงทั้งหมดสามารถมองเห็นได้ การเป็นตัวแทนทั้งสองนำเสนอข้อมูลที่เป็นประโยชน์บางอย่าง100VL

: PS มีสายพันธุ์ที่แตกต่างของ biplots PCA ให้ดูคำตอบของฉันที่นี่สำหรับคำอธิบายเพิ่มเติมบางอย่างและภาพรวมการวางตำแหน่งลูกศรบน biplot biplot ที่สวยที่สุดที่เคยโพสต์ใน CrossValidated สามารถพบได้ที่นี่


2
แม้ว่านี่จะเป็นคำตอบที่ดีมาก (+1) แต่ก็มีจุดอ่อนเชิงปฏิบัติเพียงข้อเดียวซึ่งในขั้นต้นนั้นจะวางตัวแปรในแถวของ X ไม่ใช่ในคอลัมน์ของ X ตามปกติจะไปในชุดข้อมูลเชิงสถิติ / ตัวอย่าง เนื่องจากการแปลงรูปนั้นเวกเตอร์ U กลายเป็นคำตอบที่เกี่ยวกับตัวแปรและ V เกี่ยวกับกรณี คนส่วนใหญ่ที่รู้จัก PCA คุ้นเคยกับเค้าโครงที่ตรงกันข้าม ดังนั้นจึงเป็นอุปสรรคต่อการรับรู้เล็กน้อย
ttnphns

1
ฉันอาจแนะนำให้เน้นด้วยวาจา "คุณธรรม" ของความแตกต่างระหว่าง "แกน biplot" และ "loadings biplot" ในการสแกน ในครั้งแรกจะไม่มีการนำเสนอความแปรปรวน (= scale, = magnidute, = inertia, = มวล): มันถูกเก็บไว้ในค่าลักษณะเฉพาะ ในครั้งที่สองมันถูกมอบให้อย่างเต็มที่กับ eigenvector ที่เป็นตัวแทนของตัวแปร โดยอาศัยอำนาจตามที่ "ฟื้นฟู" ตัวแปรจะกลายเป็นคลาวด์ข้อมูลที่มีความหมายของจุดสองจุดหรือเวกเตอร์โดยมีความยาวเฉพาะจากจุดกำเนิดและมุมที่เฉพาะเจาะจง นี่คือวิธีการที่เรา "ก็" พบตัวเองในพื้นที่เรื่อง
ttnphns

ขอบคุณ @ttnphns จุดดีทั้งคู่ เกี่ยวกับแถว / คอลัมน์ของ : อันที่จริงฉันชอบเลย์เอาต์ที่ฉันใช้ จุดข้อมูลเดียวมักจะเขียนเป็นคอลัมน์เวกเตอร์x เมทริกซ์ทำหน้าที่เกี่ยวกับมันจะเขียนเป็นx ถ้าตอนนี้คือชุดของเวกเตอร์คอลัมน์ที่เรียงซ้อนกันฉันสามารถเขียนซึ่งสะดวก ถ้าหากมีตัวอย่างเป็นแถวในขณะที่คุณสนับสนุนฉันจะต้องเขียนซึ่งดูแปลก ๆ แต่ฉันยอมรับว่าหนังสือเรียนจำนวนมากใช้แบบแผนนี้ (ฉันไม่แน่ใจว่าทำไม) XxUUxXUXXXU
อะมีบา

1
แน่นอนว่าเป็นเรื่องของรสนิยม ใจ cases X variablesแต่ที่ส่วนใหญ่ของโปรแกรมทางสถิติแสดงสเปรดชีตข้อมูลเป็น ตามธรรมเนียมแล้วพีชคณิตเชิงเส้นในข้อความวิเคราะห์เชิงสถิติส่วนใหญ่ทำให้เป็นเวกเตอร์แถว บางทีในการเรียนรู้ของเครื่องมันแตกต่างกัน?
ttnphns

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