รูปแบบที่กําหนดเองด้วย ML Kit

โดยค่าเริ่มต้น API ของ ML Kit จะใช้โมเดลแมชชีนเลิร์นนิงที่ Google ฝึกแล้ว โมเดลเหล่านี้ออกแบบมาเพื่อให้ครอบคลุมแอปพลิเคชันที่หลากหลาย อย่างไรก็ตาม กรณีการใช้งานบางอย่างต้องใช้โมเดลที่กําหนดเป้าหมายมากขึ้น นี่คือเหตุผลที่ ML Kit API บางรายการให้คุณแทนที่โมเดลเริ่มต้นด้วยโมเดล TensorFlow Lite ที่กําหนดเอง

ทั้ง API การติดป้ายกํากับรูปภาพและ Object Detection & Tracking รองรับโมเดลการจัดประเภทรูปภาพที่กําหนดเอง โมเดลเหล่านี้เข้ากันได้กับตัวเลือกโมเดลก่อนการฝึกคุณภาพสูงใน TensorFlow Hub หรือโมเดลที่กําหนดเองของคุณโดยฝึกกับ TensorFlow, AutoML Vision Edge หรือ TensorFlow Lite Model Maker

หากต้องการโซลูชันที่กําหนดเองสําหรับโดเมนหรือกรณีการใช้งานอื่นๆ โปรดไปที่หน้าแมชชีนเลิร์นนิงในอุปกรณ์เพื่อดูคําแนะนําเกี่ยวกับโซลูชันและเครื่องมือทั้งหมดของ Google สําหรับแมชชีนเลิร์นนิงในอุปกรณ์

ประโยชน์ของการใช้ชุดแมชชีนเลิร์นนิงกับโมเดลที่กําหนดเอง

ประโยชน์ของการใช้โมเดลการแยกประเภทรูปภาพที่กําหนดเองกับ ML Kit มีดังนี้

  • API ระดับสูงที่ใช้งานง่าย - ไม่จําเป็นต้องจัดการกับอินพุต/เอาต์พุตโมเดลในระดับต่ํา จัดการรูปภาพก่อน/หลังการประมวลผล หรือสร้างไปป์ไลน์การประมวลผล
  • ไม่ต้องกังวลเรื่องการแมปป้ายกํากับด้วยตนเอง ML Kit จะแยกป้ายกํากับออกจากข้อมูลเมตาของโมเดล TFLite และทําการแมปให้กับคุณ
  • รองรับโมเดลที่กําหนดเองจากแหล่งที่มาที่หลากหลาย ตั้งแต่โมเดลก่อนการฝึกที่เผยแพร่ใน TensorFlow Hub ไปจนถึงโมเดลใหม่ที่ฝึกด้วย TensorFlow, AutoML Vision Edge หรือ TensorFlow Lite Model Maker
  • รองรับโมเดลที่โฮสต์ด้วย Firebase ลดขนาด APK ด้วยการดาวน์โหลดโมเดลตามคําขอ พุชการอัปเดตรูปแบบโดยไม่ต้องเผยแพร่แอปอีกครั้งและทดสอบ A/B ง่ายๆ ด้วยการกําหนดค่าระยะไกลของ Firebase
  • เพิ่มประสิทธิภาพสําหรับการผสานรวมกับ API ของกล้องของ Android

และโดยเฉพาะอย่างยิ่งสําหรับการตรวจจับและการติดตามออบเจ็กต์

  • ปรับปรุงความถูกต้องของการแยกประเภทโดยค้นหาออบเจ็กต์ก่อนและเรียกใช้เฉพาะตัวแยกประเภทในพื้นที่รูปภาพที่เกี่ยวข้องเท่านั้น
  • มอบประสบการณ์แบบอินเทอร์แอกทีฟแบบเรียลไทม์ด้วยการให้ความคิดเห็นเกี่ยวกับออบเจ็กต์แก่ผู้ใช้ทันทีที่ตรวจพบและจัดประเภทได้

ใช้รูปแบบการจัดประเภทรูปภาพที่ฝึกล่วงหน้า

