Create ML — ce este, învățarea modelelor fără cod și integrarea

Autor: IT Sectr Publicat: 2026-07-17 Timp de citire: 11 min

Create ML — este un instrument de la Apple pentru învățarea modelelor de machine learning fără a scrie cod, încorporat în Xcode și disponibil ca aplicație separată pentru macOS. Instrumentul permite crearea, antrenarea și testarea modelelor Core ML folosind o interfață grafică: este suficient să încărcați un set de date, să selectați tipul de sarcină și să porniți antrenamentul. Conform Apple Create ML Documentation (2025), instrumentul suportă transfer learning pe baza rețelelor neuronale încorporate, selectează automat hiperparametrii și exportă modelul final în formatul .mlpackage.

Principalele puncte

  • Create ML — instrumentul Apple pentru antrenarea modelelor ML prin interfață grafică în Xcode fără a scrie cod.
  • Suportă sarcini: clasificare imagini, analiză text, detectare obiecte, regresie și analiză audio.
  • Transfer Learning utilizează rețele neuronale pre-antrenate (Vision FeaturePrint) pentru antrenament pe seturi mici de date (de la 10 imagini).
  • Modelul final poate fi exportat în .mlpackage pentru integrare în aplicație prin Core ML.
  • Create ML este disponibil atât ca aplicație UI pe macOS, cât și ca Swift API pentru antrenament programatic.

Ce este Create ML?

Create ML — este o componentă a ecosistemului de machine learning Apple, prezentată la WWDC 2018 ca instrument pentru antrenarea modelelor Core ML fără a fi nevoie să scrieți cod. Înainte de Create ML, dezvoltatorii foloseau biblioteci Python (TensorFlow, PyTorch, scikit-learn) și apoi convertau modelele în Core ML prin coremltools. Create ML a abstractizat întregul proces, oferind o interfață vizuală, rețele neuronale încorporate pentru transfer learning și export automat în format Core ML.

Evoluția: de la iOS 11 la macOS 15

Prima versiune Create ML (iOS 11/macOS 10.14) suporta doar sarcini de bază: clasificarea imaginilor și analiza textului. Versiunea pentru macOS 10.15 a adăugat detectarea obiectelor, analiza audio și regresia. Create ML 3 (macOS 13, 2022) a adus suport pentru sisteme de recomandare, date tabelare cu selectare automată a algoritmilor și vizualizare îmbunătățită a procesului de antrenament. Create ML 4 (macOS 14, 2024) a adăugat suport pentru modele dinamice, antrenament pe date în flux și integrare cu serviciile cloud Apple pentru antrenament distribuit.

Pentru cine este potrivit Create ML

Create ML este destinat a trei categorii de utilizatori: dezvoltatori iOS fără experiență în ML care doresc să adauge funcții inteligente în aplicație; manageri de produs și designeri care doresc să prototipeze rapid funcții ML; cercetători de date care au nevoie de validare rapidă a ipotezelor înainte de a transfera modelul pe infrastructura de producție. Pentru modele complexe cu arhitectură non-standard, Create ML nu este potrivit — în astfel de cazuri se folosesc framework-uri Python cu conversie ulterioară în Core ML.

Tipuri de sarcini și șabloane Create ML

Create ML oferă șapte tipuri de sarcini, pentru fiecare fiind disponibil un șablon preconfigurat: clasificare imagini (Image Classification), detectare obiecte (Object Detection), analiză text (Text Classification și Word Tagger), regresie date tabelare (Tabular Regression), clasificare date tabelare (Tabular Classification), analiză audio (Sound Classification), sisteme de recomandare (Recommendation). Fiecare șablon include o arhitectură de rețea neuronală preselectată, optimă pentru acel tip de sarcină.

Tip sarcinăDate de intrareExemplu de utilizare
Image ClassificationImagini cu eticheteDeterminarea rasei de câine după fotografie
Object DetectionImagini cu adnotăriCăutarea fețelor într-o fotografie
Text ClassificationTexte cu eticheteFiltru de spam pentru mesaje
Tabular RegressionDate tabelare (CSV)Prognoză preț imobiliar
Sound ClassificationFișiere audio cu eticheteRecunoașterea sunetelor naturii

