ลดมิติการเรียนรู้: สำรวจวิธี PCA และ SVD

การลดมิติคืออะไร?
การลดขนาดเป็นเทคนิคที่ใช้ในแมชชีนเลิร์นนิงและการวิเคราะห์ข้อมูลเพื่อลดจำนวนของตัวแปรอินพุตหรือฟีเจอร์ในชุดข้อมูล มันเกี่ยวข้องกับการแปลงชุดข้อมูลที่มีมิติสูงให้เป็นพื้นที่ที่มีมิติต่ำกว่าในขณะที่รักษาข้อมูลต้นฉบับให้ได้มากที่สุด
เทคนิคการลดขนาดมีสองประเภทหลัก:
- PCA (การวิเคราะห์องค์ประกอบหลัก)
- SVD (การแยกค่าเอกพจน์)
การวิเคราะห์องค์ประกอบหลักเป็นเทคนิคการเรียนรู้แบบไม่มีผู้ดูแลที่ได้รับความนิยมเพื่อลดมิติของข้อมูล เพิ่มความสามารถในการตีความในขณะเดียวกันก็ลดการสูญหายของข้อมูล ช่วยในการค้นหาคุณลักษณะที่สำคัญที่สุดในชุดข้อมูล และทำให้ข้อมูลง่ายต่อการลงจุดในแบบ 2 มิติและ 3 มิติ PCA ช่วยในการค้นหาลำดับของชุดค่าผสมเชิงเส้นของตัวแปร

