Create ML — co to je, učení modelů bez kódu a integrace

Autor: IT Sectr Publikováno: 2026-07-17 Doba čtení: 11 min

Create ML — je nástroj od Apple pro učení modelů strojového učení bez psaní kódu, integrovaný do Xcode a dostupný jako samostatná aplikace pro macOS. Nástroj umožňuje vytvářet, trénovat a testovat modely Core ML pomocí grafického rozhraní: stačí nahrát datovou sadu, vybrat typ úlohy a spustit trénování. Podle Apple Create ML Documentation (2025) nástroj podporuje transfer learning na základě vestavěných neuronových sítí, automaticky vybírá hyperparametry a exportuje hotový model ve formátu .mlpackage.

Hlavní body

  • Create ML — nástroj Apple pro trénování ML modelů přes grafické rozhraní v Xcode bez psaní kódu.
  • Podporuje úlohy: klasifikaci obrázků, analýzu textu, detekci objektů, regresi a zvukovou analýzu.
  • Transfer Learning využívá předtrénované neuronové sítě (Vision FeaturePrint) pro učení na malých datových sadách (od 10 obrázků).
  • Hotový model lze exportovat do .mlpackage pro integraci do aplikace přes Core ML.
  • Create ML je k dispozici jak jako UI aplikace na macOS, tak jako Swift API pro programové učení.

Co je Create ML?

Create ML — je součást ekosystému strojového učení Apple, představená na WWDC 2018 jako nástroj pro trénování modelů Core ML bez nutnosti psát kód. Před Create ML používali vývojáři knihovny Pythonu (TensorFlow, PyTorch, scikit-learn) a poté konvertovali modely do Core ML přes coremltools. Create ML celý tento proces abstrahoval tím, že poskytl vizuální rozhraní, vestavěné neuronové sítě pro transfer learning a automatický export do formátu Core ML.

Evoluce: od iOS 11 po macOS 15

První verze Create ML (iOS 11/macOS 10.14) podporovala pouze základní úlohy: klasifikaci obrázků a analýzu textu. Verze pro macOS 10.15 přidala detekci objektů, zvukovou analýzu a regresi. Create ML 3 (macOS 13, 2022) přinesl podporu pro doporučovací systémy, tabulková data s automatickým výběrem algoritmů a vylepšenou vizualizaci procesu učení. Create ML 4 (macOS 14, 2024) přidal podporu pro dynamické modely, učení na streamovaných datech a integraci s cloudovými službami Apple pro distribuované učení.

Pro koho je Create ML vhodný

Create ML je určen pro tři kategorie uživatelů: iOS vývojáře bez zkušeností s ML, kteří chtějí přidat inteligentní funkce do aplikace; produktové manažery a designéry, kteří chtějí rychle prototypovat ML funkce; datové výzkumníky, kteří potřebují rychlou validaci hypotéz před přesunem modelu do produkční infrastruktury. Pro složité modely s nestandardní architekturou Create ML není vhodný — v takových případech se používají frameworky Pythonu s následnou konverzí do Core ML.

Typy úloh a šablony Create ML

Create ML nabízí sedm typů úloh, pro každou z nichž je k dispozici předem nakonfigurovaná šablona: klasifikace obrázků (Image Classification), detekce objektů (Object Detection), analýza textu (Text Classification a Word Tagger), regrese tabulkových dat (Tabular Regression), klasifikace tabulkových dat (Tabular Classification), zvuková analýza (Sound Classification), doporučovací systémy (Recommendation). Každá šablona obsahuje předem vybranou architekturu neuronové sítě optimální pro daný typ úlohy.

Typ úlohyVstupní dataPříklad použití
Image ClassificationObrázky s popiskyUrčení plemene psa z fotografie
Object DetectionObrázky s anotacemiHledání obličejů na fotografii
Text ClassificationTexty s popiskySpamový filtr pro zprávy
Tabular RegressionTabulková data (CSV)Predikce ceny nemovitosti
Sound ClassificationZvukové soubory s popiskyRozpoznávání přírodních zvuků

Klasifikace obrázků v Create ML

Image Classification — je nejoblíbenější šablona Create ML. Pro trénování modelu stačí poskytnout sadu obrázků rozdělených do složek (název složky = popisek třídy). Create ML automaticky aplikuje augmentaci dat (rotace, škálování, posun barev) pro zvýšení efektivní velikosti datové sady a používá předtrénovanou síť Vision FeaturePrint (modifikovaný ResNet-50) pro extrakci příznaků. Trénování s transfer learningem trvá 2 až 15 minut v závislosti na velikosti datové sady a výkonu Macu.

Detekce objektů

Šablona Object Detection vyžaduje anotované obrázky s omezujícími rámečky (bounding boxes) pro každý objekt. Create ML používá architekturu YOLOv5 (You Only Look Once) přizpůsobenou pro Core ML s předtrénovanými váhami na datové sadě COCO. Minimální množství je 30 anotovaných obrázků na třídu, doporučené — 200+. Create ML podporuje import anotací ve formátech PASCAL VOC, COCO JSON a Create ML JSON.

