Core ML — apa itu, model pembelajaran mesin dan cara kerja di iOS

Penulis: IT Sectr Diterbitkan: 2026-03-26 Waktu membaca: 8 mnt

Core ML — framework pembelajaran mesin dari Apple, dioptimalkan untuk menjalankan model ML langsung di perangkat iOS, macOS, watchOS, dan tvOS. Berbeda dengan layanan ML cloud, Core ML menggunakan akselerator perangkat keras Apple: Neural Engine, GPU, dan CPU, memastikan latensi minimal saat memproses data. Menurut Apple Core ML Documentation (2026), framework ini mendukung model PyTorch, TensorFlow, dan Create ML dalam format .mlpackage terpadu dengan waktu inferensi rata-rata 5–50 ms.

Poin Utama

  • Core ML — framework Apple untuk pembelajaran mesin on-device di semua platform ekosistem
  • Apple Neural Engine (ANE) menyediakan akselerasi perangkat keras jaringan saraf dengan performa hingga 11 TOPS
  • Format .mlpackage menggabungkan model, metadata, dan konfigurasi dalam satu wadah yang praktis
  • Konversi model dari PyTorch dan TensorFlow dilakukan melalui alat Python coremltools
  • Integrasi dengan Vision dan Natural Language memungkinkan pembuatan pipeline ML yang kompleks

Apa itu Core ML?

Core ML — adalah framework pembelajaran mesin yang diperkenalkan oleh Apple di WWDC 2017 sebagai bagian dari ekosistem pengembangan untuk iPhone, iPad, Mac, Apple Watch, dan Apple TV. Core ML menyediakan runtime untuk menjalankan model ML di perangkat, mengabstraksi pengembang dari detail optimasi perangkat keras. Framework secara otomatis memilih mesin komputasi terbaik — Neural Engine pada chip A12+, GPU, atau CPU — untuk setiap operasi model.

Keunggulan utama Core ML — integrasi mendalam dengan Apple Silicon. Operasi jaringan saraf dijalankan pada Neural Engine khusus yang tidak membebani inti utama prosesor. Menurut Apple (WWDC 2025), model Core ML bekerja 6 kali lebih cepat dibandingkan dengan TensorFlow Lite pada perangkat Android serupa.

Kemampuan utama

Core ML mendukung berbagai tugas pembelajaran mesin: klasifikasi gambar, deteksi objek, segmentasi semantik, pemrosesan bahasa alami, analisis suara, dan data tabel. Framework bekerja dengan model berbagai jenis: jaringan saraf (konvolusional, berulang, transformer), ansambel pohon, regresi linier, dan proses Gaussian.

Bagaimana Core ML bekerja

Core ML menerima model terlatih dalam format .mlpackage sebagai masukan, mengompilasinya ke kode mesin yang dioptimalkan untuk perangkat tertentu, dan menjalankan inferensi melalui API terpadu. Seluruh pipeline — dari memuat model hingga mendapatkan hasil — membutuhkan 3–5 baris kode di Swift.

Format model .mlpackage

.mlpackage — adalah format wadah, diperkenalkan oleh Apple pada tahun 2020 untuk menggantikan .mlmodel yang usang. Paket tersebut merupakan direktori dengan manifes JSON, file model dalam format biner MLProgram, metadata (penulis, versi, deskripsi), dan sumber daya seperti label kelas. Menurut Apple, .mlpackage mengurangi ukuran model sebesar 30–50% dibandingkan dengan .mlmodel berkat optimalisasi bobot.

Apple Neural Engine

Apple Neural Engine (ANE) — neuroprosesor khusus yang tertanam di chip Apple mulai dari A12 Bionic (2018). ANE memproses operasi matriks puluhan kali lebih efisien daripada CPU dengan konsumsi daya yang sama. Performa ANE meningkat dari 5 TOPS pada A12 menjadi 35 TOPS pada M4 Ultra (2025), memungkinkan menjalankan model dengan miliaran parameter. ANE digunakan secara otomatis untuk semua model Core ML dengan arsitektur jaringan saraf.

Fitur penting Core ML — dukungan kuantisasi model ke FP16 dan INT8 tanpa kehilangan presisi. Kuantisasi mengurangi ukuran model 2–4 kali dan mempercepat inferensi 40–60% pada ANE. Apple menyediakan alat Xcode Model Quantization untuk pemilihan presisi optimal secara otomatis: pengembang memuat model, menentukan kehilangan kualitas yang diizinkan (biasanya 0.1–0.5%), dan Xcode memilih format representasi bobot terbaik.