Clasificarea imaginilor în Create ML

Image Classification — este cel mai popular șablon Create ML. Pentru antrenarea modelului este suficient să furnizați un set de imagini împărțite pe foldere (numele folderului = eticheta clasei). Create ML aplică automat augmentarea datelor (rotire, scalare, deplasare culoare) pentru a mări dimensiunea efectivă a setului de date și folosește rețeaua pre-antrenată Vision FeaturePrint (ResNet-50 modificată) pentru extragerea caracteristicilor. Antrenamentul cu transfer learning durează între 2 și 15 minute, în funcție de dimensiunea setului de date și performanța Mac-ului.

Detectarea obiectelor

Șablonul Object Detection necesită imagini adnotate cu cadre delimitative (bounding boxes) pentru fiecare obiect. Create ML folosește arhitectura YOLOv5 (You Only Look Once), adaptată pentru Core ML, cu greutăți pre-antrenate pe setul COCO. Cantitatea minimă este de 30 de imagini adnotate per clasă, cea recomandată — 200+. Create ML suportă importul adnotărilor în formatele PASCAL VOC, COCO JSON și Create ML JSON.

Cum să lucrați cu Create ML în Xcode

Fluxul de lucru Create ML în Xcode constă din trei etape: pregătirea datelor, antrenament și validare, export. În etapa de pregătire a datelor, se importă seturile de antrenament și de testare. Create ML împarte automat datele (implicit 80/20) și afișează distribuția claselor. În etapa de antrenament, instrumentul afișează graficele de acuratețe și pierdere în timp real, precum și metrici: accuracy, precision, recall, F1-score. În etapa de validare, puteți testa modelul pe date noi direct în fereastra 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")
)

Interfața vizuală Xcode

Interfața grafică Create ML în Xcode se afișează în editorul lateral după selectarea fișierului șablon al categoriei. Interfața conține filele: Data (încărcarea și vizualizarea datelor), Features (selectarea caracteristicilor și parametrilor), Model (arhitectura rețelei neuronale), Training (grafice de antrenament și metrici), Evaluation (testare pe date reținute), Preview (testare interactivă a modelului). Dezvoltatorul poate comuta între file în timpul antrenamentului fără a opri antrenarea.

Transfer Learning pe seturi mici de date

Transfer Learning (învățare prin transfer) — este tehnologia cheie pe care se bazează șabloanele Create ML. În loc să antreneze o rețea neuronală de la zero (ceea ce necesită milioane de exemple adnotate), Create ML folosește o rețea pre-antrenată (FeaturePrint) ca extractor de caracteristici și antrenează doar ultimele straturi ale clasificatorului. Acest lucru permite atingerea unei acurateți ridicate (90-95%) pe seturi de 10 până la 50 de imagini per clasă, cu un timp de antrenament de 2-5 minute.

FeaturePrint — extractori pre-antrenați

Create ML folosește mai mulți extractori FeaturePrint pre-antrenați: .scenePrint (bazat pe ResNet-50, antrenat pe Places365), .objectPrint (bazat pe YOLOv5, antrenat pe COCO), .textPrint (bazat pe BERT, antrenat pe Wikipedia). Alegerea extractorului depinde de tipul sarcinii și domeniul datelor. De exemplu, .scenePrint este mai potrivit pentru clasificarea imaginilor cu interioare și peisaje, iar .objectPrint — pentru detectarea obiectelor specifice (mașini, persoane, animale).

Augmentarea datelor (Data Augmentation)

Create ML aplică automat augmentarea datelor în timpul antrenamentului: oglindire orizontală, rotire de până la 20 de grade, deplasare culoare, modificare luminozitate și contrast. Augmentarea se aplică aleatoriu fiecărei imagini la fiecare epocă, ceea ce mărește dimensiunea efectivă a setului de date de 10-20 de ori. Acest lucru este deosebit de important pentru seturi mici de date, unde supraînvățarea (overfitting) este principala problemă. Parametrii de augmentare pot fi ajustați în fila Features.

