ข้ามไปยังเนื้อหา

ฝึกโมเดลและนำไปใช้หลายเป้าหมาย

Training and deploying to several targets · หน้าหลักสูตร

เตรียม dataset ที่สมดุล ฝึกโมเดลของเราเองใน Docker บีบเป็น int8 แล้วพาไฟล์เดียวไปรันบนเว็บ Cortex-A และ MCU ผ่าน Vela พร้อมวัด parity

สร้างโมเดลของตัวเองตั้งแต่ข้อมูลจนถึงชิป และวัดให้ได้ว่าแต่ละเป้าหมายแลกอะไรกับอะไร

บทเรียน เรื่อง เวลา (นาที) สไลด์
5.1 วิศวกรรมชุดข้อมูล: สมดุลคลาส หน้าต่าง และการแบ่ง train/val/test 65 slides.md
5.2 ลงมือทำ: เก็บ dataset ที่สมดุลบนบอร์ดแล้วแบ่งบน PC 75 slides.md
5.3 ฝึกโมเดลใน Docker: หนึ่งชิ้นงาน สี่เป้าหมาย 65 slides.md
5.4 ข้างในการฝึก: Keras, Conv1D, gradient descent, int8 และ confusion matrix 70 slides.md
5.5 ลงมือทำ: เติมสคริปต์ฝึกแล้วรันใน Docker 75 slides.md
5.6 รันโมเดลบนเว็บ: LiteRT.js, int8 I/O และ parity 70 slides.md
5.7 ลงมือทำ: verdict บนเว็บให้ตรงกับ PC และเรื่องราว Cortex-A 75 slides.md
5.8 quantize และ Vela: เอาโมเดลของเราขึ้น Ethos-U55 70 slides.md
5.9 ลงมือทำ: เทียบสามเป้าหมาย MCU, Web และ PC 75 slides.md

บทเรียนมาเป็นชุด บทเรียนแนวคิดตามด้วยบทเรียน ลงมือทำ ที่มีไฟล์ฝึก เฉลย และแล็บ

ผ่านโมดูลนี้เมื่อทำได้ครบทุกข้อ (รายละเอียดอยู่ในหัวข้อ แล็บ ของบทเรียนลงมือทำ):

  • dataset จากบอร์ดที่สะอาด สมดุล และแบ่งแล้ว ทุกกอง (train/val/test) มีครบสามคลาสในสัดส่วนใกล้เคียงกัน (บทเรียน 5.2)
  • ฝึกโมเดล Keras ใน Docker สำเร็จ ได้รายงาน float32 accuracy, int8 accuracy และ confusion matrix บนชุดทดสอบที่โมเดลไม่เคยเห็น พร้อมไฟล์ model_int8.tflite และ .norm.npz (บทเรียน 5.5)
  • verdict ของไฟล์ web ตรงกับฝั่ง PC ภายในเกณฑ์ (max|score_pc − score_web| ≤ TOL และคลาสที่ชนะตรงกัน) พร้อมอธิบายได้ว่าทำไมไม่จำเป็นต้องเท่ากันทุกบิต (บทเรียน 5.7)
  • ตารางเทียบสามเป้าหมาย (MCU, Web, PC) ด้วยตัวเลขจริง อธิบายได้ว่าทำไม accuracy ตรงกันแต่ latency ต่างกัน และทำไม MCU ต้องผ่าน Vela (บทเรียน 5.9)

TESA Open Knowledge · © 2026 สมาคมสมองกลฝังตัวไทย (TESA) · CC BY-NC 4.0

เนื้อหาเผยแพร่ภายใต้ CC BY-NC 4.0 นำไปใช้ต่อในงานที่ไม่ใช่เพื่อการค้าได้ โปรดอ้างอิงสมาคมสมองกลฝังตัวไทย (TESA) ทุกครั้ง · วิธีอ้างอิง TESA