Perbandingan performa Core ML

ChipTOPS (ANE)Inferensi ResNet-50Tahun
A12 Bionic518 ms2018
A14 Bionic119 ms2020
M1 Max224 ms2021
M4 Ultra352 ms2025

Mengonversi model ke Core ML

Sebagian besar model ML dibuat di PyTorch atau TensorFlow dan memerlukan konversi ke format .mlpackage untuk digunakan di Core ML. Apple menyediakan alat coremltools — paket Python untuk konversi, optimalisasi, dan validasi model.

Alat coremltools

coremltools — adalah alat resmi Apple untuk mengonversi model ML. Mendukung impor dari PyTorch (melalui torch.onnx atau langsung), TensorFlow (SavedModel, H5, Frozen Graph), dan ONNX. Setelah konversi, kuantisasi FP16 atau INT8 dapat diaktifkan, yang mengurangi ukuran model 2–4 kali tanpa kehilangan presisi yang signifikan.

Contoh konversi dari PyTorch

Mari kita lihat konversi model PyTorch terlatih ke format Core ML menggunakan coremltools versi 8.0. Prosesnya membutuhkan 2–3 langkah di Python.

python
import torch
import coremltools as ct

# Memuat model PyTorch terlatih
model = torch.load('model.pth')
model.eval()

# Melacak model dengan masukan contoh
example_input = torch.randn(1, 3, 224, 224)
traced_model = torch.jit.trace(model, example_input)

# Konversi ke Core ML .mlpackage
mlmodel = ct.convert(
    traced_model,
    convert_to='mlprogram',
    inputs=[ct.TensorType(shape=(1, 3, 224, 224))]
)
mlmodel.save('Model.mlpackage')

Kode memuat model PyTorch terlatih, melakukan JIT-tracing dengan masukan contoh, dan mengonversinya ke format mlprogram (format biner Core ML). .mlpackage yang dihasilkan dapat diseret ke Xcode dan segera digunakan dalam kode Swift.

Mengintegrasikan Core ML ke aplikasi iOS

Setelah konversi model, integrasinya ke aplikasi iOS di Swift dilakukan dalam beberapa baris. Xcode secara otomatis membuat kelas Swift untuk model berdasarkan metadata .mlpackage.

Contoh kode Swift

Mari kita lihat contoh klasifikasi gambar menggunakan Core ML dan framework Vision. Vision secara otomatis mengonversi gambar ke ukuran dan format piksel yang diperlukan.

swift
import CoreML
import Vision

// Memuat model Core ML
guard let model = try? VNCoreMLModel(
    for: MobileNetV2.configuration.model
) else { return }