Jak pracovat s Create ML v Xcode

Pracovní postup Create ML v Xcode se skládá ze tří fází: příprava dat, trénování a validace, export. Ve fázi přípravy dat se importují trénovací a testovací sady. Create ML automaticky rozdělí data (výchozí 80/20) a zobrazí distribuci tříd. Ve fázi trénování nástroj zobrazuje grafy přesnosti a ztráty v reálném čase a také metriky: accuracy, precision, recall, F1-score. Ve fázi validace můžete model otestovat na nových datech přímo v okně Create ML.

swift
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")
)

Vizuální rozhraní Xcode

Grafické rozhraní Create ML v Xcode se zobrazí v bočním editoru po výběru souboru šablony kategorie. Rozhraní obsahuje záložky: Data (načítání a prohlížení dat), Features (výběr příznaků a parametrů), Model (architektura neuronové sítě), Training (grafy trénování a metriky), Evaluation (testování na odložených datech), Preview (interaktivní testování modelu). Vývojář může přepínat mezi záložkami během trénování bez zastavení tréninku.

Transfer Learning na malých datových sadách

Transfer Learning (přenosové učení) — je klíčová technologie, na které jsou založeny šablony Create ML. Místo trénování neuronové sítě od nuly (což vyžaduje miliony anotovaných příkladů) používá Create ML předtrénovanou síť (FeaturePrint) jako extraktor příznaků a trénuje pouze poslední vrstvy klasifikátoru. To umožňuje dosáhnout vysoké přesnosti (90-95%) na sadách 10 až 50 obrázků na třídu s dobou trénování 2-5 minut.

FeaturePrint — předtrénované extraktory

Create ML používá několik předtrénovaných extraktorů FeaturePrint: .scenePrint (založený na ResNet-50, trénovaný na Places365), .objectPrint (založený na YOLOv5, trénovaný na COCO), .textPrint (založený na BERT, trénovaný na Wikipedii). Výběr extraktoru závisí na typu úlohy a doméně dat. Například .scenePrint je vhodnější pro klasifikaci obrázků interiérů a krajin, zatímco .objectPrint je vhodnější pro detekci konkrétních objektů (auta, lidé, zvířata).

Augmentace dat (Data Augmentation)

Create ML automaticky aplikuje augmentaci dat během trénování: horizontální odraz, rotaci až o 20 stupňů, posun barev, změnu jasu a kontrastu. Augmentace se aplikuje náhodně na každý obrázek v každé epoše, což zvyšuje efektivní velikost datové sady 10-20krát. To je důležité zejména pro malé datové sady, kde je přeučení (overfitting) hlavním problémem. Parametry augmentace lze nastavit v záložce Features.

Programové učení přes Swift API

Kromě vizuálního rozhraní poskytuje Create ML Swift API pro programové trénování modelů, což umožňuje automatizovat trénovací pipeline a integrovat je do CI/CD procesů. Swift API obsahuje třídy MLImageClassifier, MLObjectDetector, MLTextClassifier, MLWordTagger, MLTabularRegressor, MLSoundClassifier a MLRecommender. Každá třída implementuje protokol MLModelTrainer s metodami train(), evaluate() a write().

swift
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)")

CI/CD integrace

Swift API Create ML lze spouštět ve skriptech build phases Xcode nebo v GitLab/GitHub Actions na macOS runnerech. To umožňuje automaticky přetrénovat model pokaždé, když je trénovací datová sada v repozitáři aktualizována. Můžete například nakonfigurovat pipeline: push dat do repozitáře → GitLab Runner spustí Swift skript Create ML → exportovaný model .mlpackage se commitne zpět do repozitáře → aplikace se sestaví s aktualizovaným modelem.

Omezení Create ML

Navzdory pohodlí má Create ML řadu omezení, která je důležité zvážit při výběru nástroje pro ML úlohy. Hlavní z nich: funguje pouze na macOS, omezená kontrola nad architekturou neuronové sítě, nemožnost použití vlastních vrstev (custom layers), vázanost na vestavěné extraktory FeaturePrint a chybějící podpora trénování na více GPU nebo v clusteru.

Bez podpory produkčních pipeline

Create ML není určen pro produkční trénování na velkých datových sadách (více než 100 000 příkladů). Maximální velikost datové sady je omezena velikostí operační paměti Macu. Pro rozsáhlé úlohy Apple doporučuje používat frameworky Pythonu (TensorFlow, PyTorch) na serverové infrastruktuře s následnou konverzí do Core ML přes coremltools. Create ML je nástroj pro prototypování a malé projekty, ne pro enterprise ML.

Omezené algoritmy pro tabulková data

Pro tabulková data Create ML podporuje pouze tři algoritmy: Random Forest, Gradient Boosting (XGBoost) a Linear Regression. Chybí podpora neuronových sítí pro tabulková data (TabNet, FT-Transformer), SVM, kNN a ensemble metod dostupných ve scikit-learn. Pro úlohy s tabulkovými daty vyžadujícími vysokou přesnost Create ML často zaostává za klasickými ML knihovnami.