คุณสามารถใช้โมเดล TensorFlow Lite ที่ฝึกล่วงหน้าได้ ตราบใดที่โมเดลเป็นไปตามชุดเกณฑ์ ด้วย TensorFlow Hub เราขอเสนอชุดโมเดลที่ผ่านการตรวจสอบแล้ว จาก Google หรือครีเอเตอร์โมเดลรายอื่น ซึ่งเป็นไปตามเกณฑ์เหล่านี้

ใช้โมเดลที่เผยแพร่ใน TensorFlow Hub

TensorFlow Hub มีโมเดลการจัดประเภทรูปภาพก่อนการฝึกที่หลากหลายจากผู้สร้างโมเดลหลายราย ซึ่งสามารถใช้กับ Image Labeling and Object Detection และ Tracking API ได้ โปรดทําตามขั้นตอนต่อไปนี้

  1. เลือกรูปแบบจากคอลเล็กชันโมเดลที่เข้ากันได้กับ ML Kit
  2. ดาวน์โหลดไฟล์โมเดล .tflite จากหน้ารายละเอียดโมเดล เลือกรูปแบบสําหรับข้อมูลเมตา หากมี
  3. ทําตามคําแนะนําสําหรับ Image Labeling API หรือ Object Detection and Tracking API เกี่ยวกับวิธีรวมไฟล์โมเดลกับโปรเจ็กต์ แล้วใช้ในแอปพลิเคชัน Android หรือ iOS

ฝึกโมเดลการแยกประเภทรูปภาพของคุณเอง

หากไม่มีรูปแบบการแยกประเภทรูปภาพที่ฝึกล่วงหน้าได้ตามความต้องการของคุณ ก็จะฝึกโมเดล TensorFlow Lite ได้หลายวิธีและได้อธิบายไว้เพิ่มเติมด้านล่าง

ตัวเลือกในการฝึกโมเดลการแยกประเภทรูปภาพของคุณเอง
AutoML Vision Edge
  • ให้บริการผ่าน Google Cloud AI
  • สร้างรูปแบบการจัดประเภทรูปภาพศิลปะ
  • ประเมินระหว่างประสิทธิภาพและขนาดได้อย่างง่ายดาย
ผู้ผลิตโมเดล TensorFlow Lite
  • ฝึกโมเดลอีกครั้ง (โอนการเรียนรู้) ใช้เวลาน้อยลงและใช้ข้อมูลน้อยกว่าการฝึกโมเดลตั้งแต่ต้น
แปลงโมเดล TensorFlow เป็น TensorFlow Lite
  • ฝึกโมเดลด้วย TensorFlow แล้วแปลงเป็น TensorFlow Lite

AutoML Vision Edge

โมเดลที่กําหนดเองใน API แบบการติดป้ายกํากับรูปภาพและ Object Detection และ Tracking API รองรับโมเดลการแยกประเภทรูปภาพที่ฝึกโดยใช้ AutoML Vision Edge API เหล่านี้ยังรองรับการดาวน์โหลดโมเดลที่โฮสต์ด้วยการทําให้โมเดล Firebase ใช้งานได้ด้วย

หากต้องการดูข้อมูลเพิ่มเติมเกี่ยวกับวิธีใช้โมเดลที่ฝึกด้วย AutoML Vision Edge ในแอป Android และ iOS ให้ทําตามคู่มือโมเดลที่กําหนดเองสําหรับ API แต่ละรายการ โดยขึ้นอยู่กับกรณีการใช้งาน

TensorFlow Lite เครื่องมือสร้างโมเดล

ไลบรารีของ TFLite Model Maker ช่วยลดความยุ่งยากในการปรับเปลี่ยนและแปลงโมเดลโครงข่ายระบบประสาทเทียมของ TensorFlow เป็นข้อมูลอินพุตที่เฉพาะเจาะจงเมื่อทําให้โมเดลนี้ใช้งานได้สําหรับแอปพลิเคชัน ML ในอุปกรณ์ คุณสามารถปฏิบัติตามการแยกประเภท Colab สําหรับรูปภาพด้วย TensorFlow Lite Model Maker