Antrenament programatic prin Swift API

Pe lângă interfața vizuală, Create ML oferă Swift API pentru antrenamentul programatic al modelelor, permițând automatizarea pipeline-urilor de antrenament și integrarea acestora în procesele CI/CD. Swift API include clasele MLImageClassifier, MLObjectDetector, MLTextClassifier, MLWordTagger, MLTabularRegressor, MLSoundClassifier și MLRecommender. Fiecare clasă implementează protocolul MLModelTrainer cu metodele train(), evaluate() și 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)")

Integrare CI/CD

Swift API Create ML poate fi rulat în scripturi build phases Xcode sau în GitLab/GitHub Actions pe rulanți macOS. Acest lucru permite reantrenarea automată a modelului de fiecare dată când setul de antrenament din repository este actualizat. De exemplu, puteți configura un pipeline: push date în repository → GitLab Runner rulează scriptul Swift Create ML → modelul .mlpackage exportat este comis în repository → aplicația este construită cu modelul actualizat.

Limitări ale Create ML

În ciuda confortului, Create ML are o serie de limitări care trebuie luate în considerare la alegerea instrumentului pentru sarcini ML. Principalele sunt: funcționează doar pe macOS, control limitat asupra arhitecturii rețelei neuronale, imposibilitatea utilizării straturilor personalizate (custom layers), dependența de extractorii încorporați FeaturePrint și lipsa suportului pentru antrenament pe mai multe GPU-uri sau în cluster.

Fără suport pentru pipeline-uri de producție

Create ML nu este destinat antrenamentului de producție pe seturi mari de date (peste 100 000 de exemple). Dimensiunea maximă a setului de date este limitată de memoria RAM a Mac-ului. Pentru sarcini la scară largă, Apple recomandă utilizarea framework-urilor Python (TensorFlow, PyTorch) pe infrastructură server, cu conversie ulterioară în Core ML prin coremltools. Create ML este un instrument de prototipare și proiecte mici, nu pentru enterprise ML.

Algoritmi limitați pentru date tabelare

Pentru date tabelare, Create ML suportă doar trei algoritmi: Random Forest, Gradient Boosting (XGBoost) și Linear Regression. Nu există suport pentru rețele neuronale pentru date tabelare (TabNet, FT-Transformer), SVM, kNN și metode de ansamblu disponibile în scikit-learn. Pentru sarcini cu date tabelare care necesită acuratețe ridicată, Create ML este adesea inferior bibliotecilor clasice ML.

Doar pentru macOS

Antrenarea modelelor este posibilă doar pe macOS, deoarece Create ML utilizează Metal Performance Shaders și framework-uri exclusive macOS. Această limitare face imposibil antrenamentul pe servere Linux sau în clustere GPU în cloud. Pentru echipele care utilizează infrastructură cloud, coremltools + Python rămân singura opțiune.

Exemple de utilizare Create ML în proiecte

Să examinăm trei scenarii reale de utilizare Create ML în aplicații comerciale: moderarea conținutului utilizatorilor, recomandări personalizate și sortarea automată a documentelor. Aceste scenarii demonstrează sarcini tipice care pot fi rezolvate cu Create ML fără cunoștințe profunde de machine learning.

Moderarea imaginilor

O aplicație de partajare a fotografiilor poate utiliza Image Classification pentru moderare automată: antrenarea modelului pe 100-200 de imagini cu etichetele „permis” și „încălcare” permite filtrarea a 85-95% din conținutul nedorit fără participarea unui moderator. Create ML permite actualizarea modelului pe măsură ce sosesc noi exemple de încălcări, reantrenându-l în 3-5 minute.

Clasificarea sesizărilor la suport

