Core ML — Was es ist, maschinelles Lernmodell und Arbeitsweise in iOS

Autor: IT Sectr Veröffentlicht: 2026-03-26 Lesezeit: 8 Min.

Core ML — ein Machine-Learning-Framework von Apple, optimiert für die Ausführung von ML-Modellen direkt auf iOS-, macOS-, watchOS- und tvOS-Geräten. Im Gegensatz zu cloudbasierten ML-Diensten nutzt Core ML die Hardwarebeschleuniger von Apple: Neural Engine, GPU und CPU, was eine minimale Latenz bei der Datenverarbeitung gewährleistet. Laut Apple Core ML Documentation (2026) unterstützt das Framework PyTorch-, TensorFlow- und Create-ML-Modelle im einheitlichen .mlpackage-Format mit einer durchschnittlichen Inferenzzeit von 5–50 ms.

Wichtige Punkte

  • Core ML — Apples Framework für On-Device Machine Learning auf allen Ökosystem-Plattformen
  • Apple Neural Engine (ANE) bietet Hardwarebeschleunigung für neuronale Netze mit einer Leistung von bis zu 11 TOPS
  • Das .mlpackage-Format vereint Modell, Metadaten und Konfiguration in einem praktischen Container
  • Die Konvertierung von Modellen aus PyTorch und TensorFlow erfolgt über das Python-Tool coremltools
  • Die Integration mit Vision und Natural Language ermöglicht die Erstellung komplexer ML-Pipelines

Was ist Core ML?

Core ML ist ein Machine-Learning-Framework, das von Apple auf der WWDC 2017 als Teil des Entwicklungssystems für iPhone, iPad, Mac, Apple Watch und Apple TV vorgestellt wurde. Core ML bietet eine Laufzeitumgebung zur Ausführung von ML-Modellen auf dem Gerät und abstrahiert den Entwickler von den Details der Hardwareoptimierung. Das Framework wählt automatisch die beste Rechenengine — Neural Engine auf A12+-Chips, GPU oder CPU — für jede Modelloperation aus.

Der Hauptvorteil von Core ML ist die tiefe Integration mit Apple Silicon. Neuronale Netzwerkoperationen werden auf der dedizierten Neural Engine ausgeführt, die die Hauptprozessorkerne nicht belastet. Laut Apple (WWDC 2025) arbeiten Core ML-Modelle 6-mal schneller als TensorFlow Lite auf vergleichbaren Android-Geräten.

Hauptfunktionen

Core ML unterstützt eine breite Palette von Machine-Learning-Aufgaben: Bildklassifikation, Objekterkennung, semantische Segmentierung, Verarbeitung natürlicher Sprache, Audioanalyse und tabellarische Daten. Das Framework arbeitet mit verschiedenen Modelltypen: neuronale Netze (faltende, rekurrente, Transformer), Baum-Ensembles, lineare Regressionen und Gaußprozesse.

Wie Core ML funktioniert

Core ML nimmt ein trainiertes Modell im .mlpackage-Format entgegen, kompiliert es in optimierten Maschinencode für das jeweilige Gerät und führt die Inferenz über eine einheitliche API aus. Die gesamte Pipeline — vom Laden des Modells bis zum Erhalten des Ergebnisses — benötigt 3–5 Zeilen Swift-Code.

.mlpackage-Modellformat

.mlpackage ist ein Containerformat, das von Apple im Jahr 2020 eingeführt wurde, um das veraltete .mlmodel zu ersetzen. Das Paket ist ein Verzeichnis mit einem JSON-Manifest, einer Modelldatei im binären MLProgram-Format, Metadaten (Autor, Version, Beschreibung) und Ressourcen wie Klassenbezeichnern. Laut Apple reduziert .mlpackage die Modellgröße durch Gewichtsoptimierung um 30–50% im Vergleich zu .mlmodel.

Apple Neural Engine

Apple Neural Engine (ANE) ist ein dedizierter Neuralprozessor, der in Apple-Chips ab dem A12 Bionic (2018) integriert ist. Die ANE verarbeitet Matrixoperationen um ein Vielfaches effizienter als die CPU bei gleichem Stromverbrauch. Die ANE-Leistung stieg von 5 TOPS beim A12 auf 35 TOPS beim M4 Ultra (2025), was die Ausführung von Modellen mit Milliarden von Parametern ermöglicht. Die ANE wird automatisch für alle Core ML-Modelle mit neuronaler Netzwerkarchitektur verwendet.

