Где именно TensorFlow тормозит?

машинное обучение искусственный интеллект TensorFlow Facebook
Где именно TensorFlow тормозит?
Эта статья была первоначально создана «AI Frontline».
Отделка | Натали

Недавно кто-то задал вопрос о Zhihu, который привлек мое внимание. Спрашивающий сказал: «Многие общедоступные оценочные статьи сравнивают TensorFlow с другими средами глубокого обучения (в основном Mxnet, Caffe), и производительность в различных сценариях снижается. Так в чем же TensorFlow медленный? Эффективно повысить производительность?»

На данный момент этот вопрос просмотрели 2W+ человек с 369 подписчиками. Ответы под вопросами в основном жалуются на «невежественных обозревателей-любителей».

У Юйсинь, который сейчас работает в Исследовательском институте искусственного интеллекта Facebook (FAIR), дал прямой ответ (tu) на этот вопрос (cao), и он понравился многим экспертам в области искусственного интеллекта, включая ученых-исследователей Facebook и Автор Caffe Цзя Янцин, исследователь искусственного интеллекта Facebook Тянь Юаньдун и инженер Google Brain Чжоу Юефэн.

Для получения дополнительных галантерейных товаров, пожалуйста, обратите внимание на публичный аккаунт WeChat «AI Frontline» (ID: ai-front)



Ответ У Юйсиня (ту) и ответ (цао) таковы:

Единая машина для изготовления общих моделей, которые не слишком малы при правильном использовании,TensorFlow ненамного медленнее любого другого фреймворка.Незначительно: в пределах 5% или около того.Никаких "зависаний". Общие модели: относится к CNN без странных слоев и стандартным RNN/LSTM. Потому что Google не глуп... Количество DGX1 в tensorflow/benchmarks было таким же, как у Caffe2, когда он только вышел.

Необычная модель: ядро, используемое каждым фреймворком, отличается, и то, насколько быстро оно может работать, зависит главным образом от удачи. Конкретно это в основном зависит от того, есть ли кто в разработчикеточноСерьезно оптимизировал и тыточноИспользуется это неосновное ядро. Слишком маленькая модель: когда за 1 секунду можно выполнить сотни или тысячи итераций, это отразится на накладных расходах фреймворка. Многомашинный: TensorFlow плохо масштабируется на несколько машин. Похоже, в последнее время пытаются сделать эффективный allreduce. uber/horovod заключается в том, чтобы добавить в TensorFlow самописную операцию allreduce, и масштабируемость намного лучше...

Что касается так называемых «публичных оценочных статей», которые вешаются, то большинство из них — некорректное использование различных фреймворков.

Слишком много возможных причин неточности... использование неправильного ядра, многократное копирование вещей, которые я не знаю, построение карты в цикле, определение времени до ее завершения, использование Keras. Конечно, пользователи не могут носить с собой эту кастрюлю, ведь эффективность многих официальных образцов TensorFlow проблематична.

Я хотел ответить на этот вопрос из-за этой темы на Reddit сегодня

воооооооооооооооооооооооооооооооооооооооооооооооооооооооооооооооооооооооооооооооооооооооооооооооооо

Чтобы процитировать, что soumith (автор факела / pytorch) сказал в сообщении:

Amateur benchmarks are hard, and more often than not they are quite wrong.Inrecent times I don't think I've seen a single amateur benchmark that didn't screw up in it's first couple of iterations.

Вне контекста: «Я никогда не видел, чтобы любительский обзор был сделан правильно».

Другой пользователь сети Zhihu, «Li Dang», также был очень резок: «Узким местом являются не язык и структура, а IQ».

Добро пожаловать, зрители, знайте оригинальную ссылку:

Ууху. Call.com/question/26…

Для большего содержания сухих товаров вы можете обратить внимание на AI Frontline, ID:ai-front, фоновый ответ "AI", "TF", "Большие данные«Вы можете получить серию мини-книг в формате PDF и карт навыков «AI Frontline».