โครงข่ายประสาทเทียมแบบ Deep Image Prior
สรุปใจความสำคัญ
- ไม่ต้องใช้ชุดข้อมูลฝึกสอนล่วงหน้า (Training Data) แต่ใช้รูปภาพเพียงรูปเดียวในการประมวลผล
- ใช้โครงสร้างของโครงข่ายประสาทเทียมแบบคอนโวลูชันเป็นตัวกำหนดเงื่อนไขเบื้องต้น (Prior) แทนการใช้ข้อมูลสถิติจากภายนอก
- อาศัยหลักการที่โครงข่ายเรียนรู้สัญญาณภาพที่เป็นประโยชน์ได้เร็วกว่าสัญญาณรบกวน เพื่อป้องกันการเกิด Overfitting
- มักใช้โครงสร้างที่คล้าย U-Net แต่ตัดการเชื่อมต่อข้าม (Skip Connections) ออกเพื่อประสิทธิภาพที่ดีขึ้น
Deep Image Prior (DIP) คือรูปแบบหนึ่งของโครงข่ายประสาทเทียมแบบคอนโวลูชัน (Convolutional Neural Network - CNN) ที่ถูกนำมาใช้เพื่อปรับปรุงคุณภาพของรูปภาพ โดยมีลักษณะเด่นที่สำคัญคือ ไม่ต้องใช้ข้อมูลสำหรับฝึกสอน (Training Data) ล่วงหน้า แต่จะใช้เพียงรูปภาพที่ต้องการปรับปรุงเพียงรูปเดียวเป็นพื้นฐานในการทำงาน
ในกระบวนการนี้ โครงข่ายประสาทเทียมจะถูกกำหนดค่าเริ่มต้นแบบสุ่ม (Randomly Initialized) และถูกนำมาใช้เป็นตัวกำหนดเงื่อนไขเบื้องต้น (Prior) เพื่อแก้ไขปัญหาทางคณิตศาสตร์แบบผกผัน (Inverse Problems) เช่น การลดสัญญาณรบกวน (Noise Reduction), การเพิ่มความละเอียดของภาพ (Super-resolution) และการเติมเต็มส่วนที่ขาดหายไปของภาพ (Inpainting) โดยสถิติของรูปภาพจะถูกจับใจความผ่านโครงสร้างของตัวสร้างภาพแบบคอนโวลูชัน แทนที่จะเกิดจากการเรียนรู้จากชุดข้อมูลขนาดใหญ่
หลักการทำงานและวิธีการ
พื้นฐานทางคณิตศาสตร์
ปัญหาทางคณิตศาสตร์แบบผกผัน เช่น การลดสัญญาณรบกวนหรือการเติมเต็มภาพ สามารถเขียนให้อยู่ในรูปของงานการหาค่าที่เหมาะสมที่สุด (Optimization Task) ดังนี้:

โดยที่:
- x คือ รูปภาพที่ต้องการกู้คืน

รูปภาพเป้าหมาย - x0 คือ รูปภาพที่เสียหายหรือมีสัญญาณรบกวน

รูปภาพที่เสียหาย - E(x; x0) คือ พจน์ข้อมูล (Data Term) ที่ขึ้นอยู่กับลักษณะของงาน

ฟังก์ชันวัดความแตกต่างระหว่างภาพ - R(x) คือ ตัวปรับระเบียบ (Regularizer) เพื่อควบคุมความราบเรียบหรือลักษณะของภาพ
ในระบบโครงข่ายประสาทเทียมทั่วไป จะมีการสร้างตัวสร้าง/ตัวถอดรหัส (Generator/Decoder) ที่เขียนแทนด้วย x = fθ(z) ซึ่งทำหน้าที่แปลงเวกเตอร์รหัสสุ่ม (Random Code Vector) z ให้กลายเป็นรูปภาพ x


รายละเอียดการประมวลผล
ในแนวทางของ Deep Image Prior นั้น ตัวปรับระเบียบ R(x) จะถูกแทนที่ด้วย "เงื่อนไขเบื้องต้นโดยนัย" (Implicit Prior) ที่ถูกบรรจุอยู่ในโครงสร้างของโครงข่ายประสาทเทียม ซึ่งหมายความว่ารูปภาพที่สามารถสร้างได้จากโครงข่ายนี้จะมีค่า R(x) = 0 ในขณะที่รูปภาพที่ไม่สามารถสร้างได้จะมีค่าเป็นอนันต์