Eine wichtige Funktion von Core ML ist die Unterstützung der Quantisierung von Modellen auf FP16 und INT8 ohne Genauigkeitsverlust. Die Quantisierung reduziert die Modellgröße um das 2- bis 4-fache und beschleunigt die Inferenz auf der ANE um 40–60%. Apple bietet das Tool Xcode Model Quantization zur automatischen Auswahl der optimalen Präzision: Der Entwickler lädt ein Modell hoch, gibt den akzeptablen Qualitätsverlust an (in der Regel 0.1–0.5%), und Xcode wählt das beste Format für die Gewichtsdarstellung.

Core ML Leistungsvergleich

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

Modelle in Core ML konvertieren

Die meisten ML-Modelle werden in PyTorch oder TensorFlow erstellt und müssen für die Verwendung in Core ML in das .mlpackage-Format konvertiert werden. Apple stellt das Dienstprogramm coremltools zur Verfügung — ein Python-Paket zum Konvertieren, Optimieren und Validieren von Modellen.

coremltools-Tool

coremltools ist das offizielle Apple-Tool zur Konvertierung von ML-Modellen. Es unterstützt den Import aus PyTorch (über torch.onnx oder direkt), TensorFlow (SavedModel, H5, Frozen Graph) und ONNX. Nach der Konvertierung kann die FP16- oder INT8-Quantisierung aktiviert werden, wodurch die Modellgröße um das 2- bis 4-fache ohne signifikanten Genauigkeitsverlust reduziert wird.

Konvertierungsbeispiel aus PyTorch

Betrachten wir die Konvertierung eines trainierten PyTorch-Modells in das Core ML-Format mit coremltools Version 8.0. Der Vorgang umfasst 2–3 Schritte in Python.

python
import torch
import coremltools as ct

# Lade trainiertes PyTorch-Modell
model = torch.load('model.pth')
model.eval()

# Tracing des Modells mit Beispieleingabe
example_input = torch.randn(1, 3, 224, 224)
traced_model = torch.jit.trace(model, example_input)

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

Der Code lädt das trainierte PyTorch-Modell, führt JIT-Tracing mit einer Beispieleingabe durch und konvertiert es in das mlprogram-Format (binäres Core ML-Format). Das resultierende .mlpackage kann in Xcode gezogen und sofort in Swift-Code verwendet werden.

Integration von Core ML in eine iOS-App

Nach der Modellkonvertierung erfolgt die Integration in eine iOS-App in Swift mit wenigen Zeilen. Xcode generiert automatisch eine Swift-Klasse für das Modell basierend auf den .mlpackage-Metadaten.

Swift-Codebeispiel

Betrachten wir ein Beispiel zur Bildklassifikation mit Core ML und dem Vision-Framework. Vision wandelt das Bild automatisch in die erforderliche Größe und das Pixelformat um.

swift
import CoreML
import Vision

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

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

    // Top-3-Vorhersagen ausgeben
    for result in results.prefix(3) {
        print("\(result.identifier):
              \(result.confidence)")
    }
}

// Starte Bildverarbeitung
let handler = VNImageRequestHandler(
    url: imageURL
)
try? handler.perform([request])

Der Swift-Code lädt das MobileNetV2-Modell über das Vision-Framework, erstellt eine Klassifikationsanfrage und verarbeitet das Ergebnis — ein Array von VNClassificationObservation-Objekten mit Klassenbezeichnern und Konfidenzprozenten. Die gesamte Pipeline vom Laden bis zur Ausgabe des Ergebnisses dauert je nach Modell 5–50 ms.

Zur Optimierung der Startzeit kompiliert Core ML das Modell bei der ersten Verwendung. Ein vorcompiliertes Modell reduziert den Kaltstart von 2–3 Sekunden auf 100–200 ms. Es wird empfohlen, das Modell zur Build-Zeit in Xcode zu kompilieren, nicht beim ersten App-Start. Dies ist besonders wichtig für Apps mit mehreren ML-Modellen — z. B. Objekterkennung + Klassifikation + NLP.

Core ML vs. ML Kit

Core ML und ML Kit lösen ähnliche On-Device-ML-Aufgaben, sind aber auf unterschiedliche Ökosysteme ausgerichtet. Core ML ist tief in Apple Silicon integriert und unterstützt nur Apple-Plattformen. ML Kit von Google ist eine plattformübergreifende Lösung für Android und iOS.

