PCA แบบเบาบาง
การวิเคราะห์องค์ประกอบหลักแบบเบาบาง (SPCA หรือ sparse PCA) เป็นเทคนิคที่ใช้ในการวิเคราะห์ทางสถิติ โดยเฉพาะอย่างยิ่งในการวิเคราะห์ ชุดข้อมูล หลายตัวแปรเทคนิคนี้เป็นการต่อยอดจากวิธีการวิเคราะห์องค์ประกอบหลัก (PCA) แบบดั้งเดิม เพื่อลดมิติของข้อมูลโดยการนำโครงสร้างความเบาบางมาใช้กับตัวแปรนำเข้า
ข้อเสียเปรียบที่สำคัญอย่างหนึ่งของ PCA ทั่วไปคือ ส่วนประกอบหลักมักจะเป็นผลรวมเชิงเส้นของตัวแปรอินพุตทั้งหมด SPCA เอาชนะข้อเสียเปรียบนี้ได้โดยการค้นหาส่วนประกอบที่เป็นผลรวมเชิงเส้นของตัวแปรอินพุตเพียงไม่กี่ตัว (SPC) ซึ่งหมายความว่าสัมประสิทธิ์บางส่วนของผลรวมเชิงเส้นที่กำหนด SPC เรียกว่า ค่าสัมประสิทธิ์ การถ่วงน้ำหนัก[หมายเหตุ 1 ] จะมีค่าเท่ากับศูนย์ จำนวนค่าสัมประสิทธิ์การถ่วงน้ำหนักที่ไม่เป็นศูนย์เรียกว่า จำนวนสมาชิกของ SPC
การกำหนดสูตรทางคณิตศาสตร์
พิจารณาเมทริกซ์ข้อมูลโดยที่แต่ละแต่ละคอลัมน์แสดงถึงตัวแปรป้อนเข้า และแต่ละคอลัมน์แต่ละแถวแสดงถึงตัวอย่างอิสระจากประชากรข้อมูล โดยถือว่าแต่ละคอลัมน์ของมีค่าเฉลี่ยเป็นศูนย์ มิฉะนั้นสามารถลบค่าเฉลี่ยตามคอลัมน์ออกจากแต่ละองค์ประกอบของ. อนุญาตเป็นเมทริกซ์ความแปรปรวนร่วม เชิงประจักษ์ ของซึ่งมีมิติ.
กำหนดให้เป็นจำนวนเต็มกับปัญหา PCA แบบเบาบางสามารถกำหนดได้เป็นการเพิ่มค่าความแปรปรวนสูงสุดตามทิศทางที่แสดงด้วยเวกเตอร์ในขณะเดียวกันก็จำกัดจำนวนสมาชิก:
- สมการที่ 1
ข้อจำกัดแรกระบุว่าvเป็นเวกเตอร์หน่วยในข้อจำกัดที่สองแสดงถึงค่า pseudo-normของvซึ่งกำหนดโดยจำนวนส่วนประกอบที่ไม่เป็นศูนย์ ดังนั้นข้อจำกัดที่สองระบุว่าจำนวนส่วนประกอบที่ไม่เป็นศูนย์ในvมีค่าน้อยกว่าหรือเท่ากับk ซึ่งโดยทั่วไปเป็นจำนวนเต็มที่เล็กกว่ามิติ pมากค่าที่เหมาะสมที่สุดของสมการที่ 1เรียกว่าค่าeigenvalue ที่ใหญ่ที่สุดแบบ k -sparse
ถ้ากำหนดให้k=pปัญหาจะลดลงเหลือเพียงPCA แบบธรรมดา และค่าที่เหมาะสมที่สุดจะกลายเป็นค่าไอเกนที่ใหญ่ที่สุดของเมทริกซ์ความแปรปรวนร่วมΣ
หลังจากค้นหาคำตอบที่เหมาะสมที่สุดvแล้ว จะทำการลดขนาดของ Σเพื่อให้ได้เมทริกซ์ใหม่
และทำซ้ำกระบวนการนี้เพื่อหาองค์ประกอบหลักเพิ่มเติม อย่างไรก็ตาม ต่างจาก PCA ทั่วไป Sparse PCA ไม่สามารถรับประกันได้ว่าองค์ประกอบหลักที่แตกต่างกันจะตั้งฉากกันเพื่อให้ได้คุณสมบัติการตั้งฉากกัน จำเป็นต้องกำหนดข้อจำกัดเพิ่มเติม
นิยามที่เทียบเท่ากันต่อไปนี้อยู่ในรูปแบบเมทริกซ์ ให้ถ้าเมทริกซ์สมมาตร เป็น p×p เราสามารถเขียนปัญหา PCA แบบเบาบางใหม่ได้ดังนี้
- สมการที่ 2
Trคือผลรวมของร่องรอยในเมทริกซ์และแสดงถึงองค์ประกอบที่ไม่เป็นศูนย์ในเมทริกซ์Vบรรทัดสุดท้ายระบุว่าVมีอันดับเมทริกซ์เป็นหนึ่งและเป็นเมทริกซ์กึ่งบวกแน่นอนบรรทัดสุดท้ายหมายความว่ามีหนึ่งดังนั้นสมการที่ 2จึงเทียบเท่ากับ สมการ ที่1
ยิ่งไปกว่านั้น ข้อจำกัดอันดับในสูตรนี้ถือว่าซ้ำซ้อน ดังนั้น PCA แบบเบาบางจึงสามารถแปลงเป็นโปรแกรมกึ่งกำหนดจำนวนเต็มผสมได้ดังต่อไปนี้[ 1 ]
- สมการที่ 3
เนื่องจากข้อจำกัดของจำนวนสมาชิก ปัญหาการหาค่าสูงสุดจึงยากที่จะแก้ไขได้อย่างแม่นยำ โดยเฉพาะอย่างยิ่งเมื่อมิติpสูง ในความเป็นจริง ปัญหา PCA แบบเบาบางในสมการที่ 1เป็น ปัญหา NP-hardในความหมายที่เข้มงวด[ 2 ]
ข้อควรพิจารณาในการคำนวณ
เช่นเดียวกับปัญหาเบาบางส่วนใหญ่ การเลือกตัวแปรใน SPCA เป็นปัญหา NP-hard ที่ไม่นูนซึ่งไม่สามารถคำนวณได้[ 3 ]ดังนั้นจึงมักใช้อัลกอริธึมย่อยที่โลภเพื่อหาคำตอบ
โปรดทราบว่า SPCA ยังแนะนำไฮเปอร์พารามิเตอร์ที่วัดปริมาณค่าพารามิเตอร์ขนาดใหญ่ที่ถูกลงโทษ[ 4 ]ซึ่งอาจต้องปรับแต่งเพื่อให้ได้ประสิทธิภาพที่น่าพอใจ ส่งผลให้ต้นทุนการคำนวณโดยรวมเพิ่มขึ้น
อัลกอริทึมสำหรับ SPCA
มีการเสนอแนวทางทางเลือกอื่นๆ หลายวิธี (ของสมการที่ 1 ) ซึ่งรวมถึง
- กรอบการถดถอย[ 5 ]
- กรอบการแยกส่วนเมทริกซ์แบบมีบทลงโทษ[ 6 ]
- กรอบการเขียนโปรแกรมการผ่อนคลายแบบนูน/กึ่งกำหนด[ 7 ]
- กรอบวิธีพลังงานทั่วไป[ 8 ]
- กรอบการเพิ่มค่าสูงสุดแบบสลับกัน[ 9 ]
- การค้นหาแบบโลภไปข้างหน้าและย้อนกลับ และวิธีการที่แม่นยำโดยใช้เทคนิคการแบ่งแยกและขอบเขต[ 10 ]
- วิธีการแบ่งและจำกัดขอบเขตที่ได้รับการรับรองว่าเหมาะสมที่สุด[ 11 ]
- กรอบการกำหนดสูตรแบบเบย์เซียน[ 12 ]
- วิธีการแยกสาขาและตัดแบบผสมจำนวนเต็มกึ่งกำหนดที่รับรองได้ว่าเหมาะสมที่สุด[ 1 ]
การพัฒนาเชิงวิธีการและทฤษฎีของ Sparse PCA รวมถึงการประยุกต์ใช้ในการศึกษาทางวิทยาศาสตร์ได้รับการทบทวนในบทความสำรวจเมื่อเร็ว ๆ นี้[ 13 ]
หมายเหตุเกี่ยวกับการผ่อนคลายการเขียนโปรแกรมเชิงกึ่งกำหนด
มีการเสนอว่า PCA แบบเบาบางสามารถประมาณได้ด้วยการเขียนโปรแกรมแบบกึ่งกำหนด (SDP) [ 7 ] หากเราละทิ้งข้อจำกัดอันดับและผ่อนคลายข้อจำกัดจำนวนสมาชิกด้วยข้อจำกัด นูนแบบนอร์ม 1 จะได้การผ่อนคลายการเขียนโปรแกรมแบบกึ่งกำหนด ซึ่งสามารถแก้ไขได้อย่างมีประสิทธิภาพในเวลาพหุนาม:
- สมการที่ 3
ในข้อจำกัดข้อที่สองเป็น เวกเตอร์ขนาด p×1 ที่ประกอบด้วยเลข 1 ทั้งหมด และ|V|คือเมทริกซ์ที่มีองค์ประกอบเป็นค่าสัมบูรณ์ขององค์ประกอบในV
วิธีแก้ปัญหาที่ดีที่สุดสำหรับปัญหาที่ผ่อนคลายสมการที่ 3ไม่รับประกันว่าจะมีอันดับหนึ่ง ในกรณีนั้นสามารถตัดทอนเพื่อคงไว้เฉพาะเวกเตอร์ลักษณะเฉพาะที่เด่นที่สุดได้
แม้ว่าโปรแกรมแบบกึ่งกำหนดขอบเขตจะไม่สามารถปรับขนาดเกิน n=300 ตัวแปรอิสระได้ แต่ได้มีการแสดงให้เห็นแล้วว่าการผ่อนคลายแบบกรวยลำดับที่สองของการผ่อนคลายแบบกึ่งกำหนดขอบเขตนั้นเกือบจะกระชับและสามารถแก้ปัญหาที่มีตัวแปรอิสระ n=1000 ได้สำเร็จ[ 14 ]
แอปพลิเคชัน
การวิเคราะห์ข้อมูลทางการเงิน
สมมติว่าเราใช้ PCA แบบธรรมดาในการวิเคราะห์ชุดข้อมูลที่ตัวแปรแต่ละตัวแทนสินทรัพย์ที่แตกต่างกัน ผลลัพธ์ที่ได้อาจเป็นส่วนประกอบหลักที่เป็นผลรวมถ่วงน้ำหนักของสินทรัพย์ทั้งหมด ในทางตรงกันข้าม PCA แบบเบาบางจะสร้างส่วนประกอบหลักที่เป็นผลรวมถ่วงน้ำหนักของสินทรัพย์เพียงไม่กี่ตัวเท่านั้น ทำให้สามารถตีความความหมายได้ง่ายขึ้น นอกจากนี้ หากใช้กลยุทธ์การซื้อขายโดยอิงจากส่วนประกอบหลักเหล่านี้ จำนวนสินทรัพย์ที่น้อยลงย่อมหมายถึงต้นทุนการทำธุรกรรมที่น้อยลงด้วย
ชีววิทยา
ลองพิจารณาชุดข้อมูลที่ตัวแปรนำเข้าแต่ละตัวสอดคล้องกับยีนเฉพาะตัวหนึ่งๆ PCA แบบสปาร์สสามารถสร้างส่วนประกอบหลักที่เกี่ยวข้องกับยีนเพียงไม่กี่ตัวเท่านั้น ทำให้ผู้วิจัยสามารถมุ่งเน้นไปที่ยีนเฉพาะเหล่านี้สำหรับการวิเคราะห์เพิ่มเติมได้
การทดสอบสมมติฐานมิติสูง
ชุดข้อมูลร่วมสมัยมักมีจำนวนตัวแปรอินพุต () เทียบเท่าหรืออาจมากกว่าจำนวนตัวอย่างมาก () มีการแสดงให้เห็นแล้วว่า ถ้าหากไม่ลู่เข้าสู่ศูนย์ PCA แบบคลาสสิกจะไม่สอดคล้องกันกล่าวอีกนัยหนึ่งคือ ถ้าเรากำหนดให้ในสมการที่ 1ค่าที่เหมาะสมที่สุดจะไม่ลู่เข้าสู่ค่าไอเกนที่ใหญ่ที่สุดของประชากรข้อมูลเมื่อขนาดตัวอย่างและคำตอบที่เหมาะสมที่สุดไม่ได้ลู่เข้าสู่ทิศทางของความแปรปรวนสูงสุด แต่ PCA แบบเบาบางสามารถรักษาความสอดคล้องได้แม้ว่าจะเป็นเช่นนั้นก็ตาม
ค่า ไอเกนที่ใหญ่ที่สุด k -sparse (ค่าที่เหมาะสมที่สุดของสมการ 1 ) สามารถใช้เพื่อแยกแยะแบบจำลองไอโซเมตริก ซึ่งทุกทิศทางมีความแปรปรวนเท่ากัน ออกจากแบบจำลองความแปรปรวนแบบมีหนามแหลมในการตั้งค่ามิติสูง[ 15 ]พิจารณาการทดสอบสมมติฐานที่สมมติฐานว่างระบุว่าข้อมูลข้อมูล ถูกสร้างขึ้นจากการกระจายแบบปกติหลายตัวแปรที่มีค่าเฉลี่ย 0 และความแปรปรวนร่วมเท่ากับเมทริกซ์เอกลักษณ์และสมมติฐานทางเลือกกำหนดว่าข้อมูลสร้างขึ้นจากแบบจำลองที่มีสไปค์พร้อมความแรงของสัญญาณ:
ที่ไหนมีพิกัดที่ไม่เป็นศูนย์ เพียง k ตัวเท่านั้น ค่าไอเกน แบบ k -sparse ที่ใหญ่ที่สุดสามารถแยกแยะสมมติฐานทั้งสองได้ก็ต่อเมื่อ.
เนื่องจากการคำนวณ ค่าไอเกน แบบ k -sparse นั้นเป็นปัญหา NP-hard เราจึงสามารถประมาณค่าได้โดยใช้ค่าที่เหมาะสมที่สุดของการผ่อนคลายการเขียนโปรแกรมแบบกึ่งกำหนด ( สมการที่ 3 ) ในกรณีนั้น เราสามารถแยกแยะสมมติฐานทั้งสองได้หาก. เพิ่มเติมหาก สมมติฐานเกี่ยวกับกลุ่มคลิกที่กำหนดไว้เป็นจริงจะไม่สามารถปรับปรุงเงื่อนไขได้ด้วยอัลกอริทึมเวลาพหุนามอื่นใด
ซอฟต์แวร์/ซอร์สโค้ด
- amanpg - แพ็คเกจ R สำหรับ Sparse PCA โดยใช้ Alternating Manifold Proximal Gradient Method [ 16 ]
- elasticnet – แพ็กเกจ R สำหรับการประมาณค่าแบบเบาบางและ PCA แบบเบาบางโดยใช้ Elastic-Nets [ 17 ]
- epca – แพ็กเกจ R สำหรับการวิเคราะห์ส่วนประกอบหลักเชิงสำรวจสำหรับชุดข้อมูลขนาดใหญ่ รวมถึงการวิเคราะห์ส่วนประกอบหลักแบบเบาบางและการประมาณเมทริกซ์แบบเบาบาง[ 18 ]
- nsprcomp - แพ็คเกจ R สำหรับ PCA แบบเบาบางและ/หรือแบบไม่เป็นลบโดยอิงตามการวนซ้ำกำลังที่มีเกณฑ์[ 19 ]
- scikit-learn – ไลบรารี Python สำหรับการเรียนรู้ของเครื่องซึ่งประกอบด้วย Sparse PCA และเทคนิคอื่นๆ ในโมดูลการแยกส่วน[ 20 ]
หมายเหตุ
- ↑ คำว่า "loadings" ถูกนำมาใช้ไม่เหมาะสมสำหรับเวกเตอร์เหล่านี้ ซึ่งควรเรียกว่า "coefficients" แทน ชื่อนี้มาจากคำว่า "loadings" ที่ใช้ในการวิเคราะห์ปัจจัยเพื่อออกแบบค่าที่สร้างเมทริกซ์ความแปรปรวนร่วม เนื่องจากใน PCA มาตรฐาน ค่า loadings จะเท่ากับค่า coefficients ดังนั้นจึงมีการใช้คำว่า loadings สำหรับค่า coefficients ซึ่งค่อนข้างน่าเสียดาย เพราะใน SPCA ค่า coefficients ไม่เท่ากับค่า loadings