// Membuat VNCoreMLRequest
let request = VNCoreMLRequest(model: model) { request, error in
    guard let results = request.results
        as? [VNClassificationObservation]
    else { return }

    // Mengeluarkan 3 prediksi teratas
    for result in results.prefix(3) {
        print("\(result.identifier):
              \(result.confidence)")
    }
}

// Memulai pemrosesan gambar
let handler = VNImageRequestHandler(
    url: imageURL
)
try? handler.perform([request])

Kode Swift memuat model MobileNetV2 melalui framework Vision, membuat permintaan klasifikasi, dan memproses hasil — array objek VNClassificationObservation dengan label kelas dan keyakinan dalam persen. Seluruh pipeline dari pemuatan hingga hasil memakan waktu 5–50 ms tergantung model.

Untuk mengoptimalkan waktu startup, Core ML mengompilasi model pada penggunaan pertama. Kompilasi awal (precompiled model) mengurangi cold start dari 2–3 detik menjadi 100–200 ms. Disarankan untuk melakukan kompilasi model pada tahap build di Xcode, bukan saat pertama kali aplikasi dijalankan. Ini sangat penting untuk aplikasi dengan beberapa model ML — misalnya, deteksi objek + klasifikasi + NLP.

Core ML vs ML Kit

Core ML dan ML Kit menyelesaikan tugas ML on-device yang serupa, tetapi ditujukan untuk ekosistem yang berbeda. Core ML terintegrasi secara mendalam dengan Apple Silicon dan hanya mendukung platform Apple. ML Kit dari Google adalah solusi lintas platform untuk Android dan iOS.

KarakteristikCore MLML Kit
PlatformiOS, macOS, watchOS, tvOSAndroid, iOS
API siap pakaiMelalui Vision, Natural Language15+ API bawaan
Model khusus.mlpackage (PyTorch, TF)TFLite (melalui adaptor)
Akselerasi perangkat kerasANE, GPU, CPUGPU (Android), CPU
Kemudahan memulaiMemerlukan konversi modelAPI siap pakai tanpa Data Science
Performa2–50 ms (ANE)80–200 ms (CPU/GPU)

Pilih Core ML jika ekosistem Anda eksklusif Apple dan Anda membutuhkan performa maksimal melalui ANE. Jika diperlukan lintas platform atau API siap pakai tanpa konversi — ML Kit akan lebih praktis.

Dalam praktiknya, banyak proyek menggunakan kedua framework: di iOS Core ML untuk performa tinggi, dan di Android — ML Kit atau TensorFlow Lite. Satu model PyTorch dikonversi ke .mlpackage untuk Apple dan ke .tflite untuk Android, memungkinkan kualitas ML yang sama di kedua platform. Pendekatan ini membutuhkan sedikit lebih banyak upaya di DevOps, tetapi memberikan cakupan audiens maksimal.

Saat memilih antara Core ML dan alternatif, pertimbangkan biaya pengembangan: Core ML membutuhkan lebih sedikit kode untuk integrasi (3–5 baris Swift dibandingkan 15–20 baris dengan TFLite), tetapi membutuhkan Mac dan Xcode untuk build. ML Kit, sebaliknya, bekerja di platform mana pun, tetapi memberikan performa lebih rendah di iOS karena kurangnya akses ke Apple Neural Engine.

Pertanyaan yang sering diajukan

Apa persyaratan minimum untuk menjalankan Core ML?

iOS 11+ untuk model dasar, iOS 14+ untuk format .mlpackage. Untuk Apple Neural Engine diperlukan chip A12 Bionic dan yang lebih baru. Core ML mendukung semua iPhone, iPad, dan Mac sejak 2017.

Bisakah Core ML digunakan dengan TensorFlow?

Ya, melalui alat coremltools. Model TensorFlow dikonversi ke .mlpackage dengan mempertahankan presisi. Format TensorFlow 2.x, SavedModel, H5, dan Frozen Graph didukung.

Apa perbedaan .mlpackage dengan .mlmodel?

.mlpackage — format wadah modern, berupa direktori dengan metadata, file biner MLProgram, dan sumber daya. 2–3 kali lebih ringkas dari .mlmodel lama dan mendukung kuantisasi.

Bagaimana Core ML menangani privasi data?

Semua perhitungan dilakukan secara ketat di perangkat. Core ML tidak mengirim data ke server Apple. Framework bekerja dalam mode pesawat dan tidak memerlukan koneksi internet untuk inferensi.

Bahasa pemrograman apa yang didukung Core ML?

Swift — bahasa utama untuk integrasi Core ML di aplikasi iOS/macOS. Python digunakan untuk konversi model melalui coremltools. Objective-C juga didukung untuk kompatibilitas mundur.

Kesimpulan

  • Core ML — framework Apple untuk ML on-device di semua platform ekosistem dengan dukungan Apple Neural Engine
  • .mlpackage — format wadah modern yang menggabungkan model, metadata, dan sumber daya dalam satu paket
  • Apple Neural Engine menyediakan akselerasi perangkat keras jaringan saraf dengan performa hingga 35 TOPS pada M4 Ultra
  • coremltools memungkinkan konversi model dari PyTorch, TensorFlow, dan ONNX dalam tiga langkah di Python
  • Integrasi melalui framework Vision membutuhkan 5–10 baris kode Swift untuk menjalankan model pada gambar
  • Performa inferensi adalah 2–50 ms tergantung model dan chip
  • Privasi data — semua perhitungan bersifat lokal, tanpa mengirim data ke server

Kami akan mengembangkan aplikasi seluler turnkey

IT Sectr membuat aplikasi iOS dan Android untuk startup dan bisnis sejak 2017. Kami akan memberi saran dan mengusulkan solusi terbaik.

Diskusikan proyek

Baca juga