Create ML — bu Apple tomonidan kod yozmasdan mashinani o'rganish modellarini o'rgatish uchun vosita bo'lib, Xcode-ga o'rnatilgan va macOS uchun alohida ilova sifatida mavjud. Vosita Core ML modellarini yaratish, o'rgatish va sinash imkonini beradi: ma'lumotlar to'plamini yuklash, vazifa turini tanlash va o'rgatishni boshlash kifoya. Apple Create ML Documentation (2025) ma'lumotlariga ko'ra, vosita o'rnatilgan neyron tarmoqlar asosida transfer learning-ni qo'llab-quvvatlaydi, giperparametrlarni avtomatik tanlaydi va tayyor modelni .mlpackage formatida eksport qiladi.
Asosiy nuqtalar
Create ML — Apple-ning mashinani o'rganish ekotizimining komponenti bo'lib, WWDC 2018 da Core ML modellarini kod yozmasdan o'rgatish vositasi sifatida taqdim etilgan. Create ML-dan oldin dasturchilar Python kutubxonalaridan (TensorFlow, PyTorch, scikit-learn) foydalanib, keyin modellarni coremltools orqali Core ML-ga o'tkazishgan. Create ML butun bu jarayonni abstraktlashtirib, vizual interfeys, transfer learning uchun o'rnatilgan neyron tarmoqlar va Core ML formatiga avtomatik eksportni ta'minladi.
Create ML-ning birinchi versiyasi (iOS 11/macOS 10.14) faqat asosiy vazifalarni qo'llab-quvvatlagan: tasvir tasnifi va matn tahlili. macOS 10.15 versiyasi ob'ektlarni aniqlash, tovush tahlili va regressiyani qo'shdi. Create ML 3 (macOS 13, 2022) tavsiya tizimlari, avtomatik algoritm tanlash bilan jadval ma'lumotlari va yaxshilangan o'rgatish vizualizatsiyasini olib keldi. Create ML 4 (macOS 14, 2024) dinamik modellar, oqim ma'lumotlarida o'rgatish va taqsimlangan o'rgatish uchun Apple bulut xizmatlari bilan integratsiyani qo'shdi.
Create ML uch toifadagi foydalanuvchilar uchun mo'ljallangan: ilovaga intellektual funksiyalar qo'shishni xohlaydigan ML tajribasi bo'lmagan iOS dasturchilari; ML funksiyalarini tez prototiplashtirishni xohlaydigan mahsulot menejerlari va dizaynerlari; modelni ishlab chiqarish infratuzilmasiga o'tkazishdan oldin tez gipoteza tekshirishiga muhtoj ma'lumot tadqiqotchilari. Murakkab modellar uchun Create ML mos emas — bunday hollarda Python freymvorklari keyin Core ML-ga o'tkazish bilan ishlatiladi.
Create ML etti vazifa turini taklif qiladi, ularning har biri uchun oldindan sozlangan shablon mavjud: tasvir tasnifi (Image Classification), ob'ektlarni aniqlash (Object Detection), matn tahlili (Text Classification va Word Tagger), jadval regressiyasi (Tabular Regression), jadval tasnifi (Tabular Classification), tovush tahlili (Sound Classification), tavsiya tizimlari (Recommendation). Har bir shablon ushbu vazifa turi uchun optimal bo'lgan oldindan tanlangan neyron tarmoq arxitekturasini o'z ichiga oladi.
| Vazifa turi | Kirish ma'lumotlari | Foydalanish misoli |
|---|---|---|
| Image Classification | Belgilangan tasvirlar | Rasmdan it zotini aniqlash |
| Object Detection | Annotatsiyali tasvirlar | Fotosuratdagi yuzlarni qidirish |
| Text Classification | Belgilangan matnlar | Xabarlar uchun spam filtri |
| Tabular Regression | Jadval ma'lumotlari (CSV) | Ko'chmas mulk narxini bashorat qilish |
| Sound Classification | Belgilangan audiofayllar | Tabiat tovushlarini tanib olish |
Image Classification — eng mashhur Create ML shablonidir. Modelni o'rgatish uchun papkalarga bo'lingan tasvirlar to'plamini taqdim etish kifoya (papka nomi = sinf belgisi). Create ML ma'lumotlar to'plamining samarali hajmini oshirish uchun avtomatik ma'lumotlarni kengaytirish (aylantirish, masshtablash, rang siljishi) qo'llaydi va xususiyatlarni ajratish uchun oldindan o'rgatilgan Vision FeaturePrint tarmog'idan (o'zgartirilgan ResNet-50) foydalanadi. Transfer learning bilan o'rgatish ma'lumotlar to'plami hajmi va Mac unumdorligiga qarab 2 dan 15 daqiqagacha davom etadi.
Object Detection shabloni har bir ob'ekt uchun cheklovchi ramkalar (bounding boxes) bilan belgilangan tasvirlarni talab qiladi. Create ML COCO to'plamida oldindan o'rgatilgan og'irliklar bilan Core ML-ga moslashtirilgan YOLOv5 (You Only Look Once) arxitekturasidan foydalanadi. Minimal miqdor har bir sinf uchun 30 ta belgilangan tasvir, tavsiya etilgan — 200+. Create ML PASCAL VOC, COCO JSON va Create ML JSON formatlarida annotatsiya importini qo'llab-quvvatlaydi.
Ish jarayoni Xcode-da Create ML uch bosqichdan iborat: ma'lumotlarni tayyorlash, o'rgatish va validatsiya, eksport. Ma'lumotlarni tayyorlash bosqichida trening va test to'plamlari import qilinadi. Create ML ma'lumotlarni avtomatik ajratadi (standart 80/20) va sinf taqsimotini ko'rsatadi. O'rgatish bosqichida vosita real vaqtda aniqlik va yo'qotish grafiklarini, shuningdek metrikalarni ko'rsatadi: accuracy, precision, recall, F1-score. Validatsiya bosqichida modelni yangi ma'lumotlarda to'g'ridan-to'g'ri Create ML oynasida sinash mumkin.
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")
)
Xcode-da Create ML grafik interfeysi kategoriya shablon fayli tanlangandan so'ng yon muharrirda ko'rsatiladi. Interfeys quyidagi varaqlarni o'z ichiga oladi: Data (ma'lumotlarni yuklash va ko'rish), Features (xususiyat va parametrlarni tanlash), Model (neyron tarmoq arxitekturasi), Training (o'rgatish grafiklari va metrikalar), Evaluation (ajratilgan ma'lumotlarda sinash), Preview (modelni interaktiv sinash). Dasturchi o'rgatishni to'xtatmasdan varaqlar o'rtasida almashishi mumkin.
Transfer Learning (ko'chirish bilan o'rgatish) — Create ML shablonlari asoslangan asosiy texnologiyadir. Neyron tarmoqni noldan o'rgatish (millionlab belgilangan namunalar talab qiladi) o'rniga, Create ML oldindan o'rgatilgan tarmoqdan (FeaturePrint) xususiyat ajratuvchi sifatida foydalanadi va faqat klassifikatorning so'nggi qatlamlarini o'rgatadi. Bu 2-5 daqiqa o'rgatish vaqti bilan har bir sinf uchun 10 dan 50 gacha tasvirdan iborat to'plamlarda yuqori aniqlikka (90-95%) erishish imkonini beradi.
Create ML bir nechta oldindan o'rgatilgan FeaturePrint ajratuvchilaridan foydalanadi: .scenePrint (ResNet-50 asosida, Places365 da o'rgatilgan), .objectPrint (YOLOv5 asosida, COCO da o'rgatilgan), .textPrint (BERT asosida, Vikipediyada o'rgatilgan). Ajratuvchini tanlash vazifa turi va ma'lumotlar domeniga bog'liq. Masalan, .scenePrint xonalar va landshaftlar tasnifi uchun ko'proq mos, .objectPrint esa aniq ob'ektlarni (avtomobillar, odamlar, hayvonlar) aniqlash uchun.
Create ML o'rgatish jarayonida avtomatik ma'lumotlarni kengaytirish qo'llaydi: gorizontal aks ettirish, 20 darajagacha aylantirish, rang siljishi, yorqinlik va kontrast o'zgarishi. Kengaytirish har bir epoxada har bir tasvirga tasodifiy qo'llaniladi, bu esa ma'lumotlar to'plamining samarali hajmini 10-20 marta oshiradi. Bu ayniqsa kichik ma'lumotlar to'plamlari uchun muhim, bunda haddan tashqari o'rgatish (overfitting) asosiy muammodir. Kengaytirish parametrlari Features varaqida sozlanishi mumkin.
Vizual interfeysdan tashqari, Create ML modellarni dasturiy o'rgatish uchun Swift API taqdim etadi, bu o'rgatish quvurlarini avtomatlashtirish va ularni CI/CD jarayonlariga integratsiya qilish imkonini beradi. Swift API MLImageClassifier, MLObjectDetector, MLTextClassifier, MLWordTagger, MLTabularRegressor, MLSoundClassifier va MLRecommender sinflarini o'z ichiga oladi. Har bir sinf train(), evaluate() va write() metodlari bilan MLModelTrainer protokolini amalga oshiradi.
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)")
Create ML Swift API Xcode-ning build phases skriptlarida yoki macOS runnerlarida GitLab/GitHub Actions-da ishga tushirilishi mumkin. Bu repozitoriyada trening to'plami yangilanganda modelni avtomatik qayta o'rgatish imkonini beradi. Masalan, quvurni sozlash mumkin: ma'lumotlarni repozitoriyaga push → GitLab Runner Swift Create ML skriptini ishga tushiradi → eksport qilingan .mlpackage modeli repozitoriyaga commit qilinadi → ilova yangilangan model bilan quriladi.
Qulayligiga qaramay, Create ML ML vazifalari uchun vositani tanlashda hisobga olinishi kerak bo'lgan bir qator cheklovlarga ega. Asosiylari: faqat macOS-da ishlaydi, neyron tarmoq arxitekturasi ustida cheklangan nazorat, moslashtirilgan qatlamlardan (custom layers) foydalanish imkoniyati yo'q, o'rnatilgan FeaturePrint ajratuvchilariga bog'liqlik va bir nechta GPU yoki klasterda o'rgatish qo'llab-quvvatlanmasligi.
Create ML katta ma'lumotlar to'plamlarida (100 000 dan ortiq namuna) ishlab chiqarish o'rgatish uchun mo'ljallanmagan. Ma'lumotlar to'plamining maksimal hajmi Mac operativ xotirasi hajmi bilan cheklangan. Keng ko'lamli vazifalar uchun Apple keyin coremltools orqali Core ML-ga o'tkazish bilan server infratuzilmasida Python freymvorklaridan (TensorFlow, PyTorch) foydalanishni tavsiya qiladi. Create ML prototiplashtirish va kichik loyihalar uchun vositadir, enterprise ML uchun emas.
Jadval ma'lumotlari uchun Create ML faqat uchta algoritmni qo'llab-quvvatlaydi: Random Forest, Gradient Boosting (XGBoost) va Linear Regression. Jadval ma'lumotlari uchun neyron tarmoqlarni (TabNet, FT-Transformer), SVM, kNN va scikit-learn-da mavjud ansambl usullarini qo'llab-quvvatlamaydi. Yuqori aniqlik talab qiladigan jadval ma'lumotlari vazifalari uchun Create ML ko'pincha klassik ML kutubxonalaridan orqada qoladi.
Modellarni o'rgatish faqat macOS-da mumkin, chunki Create ML Metal Performance Shaders va macOS-ga xos freymvorklardan foydalanadi. Bu cheklov Linux serverlarida yoki bulutli GPU klasterlarida o'rgatishni imkonsiz qiladi. Bulut infratuzilmasidan foydalanadigan jamoalar uchun coremltools + Python yagona variant bo'lib qoladi.
Tijorat ilovalarida Create ML-dan foydalanishning uch real stsenariysini ko'rib chiqamiz: foydalanuvchi tarkibini modratsiya qilish, shaxsiy tavsiyalar va hujjatlarni avtomatik saralash. Bu stsenariylar chuqur mashinani o'rganish bilimisiz Create ML bilan hal qilinadigan odatiy vazifalarni ko'rsatadi.
Foto almashish ilovasi avtomatik modratsiya uchun Image Classification dan foydalanishi mumkin: „ruxsat etilgan“ va „buzilish“ belgilari bilan 100-200 tasvirda modelni o'rgatish moderator ishtirokisiz keraksiz tarkibning 85-95% ni filtrlash imkonini beradi. Create ML yangi buzilish namunalari kelganda modelni 3-5 daqiqada qayta o'rgatib, yangilash imkonini beradi.
Text Classification orqali Create ML ilovaga foydalanuvchi murojaatlarini toifalarga avtomatik tasniflashni o'rgatishi mumkin: to'lov muammosi, texnik nosozlik, funksiya so'rovi, shikoyat. O'rgatish uchun har bir toifa uchun 50-100 matn namunasi kifoya. BERT asosidagi o'rnatilgan Word Tagger yordamida tasnif aniqligi 90% ga etadi.
Create ML-dagi MLRecommender qo'lda hamkorlik filtri yozmasdan foydalanuvchi harakatlari asosida tavsiya tizimini qurish imkonini beradi. Model User → Item → Rating turidagi ma'lumotlarda o'rgatiladi (masalan, foydalanuvchi maqolani yoqtirdi). Create ML ma'lumotlar hajmiga qarab hamkorlik filtri va tarkib yondashuvi o'rtasida avtomatik tanlaydi va top-N tavsiyalarni ko'rsatadi.
Tez-tez so'raladigan savollar
Create ML — Apple tomonidan kod yozmasdan mashinani o'rganish modellarini o'rgatish vositasi, Xcode-ga o'rnatilgan va macOS uchun alohida ilova sifatida mavjud. Grafik interfeys orqali Core ML modellarini yaratish, tasvir tasnifi, matn tahlili, ob'ektlarni aniqlash va boshqa vazifalarni qo'llab-quvvatlaydi.
Create ML modellarni o'rgatish (.mlpackage yaratish) uchun, Core ML esa o'rgatilgan modellarni qurilmada bajarish (inferensiya) uchun ishlatiladi. Create ML faqat macOS-da ishlaydi va modellarni Core ML formatida yaratadi. Bu bir jarayonning turli bosqichlari: avval Create ML-da o'rgatish, keyin ilovada Core ML orqali integratsiya.
Minimal ma'lumot miqdori vazifa turiga bog'liq. Transfer learning bilan tasvir tasnifi uchun har bir sinf uchun 10-15 tasvir kifoya. Ob'ektlarni aniqlash uchun har bir sinf uchun 30 ta belgilangan tasvir talab qilinadi. Matn tasnifi uchun — har bir toifa uchun 50-100 ta namuna. 90%+ aniqlikka erishish uchun tavsiya etilgan miqdor har bir sinf uchun 100-200 ta namunadir.
Yo'q, Create ML faqat macOS-da ishlaydi. U GPU-da o'rgatishni tezlashtirish uchun Metal Performance Shaders va boshqa platformalarda mavjud bo'lmagan Xcode bilan integratsiyadan foydalanadi. Agar Mac-ingiz bo'lmasa, o'rgatish uchun Python (TensorFlow/PyTorch) va modelni .mlpackage ga o'tkazish uchun coremltools dan foydalaning.
Ha, Create ML Xcode tarkibiga kiradi va Apple dasturchilari uchun mutlaqo bepul. Uni ishlatish uchun Mac-ga Xcode-ni o'rnatish kifoya (Mac App Store-dan bepul). Hech qanday qo'shimcha litsenziya yoki obuna talab qilinmaydi — barcha o'rgatish imkoniyatlari cheklovlarsiz mavjud.
Xulosa
Biz kalit topshirig'i bilan mobil ilovani ishlab chiqamiz
IT Sectr 2017-yildan beri startaplar va korxonalar uchun iOS va Android ilovalarini yaratadi. Biz sizga maslahat beramiz va eng yaxshi yechimni taklif qilamiz.