Create ML เป็นเครื่องมือของ Apple สำหรับอบรมโมเดลการเรียนรู้ของเครื่องโดยไม่ต้องเขียนโค้ด สร้างอยู่ใน Xcode และยังใช้ได้เป็นแอปพลิเคชันแบบเอกสารพีสำหรับ macOS เครื่องมือนี้ช่วยให้สร้าง อบรม และทดสอบโมเดล Core ML โดยใช้อินเทอร์เฟสกราฟิก เพียงอัปโหลดชุดข้อมูล เลือกประเภทงาน และเริ่มการอบรม ตามเอกสาร Apple Create ML Documentation (2025) เครื่องมือรองรับ transfer learning โดยใช้โครงข่ายประสาทแบบในตัว ปรับค่าไฮเปอร์พารามิเตอร์โดยอัตโนมัติ และส่งออกโมเดลที่เสร็จสมบูรณ์ในรูปแบบ .mlpackage
หัวข้อสำคัญ
Create ML เป็นส่วนประกอบของระบบนิเวศการเรียนรู้ของเครื่องของ Apple เปิดตัวใน WWDC 2018 เป็นเครื่องมือสำหรับอบรมโมเดล Core ML โดยไม่ต้องเขียนโค้ด ก่อน Create ML นักพัฒนาใช้ไลบรารี Python (TensorFlow, PyTorch, scikit-learn) แล้วแปลงโมเดลเป็น Core ML ผ่าน coremltools Create ML ทำให้กระบวนการทั้งหมดนี้ง่ายขึ้นโดยการให้อินเทอร์เฟสที่เป็นภาพ โครงข่ายประสาทแบบในตัวสำหรับ transfer learning และการส่งออกอัตโนมัติในรูปแบบ Core ML
Create ML รุ่นแรก (iOS 11/macOS 10.14) รองรับเฉพาะงานพื้นฐาน: การจัดแบ่งภาพและการวิเคราะห์ข้อความ รุ่น macOS 10.15 เพิ่มการตรวจจับวัตถุ การวิเคราะห์เสียงและการถดถอย Create ML 3 (macOS 13, 2022) นำเสนอการรองรับระบบแนะนำ ข้อมูลแบบตารางพร้อมการเลือกอัลกอริทึมอัตโนมัติและการแสดงภาพการอบรมที่ดีขึ้น Create ML 4 (macOS 14, 2024) เพิ่มการรองรับโมเดลแบบไดนามิก การอบรมข้อมูลแบบสตรีม และการผสานรวมกับบริการคลาวด์ของ Apple สำหรับการอบรมแบบกระจาย
Create ML ออกแบบสำหรับผู้ใช้สามกลุ่ม: นักพัฒนา iOS ที่ไม่มีประสบการณ์ ML แต่ต้องการเพิ่มฟีเจอร์อัจฉริยะในแอพ ผู้จัดการผลิตภัณฑ์และนักออกแบบที่ต้องการสร้างต้นแบบฟีเจอร์ ML อย่างรวดเร็ว และนักวิจัยข้อมูลที่ต้องการการตรวจสอบสมมติฐานอย่างรวดเร็วก่อนย้ายโมเดลไปยังโครงสร้างพื้นฐานการผลิต สำหรับโมเดลที่ซับซ้อนที่มีสถาปัตยกรรมไม่ได้มาตรฐาน Create ML ไม่เหมาะสม — ในกรณีเหล่านี้ จะใช้เฟรมเวิร์ค Python และแปลงเป็น Core ML ที่หลัง
Create ML มี เจ็ดประเภทงาน แต่ละประเภทมีแม่แบบที่กำหนดค่าล่วงหน้า: การจัดแบ่งภาพ, การตรวจจับวัตถุ, การจัดแบ่งข้อความและการติดป้ายคำ, การถดถอยข้อมูลแบบตาราง, การจัดแบ่งข้อมูลแบบตาราง, การจัดแบ่งเสียง และการแนะนำ แต่ละแม่แบบประกอบด้วยสถาปัตยกรรมโครงข่ายประสาทที่เลือกไว้ล่วงหน้าซึ่งปรับให้เหมาะสมสำหรับประเภทงานนั้น
| ประเภทงาน | ข้อมูลนำเข้า | ตัวอย่างการใช้งาน |
|---|---|---|
| การจัดแบ่งภาพ | ภาพที่มีป้ายกำกับ | ระบุสายพันธุ์สุนัขจากภาพถ่าย |
| การตรวจจับวัตถุ | ภาพที่มีคำอธิบาย | ค้นหาใบหน้าในภาพถ่าย |
| การจัดแบ่งข้อความ | ข้อความที่มีป้ายกำกับ | ตัวกรองสแปมสำหรับข้อความ |
| การถดถอยข้อมูลแบบตาราง | ข้อมูลแบบตาราง (CSV) | การทำนายราคาอสังหาริมทรัพย์ |
| การจัดแบ่งเสียง | ไฟล์เสียงที่มีป้ายกำกับ | การรู้จำเสียงธรรมชาติ |
การจัดแบ่งภาพ เป็นแม่แบบยอดนิยมที่สุดของ Create ML การอบรมโมเดลทำได้โดยให้ชุดภาพที่จัดเรียงในโฟลเดอร์ (ชื่อโฟลเดอร์ = ป้ายกำกับคลาส) Create ML ใช้ data augmentation (การหมุน การปรับขนาด การเปลี่ยนสี) โดยอัตโนมัติเพื่อเพิ่มขนาดประสิทธิภาพของชุดข้อมูลและใช้โครงข่าย Vision FeaturePrint ที่ฝึกอบรมมาก่อน (ResNet-50 ที่ถูกปรับเปลี่ยน) สำหรับการสกัดคุณลักษณะ การอบรมด้วย transfer learning ใช้เวลา 2 ถึง 15 นาที ขึ้นอยู่กับขนาดชุดข้อมูลและประสิทธิภาพของ Mac
แม่แบบ การตรวจจับวัตถุ ต้องการภาพที่มีคำอธิบายพร้อมกล่องขอบเขต (bounding boxes) สำหรับแต่ละวัตถุ Create ML ใช้สถาปัตยกรรม YOLOv5 (You Only Look Once) ที่ปรับให้เข้ากับ Core ML โดยมีน้ำหนักที่ฝึกอบรมมาก่อนบนชุดข้อมูล COCO จำนวนขั้นต่ำ — 30 ภาพที่มีคำอธิบายต่อคลาส แนะนำ — 200+ Create ML รองรับการนำเข้าคำอธิบายในรูปแบบ PASCAL VOC, COCO JSON และ Create ML JSON
ขั้นตอนการทำงาน ใน Create ML ภายใน Xcode ประกอบด้วยสามขั้นตอน: การเตรียมข้อมูล, การอบรมและการตรวจสอบ และการส่งออก ในระหว่างการเตรียมข้อมูล ชุดอบรมและทดสอบจะถูกนำเข้า Create ML แบ่งข้อมูลโดยอัตโนมัติ (ค่าเริ่มต้น 80/20) และแสดงการกระจายคลาส ระหว่างการอบรม เครื่องมือจะแสดงกราฟความแม่นยำและการสูญเสียแบบเวลาจริง พร้อมด้วยตัวชี้วัด: ความแม่นยำ, precision, recall, ค่า F1 ระหว่างการตรวจสอบ คุณสามารถทดสอบโมเดลกับข้อมูลใหม่ได้โดยตรงในหน้าต่าง Create ML
import CreateML
let data = try MLImageClassifierData.labeledDirectories(
at: URL(fileURLWithPath: "/path/to/training-data")
)
let model = try MLImageClassifier(
trainingData: data,
parameters: MLImageClassifier.Parameters(
featureExtractor: .scenePrint(revision: 1)
)
)
try model.write(
to: URL(fileURLWithPath: "/path/to/MyModel.mlpackage")
)
อินเทอร์เฟสกราฟิกของ Create ML ใน Xcode จะปรากฏในตัวแก้ไขด้านข้างหลังจากเลือกหมวดหมู่ไฟล์แม่แบบ อินเทอร์เฟสประกอบด้วยแท็บ: Data (การโหลดและแสดงตัวอย่างข้อมูล), Features (การเลือกคุณลักษณะและพารามิเตอร์), Model (สถาปัตยกรรมโครงข่ายประสาท), Training (กราฟอบรมและตัวชี้วัด), Evaluation (การทดสอบกับข้อมูลที่แยกไว้), Preview (การทดสอบโมเดลแบบโต้ตอบ) นักพัฒนาสามารถสลับระหว่างแท็บระหว่างการอบรมโดยไม่ต้องหยุดกระบวนการ
Transfer Learning (การเรียนรู้แบบถ่ายโอน) เป็นเทคโนโลยีหลักที่แม่แบบ Create ML ใช้ แทนที่จะอบรมโครงข่ายประสาทจากศูนย์ (ซึ่งต้องการตัวอย่างที่มีป้ายกำกับนับล้าน) Create ML ใช้โครงข่ายที่ฝึกอบรมมาก่อน (FeaturePrint) เป็นตัวสกัดคุณลักษณะและอบรมเฉพาะชั้นสุดท้ายของตัวจัดแบ่งประเภทเท่านั้น วิธีนี้สามารถบรรลุความแม่นยำสูง (90-95%) บนชุดข้อมูล 10 ถึง 50 ภาพต่อคลาสด้วยเวลาในการอบรม 2-5 นาที
Create ML ใช้ตัวสกัด FeaturePrint ที่ฝึกอบรมมาก่อนหลายตัว: .scenePrint (อิง ResNet-50, อบรมบน Places365), .objectPrint (อิง YOLOv5, อบรมบน COCO), .textPrint (อิง BERT, อบรมบน Wikipedia) การเลือกตัวสกัดขึ้นอยู่กับประเภทงานและโดเมนข้อมูล ตัวอย่างเช่น .scenePrint เหมาะกับภาพภายในอาคารและภูมิทัศน์ ในขณะที่ .objectPrint เหมาะกับวัตถุเฉพาะ (รถยนต์ คน สัตว์)
Create ML ใช้ การเพิ่มข้อมูล โดยอัตโนมัติระหว่างการอบรม: การพลิกแนวนอน, การหมุนสูงถึง 20 องศา, การเปลี่ยนสี, การปรับความสว่างและคอนทราสต์ การเพิ่มข้อมูลจะถูกนำไปใช้แบบสุ่มกับแต่ละภาพในแต่ละ epoch ซึ่งเพิ่มขนาดประสิทธิภาพของชุดข้อมูล 10-20 เท่า นี่สำคัญเป็นพิเศษสำหรับชุดข้อมูลขนาดเล็กที่ overfitting เป็นปัญหาหลัก พารามิเตอร์การเพิ่มข้อมูลสามารถปรับได้ในแท็บ Features
นอกจากอินเทอร์เฟสที่เป็นภาพแล้ว Create ML ยังมี Swift API สำหรับการอบรมโมเดลแบบโปรแกรม ซึ่งช่วยให้สามารถทำงานอัตโนมัติของ pipeline การอบรมและผสานรวมกับกระบวนการ CI/CD Swift API ประกอบด้วยคลาส MLImageClassifier, MLObjectDetector, MLTextClassifier, MLWordTagger, MLTabularRegressor, MLSoundClassifier และ MLRecommender แต่ละคลาสใช้โปรโตคอล MLModelTrainer พร้อมเมธอด train(), evaluate() และ write()
import CreateML
let csvFile = try MLDataTable(
contentsOf: URL(fileURLWithPath: "data.csv")
)
let (trainingData, testData) = csvFile.randomSplit(by: 0.8)
let regressor = try MLTabularRegressor(
trainingData: trainingData,
targetColumn: "price",
parameters: MLTabularRegressor.Parameters(
algorithm: .randomForest
)
)
let evaluation = regressor.evaluation(on: testData)
print("RMSE: \(evaluation.rootMeanSquaredError)")
Swift API ของ Create ML สามารถรันในสคริปต์ build phases ของ Xcode หรือใน GitLab/GitHub Actions บนรันเนอร์ macOS ซึ่งช่วยให้สามารถอบรมโมเดลใหม่โดยอัตโนมัติทุกครั้งที่ชุดข้อมูลอบรมในที่เก็บถูกอัปเดต ตัวอย่างเช่น คุณสามารถตั้งค่า pipeline: push ข้อมูลไปยังที่เก็บ → GitLab Runner รันสคริปต์ Swift ของ Create ML → โมเดล .mlpackage ที่ส่งออกจะถูก commit กลับไปยังที่เก็บ → แอพถูกสร้างด้วยโมเดลที่อัปเดต
แม้จะสะดวกสบาย Create ML มีข้อจำกัดหลายประการที่สำคัญต้องพิจารณาเมื่อเลือกเครื่องมือสำหรับงาน ML หลัก ๆ: ทำงานเฉพาะบน macOS, การควบคุมสถาปัตยกรรมโครงข่ายประสาทอย่างจำกัด, ไม่สามารถใช้ชั้นที่กำหนดเอง, การพึ่งพาตัวสกัด FeaturePrint แบบในตัว และไม่รองรับการอบรมหลาย GPU หรือคลัสเตอร์
Create ML ไม่ได้ออกแบบสำหรับ การอบรมในการผลิต บนชุดข้อมูลขนาดใหญ่ (มากกว่า 100,000 ตัวอย่าง) ขนาดสูงสุดของชุดข้อมูลถูกจำกัดโดย RAM ของ Mac สำหรับงานขนาดใหญ่ Apple แนะนำให้ใช้เฟรมเวิร์ค Python (TensorFlow, PyTorch) บนโครงสร้างพื้นฐานเซิร์ฟเวอร์แล้วแปลงเป็น Core ML ผ่าน coremltools Create ML เป็นเครื่องมือสำหรับการสร้างต้นแบบและโครงการขนาดเล็ก ไม่ใช่สำหรับองค์กร ML
สำหรับข้อมูลแบบตาราง Create ML รองรับเพียงสามอัลกอริทึม: Random Forest, Gradient Boosting (XGBoost) และ Linear Regression ไม่มีการรองรับโครงข่ายประสาทสำหรับข้อมูลแบบตาราง (TabNet, FT-Transformer), SVM, kNN หรือวิธีการ ensemble ที่มีใน scikit-learn สำหรับงานข้อมูลแบบตารางที่ต้องการความแม่นยำสูง Create ML มักจะด้อยกว่าไลบรารี ML แบบดั้งเดิม
การอบรมโมเดลทำได้เฉพาะ บน macOS เท่านั้น เพราะ Create ML ใช้ Metal Performance Shaders และเฟรมเวิร์คเฉพาะของ macOS ข้อจำกัดนี้ทำให้ไม่สามารถอบรมบนเซิร์ฟเวอร์ Linux หรือคลัสเตอร์ GPU บนคลาวด์ สำหรับทีมที่ใช้โครงสร้างพื้นฐานคลาวด์ coremltools + Python ยังคงเป็นตัวเลือกเดียว
มาดูสาม สถานการณ์จริง ของการใช้ Create ML ในแอปพลิเคชันเชิงพาณิชย์: การกลั่นกรองเนื้อหาผู้ใช้, คำแนะนำส่วนบุคคล และการจัดเรียงเอกสารอัตโนมัติ สถานการณ์เหล่านี้แสดงงานทั่วไปที่สามารถแก้ไขด้วย Create ML โดยไม่ต้องมีความรู้เชิงลึกเกี่ยวกับการเรียนรู้ของเครื่อง
แอพแชร์ภาพถ่ายสามารถใช้ การจัดแบ่งภาพ สำหรับการกลั่นกรองอัตโนมัติ: การอบรมโมเดลด้วยภาพ 100-200 ภาพที่มีป้ายกำกับ “ยอมรับได้” และ “ละเมิด” สามารถกรองเนื้อหาที่ไม่พึงประสงค์ 85-95% โดยไม่ต้องมีผู้กลั่นกรอง Create ML ช่วยให้สามารถอัปเดตโมเดลเมื่อมีตัวอย่างการละเมิดใหม่ โดยอบรมใหม่ใน 3-5 นาที
ด้วย การจัดแบ่งข้อความ Create ML สามารถสอนแอพให้จัดหมวดหมู่คำถามของผู้ใช้โดยอัตโนมัติเป็นหมวดหมู่: ปัญหาการชำระเงิน, ข้อผิดพลาดทางเทคนิค, คำขอฟีเจอร์, ข้อร้องเรียน การอบรมต้องการตัวอย่างข้อความ 50-100 ตัวอย่างต่อหมวดหมู่ ความแม่นยำในการจัดแบ่งถึง 90% โดยใช้ Word Tagger แบบในตัวที่อิง BERT
MLRecommender ใน Create ML ช่วยให้สร้างระบบแนะนำตามการกระทำของผู้ใช้โดยไม่ต้องเขียน collaborative filtering ด้วยตนเอง โมเดลอบรมบนข้อมูล ผู้ใช้ → รายการ → คะแนน (เช่น ผู้ใช้กดถูกใจบทความ) Create ML เลือกระหว่าง collaborative filtering และแนวทางตามเนื้อหาโดยอัตโนมัติตามปริมาณข้อมูล และให้คำแนะนำ N อันดับแรก
คำถามที่พบบ่อย
Create ML เป็นเครื่องมือของ Apple สำหรับอบรมโมเดลการเรียนรู้ของเครื่องโดยไม่ต้องเขียนโค้ด สร้างอยู่ใน Xcode และใช้ได้เป็นแอปพลิเคชันแบบเอกสารพีสำหรับ macOS ช่วยให้สร้างโมเดล Core ML ผ่านอินเทอร์เฟสกราฟิก รองรับการจัดแบ่งภาพ การวิเคราะห์ข้อความ การตรวจจับวัตถุ และงานอื่น ๆ
Create ML ใช้สำหรับอบรมโมเดล (สร้างไฟล์ .mlpackage) ในขณะที่ Core ML ใช้สำหรับรันโมเดลที่อบรมแล้วบนอุปกรณ์ (inference) Create ML ทำงานเฉพาะบน macOS และสร้างโมเดลในรูปแบบ Core ML นี่เป็นขั้นตอนต่างกันของกระบวนการเดียวกัน: เริ่มต้นด้วยการอบรมใน Create ML จากนั้นผสานรวมผ่าน Core ML ในแอพ
ปริมาณข้อมูลขั้นต่ำขึ้นอยู่กับประเภทงาน สำหรับการจัดแบ่งภาพด้วย transfer learning 10-15 ภาพต่อคลาสก็เพียงพอ สำหรับการตรวจจับวัตถุ ต้องการ 30 ภาพที่มีคำอธิบายต่อคลาส สำหรับการจัดแบ่งข้อความ — 50-100 ตัวอย่างต่อหมวดหมู่ ปริมาณที่แนะนำคือ 100-200 ตัวอย่างต่อคลาสเพื่อให้ได้ความแม่นยำ 90%+
ไม่ Create ML ทำงานเฉพาะบน macOS มันใช้ Metal Performance Shaders สำหรับการเร่ง GPU และการผสานรวม Xcode ซึ่งไม่มีบนแพลตฟอร์มอื่น หากคุณไม่มี Mac ให้ใช้ Python (TensorFlow/PyTorch) สำหรับการอบรมและ coremltools สำหรับแปลงโมเดลเป็น .mlpackage
ใช่ Create ML รวมอยู่ใน Xcode และฟรีอย่างสมบูรณ์สำหรับนักพัฒนา Apple การใช้งาน只需ติดตั้ง Xcode บน Mac (ฟรีจาก Mac App Store) ไม่ต้องมีใบอนุญาตหรือสมัครสมาชิกเพิ่มเติม — ความสามารถในการอบรมทั้งหมดมีให้โดยไม่มีข้อจำกัด
สรุป
เราจะพัฒนาแอปพลิเคชันบนมือถือแบบครบวงจร
IT Sectr สร้างแอปพลิเคชัน iOS และ Android สำหรับสตาร์ทอัพและธุรกิจตั้งแต่ปี 2017 เราจะให้คำแนะนำและเสนอวิธีแก้ปัญหาที่ดีที่สุดแก่คุณ