กระบวนการนี้จะนำไปสู่การหาค่าพารามิเตอร์ θ ที่เหมาะสมที่สุดผ่านการลดค่าความผิดพลาด (Gradient Descent) โดยเริ่มจากค่าเริ่มต้นแบบสุ่ม เพื่อให้ได้ผลลัพธ์การกู้คืนภาพ x




การป้องกันการเรียนรู้เกิน (Overfitting)
แม้ว่าพารามิเตอร์ θ จะสามารถถูกใช้เพื่อกู้คืนรูปภาพใดๆ รวมถึงสัญญาณรบกวน (Noise) แต่โครงข่ายประสาทเทียมมีแนวโน้มที่จะเรียนรู้สัญญาณที่เป็นประโยชน์ (Signal) ได้เร็วกว่าสัญญาณรบกวน เนื่องจากสัญญาณรบกวนมีความต้านทานสูง (High Impedance) ในขณะที่สัญญาณภาพมีต้านทานต่ำ ดังนั้น หากกำหนดจำนวนรอบในการประมวลผล (Iterations) ให้เหมาะสม ไม่ให้มากเกินไป โครงข่ายจะหยุดทำงานก่อนที่จะเริ่มเรียนรู้สัญญาณรบกวน ทำให้ได้ภาพที่สะอาดและมีคุณภาพ
โครงสร้างของแบบจำลอง
โดยทั่วไป Deep Image Prior มักใช้โครงสร้างที่คล้ายกับ U-Net แต่มีความแตกต่างที่สำคัญคือ ไม่มีการเชื่อมต่อข้าม (Skip Connections) ระหว่างบล็อกตัวเข้ารหัส (Encoder) และตัวถอดรหัส (Decoder) เนื่องจากผู้สร้างพบว่าการมีโครงสร้างที่ลึกขึ้นนั้นเป็นประโยชน์ แต่การเชื่อมต่อข้ามซึ่งมักใช้ในงานจำแนกประเภทภาพ (Semantic Segmentation) กลับส่งผลเสียต่อประสิทธิภาพในการกู้คืนภาพในลักษณะนี้
การประยุกต์ใช้งาน
การลดสัญญาณรบกวน (Denoising)
หลักการคือการกู้คืนภาพ x จากภาพที่มีสัญญาณรบกวน x0 โดยที่ x0 = x + ϵ




ในการทำงาน จะใช้ฟังก์ชันพลังงานกำลังสอง (Quadratic Energy Function) เป็นพจน์ข้อมูล เพื่อหาค่า θ ที่ทำให้ภาพที่สร้างจากโครงข่ายมีความใกล้เคียงกับภาพที่มีสัญญาณรบกวนมากที่สุด โดยที่โครงข่ายจะกรองสัญญาณรบกวนออกไปโดยธรรมชาติผ่านโครงสร้างของมันเอง
คำถามที่พบบ่อย
Deep Image Prior คืออะไร?
คือเทคนิคการใช้โครงข่ายประสาทเทียมแบบคอนโวลูชัน (CNN) เพื่อปรับปรุงคุณภาพรูปภาพ เช่น การลดสัญญาณรบกวน หรือการเติมเต็มภาพ โดยไม่ต้องใช้ข้อมูลฝึกสอนล่วงหน้า แต่ใช้โครงสร้างของตัวมันเองเป็นตัวกรองสัญญาณรบกวน
ทำไม DIP ถึงไม่ต้องใช้ข้อมูลฝึกสอน?
เพราะ DIP ใช้โครงสร้างของโครงข่ายประสาทเทียม (Architecture) เป็น 'Prior' หรือเงื่อนไขเบื้องต้น ซึ่งโครงสร้างนี้มีแนวโน้มที่จะสร้างรูปภาพที่มีโครงสร้างเป็นธรรมชาติมากกว่าการสร้างสัญญาณรบกวนแบบสุ่ม
การ Overfitting ใน DIP ทำงานอย่างไร?
ใน DIP การ Overfitting คือการที่โครงข่ายเริ่มเรียนรู้และสร้างสัญญาณรบกวนกลับคืนมาในภาพ หากเราหยุดการประมวลผลในรอบ (Iteration) ที่เหมาะสม โครงข่ายจะกู้คืนเฉพาะสัญญาณภาพที่สำคัญและทิ้งสัญญาณรบกวนไว้
DIP แตกต่างจาก U-Net ทั่วไปอย่างไร?
DIP มักจะใช้โครงสร้างที่คล้าย U-Net แต่จะนำการเชื่อมต่อข้าม (Skip Connections) ออก เนื่องจากพบว่าการเชื่อมต่อดังกล่าวส่งผลเสียต่อการกู้คืนภาพในงานประเภทนี้

