เริ่มต้นใช้งานเริ่มต้นใช้งานได้ฟรี

PCA ไม่ได้เรียนรู้ส่วนประกอบย่อย

ต่างจาก NMF ตรงที่ PCA ไม่ได้ เรียนรู้ส่วนประกอบย่อยของสิ่งต่าง ๆ component ของ PCA ไม่ได้สอดคล้องกับหัวข้อ (ในกรณีของเอกสาร) หรือส่วนประกอบของภาพ แม้จะฝึกกับข้อมูลภาพก็ตาม ลองตรวจสอบด้วยตัวเองโดยดู component ของโมเดล PCA ที่ fit กับชุดข้อมูลภาพตัวเลข LED จากแบบฝึกหัดก่อนหน้า ภาพต่าง ๆ พร้อมใช้งานในรูปแบบ array 2 มิติชื่อ samples นอกจากนี้ยังมีฟังก์ชัน show_as_image() เวอร์ชันที่ดัดแปลงแล้ว ซึ่งจะแสดงพิกเซลเป็นสีแดงหากค่าเป็นลบ

หลังจากส่งคำตอบแล้ว สังเกตว่า component ของ PCA ไม่ได้แทนส่วนประกอบที่มีความหมายของภาพตัวเลข LED เลย!

แบบฝึกหัดนี้เป็นส่วนหนึ่งของหลักสูตร

Unsupervised Learning ใน Python

ดูคอร์ส

คำแนะนำการฝึกหัด

  • Import PCA จาก sklearn.decomposition
  • สร้าง instance ของ PCA ชื่อ model โดยกำหนดให้มี 7 components
  • ใช้เมธอด .fit_transform() ของ model กับ samples แล้วกำหนดผลลัพธ์ให้กับตัวแปร features
  • สำหรับแต่ละ component ของโมเดล (เข้าถึงผ่าน model.components_) ให้เรียกใช้ฟังก์ชัน show_as_image() กับ component นั้นภายใน loop

แบบฝึกหัดเชิงโต้ตอบแบบลงมือทำ

ลองทำแบบฝึกหัดนี้โดยเติมโค้ดตัวอย่างนี้ให้สมบูรณ์

# Import PCA
____

# Create a PCA instance: model
model = ____

# Apply fit_transform to samples: features
features = ____

# Call show_as_image on each component
for component in ____:
    ____
    
แก้ไขและรันโค้ด