MerkmalCore MLML Kit
PlattformeniOS, macOS, watchOS, tvOSAndroid, iOS
Integrierte APIsÜber Vision, Natural Language15+ integrierte APIs
Benutzerdefinierte Modelle.mlpackage (PyTorch, TF)TFLite (über Adapter)
HardwarebeschleunigungANE, GPU, CPUGPU (Android), CPU
Einfacher EinstiegErfordert ModellkonvertierungFertige APIs ohne Data Science
Leistung2–50 ms (ANE)80–200 ms (CPU/GPU)

Wählen Sie Core ML, wenn Ihr Ökosystem ausschließlich Apple ist und Sie maximale Leistung durch die ANE benötigen. Wenn plattformübergreifende Unterstützung oder fertige APIs ohne Konvertierung erforderlich sind, ist ML Kit praktischer.

In der Praxis verwenden viele Projekte beide Frameworks: iOS Core ML für hohe Leistung und ML Kit oder TensorFlow Lite auf Android. Ein einheitliches PyTorch-Modell wird für Apple in .mlpackage und für Android in .tflite konvertiert, was eine gleichbleibende ML-Funktionsqualität auf beiden Plattformen ermöglicht. Dieser Ansatz erfordert etwas mehr DevOps-Aufwand, bietet aber die maximale Zielgruppenabdeckung.

Bei der Wahl zwischen Core ML und Alternativen sollten Sie die Entwicklungskosten berücksichtigen: Core ML benötigt weniger Integrationscode (3–5 Zeilen Swift gegenüber 15–20 Zeilen mit TFLite), erfordert aber einen Mac und Xcode für die Entwicklung. ML Kit hingegen funktioniert auf jeder Plattform, bietet aber auf iOS aufgrund des fehlenden Zugriffs auf die Apple Neural Engine eine geringere Leistung.

Häufig gestellte Fragen

Welche Mindestanforderungen gibt es für Core ML?

iOS 11+ für Basismodelle, iOS 14+ für das .mlpackage-Format. Für Apple Neural Engine wird ein A12 Bionic-Chip oder neuer benötigt. Core ML unterstützt alle iPhone-, iPad- und Mac-Modelle ab 2017.

Kann Core ML mit TensorFlow verwendet werden?

Ja, über das Tool coremltools. TensorFlow-Modelle werden mit erhaltener Genauigkeit in .mlpackage konvertiert. Unterstützte Formate umfassen TensorFlow 2.x, SavedModel, H5 und Frozen Graph.

Worin unterscheidet sich .mlpackage von .mlmodel?

.mlpackage ist ein modernes Containerformat, das als Verzeichnis mit Metadaten, einer binären MLProgram-Datei und Ressourcen strukturiert ist. Es ist 2- bis 3-mal kompakter als das alte .mlmodel und unterstützt Quantisierung.

Wie handhabt Core ML den Datenschutz?

Alle Berechnungen werden streng auf dem Gerät durchgeführt. Core ML sendet keine Daten an Apple-Server. Das Framework funktioniert im Flugmodus und benötigt keine Internetverbindung für die Inferenz.

Welche Programmiersprachen unterstützt Core ML?

Swift ist die primäre Sprache für die Integration von Core ML in iOS/macOS-Apps. Python wird für die Modellkonvertierung über coremltools verwendet. Objective-C wird ebenfalls für Abwärtskompatibilität unterstützt.

Zusammenfassung

  • Core ML — Apples Framework für On-Device ML auf allen Ökosystem-Plattformen mit Apple Neural Engine-Unterstützung
  • .mlpackage — ein modernes Containerformat, das Modell, Metadaten und Ressourcen in einem Paket vereint
  • Apple Neural Engine bietet Hardwarebeschleunigung für neuronale Netze mit bis zu 35 TOPS auf dem M4 Ultra
  • coremltools ermöglicht die Modellkonvertierung von PyTorch, TensorFlow und ONNX in drei Schritten mit Python
  • Die Integration über das Vision-Framework benötigt 5–10 Zeilen Swift-Code, um ein Modell auf einem Bild auszuführen
  • Die Inferenzleistung liegt je nach Modell und Chip zwischen 2 und 50 ms
  • Datenschutz — alle Berechnungen sind streng lokal, keine Datenübertragung an Server

Wir entwickeln eine mobile Applikation schlüsselfertig

IT Sectr entwickelt seit 2017 iOS- und Android-Apps für Startups und Unternehmen. Wir beraten Sie und schlagen die beste Lösung vor.

Projekt besprechen

Lesen Sie auch