Zant เป็น SDK แบบโอเพ่นซอร์สที่รองรับหลายแพลตฟอร์ม พัฒนาโดยใช้ภาษา Zig และออกแบบมาเพื่อทำให้การใช้งาน Neural Network (NN) บนไมโครคอนโทรลเลอร์เป็นเรื่องง่ายขึ้น โดยประกอบด้วยชุดเครื่องมือสำหรับนำเข้า ปรับแต่ง และปรับใช้ Neural Network บนฮาร์ดแวร์ระดับล่าง
ทีมพัฒนาของโครงการสร้าง Zant (เดิมชื่อ Zig-ant) ขึ้นมา หลังจากพบว่าไมโครคอนโทรลเลอร์หลายรุ่นขาดไลบรารีสำหรับ deep learning ที่มีประสิทธิภาพ จึงออกแบบให้รองรับหลายแพลตฟอร์ม เช่น ไมโครคอนโทรลเลอร์ที่ใช้สถาปัตยกรรม ARM Cortex-M, RISC-V หรือแม้แต่แพลตฟอร์ม x86 แตกต่างจากแพลตฟอร์มอย่าง Edge Impulse ที่เน้นการสร้างเครือข่าย, Zant มุ่งเน้นไปที่การนำไปใช้งานจริง โดยให้ผลลัพธ์เป็นไลบรารีแบบสแตติก (static) ที่ได้รับการปรับแต่งอย่างสูง พร้อมสำหรับการผสานรวมเข้ากับระบบงานที่มีอยู่แล้ว
จุดเด่นของ Zant:
- ประสิทธิภาพที่ได้รับการปรับแต่ง – รองรับเทคนิคต่างๆ เช่น การควอนไทเซชัน (Quantization), การตัดแต่งเครือข่าย (Pruning) และการเร่งความเร็วด้วยฮาร์ดแวร์ เช่น SIMD และการถ่ายโหลดไปยัง GPU (GPU Offloading)
- ใช้หน่วยความจำน้อย – Zant ใช้เทคนิคการจัดการหน่วยความจำ เช่น Memory Pooling, การจัดสรรหน่วยความจำแบบสแตติก (Static Allocation) และการเพิ่มประสิทธิภาพของบัฟเฟอร์ (Buffer Optimization) เพื่อให้ทำงานได้บนอุปกรณ์ที่มีทรัพยากรจำกัด
- ง่ายต่อการผสานรวม – ด้วยการออกแบบแบบโมดูลาร์, API ที่ชัดเจน และตัวอย่าง/เอกสารประกอบที่ครบถ้วน ทำให้การนำ Zant ไปใช้ในโปรเจกต์ของคุณเป็นเรื่องง่าย
Zant เหมาะสำหรับแอปพลิเคชัน computer vision ที่ขับเคลื่อนด้วย AI (เช่น การตรวจจับวัตถุหรือการตรวจสอบด้วยภาพ), การบำรุงรักษาเชิงคาดการณ์ (Predictive Maintenance) และการเพิ่มความสามารถด้าน AI ให้กับระบบอัตโนมัติ เช่น โดรนและหุ่นยนต์ ปัจจุบัน Zant SDK ยังอยู่ในระหว่างการพัฒนา แต่สามารถพบซอร์สโค้ดและกำหนดการของโครงการได้บน GitHub
ขณะนี้ Zant จะสามารถรัน Inference ของ MNIST บน Raspberry Pi Pico 2 ได้ โดยใช้โมเดลที่นำเข้าจาก ONNX และคาดว่าสามารถทำงานบนคอร์ Arm หรือ RISC-V ได้ (รอการยืนยัน) ตามเป้าหมายของโครงการที่รองรับหลายแพลตฟอร์ม ขั้นตอนถัดไปคือการทำให้ YOLO ทำงานได้อย่างมีประสิทธิภาพบน Raspberry Pi Pico 2 ภายในสิ้นเดือนเมษายน
สิ่งที่ต้องทำเพิ่มเติม ได้แก่ การพัฒนาตัวติดตามรูปร่าง (Shape Tracker) เพื่อเพิ่มประสิทธิภาพการคำนวณเทนเซอร์ (optimize tensor operations), การสร้างอินเทอร์เฟซส่วนหน้า (Frontend Interface) เพื่อให้ใช้งานไลบรารีได้ง่ายขึ้น, การปรับปรุงการสร้างโค้ด (Code Generation), การขยายการรองรับ ONNX และการสนับสนุนไมโครคอนโทรลเลอร์และสถาปัตยกรรมเพิ่มเติม นอกเหนือจาก Raspberry Pi RP2350 ตามกำหนดการ ไลบรารี Zigant อาจบรรลุเป้าหมายเหล่านี้ภายในสิ้นไตรมาสที่ 3 ปี 2025
นี่ไม่ใช่ครั้งแรกที่มีการนำ Machine Learning มาใช้บนไมโครคอนโทรลเลอร์ ตัวอย่างเช่น Edge Impulse ที่กล่าวถึงก่อนหน้านี้ รวมถึง BitNetMCU สำหรับ CH32V003 RISC-V MCU, TinyMax สำหรับไมโครคอนโทรลเลอร์ที่เข้ากันได้กับ Arduino และ TensorFlow Lite สำหรับ MCU แต่จากที่เข้าใจจุดเด่นหลักของ Zant คือความสามารถในการนำโมเดล Neural Network ไปใช้งานบนแพลตฟอร์มที่หลากหลายได้ง่าย โดยแทบจะไม่ต้องแก้ไขโค้ดน้หรือไม่ต้องแก้ไขเลย
แปลจากบทความภาษาอังกฤษ : Zant – An open-source Zig SDK for neural network deployment on microcontrollers

บรรณาธิการข่าวและบทความภาษาไทย CNX Software ได้มีความสนใจในด้านเทคโนโลยี โดยเฉพาะ Smart Home และ IoT