Модуль CoreML (coreml)
Доступно в версиях ПО 1.3.8 и выше
Модуль CoreML выполняет машинное обучение и вывод результатов непосредственно на устройстве. Помимо визуального инференса Vision, поддерживаются:
- универсальные модели request / session
- создание, преобразование и вычисления с
MLMultiArray - преобразование между изображениями и тензорами
- текстовые токенизаторы с выбором по типу
- универсальные вспомогательные средства постобработки: detection / OBB / mask / keypoint / tracker и другие
SentencePiece использует облегчённую совместимую реализацию для инференса на устройстве и поддерживает источники .vocab и .model. После require("onnxruntime") дополнительно внедряются нативные интерфейсы копирования между MLMultiArray и ORT tensor.
Поддержка платформ
Модуль CoreML в целом рассчитан на iOS 11+, однако минимальная версия системы различается для разных интерфейсов:
new_model_request/session, интерфейсыMLMultiArray, преобразование изображений в тензоры, tokenizer и большинство геометрических средств и средств постобработки: iOS 11+compile_model,new_vision_request,predict_batch()/run_batch(), создание и запросcompute_units: iOS 12+- Передача
image_objectкак входного image feature в универсальном model request: iOS 13+ class_labels(): iOS 14+compute_units = "cpu_and_neural_engine": iOS 16+
- Компиляция модели CoreML на устройстве
- Создание визуального инференсера CoreML
- ! Инференс изображения с помощью визуального инференсера CoreML
- Создание универсального инференсера CoreML
- Методы объекта универсального инференсера CoreML
- Модуль многомерных массивов ML
- Модуль текстового токенизатора
- Модуль ONNX Runtime (onnxruntime)
Дополнительные сведения
coreml.session(...)— псевдонимcoreml.new_model_request(...)coreml.tensor(...)— псевдонимcoreml.new_multi_array(...)coreml.tensor_from_table(...)— псевдонимcoreml.multi_array_from_table(...)coreml.image_to_multi_array(...)по-прежнему доступен, но теперь является только совместимым псевдонимомcoreml.tensor_from_image(...)coreml.multi_array_from_quad(...)— псевдонимcoreml.tensor_from_quad(...)coreml.multi_array_from_quads(...)— псевдонимcoreml.tensor_from_quads(...)coreml.project_masks(...)— псевдонимcoreml.proto_masks(...)