การกำจัดสัญญาณรบกวนด้วย Autoencoder
ตอนนี้ได้สร้างโมเดล autoencoder แล้ว มาดูกันว่ามันรับมือกับงานที่ท้าทายกว่าเดิมได้ดีแค่ไหน
ขั้นแรก จะสร้างโมเดลที่ทำหน้าที่เข้ารหัสรูปภาพ แล้วใช้ show_encodings() เพื่อดูว่าตัวเลขแต่ละตัวถูกแทนด้วยข้อมูลอย่างไร สำหรับการสร้าง encoder จะนำ autoencoder ที่ฝึกไว้แล้วมาใช้ โดยใช้เฉพาะครึ่งแรกของโครงข่าย ซึ่งประกอบด้วย input layer และ bottleneck output วิธีนี้จะได้ผลลัพธ์เป็นเวกเตอร์ขนาด 32 ตัวเลข ซึ่งแทนรูปภาพต้นฉบับในรูปแบบที่เข้ารหัสแล้ว
จากนั้น จะนำ autoencoder ไปใช้กับรูปภาพที่มีสัญญาณรบกวนจากชุดข้อมูล MNIST เพื่อดูว่ามันสามารถกำจัดสัญญาณรบกวนเหล่านั้นได้หรือไม่
X_test_noise ถูกโหลดไว้ใน workspace แล้ว ตัวเลขในชุดข้อมูลที่มีสัญญาณรบกวนนี้มีหน้าตาดังนี้:

มาใช้ประโยชน์จาก autoencoder กันเลย!
แบบฝึกหัดนี้เป็นส่วนหนึ่งของหลักสูตร
Deep Learning เบื้องต้นด้วย Keras
แบบฝึกหัดเชิงโต้ตอบแบบลงมือทำ
ลองทำแบบฝึกหัดนี้โดยเติมโค้ดตัวอย่างนี้ให้สมบูรณ์
# Build your encoder by using the first layer of your autoencoder
encoder = Sequential()
encoder.add(____.layers[____])
# Encode the noisy images and show the encodings for your favorite number [0-9]
encodings = ____.predict(____)
show_encodings(____, number = 1)