ในรูปด้านบน เราวาดจุดต่างๆ บนระนาบ 2 มิติ มีสององค์ประกอบหลัก PC1 เป็นองค์ประกอบหลักหลักที่อธิบายความแปรปรวนสูงสุดของข้อมูล PC2 เป็นส่วนประกอบหลักอีกชิ้นหนึ่งที่ตั้งฉากกับ PC1
องค์ประกอบหลักคืออะไร?
องค์ประกอบหลักคือเส้นตรงที่จับความแปรปรวนส่วนใหญ่ของข้อมูล มีทิศทางและขนาด องค์ประกอบหลักคือการฉายภาพมุมฉาก (ตั้งฉาก) ของข้อมูลบนพื้นที่มิติล่าง
ตอนนี้คุณเข้าใจพื้นฐานของ PCA แล้ว มาดูหัวข้อถัดไปเกี่ยวกับ PCA ในการเรียนรู้ของเครื่อง
มิติ
คำว่า "มิติ" อธิบายถึงจำนวนคุณลักษณะหรือตัวแปรที่ใช้ในการวิจัย การแสดงภาพและตีความความสัมพันธ์ระหว่างตัวแปรอาจเป็นเรื่องยากเมื่อต้องจัดการกับข้อมูลที่มีมิติสูง เช่น ชุดข้อมูลที่มีตัวแปรจำนวนมาก ในขณะที่ลดจำนวนตัวแปรในชุดข้อมูล วิธีการลดขนาดเช่น PCA ถูกนำมาใช้เพื่อรักษาข้อมูลที่สำคัญที่สุด ตัวแปรดั้งเดิมจะถูกแปลงเป็นตัวแปรชุดใหม่ที่เรียกว่าส่วนประกอบหลัก ซึ่งเป็นการรวมกันเชิงเส้นของตัวแปรดั้งเดิมโดย PCA เพื่อให้สิ่งนี้สำเร็จ
ขนาดที่ลดลงของชุดข้อมูลขึ้นอยู่กับจำนวนองค์ประกอบหลักที่ใช้ในการศึกษา วัตถุประสงค์ของ PCA คือการเลือกองค์ประกอบหลักให้น้อยลงซึ่งคำนึงถึงความแปรผันที่สำคัญที่สุดของข้อมูล PCA สามารถช่วยเพิ่มความคล่องตัวในการวิเคราะห์ข้อมูล ปรับปรุงการแสดงภาพ และทำให้ง่ายต่อการระบุแนวโน้มและความสัมพันธ์ระหว่างปัจจัยต่าง ๆ โดยลดมิติข้อมูลของชุดข้อมูล
ขั้นตอนสำหรับอัลกอริทึม PCA
เวิร์กโฟลว์ทีละขั้นตอนของการวิเคราะห์องค์ประกอบหลัก:
- ทำให้ข้อมูลเป็นมาตรฐาน: PCA ต้องการข้อมูลที่เป็นมาตรฐาน ดังนั้นขั้นตอนแรกคือทำให้ข้อมูลเป็นมาตรฐานเพื่อให้แน่ใจว่าตัวแปรทั้งหมดมีค่าเฉลี่ยเป็น 0 และค่าเบี่ยงเบนมาตรฐานเป็น 1
- คำนวณเมทริกซ์ความแปรปรวนร่วม:ขั้นตอนต่อไปคือการคำนวณเมทริกซ์ความแปรปรวนร่วมของข้อมูลมาตรฐาน เมทริกซ์นี้แสดงให้เห็นว่าตัวแปรแต่ละตัวมีความสัมพันธ์กับตัวแปรอื่นๆ ในชุดข้อมูลอย่างไร
- คำนวณเวกเตอร์ลักษณะเฉพาะและค่าลักษณะเฉพาะ:จากนั้นจะคำนวณเวกเตอร์ลักษณะเฉพาะและค่าลักษณะเฉพาะของเมทริกซ์ความแปรปรวนร่วม เวกเตอร์ลักษณะเฉพาะแสดงถึงทิศทางที่ข้อมูลมีความแตกต่างกันมากที่สุด ในขณะที่ค่าลักษณะเฉพาะแสดงถึงจำนวนของการแปรผันตามเวกเตอร์ลักษณะเฉพาะแต่ละตัว
- เลือกส่วนประกอบหลัก:ส่วนประกอบหลักคือเวกเตอร์ลักษณะเฉพาะที่มีค่าลักษณะเฉพาะสูงสุด ส่วนประกอบเหล่านี้แสดงถึงทิศทางที่ข้อมูลมีความแตกต่างกันมากที่สุด และใช้เพื่อแปลงข้อมูลต้นฉบับให้เป็นพื้นที่ที่มีมิติต่ำกว่า
- แปลงข้อมูล:ขั้นตอนสุดท้ายคือการแปลงข้อมูลต้นฉบับเป็นพื้นที่มิติล่างที่กำหนดโดยส่วนประกอบหลัก
1. ปรับข้อมูลให้เป็นมาตรฐาน
สร้างมาตรฐานข้อมูลก่อนดำเนินการ PCA เพื่อให้แน่ใจว่าแต่ละคุณลักษณะมีค่าเฉลี่ย = 0 และความแปรปรวน = 1
2. สร้างเมทริกซ์ความแปรปรวนร่วม
สร้างเมทริกซ์สี่เหลี่ยมเพื่อแสดงความสัมพันธ์ระหว่างคุณลักษณะสองอย่างขึ้นไปในชุดข้อมูลหลายมิติ
3. ค้นหาค่าลักษณะเฉพาะและค่าลักษณะเฉพาะ
คำนวณเวกเตอร์ลักษณะเฉพาะ/เวกเตอร์หน่วยและค่าลักษณะเฉพาะ ค่าลักษณะเฉพาะเป็นสเกลาร์ที่เราคูณเวกเตอร์ลักษณะเฉพาะของเมทริกซ์ความแปรปรวนร่วม
4. เรียงลำดับไอเกนเวกเตอร์ตามลำดับสูงสุดไปต่ำสุด และเลือกจำนวนองค์ประกอบหลัก
ตอนนี้คุณเข้าใจแล้วว่า PCA ในการเรียนรู้ของเครื่องทำงานอย่างไร
การประยุกต์ใช้ PCA ในการเรียนรู้ของเครื่อง
- PCA ใช้เพื่อแสดงภาพข้อมูลหลายมิติ
- ใช้เพื่อลดจำนวนมิติในข้อมูลด้านสุขภาพ
- PCA สามารถช่วยปรับขนาดรูปภาพได้
- สามารถใช้ในด้านการเงินเพื่อวิเคราะห์ข้อมูลหุ้นและคาดการณ์ผลตอบแทน
- PCA ช่วยในการค้นหารูปแบบในชุดข้อมูลมิติสูง
ต่อไปนี้คือข้อดีบางประการของการวิเคราะห์องค์ประกอบหลัก:
- การลดขนาด:ด้วยการกำหนดคุณสมบัติหรือส่วนประกอบที่สำคัญที่สุด PCA จะลดขนาดข้อมูลลง ซึ่งเป็นหนึ่งในประโยชน์หลัก สิ่งนี้มีประโยชน์เมื่อข้อมูลเริ่มต้นมีตัวแปรจำนวนมาก ดังนั้นจึงยากต่อการแสดงภาพหรือวิเคราะห์
- การสกัดคุณลักษณะ: PCA ยังสามารถใช้เพื่อรับคุณสมบัติหรือองค์ประกอบใหม่จากข้อมูลต้นฉบับที่อาจมีความลึกซึ้งหรือเข้าใจได้มากกว่าคุณลักษณะดั้งเดิม สิ่งนี้มีประโยชน์อย่างยิ่งเมื่อคุณสมบัติเริ่มต้นมีความสัมพันธ์กันหรือมีสัญญาณรบกวน
- การแสดงข้อมูล:ด้วยการฉายข้อมูลไปยังองค์ประกอบหลักสองสามส่วนแรก PCA สามารถใช้เพื่อแสดงภาพข้อมูลมิติสูงในสองหรือสามมิติ สิ่งนี้สามารถช่วยในการค้นหารูปแบบข้อมูลหรือคลัสเตอร์ที่อาจมองไม่เห็นในพื้นที่มิติสูงเริ่มต้น
- การลดสัญญาณรบกวน:โดยการค้นหาสัญญาณหรือรูปแบบพื้นฐานในข้อมูล ยังสามารถใช้ PCA เพื่อลดผลกระทบของสัญญาณรบกวนหรือข้อผิดพลาดในการวัดในข้อมูล
- Multicollinearity:เมื่อตัวแปรตั้งแต่ 2 ตัวขึ้นไปมีความสัมพันธ์กันอย่างมาก ข้อมูลจะมี Multicollinearity ซึ่ง PCA สามารถจัดการได้ PCA สามารถลดผลกระทบของ multicollinearity ในการวิเคราะห์ได้โดยการระบุคุณสมบัติหรือส่วนประกอบที่สำคัญที่สุด
ต่อไปนี้คือข้อเสียบางประการของการวิเคราะห์องค์ประกอบหลัก:
- การตีความ:แม้ว่าการวิเคราะห์องค์ประกอบหลัก (PCA) จะมีประสิทธิภาพในการลดมิติของข้อมูลและระบุรูปแบบ แต่องค์ประกอบหลักที่ได้นั้นไม่ง่ายที่จะเข้าใจหรืออธิบายในแง่ของคุณลักษณะดั้งเดิมเสมอไป
- การสูญหายของข้อมูล: PCA เกี่ยวข้องกับการเลือกส่วนย่อยของคุณสมบัติหรือส่วนประกอบที่สำคัญที่สุดเพื่อลดขนาดของข้อมูล แม้ว่าสิ่งนี้จะมีประโยชน์สำหรับการปรับปรุงข้อมูลและลดสัญญาณรบกวน หากคุณสมบัติที่สำคัญไม่รวมอยู่ในส่วนประกอบที่เลือก อาจส่งผลให้ข้อมูลสูญหายได้เช่นกัน
- ค่าผิดปกติ:เนื่องจาก PCA มีความอ่อนไหวต่อความผิดปกติในข้อมูล ส่วนประกอบหลักที่เป็นผลลัพธ์อาจได้รับผลกระทบอย่างมาก เมทริกซ์ความแปรปรวนร่วมสามารถถูกบิดเบือนโดยค่าผิดปกติ ซึ่งทำให้ระบุลักษณะที่สำคัญที่สุดได้ยากขึ้น
- การปรับสเกล: PCA ตั้งสมมติฐานว่าข้อมูลถูกปรับขนาดและรวมศูนย์ ซึ่งอาจเป็นข้อเสียเปรียบในบางสถานการณ์ ส่วนประกอบหลักที่เป็นผลลัพธ์อาจอธิบายรูปแบบพื้นฐานในข้อมูลได้ไม่ถูกต้อง หากข้อมูลไม่ได้ปรับขนาดอย่างเหมาะสม
- ความซับซ้อนของการคำนวณ:สำหรับชุดข้อมูลขนาดใหญ่ การคำนวณค่าลักษณะเฉพาะและค่าลักษณะเฉพาะของเมทริกซ์ความแปรปรวนร่วมอาจมีค่าใช้จ่ายสูง สิ่งนี้อาจจำกัดความสามารถของ PCA ในการปรับขนาดและทำให้ไร้ประโยชน์สำหรับการใช้งานบางอย่าง
Singular Value Decomposition (SVD) เป็นเครื่องมือทางคณิตศาสตร์อันทรงพลังที่ให้การแยกตัวประกอบของเมทริกซ์ที่กำหนดออกเป็นสามเมทริกซ์: เมทริกซ์รวม เมทริกซ์แนวทแยง และทรานสโพสคอนจูเกต เป็นรูปแบบหนึ่งของการแยกตัวประกอบเมทริกซ์ที่สามารถนำไปใช้ในด้านต่างๆ รวมถึงการเรียนรู้ด้วยเครื่อง
ในแมชชีนเลิร์นนิง SVD มักจะใช้สำหรับการลดขนาด การบีบอัดข้อมูล และการดีนอยส์ เป้าหมายคือลดจำนวนมิติข้อมูลในชุดข้อมูลโดยรักษาข้อมูลไว้ให้มากที่สุด ด้วยการลดมิติของข้อมูล SVD ช่วยลดคำสาปของมิติ ซึ่งเป็นปัญหาทั่วไปในการเรียนรู้ของเครื่อง ซึ่งประสิทธิภาพของอัลกอริทึมจะลดลงเมื่อจำนวนคุณลักษณะในข้อมูลเพิ่มขึ้น
SVD ทำงานอย่างไร
SVD ทำงานโดยการค้นหาแกนมุมฉากที่จับความผันแปรของข้อมูลได้ดีที่สุด แกนตั้งฉากที่เรียกว่าเวกเตอร์เอกพจน์จะสอดคล้องกับองค์ประกอบหลักของข้อมูล ค่าเอกพจน์ในเมทริกซ์เส้นทแยงมุมคือขนาดของส่วนประกอบเหล่านี้ ด้วยการเลือกเฉพาะค่าเอกพจน์และเวกเตอร์ k อันดับแรก เราสามารถลดมิติของข้อมูลเป็น k มิติได้
ข้อดีของ SVD
ต่อไปนี้เป็นข้อดีบางประการของการแจกแจงค่าเอกพจน์:
- การลดขนาด: SVD สามารถลดจำนวนของขนาดในข้อมูลที่มีมิติสูง ทำให้มองเห็นภาพและวิเคราะห์ได้ง่ายขึ้น
- แอปพลิเคชันในด้านต่างๆ: SVD มีแอปพลิเคชันต่างๆ ในด้านต่างๆ เช่น การประมวลผลภาพ การประมวลผลภาษาธรรมชาติ และระบบคำแนะนำ
- การตีความ:ค่าเอกพจน์และเวกเตอร์เอกพจน์ที่ได้รับจาก SVD สามารถให้ข้อมูลเชิงลึกเกี่ยวกับโครงสร้างของข้อมูลและความสัมพันธ์ระหว่างคุณลักษณะต่างๆ
ต่อไปนี้เป็นข้อเสียบางประการของการแจกแจงค่าเอกพจน์:
- ข้อจำกัดในความสัมพันธ์ที่ไม่ใช่เชิงเส้น: SVD ถือว่าความสัมพันธ์ระหว่างคุณลักษณะต่างๆ เป็นเชิงเส้น ซึ่งอาจจำกัดความสามารถในการจับความสัมพันธ์ที่ไม่ใช่เชิงเส้นที่ซับซ้อน
- SVD มีความอ่อนไหวต่อขนาดของคุณสมบัติ
บล็อกนี้จะช่วยให้คุณเข้าใจแนวคิดทฤษฎี ขณะนี้ฉันกำลังใช้การคำนวณทางคณิตศาสตร์เพื่อใช้กับแนวคิด PCA และ SVD ต่างๆ
“ล้มเหลวในการสร้างสรรค์ ดีกว่าประสบความสำเร็จในการเลียนแบบ”