ML на пристрої (on-device ML) — виконання моделей машинного навчання безпосередньо на мобільному пристрої без надсилання даних на сервер. За даними звіту Google AI, 2025, понад 70% користувачів надають перевагу додаткам з on-device ML через конфіденційність та відсутність затримок мережі. Core ML від Apple, TensorFlow Lite від Google та ML Kit дозволяють вирішувати завдання Vision, NLP, розпізнавання облич та об'єктів повністю на пристрої — без інтернету та з мінімальним енергоспоживанням.
Головне
ML на пристрої (on-device ML) — це підхід, при якому моделі машинного навчання виконуються безпосередньо на мобільному пристрої без надсилання даних на віддалений сервер. Конфіденційність — ключова перевага: дані користувача не покидають пристрій. За даними дослідження Google (2024), 63% користувачів відмовляються від ML-функцій, що вимагають передачі даних на сервер. On-device ML усуває затримки мережі, працює в офлайн-режимі та знижує енергоспоживання завдяки апаратному прискоренню.
On-device ML обробляє дані за мілісекунди замість секунд — критично важливо для розпізнавання облич та об'єктів у реальному часі. Відсутність інтернет-з'єднання — ще одна перевага: ML-функції доступні в авіарежимі та в регіонах з нестабільним зв'язком. Core ML використовує Neural Engine у чипах Apple A12+, що забезпечує 11 трильйонів операцій на секунду при енергоспоживанні менше 1 Вт. Для мобільних додатків on-device ML став стандартом де-факто в завданнях Vision, NLP та розпізнавання об'єктів.
ML у мобільних додатках застосовується для аутентифікації за обличчям (Face ID), AR-фільтрів у Snapchat та Instagram, фітнес-трекерів з Pose Detection, OCR-сканування в Adobe Scan та предиктивного введення в клавіатурах. Кастомні моделі для специфічних завдань створюються через Core ML (iOS) або TensorFlow Lite (Android). ML Kit підходить для типових сценаріїв — розпізнавання тексту, облич та штрихкодів без необхідності навчати модель.
Core ML — фреймворк Apple для виконання ML-моделей на iPhone, iPad, Mac та Apple Watch. Він автоматично вибирає оптимальне апаратне прискорення: Neural Engine для нейронних мереж на пристроях з A12+ (11 TOPS), GPU для завдань обробки зображень та CPU для послідовних обчислень. Core ML підтримує формати .mlmodel (вихідний) та .mlmodelc (скомпільований). Конвертація моделей з PyTorch та TensorFlow виконується через coremltools — Python-бібліотеку зі збереженням топології та ваг.
Create ML — додаток Apple для навчання простих моделей без написання коду. Для продакшену використовують coremltools — утиліту конвертації з PyTorch, TensorFlow та scikit-learn. Coremltools підтримує квантування float32 → float16 та int8, палітрацію колірного простору та видалення надлишкових операцій для зменшення розміру моделі.
import coremltools as ct
model = ct.convert(
"resnet50.mlmodel",
source="pytorch",
convert_to="mlprogram"
)
model.save("Resnet50.mlpackage")
Neural Engine — спеціалізований нейропроцесор у чипах Apple A12 та новіших. 16 ядер виконують до 11 трильйонів операцій на секунду з енергоспоживанням менше 1 Вт. Core ML автоматично спрямовує нейромережеві обчислення на Neural Engine, а GPU-сумісні — на Metal GPU. Розробнику не потрібно вибирати пристрій — Core ML робить це через Performance Report, аналізуючи модель та доступне обладнання.
TensorFlow Lite (TFLite) — кросплатформне рішення Google для виконання ML-моделей на Android, iOS та Linux. Моделі мають формат .tflite та створюються через TFLiteConverter з екосистеми TensorFlow. TFLite підтримує квантування float32 → int8, що зменшує розмір моделі в 4 рази при збереженні 97–99% точності на задачах класифікації. Google Play Services for TFLite автоматично оновлює runtime без перевипуску додатка.
TFLiteConverter — основний інструмент конвертації моделей TensorFlow у формат .tflite. Пост-тренувальне квантування int8 стискає модель з 300 МБ до 75 МБ без доступу до повного датасету. Квантувально-обізнане навчання (QAT) дає мінімальну втрату точності — менше 1% на ImageNet. TFLiteConverter також підтримує обрізання графа та видалення операцій, не підтримуваних TFLite runtime.
import tensorflow as tf
converter = tf.lite.TFLiteConverter.from_saved_model(
"saved_model_dir"
)
converter.optimizations = [tf.lite.Optimize.DEFAULT]
tflite_model = converter.convert()
Без делегата TFLite виконує модель на CPU в 3–5 разів повільніше, ніж з апаратним прискоренням. GPU Delegate використовує OpenCL та OpenGL ES 3.1 на Android, Core ML Delegate — Neural Engine на iOS. NNAPI Delegate задіює NPU та DSP на Android 8.1+. XNNPACK Delegate — кросплатформне прискорення на ARM CPU з оптимізаціями під мобільні процесори. Для вибору делегата використовуйте TfLiteGpuDelegate.create() з перевіркою результату на null.
ML Kit — SDK від Google з готовими API для on-device ML. У мобільних додатках ML Kit використовується для розпізнавання тексту (50+ мов, включаючи рукописний), Face Detection (468 ключових точок обличчя), Barcode Scanning (QR, EAN-13, Code 128, PDF417, Data Matrix) та Object Detection. Всі API працюють повністю на пристрої без інтернету. ML Kit доступний на iOS та Android з єдиним API.
Face Detection повертає координати контуру обличчя, брів, очей, носа та губ, а також кут нахилу голови та стан очей. AR-маски та фільтри в камері — найпопулярніший сценарій використання. Text Recognition витягує текст з фотографій з точністю до 99% на друкованих символах. API підтримує розпізнавання в реальному часі через CameraX.
val recognizer = TextRecognition.getClient()
val image = InputImage.fromBitmap(bitmap)
recognizer.process(image)
.addOnSuccessListener { result ->
result.textBlocks.forEach { block ->
println(block.text)
}
}
Barcode Scanning розпізнає штрихкоди у відеопотоці з камери в реальному часі. Object Detection виділяє об'єкти на зображенні з bounding box та міткою класу (людина, автомобіль, тварина). Pose Detection визначає 33 ключові точки тіла для фітнес-додатків та аналізу рухів. Image Labeling повертає до 10 семантичних міток зображення — «природа», «місто», «їжа».
Apple надає вбудовані ML-рішення через Vision та NaturalLanguage без встановлення сторонніх SDK. Vision (VNRequest) виконує детекцію облич, тексту, штрихкодів та контурів на пристрої. NaturalLanguage (NLTokenizer) — токенізацію, лематизацію, визначення мови та аналіз тональності. На Android аналоги реалізовані через ML Kit (розпізнавання) та SpeechRecognizer з android.speech (мова). Вбудовані інструменти не вимагають завантаження моделей — вони передвстановлені в системі.
Vision включає VNDetectFaceRectanglesRequest (детекція облич), VNRecognizeTextRequest (розпізнавання тексту), VNDetectBarcodesRequest (штрихкоди) та VNDetectHumanBodyPoseRequest (скелет). VNCoreMLRequest інтегрує кастомну Core ML модель у пайплайн Vision — наприклад, класифікація емоцій на знайдених обличчях. Всі запити виконуються на Neural Engine з мінімальною затримкою.
let request = VNRecognizeTextRequest { request, error in
guard let observations = request.results
as? [VNRecognizedTextObservation] else { return }
for observation in observations {
let topCandidate = observation
.topCandidates(1).first
print(topCandidate?.string as? String ?? "")
}
}
let handler = VNImageRequestHandler(
cgImage: image, options: [:]
)
try? handler.perform([request])
NaturalLanguage надає NLTokenizer для розбивки тексту на токени, NLLanguageRecognizer для визначення мови (72 мови) та NLSentimentAnalyzer для аналізу тональності тексту. SFSpeechRecognizer — API розпізнавання мови з підтримкою 50+ мов на пристрої (iOS 13+). Перед використанням потрібен дозвіл SFSpeechRecognizerAuthorizationStatus. Результати надходять асинхронно через SFSpeechRecognitionResultHandler.
Часті запитання
ML на пристрої (on-device ML) — підхід, при якому моделі машинного навчання запускаються безпосередньо на мобільному пристрої без надсилання даних на сервер. Core ML, TensorFlow Lite та ML Kit — основні фреймворки для on-device ML.
Core ML — фреймворк Apple для iOS та macOS з прискоренням на Neural Engine. TensorFlow Lite — кросплатформне рішення від Google для Android, iOS та Linux. Core ML дає кращу продуктивність на пристроях Apple, TFLite — універсальність.
ML Kit вирішує типові завдання комп'ютерного зору та NLP: розпізнавання тексту, облич, штрихкодів, об'єктів та поз тіла. Всі API працюють на пристрої без інтернету та не вимагають створення власної моделі.
Ні, on-device ML працює повністю локально. Моделі завантажуються на пристрій та виконуються без інтернет-з'єднання. ML Kit також пропонує хмарні версії API з вищою точністю, але on-device режим доступний офлайн.
Для iOS-ексклюзиву вибирайте Core ML — він використовує Neural Engine та тісно інтегрований з екосистемою Apple. Для кросплатформних проектів — TensorFlow Lite. Для типових завдань без кастомної моделі — ML Kit з готовими API.
Підсумки
Ми розробимо мобільний застосунок під ключ
IT Sectr створює застосунки для iOS та Android для стартапів і бізнесу з 2017 року. Ми проконсультуємо вас і запропонуємо найкраще рішення.