ОТКАЗ ОТ ОТВЕТСТВЕННОСТИ
Этот ответ не о TensorFlow Swift, но о других способах выполнения прогнозов с помощью мобильного устройства.
ОТВЕТ
TL; DR
Ответы на каждый из ваших вопросов зависят от конкретной детализации c, которая является целью использования Tensorflow в приложении iOS , Вы можете либо попытаться обучить модель с использованием этой структуры , либо попытаться выполнить предсказания в приложении iOS.
Я приму Nº 2 : вы пытаетесь выполнить предсказания в приложении iOS.
Если ваша цель Nº3 : Я хочу тренировать свой моделей, использующих мой компьютер со Swift, и мне не важно, чтобы моя модель работала в мобильном приложении . Вы все еще можете использовать TensorFlow Swift, но я не знаю, как помочь.
Если вы хотите выполнить предсказания на модели в устройстве iOS (т.е. использовать его!), у вас есть несколько вариантов:
Tensorflow Lite ( вот краткий старт )
Это действительно хорошо, если вам нужно делиться кодом между платформами (iOS - Android - Ma c - Windows ...), поскольку все приложения будут использовать одну и ту же библиотеку.
CoreML (это от Apple!)
Модель CoreML будет работать только в iOS или Ma c, но вы уверены, что Apple будет работать великолепно и даст вам действительно хорошие цифры Как я полагаю, эта платформа максимально использует аппаратное обеспечение устройств.
Отвечая на ваши вопросы:
- Требуется ли вычисление нейронной сети при кодировании?
Если вы имеете дело с одной из предложенных мной альтернатив, единственный контакт, который вы будете иметь с вашей моделью передает правильный ввод и получает правильный вывод. Конечно, вам нужно иметь обученную модель для загрузки внутри приложения, есть несколько инструментов для преобразования различных моделей в CoreML или Tensorflow Lite от Keras, PyTorch, Tensorflow и др. c.
- Will это работает для iOS?
Обе предложенные выше альтернативы работают на iOS для вывода модели.
- Требуется ли Python знание кодирования для реализации в iOS app?
Не совсем, часть python используется в основном для построения, обучения и оценки модели. Одна вещь, которая может быть трудна для обработки из приложения, это обработка input и output . Например, если вы работаете с моделями Computer Vision, обработка ввода / вывода может быть очень проблематичной c с использованием только Swift или Objective C, и я бы рекомендовал использовать OpenCV с C ++ для обработки изображений.
- Могу ли я сделать Python мост со Свифтом, как Objective- C и Свифт? (iOS это позволяет?)
Есть, но я бы не рекомендовал использовать это для запуска вашей модели на мобильном устройстве. Обе альтернативы, которые я предложил, работают очень хорошо, и в случае, если вам нужно использовать дополнительные инструменты, такие как OpenCV в C ++, мост между C ++ и Objective- C действительно прост (используйте файл .mm).
- Могу ли я использовать TensorFlow в существующем приложении? Если да, то как я могу это реализовать? Я имею в виду, есть ли что-то вроде CocoaPod или мне нужно вручную вставлять файлы?
Чтобы использовать CoreML, вам не нужно загружать ничего лишнего, фреймворк уже доступен. Если вы пытаетесь использовать TensorFlow Lite, вам нужно добавить зависимость в ваш карфаген / Podfile / SPM ( здесь ).
Подводя итог, это очень хорошие альтернативы для запуска моделей ML на мобильных устройствах, которые имеют очень хорошие результаты. Я рекомендовал бы прочитать больше об этом и проверить, можете ли вы использовать их. Если вы хотели узнать о том, как использовать Swift для обучения модели, извините, но у меня мало информации об этом.
Вот несколько примеров приложений для каждой из предложенных мной альтернатив:
Дайте мне знать, если это поможет!