#ios #keras #conv-neural-network #coreml
#iOS #keras #conv-нейронная сеть #coreml
Вопрос:
У нас есть 2 модели, написанные на Keras. Затем мы преобразуем их в формат coreml и проверяем скорость вывода каждого из них на iPhone 7. Архитектура модели одинакова для каждой из двух. 1-я модель обучается на наборе изображений. веса 2-й модели инициализируются случайным образом. Количество параметров одинаково для каждой модели, однако скорость (в кадрах в секунду) отличается (21 против 13 кадров в секунду). Как это возможно? Почему получается так, что обученная модель работает медленнее, несмотря на то, что количество весов и структура одинаковы?
Комментарии:
1. Используете ли вы входные данные одинакового размера для обеих моделей?
2. Нет смысла сравнивать только один запуск кода, поскольку существует множество факторов, влияющих на скорость, выполните не менее 10 запусков и вычислите среднее значение / std времени вычисления, после чего вы можете начать сравнивать.
3. да, входные данные одинакового размера для обеих моделей. @MatiasValdenegro мы выполнили несколько запусков (например, 3-5) и рассчитали среднее значение кадров в секунду за каждые 30 секунд вывода. Мы получаем одинаковый (средний) fps каждый раз, когда запускаем ту же модель. Мы по-прежнему получаем очень запутанные результаты (т.е. обученная модель была медленнее, чем случайно инициализированная).