Cu ajutorul Text Classification Create ML puteți învăța aplicația să clasifice automat sesizările utilizatorilor pe categorii: problemă de plată, defecțiune tehnică, cerere de funcție, reclamație. Pentru antrenare sunt suficiente 50-100 de exemple textuale per categorie. Acuratețea clasificării atinge 90% folosind Word Tagger încorporat bazat pe BERT.

Sistem de recomandare pentru conținut

MLRecommender în Create ML permite construirea unui sistem de recomandare pe baza acțiunilor utilizatorilor fără a scrie manual filtrare colaborativă. Modelul se antrenează pe date de tip User → Item → Rating (de exemplu, utilizatorul a apreciat un articol). Create ML selectează automat între filtrarea colaborativă și abordarea bazată pe conținut, în funcție de volumul de date, și afișează top-N recomandări.

Întrebări frecvente

Ce este Create ML?

Create ML — este un instrument Apple pentru antrenarea modelelor de machine learning fără cod, încorporat în Xcode și disponibil ca aplicație separată pentru macOS. Permite crearea modelelor Core ML printr-o interfață grafică, suportând clasificarea imaginilor, analiza textului, detectarea obiectelor și alte sarcini.

Cu ce diferă Create ML de Core ML?

Create ML este folosit pentru antrenarea modelelor (crearea .mlpackage), iar Core ML — pentru executarea modelelor antrenate pe dispozitiv (inferență). Create ML funcționează doar pe macOS și generează modele în format Core ML. Sunt etape diferite ale aceluiași proces: mai întâi antrenament în Create ML, apoi integrare prin Core ML în aplicație.

Ce cantitate de date este necesară pentru Create ML?

Cantitatea minimă de date depinde de tipul sarcinii. Pentru clasificarea imaginilor cu transfer learning sunt suficiente 10-15 imagini per clasă. Pentru detectarea obiectelor sunt necesare cel puțin 30 de imagini adnotate per clasă. Pentru clasificarea textului — 50-100 de exemple per categorie. Cantitatea recomandată este de 100-200 de exemple per clasă pentru o acuratețe de 90%+.

Poate fi folosit Create ML pe Windows?

Nu, Create ML funcționează exclusiv pe macOS. Utilizează Metal Performance Shaders pentru accelerarea antrenamentului pe GPU și integrare cu Xcode, care nu sunt disponibile pe alte platforme. Dacă nu aveți un Mac, folosiți Python (TensorFlow/PyTorch) pentru antrenare și coremltools pentru conversia modelului în .mlpackage.

Create ML este gratuit?

Da, Create ML face parte din Xcode și este complet gratuit pentru dezvoltatorii Apple. Pentru utilizare este suficient să instalați Xcode pe Mac (gratuit din Mac App Store). Nu sunt necesare licențe sau abonamente suplimentare — toate capacitățile de antrenare sunt disponibile fără restricții.

Rezumat

  • Create ML — instrumentul Apple pentru antrenarea modelelor ML prin interfața grafică Xcode fără a scrie cod, care funcționează doar pe macOS.
  • Suportă șapte tipuri de sarcini: clasificare imagini, detectare obiecte, clasificare și etichetare text, regresie și clasificare tabelară, analiză audio, recomandări.
  • Transfer Learning prin extractori FeaturePrint pre-antrenați permite antrenarea modelelor pe seturi de 10-50 de exemple per clasă în 2-5 minute.
  • Create ML este disponibil ca instrument UI în Xcode și ca Swift API pentru antrenament programatic și integrare CI/CD.
  • Limitări: doar macOS, dimensiunea maximă a setului de date ~100K exemple, fără straturi personalizate și algoritmi limitați pentru date tabelare.
  • Modelul final este exportat în format .mlpackage pentru integrare prin Core ML în aplicații iOS/macOS.
  • Pentru modele complexe, se recomandă utilizarea framework-urilor Python cu conversie în Core ML prin coremltools.

Vom dezvolta o aplicație mobilă la cheie

IT Sectr creează aplicații iOS și Android pentru startup-uri și afaceri din 2017. Vă vom consilia și vă vom propune cea mai bună soluție.

Discutați proiectul

Citiți și