NanoNAS: การค้นหาสถาปัตยกรรมโครงข่ายประสาทเทียมสำหรับ TinyML บนไมโครคอนโทรลเลอร์
การนำโมเดลโครงข่ายประสาทเทียมเชิงสังวรรค (Convolutional Neural Network: CNN) ไปใช้งานบนอุปกรณ์ไมโครคอนโทรลเลอร์ที่มีทรัพยากรจำกัด เช่น ตระกูล STM32 ยังคงเป็นความท้าทายสำคัญในด้าน TinyML เนื่องจากข้อจำกัดด้านหน่วยความจำ RAM, Flash และปริมาณการคำนวณ (MACCs) ที่ต่ำมาก การออกแบบสถาปัตยกรรมโมเดลด้วยมือให้ตอบโจทย์ทั้งความแม่นยำและข้อจำกัดฮาร์ดแวร์จึงเป็นกระบวนการที่ซับซ้อนและใช้เวลานาน
งานวิจัยนี้นำเสนอ NanoNAS ซึ่งเป็นเฟรมเวิร์กการค้นหาสถาปัตยกรรมโครงข่ายประสาทเทียมแบบอัตโนมัติ (Neural Architecture Search: NAS) ที่ออกแบบมาโดยเฉพาะสำหรับการนำไปใช้งานบนไมโครคอนโทรลเลอร์กำลังไฟต่ำมาก NanoNAS ทำการค้นหาสถาปัตยกรรม CNN ในปริภูมิพารามิเตอร์สองมิติ ได้แก่ จำนวนตัวกรองเชิงสังวรรคเริ่มต้น (k) และจำนวนชั้นเซลล์เพิ่มเติม (c) โดยใช้ Bayesian Optimization ผ่าน Tree-structured Parzen Estimator (TPE) ร่วมกับ Optuna จำนวน 100 trials เพื่อค้นหาสถาปัตยกรรมที่เหมาะสมที่สุดภายใต้ข้อจำกัดฮาร์ดแวร์ที่กำหนด ได้แก่ RAM ≤ 50 KB, Flash ≤ 100 KB และ MACCs ≤ 10 ล้าน โดยใช้ฟังก์ชันคะแนนถ่วงน้ำหนัก S = α·Acc − β·R_usage (α = β = 0.5) เพื่อปรับสมดุลระหว่างความแม่นยำกับประสิทธิภาพการใช้ทรัพยากร
สถาปัตยกรรมที่ค้นพบจะถูกฝึกสอนด้วย 5-Fold Stratified K-Fold Cross-Validation จำนวน 100 epochs จากนั้นแปลงเป็นโมเดล TensorFlow Lite แบบ Int8 Post-training Quantization เพื่อลดขนาดโมเดลและเพิ่มความเร็วในการอนุมาน
การทดลองดำเนินการบนชุดข้อมูล 5 ชุด ได้แก่ Animals-3 (3 คลาส), Flowers-4 (4 คลาส), MelanomaSkinCancer (2 คลาส), MNIST (10 คลาส) และ Visual Wake Words (2 คลาส) ผลการทดลองพบว่า NanoNAS สามารถค้นหาสถาปัตยกรรม CNN ที่มีขนาดกะทัดรัด โดยมี k ∈ [3, 5] และ c ∈ [4, 5] ซึ่งทุกโมเดลอยู่ภายในข้อจำกัด RAM 50 KB และ Flash 100 KB โดยโมเดลที่เล็กที่สุด (MNIST) ใช้ RAM เพียง 9.2 KB
ผลลัพธ์ด้านความแม่นยำอยู่ในช่วง 85–96% บนชุดข้อมูลมาตรฐาน โดยการทำ Int8 Quantization ส่งผลให้ความแม่นยำลดลงเพียง เฉลี่ย -0.15% เท่านั้น ในขณะที่ความเร็วในการอนุมาน (inference latency) เร็วขึ้น เฉลี่ย 4.9 เท่า เมื่อเทียบกับโมเดล Float32 โดยชุดข้อมูล Visual Wake Words มีความเร็วเพิ่มขึ้นสูงสุดถึง 10.3 เท่า นอกจากนี้ กระบวนการค้นหาแบบ Bayesian สามารถลู่เข้าสู่ค่าที่ดีที่สุดภายใน 30–50 trials และมีอัตราสถาปัตยกรรมที่ไม่ผ่านเกณฑ์เพียง 1–16% แสดงถึงปริภูมิการค้นหาที่ปรับเทียบได้เหมาะสม
ผลการวิจัยแสดงให้เห็นว่า NanoNAS เป็นเครื่องมือที่มีประสิทธิภาพสำหรับการค้นหาสถาปัตยกรรม CNN แบบอัตโนมัติที่เหมาะสมกับไมโครคอนโทรลเลอร์ระดับ STM32 โดยสามารถรักษาสมดุลระหว่างความแม่นยำสูงกับการใช้ทรัพยากรฮาร์ดแวร์ต่ำได้อย่างมีประสิทธิผล
คำสำคัญ: การค้นหาสถาปัตยกรรมโครงข่ายประสาทเทียม, TinyML, ไมโครคอนโทรลเลอร์, การเพิ่มประสิทธิภาพแบบเบย์เซียน, การควอนไทซ์แบบจำนวนเต็ม 8 บิต
