kikapo
เลิศพันธุ์ เพียรสร้างสรร

การวิเคราะห์องค์ประกอบหลัก ตอนที่ 1 (Principle Component Analysis 1)


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

x1: สีของเสื้อ

x2: ความทันสมัยของลวดลาย สไตล์ดึงดูด

x3: เนื้อผ้า

x4: ราคา

x5: การแนะนำของพนักงาน

โดยให้ผู้ซื้อให้คะแนน 5 ในข้อที่เห็นว่าเป็นเหตุผลหลักแล้วลดหลั่นลงมาในเหตุผลอื่นๆ ได้ข้อมูลดังตาราง

ก่อนอื่น เมื่อได้ข้อมูลใดๆ มาแล้วก็ตามเราควรจะทำข้อมูลให้ดูง่ายๆ ก่อน เรียกกันว่า “Normalize” โดยผมจะใช้การนอมัลไลซ์ด้วยค่าเบี่ยงเบนมาตรฐาน (Normalize by standard deviation) ซึ่งมีสูตรเป็น

Anorm = [A-mean(A)]/std(A)

ได้ข้อมูลที่ผ่านการนอมัลไลซ์มาดังนี้

Anorm =

-1.3165 0.9939 -1.2563 -0.2007 1.1767

-0.6896 -0.9939 -0.1142 0.4684 1.1767

0.5642 -0.9939 -1.2563 1.1376 0

1.1911 0.3313 1.0279 -0.8699 -1.1767

-1.3165 1.6565 -1.2563 0.4684 0

-0.0627 -0.9939 1.0279 -0.8699 1.1767

1.1911 0.3313 1.0279 -1.5390 -0.5883

1.1911 0.9939 -0.1142 -0.8699 -1.1767

-0.6896 -0.9939 -0.1142 1.1376 0.5883

-0.0627 -0.3313 1.0279 1.1376 -1.1767

ใช้เมตริกซ์ Anorm นี้มาหาสหสัมพันธ์ (Correlation) จะได้

R =

1.0000 -0.0692 0.5489 -0.5267 -0.6967

-0.0692 1.0000 -0.2943 -0.3695 -0.3465

0.5489 -0.2943 1.0000 -0.4500 -0.3733

-0.5267 -0.3695 -0.4500 1.0000 0.1750

-0.6967 -0.3465 -0.3733 0.1750 1.0000

จากนั้นเราจะนำเมตริกซ์ R นี้ไปสกัดคุณลักษณะเด่นออกมา โดยเมตริกซ์ที่ได้ใหม่จากการสกัด จะต้องเป็นอิสระต่อกันในแต่ละคอลัมภ์ โดยเราใช้วิธีง่ายๆ คือการหาไอเกน (Eigen vector and Eigen value) ก็จะได้

eigen vector =

0.5769 -0.4874 -0.1376 -0.6181 -0.1693

0.1095 -0.4611 0.8378 0.2677 0.0425

0.4676 -0.2675 -0.4395 0.6931 0.1904

-0.4482 -0.4566 -0.2158 0.1854 -0.7139

-0.4854 -0.5193 -0.1986 -0.1777 0.6509

eigen value =

2.4272 0 0 0 0

0 -0.0000 0 0 0

0 0 1.3431 0 0

0 0 0 0.3721 0

0 0 0 0 0.8575

หากย้อนมองดูที่ค่า eigen value โดยเรียงตามค่ามากไปน้อย จะพบว่าคอลัมภ์ที่เราควรสนใจจะเหลือเพียง 3 คอลัมภ์เท่านั้น (ตัวเน้นๆ ของเมตริกซ์ด้านบน) หากเราจัดเรียงใหม่ตามลำดับความสำคัญจะได้ตารางแสดงเวคเตอร์สหสัมพันธ์ (eigen vector) เป็น

โดย x’i เมื่อ i=1,2,3,4 และ 5 ตามลำดับ เป็นข้อมูลจากเมตริกซ์ Anorm (หรือก็คือ Xi ที่ผ่านการนอมัลไลซ์แล้ว)

ต่อมา..เราจะนำมาจัดรูปแบบอีกครั้งครับ ในรูปแบบตารางโหลด (Loading) ที่แสดงถึงอิทธิพลของตัวแปรเดิมที่มีต่อตัวประกอบหลัก มีสูตรเป็น

โดยที่

คือ eigen value ของตัวประกอบหลักที่ i

คือ ค่าเบี่ยงเบนมาตรฐานของตัวแปรเดิมที่ j (การทำ Normalize ที่ผ่านมาทำให้ได้ std=1 ทุกตัวแปร)

จะได้ตารางแสดงค่าโหลดดิ้ง (loading) เป็นดังนี้

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

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

อ้างอิง:

1. กัลยา วาณิชย์บัญชา, "การวิเคราะห์ข้อมูลหลายตัวแปร", จุฬาลงกรณ์มหาวิทยาลัย, 2552

2. Jeff Gill, "What is Priciple Components Analysis Anyway?"

หมายเลขบันทึก: 566063เขียนเมื่อ 15 เมษายน 2014 17:56 น. ()แก้ไขเมื่อ 19 มีนาคม 2017 16:08 น. ()สัญญาอนุญาต: ครีเอทีฟคอมมอนส์แบบ แสดงที่มา-ไม่ใช้เพื่อการค้า-ไม่ดัดแปลงจำนวนที่อ่านจำนวนที่อ่าน:


ความเห็น (19)

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

อย่างไรก็ตาม การใช้ PCL.นั้นเหมาะสำหรับข้อมูล ขนาดใหญ่ (The principal component analysis is a large sample procedure) ขนาดที่แนะนำคือ อย่างน้อย 100 เคส หรือ 5 เท่าของตัวแปร ทั้งนี้ยังมีกฏเกฑ์อีกมากพอควรเกี่ยวกับจำนวนตัวแปรในแบบสอบถาม และจำนวน โครงสร้าง (คอนสทรัค) ซึ่งศึกษาได้จากตำราที่สมบูรณ์ค่ะ

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

การวิเคราะห์ PCL จะลดจำนวนตัวแปร ให้เหลือองค์ประกอบหลักจำนวนหนึ่ง(ตามทฤษฎี) ซึ่งอธิบายด้วยตัวแปรสำคัญจำนวนน้อย

กรณีที่ยกตัวอย่างนี้เข้าใจว่าต้องการให้ง่าย ใช้เพียง 10 เคส สำหรับ 5 ตัวแปร

ขอบคุณคุณ GD ... ใช่ครับ ข้อมูลที่ยกตัวอย่างต้องการให้แสดงได้ภายใน 1 หน้า เท่านั้น เพื่อให้ผู้อ่านมองแนวทางขั้นตอนการคำนวณ เพื่อให้นำไปประยุกต์ใช้ได้ต่อไป

ดีครับ

ไม่ทราบว่าผมจะคำนวณ สหสัมพันธ์ (Correlation) นี้ได้อย่างไรครับ

เป็นสหสัมพันธ์ของตัวแปรกี่ตัวหรือครับ ? ไม่แน่ใจกับคำถาม

ในสมการสุดท้ายค่า W ij หามาได้ยังไงครับ

Wij ก็คือ ข้อมูลในตารางแสดงเวคเตอร์สหสัมพันธ์ครับ

ตอนนี้ผมติดทำ ผมอยากทราบวิธีหา Eigenvalue กับ Eigenvector ครับ ไม่ทราบว่าใช้โปรแกรมอะไร

ใช้ MATLAB ก็สะดวกดีครับ หรือ scilab ก็ได้

เมตริกซ์ R ในตัวอย่าง หามาได้อย่างไรครับ ผมเข้าไปดูสมการใน matlab แล้วก็ยังไม่เข้าใจวิธีคำนวนครับ
ขอบคุณครับ

คำสั่งใน MATLAB คือ

>>R=corr(Anorm)

ขอบคุณครับ คุณ kikapo
ผมหมายถึงคำนวณด้วยมือครับ

ขอถามในส่วนของการอภิปรายผลน่ะค่ะ

ตรงตาราง loading  ในส่วน x'3 จะมีค่าที่เป็นบวกอยู่ใน PC1  และค่าที่เป็นลบอยู่ใน PC2 แบบนี้แปลว่าอะไรคะ

 คือเราไม่ค่อยเข้าใจสถิติตัวนี้เท่าไร แต่จำเป็นต้องใช้

ขอบคุณล่วงหน้าค่ะ

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

สอนคำนวน Correlation หน่อยได้ไหมคะ TT แบบคิดมือค่าหาไม่ค่อยเจอเลยค่ะมีแต่สำเร็จรูป

สอนคำนวน Correlation หน่อยได้ไหมคะ TT แบบคิดมือค่าหาไม่ค่อยเจอเลยค่ะมีแต่สำเร็จรูป

ถึงคุณ [email protected]หมายถึง การคำนวณด้วยมือหรือครับ

ถ้าผมมีองค์ประกอบผลิตของพืชหลายตัวกับพืชชนิดเดียวกับหลายพันธุ์ต้องการเบือกพันที่ดีที่สุดต้องวิเคราะห์อย่างไรครับขอรบกวนคับ

พบปัญหาการใช้งานกรุณาแจ้ง LINE ID @gotoknow
ClassStart
ระบบจัดการการเรียนการสอนผ่านอินเทอร์เน็ต
ทั้งเว็บทั้งแอปใช้งานฟรี
ClassStart Books
โครงการหนังสือจากคลาสสตาร์ท