ML บนอุปกรณ์ (on-device ML) — การทำงานของโมเดลแมชชีนเลิร์นนิงโดยตรงบนอุปกรณ์มือถือโดยไม่ต้องส่งข้อมูลไปยังเซิร์ฟเวอร์ ตามรายงานของ Google AI, 2025 ผู้ใช้มากกว่า 70% ชอบแอปพลิเคชันที่มี on-device ML เนื่องจากความเป็นส่วนตัวและไม่มีหน่วงเวลาของเครือข่าย Core ML จาก Apple, TensorFlow Lite จาก Google และ ML Kit ช่วยให้แก้ไขงานด้าน Vision, NLP, การจดจำใบหน้าและวัตถุได้ทั้งหมดบนอุปกรณ์ — โดยไม่ต้องใช้อินเทอร์เน็ตและใช้พลังงานน้อยที่สุด
ประเด็นสำคัญ
ML บนอุปกรณ์ (on-device ML) เป็นแนวทางที่โมเดลแมชชีนเลิร์นนิงทำงานโดยตรงบนอุปกรณ์มือถือโดยไม่ต้องส่งข้อมูลไปยังเซิร์ฟเวอร์ระยะไกล ความเป็นส่วนตัว เป็นข้อได้เปรียบหลัก: ข้อมูลผู้ใช้ไม่ออกจากอุปกรณ์ จากการวิจัยของ Google (2024) ผู้ใช้ 63% ปฏิเสธฟีเจอร์ ML ที่ต้องส่งข้อมูลไปยังเซิร์ฟเวอร์ On-device ML ขจัดหน่วงเวลาของเครือข่าย ทำงานออฟไลน์ และลดการใช้พลังงานผ่านการเร่งด้วยฮาร์ดแวร์
On-device ML ประมวลผลข้อมูลในหน่วยมิลลิวินาทีแทนวินาที — สำคัญอย่างยิ่งสำหรับการจดจำใบหน้าและวัตถุแบบเรียลไทม์ ไม่ต้องเชื่อมต่ออินเทอร์เน็ต เป็นข้อดีอีกประการ: ฟีเจอร์ ML พร้อมใช้งานในโหมดเครื่องบินและในภูมิภาคที่มีการเชื่อมต่อไม่เสถียร Core ML ใช้ Neural Engine ในชิป Apple A12+ ให้การทำงาน 11 ล้านล้านครั้งต่อวินาทีโดยใช้พลังงานน้อยกว่า 1 วัตต์ สำหรับแอปพลิเคชันมือถือ on-device ML กลายเป็นมาตรฐานโดยพฤตินัยในงาน Vision, NLP และการจดจำวัตถุ
ML ในแอปพลิเคชันมือถือใช้สำหรับ การยืนยันตัวตนด้วยใบหน้า (Face ID), ฟิลเตอร์ AR ใน Snapchat และ Instagram, ตัวติดตามฟิตเนสที่มี Pose Detection, การสแกน OCR ใน Adobe Scan และการป้อนข้อมูลแบบคาดเดาในคีย์บอร์ด โมเดลที่กำหนดเองสำหรับงานเฉพาะสร้างขึ้นผ่าน Core ML (iOS) หรือ TensorFlow Lite (Android) ML Kit เหมาะสำหรับสถานการณ์ทั่วไป — การจดจำข้อความ ใบหน้า และบาร์โค้ดโดยไม่ต้องฝึกโมเดล
Core ML เป็นเฟรมเวิร์กของ Apple สำหรับเรียกใช้โมเดล ML บน iPhone, iPad, Mac และ Apple Watch โดยเลือกการเร่งด้วยฮาร์ดแวร์ที่ดีที่สุดโดยอัตโนมัติ: Neural Engine สำหรับโครงข่ายประสาทเทียมบนอุปกรณ์ที่มี A12+ (11 TOPS), GPU สำหรับงานประมวลผลภาพ และ CPU สำหรับการคำนวณแบบลำดับ Core ML รองรับรูปแบบ .mlmodel (ต้นฉบับ) และ .mlmodelc (ที่คอมไพล์แล้ว) การแปลงโมเดลจาก PyTorch และ TensorFlow ทำผ่าน coremltools — ไลบรารี Python ที่รักษาโทโพโลยีและน้ำหนัก
Create ML เป็นแอปของ Apple สำหรับฝึกโมเดลง่ายๆ โดยไม่ต้องเขียนโค้ด สำหรับการผลิตใช้ coremltools — เครื่องมือแปลงจาก PyTorch, TensorFlow และ scikit-learn Coremltools รองรับ quantization float32 → float16 และ int8, การทำพาเล็ตพื้นที่สี และการลบการดำเนินการที่ซ้ำซ้อนเพื่อลดขนาดโมเดล
import coremltools as ct
model = ct.convert(
"resnet50.mlmodel",
source="pytorch",
convert_to="mlprogram"
)
model.save("Resnet50.mlpackage")
Neural Engine เป็นโปรเซสเซอร์ประสาทเฉพาะในชิป Apple A12 และใหม่กว่า 16 คอร์ทำงานได้ถึง 11 ล้านล้านครั้งต่อวินาทีโดยใช้พลังงานน้อยกว่า 1 วัตต์ Core ML ส่งการคำนวณโครงข่ายประสาทเทียมไปยัง Neural Engine และการคำนวณที่เข้ากันได้กับ GPU ไปยัง Metal GPU โดยอัตโนมัติ นักพัฒนาไม่ต้องเลือกอุปกรณ์ — Core ML ทำผ่าน Performance Report โดยวิเคราะห์โมเดลและฮาร์ดแวร์ที่มีอยู่
TensorFlow Lite (TFLite) เป็นโซลูชันข้ามแพลตฟอร์มของ Google สำหรับเรียกใช้โมเดล ML บน Android, iOS และ Linux โมเดลอยู่ในรูปแบบ .tflite และสร้างผ่าน TFLiteConverter จากระบบนิเวศ TensorFlow TFLite รองรับ quantization float32 → int8 ซึ่งลดขนาดโมเดล 4 เท่าในขณะที่คงความแม่นยำ 97–99% สำหรับงานจำแนกประเภท Google Play Services for TFLite อัปเดตรันไทม์โดยอัตโนมัติโดยไม่ต้องเผยแพร่แอปใหม่
TFLiteConverter เป็นเครื่องมือหลักในการแปลงโมเดล TensorFlow เป็นรูปแบบ .tflite Quantization int8 หลังการฝึกบีบอัดโมเดลจาก 300 MB เหลือ 75 MB โดยไม่ต้องเข้าถึงชุดข้อมูลทั้งหมด การฝึกที่รับรู้ quantization (QAT) ให้การสูญเสียความแม่นยำน้อยที่สุด — น้อยกว่า 1% บน ImageNet TFLiteConverter ยังรองรับการตัดแต่งกราฟและการลบการดำเนินการที่รันไทม์ TFLite ไม่รองรับ
import tensorflow as tf
converter = tf.lite.TFLiteConverter.from_saved_model(
"saved_model_dir"
)
converter.optimizations = [tf.lite.Optimize.DEFAULT]
tflite_model = converter.convert()
หากไม่มีตัวแทน TFLite จะเรียกใช้โมเดลบน CPU ช้ากว่า 3–5 เท่าเมื่อเทียบกับการเร่งด้วยฮาร์ดแวร์ ตัวแทน GPU ใช้ OpenCL และ OpenGL ES 3.1 บน Android, ตัวแทน Core ML ใช้ Neural Engine บน iOS ตัวแทน NNAPI ใช้ NPU และ DSP บน Android 8.1+ ตัวแทน XNNPACK ให้การเร่งข้ามแพลตฟอร์มบน ARM CPU ด้วยการเพิ่มประสิทธิภาพสำหรับโปรเซสเซอร์มือถือ ในการเลือกตัวแทน ให้ใช้ TfLiteGpuDelegate.create() พร้อมตรวจสอบ null สำหรับผลลัพธ์
ML Kit คือ SDK จาก Google ที่มี API พร้อมใช้สำหรับ on-device ML ในแอปพลิเคชันมือถือ ML Kit ใช้สำหรับ การจดจำข้อความ (50+ ภาษา รวมถึงลายมือ), การตรวจจับใบหน้า (468 จุดสำคัญบนใบหน้า), การสแกนบาร์โค้ด (QR, EAN-13, Code 128, PDF417, Data Matrix) และการตรวจจับวัตถุ API ทั้งหมดทำงานบนอุปกรณ์โดยไม่ต้องใช้อินเทอร์เน็ต ML Kit พร้อมใช้งานบน iOS และ Android ด้วย API ที่เป็นหนึ่งเดียว
การตรวจจับใบหน้าส่งคืนพิกัดของเส้นขอบใบหน้า คิ้ว ตา จมูก และริมฝีปาก รวมถึงมุมเอียงศีรษะและสภาพดวงตา หน้ากาก AR และฟิลเตอร์กล้องเป็นกรณีการใช้งานที่ได้รับความนิยมมากที่สุด การจดจำข้อความดึงข้อความจากภาพถ่ายด้วยความแม่นยำสูงถึง 99% สำหรับตัวอักษรที่พิมพ์ API รองรับการจดจำแบบเรียลไทม์ผ่าน CameraX
val recognizer = TextRecognition.getClient()
val image = InputImage.fromBitmap(bitmap)
recognizer.process(image)
.addOnSuccessListener { result ->
result.textBlocks.forEach { block ->
println(block.text)
}
}
การสแกนบาร์โค้ดจดจำบาร์โค้ดในสตรีมวิดีโอจากกล้องแบบเรียลไทม์ การตรวจจับวัตถุระบุวัตถุในภาพด้วยกรอบขอบเขตและป้ายกำกับคลาส (คน รถยนต์ สัตว์) การตรวจจับท่าทางกำหนด 33 จุดสำคัญของร่างกายสำหรับแอปฟิตเนสและการวิเคราะห์การเคลื่อนไหว การติดป้ายกำกับภาพส่งคืนป้ายกำกับความหมายของภาพสูงสุด 10 รายการ — "ธรรมชาติ", "เมือง", "อาหาร"
Apple มอบโซลูชัน ML ในตัวผ่าน Vision และ NaturalLanguage โดยไม่ต้องติดตั้ง SDK ของบุคคลที่สาม Vision (VNRequest) ตรวจจับใบหน้า ข้อความ บาร์โค้ด และเส้นขอบบนอุปกรณ์ NaturalLanguage (NLTokenizer) ให้การแบ่งโทเค็น การตัดคำ การระบุภาษา และการวิเคราะห์ความรู้สึก บน Android มีการใช้งานสิ่งที่เทียบเท่าผ่าน ML Kit (การจดจำ) และ SpeechRecognizer จาก android.speech (คำพูด) เครื่องมือในตัวไม่ต้องการดาวน์โหลดโมเดล — มีการติดตั้งไว้ล่วงหน้าในระบบ
Vision ประกอบด้วย VNDetectFaceRectanglesRequest (การตรวจจับใบหน้า), VNRecognizeTextRequest (การจดจำข้อความ), VNDetectBarcodesRequest (บาร์โค้ด) และ VNDetectHumanBodyPoseRequest (โครงกระดูก) VNCoreMLRequest รวมโมเดล Core ML ที่กำหนดเองในไปป์ไลน์ Vision — ตัวอย่างเช่น การจำแนกอารมณ์บนใบหน้าที่ตรวจพบ คำขอทั้งหมดทำงานบน Neural Engine ด้วยหน่วงเวลาน้อยที่สุด
let request = VNRecognizeTextRequest { request, error in
guard let observations = request.results
as? [VNRecognizedTextObservation] else { return }
for observation in observations {
let topCandidate = observation
.topCandidates(1).first
print(topCandidate?.string as? String ?? "")
}
}
let handler = VNImageRequestHandler(
cgImage: image, options: [:]
)
try? handler.perform([request])
NaturalLanguage มี NLTokenizer สำหรับแบ่งข้อความเป็นโทเค็น NLLanguageRecognizer สำหรับการระบุภาษา (72 ภาษา) และ NLSentimentAnalyzer สำหรับการวิเคราะห์ความรู้สึกของข้อความ SFSpeechRecognizer คือ API การจดจำคำพูดที่รองรับ 50+ ภาษาบนอุปกรณ์ (iOS 13+) ต้องได้รับอนุญาต SFSpeechRecognizerAuthorizationStatus ก่อนใช้งาน ผลลัพธ์มาแบบอะซิงโครนัสผ่าน SFSpeechRecognitionResultHandler
คำถามที่พบบ่อย
ML บนอุปกรณ์ (on-device ML) เป็นแนวทางที่โมเดลแมชชีนเลิร์นนิงทำงานโดยตรงบนอุปกรณ์มือถือโดยไม่ต้องส่งข้อมูลไปยังเซิร์ฟเวอร์ Core ML, TensorFlow Lite และ ML Kit เป็นเฟรมเวิร์กหลักสำหรับ on-device ML
Core ML เป็นเฟรมเวิร์กของ Apple สำหรับ iOS และ macOS ที่มีการเร่งบน Neural Engine TensorFlow Lite เป็นโซลูชันข้ามแพลตฟอร์มของ Google สำหรับ Android, iOS และ Linux Core ML ให้ประสิทธิภาพที่ดีกว่าบนอุปกรณ์ Apple, TFLite ให้ความหลากหลาย
ML Kit แก้ไขงานทั่วไปด้าน คอมพิวเตอร์วิทัศน์และ NLP: การจดจำข้อความ ใบหน้า บาร์โค้ด วัตถุ และท่าทางร่างกาย API ทั้งหมดทำงานบนอุปกรณ์โดยไม่ต้องใช้อินเทอร์เน็ตและไม่ต้องสร้างโมเดลของตนเอง
ไม่ on-device ML ทำงานในเครื่องทั้งหมด โมเดลถูกโหลดบนอุปกรณ์และทำงานโดยไม่ต้องเชื่อมต่ออินเทอร์เน็ต ML Kit ยังมีเวอร์ชัน API บนคลาวด์ที่มีความแม่นยำสูงกว่า แต่โหมด on-device พร้อมใช้งานออฟไลน์
สำหรับ iOS เท่านั้น เลือก Core ML — ใช้ Neural Engine และรวมเข้ากับระบบนิเวศของ Apple อย่างใกล้ชิด สำหรับโครงการข้ามแพลตฟอร์ม เลือก TensorFlow Lite สำหรับงานทั่วไปที่ไม่มีโมเดลที่กำหนดเอง เลือก ML Kit ที่มี API พร้อมใช้
สรุป
เราจะพัฒนาแอปพลิเคชันบนมือถือแบบครบวงจร
IT Sectr สร้างแอปพลิเคชัน iOS และ Android สำหรับสตาร์ทอัพและธุรกิจตั้งแต่ปี 2017 เราจะให้คำแนะนำและเสนอวิธีแก้ปัญหาที่ดีที่สุดแก่คุณ