หากต้องการดูข้อมูลเพิ่มเติมเกี่ยวกับวิธีใช้โมเดลที่ฝึกด้วย Model Maker ในแอป Android และ iOS ให้ทําตามคู่มือเกี่ยวกับ Image Labeling API หรือ Object Detection and Tracking API ทั้งนี้ขึ้นอยู่กับ Use Case ของคุณ

โมเดลที่สร้างโดยใช้ตัวแปลง TensorFlow Lite

หากมีโมเดลการจัดประเภทรูปภาพ TensorFlow อยู่แล้ว คุณจะแปลง โดยใช้เครื่องมือแปลง TensorFlow Lite ได้ โปรดตรวจสอบว่าโมเดลที่สร้างเป็นไปตามข้อกําหนดความเข้ากันได้ด้านล่าง

หากต้องการดูข้อมูลเพิ่มเติมเกี่ยวกับวิธีใช้โมเดล TensorFlow Lite ในแอป Android และ iOS ให้ทําตามคู่มือสําหรับ Image Labeling API หรือ Object Detection and Tracking API ทั้งนี้ขึ้นอยู่กับ Use Case ของคุณ

ความเข้ากันได้กับโมเดล TensorFlow Lite

คุณสามารถใช้โมเดลการแยกประเภทรูปภาพ TensorFlow Lite ที่ฝึกล่วงหน้าได้ หากมีคุณสมบัติตรงตามข้อกําหนดต่อไปนี้

Tensor

  • โมเดลต้องมีตัวแปลงสัญญาณเพียงตัวเดียวซึ่งมีข้อจํากัดต่อไปนี้
    • ข้อมูลอยู่ในรูปแบบพิกเซล RGB
    • ข้อมูลเป็นประเภท UINT8 หรือ FLOAT32 หากประเภท Tenor อินพุตคือ FLOAT32 ต้องระบุตัวเลือก NormalizationOptions ด้วยการแนบ Metadata
    • Tenor มี 4 มิติข้อมูล ได้แก่ BxHxWxC โดยที่
      • B คือขนาดแบบกลุ่ม ค่านี้ต้องเป็น 1 (ไม่รองรับการอ้างอิงแบบกลุ่มขนาดใหญ่)
      • W และ H คือความกว้างและความสูงของการป้อนข้อมูล
      • C คือจํานวนช่องที่คาดไว้ ต้องเป็น 3
  • โมเดลต้องมีตัวขยายเอาต์พุตอย่างน้อย 1 รายการที่มีคลาส N และ 2 หรือ 4 ขนาด
    • (1xN)
    • (1x1x1xN)
  • ขณะนี้รองรับเฉพาะรุ่นที่มีส่วนหัวเดียวเท่านั้น โมเดลแบบหลายส่วนหัว อาจแสดงผลลัพธ์ที่ไม่คาดคิด

ข้อมูลเมตา

คุณเพิ่มข้อมูลเมตาลงในไฟล์ TensorFlow Lite ได้ตามที่อธิบายไว้ในหัวข้อการเพิ่มข้อมูลเมตาลงในโมเดล TensorFlow Lite

หากต้องการใช้โมเดลที่มี Tenor อินพุต FLOAT32 คุณต้องระบุ regularizationOptions ในข้อมูลเมตา

นอกจากนี้ เรายังแนะนําให้คุณแนบข้อมูลเมตานี้ไปยัง Tenor TensorMetadata

  • แผนที่ป้ายกํากับระบุชื่อของคลาสเอาต์พุตแต่ละคลาส เป็น AssociatedFile ที่มีประเภท TENSOR_AXIS_Label (หรือแสดงผลได้เฉพาะดัชนีเอาต์พุตเอาต์พุตที่เป็นตัวเลข)
  • เกณฑ์คะแนนเริ่มต้นด้านล่างซึ่งถือว่าเป็นผลลัพธ์ที่มีความน่าเชื่อถือน้อยเกินไปที่จะส่งคืนเป็น ProcessUnit ที่มี ScoreThresholdingOptions