Pouze pro macOS

Trénování modelů je možné pouze na macOS, protože Create ML používá Metal Performance Shaders a macOS-exkluzivní frameworky. Toto omezení znemožňuje trénování na Linux serverech nebo v cloudových GPU clusterech. Pro týmy používající cloudovou infrastrukturu zůstávají coremltools + Python jedinou možností.

Příklady použití Create ML v projektech

Podívejme se na tři reálné scénáře použití Create ML v komerčních aplikacích: moderování uživatelského obsahu, osobní doporučení a automatické třídění dokumentů. Tyto scénáře ukazují typické úlohy, které lze vyřešit pomocí Create ML bez hlubokých znalostí strojového učení.

Moderování obrázků

Aplikace pro sdílení fotografií může použít Image Classification pro automatické moderování: trénování modelu na 100-200 obrázcích s popisky “povoleno” a “porušení” umožňuje filtrovat 85-95% nežádoucího obsahu bez účasti moderátora. Create ML umožňuje aktualizovat model s příchodem nových příkladů porušení přetrénováním během 3-5 minut.

Klasifikace požadavků na podporu

Pomocí Text Classification Create ML můžete naučit aplikaci automaticky klasifikovat požadavky uživatelů do kategorií: problém s platbou, technická závada, žádost o funkci, stížnost. Pro trénování stačí 50-100 textových příkladů na kategorii. Přesnost klasifikace dosahuje 90% při použití vestavěného Word Taggeru založeného na BERT.

Doporučovací systém pro obsah

MLRecommender v Create ML umožňuje vytvořit doporučovací systém na základě akcí uživatelů bez ručního psaní kolaborativního filtrování. Model se trénuje na datech typu User → Item → Rating (např. uživatel dal like článku). Create ML automaticky vybírá mezi kolaborativním filtrováním a přístupem založeným na obsahu na základě objemu dat a zobrazuje top-N doporučení.

Často kladené otázky

Co je Create ML?

Create ML — je nástroj Apple pro trénování modelů strojového učení bez kódu, integrovaný do Xcode a dostupný jako samostatná aplikace pro macOS. Umožňuje vytvářet modely Core ML přes grafické rozhraní, podporuje klasifikaci obrázků, analýzu textu, detekci objektů a další úlohy.

Čím se Create ML liší od Core ML?

Create ML se používá pro trénování modelů (vytváření .mlpackage), zatímco Core ML se používá pro provádění natrénovaných modelů na zařízení (inference). Create ML funguje pouze na macOS a generuje modely ve formátu Core ML. Jde o různé fáze stejného procesu: nejprve trénování v Create ML, poté integrace přes Core ML v aplikaci.

Kolik dat Create ML potřebuje?

Minimální množství dat závisí na typu úlohy. Pro klasifikaci obrázků s transfer learningem stačí 10-15 obrázků na třídu. Pro detekci objektů je potřeba 30 anotovaných obrázků na třídu. Pro textovou klasifikaci — 50-100 příkladů na kategorii. Doporučené množství je 100-200 příkladů na třídu pro dosažení přesnosti 90%+.

Lze Create ML použít na Windows?

Ne, Create ML funguje výhradně na macOS. Používá Metal Performance Shaders pro urychlení trénování na GPU a integraci s Xcode, které nejsou dostupné na jiných platformách. Pokud nemáte Mac, použijte Python (TensorFlow/PyTorch) pro trénování a coremltools pro konverzi modelu do .mlpackage.

Je Create ML zdarma?

Ano, Create ML je součástí Xcode a je zcela zdarma pro Apple vývojáře. K jeho použití stačí nainstalovat Xcode na Mac (zdarma z Mac App Store). Není potřeba žádná další licence ani předplatné — všechny možnosti trénování jsou k dispozici bez omezení.

Shrnutí

  • Create ML — nástroj Apple pro trénování ML modelů přes grafické rozhraní Xcode bez psaní kódu, funguje pouze na macOS.
  • Podporuje sedm typů úloh: klasifikaci obrázků, detekci objektů, klasifikaci a tagování textu, tabulkovou regresi a klasifikaci, zvukovou analýzu, doporučení.
  • Transfer Learning přes předtrénované extraktory FeaturePrint umožňuje trénovat modely na sadách 10-50 příkladů na třídu za 2-5 minut.
  • Create ML je k dispozici jako UI nástroj v Xcode a jako Swift API pro programové trénování a CI/CD integraci.
  • Omezení: pouze macOS, maximální velikost datové sady ~100K příkladů, bez vlastních vrstev a omezené algoritmy pro tabulková data.
  • Hotový model se exportuje do formátu .mlpackage pro integraci přes Core ML v iOS/macOS aplikacích.
  • Pro složité modely se doporučuje používat frameworky Pythonu s konverzí do Core ML přes coremltools.

Vyvineme mobilní aplikaci na klíč

IT Sectr vytváří aplikace pro iOS a Android pro startupy a podniky od roku 2017. Poradíme vám a navrhneme nejlepší řešení.

Prodiskutovat projekt

Přečtěte si také