TensorFlow против Theano против Torch против Keras: библиотека для глубокого обучения

Популярность искусственного интеллекта растет с 2016 года: 20% крупных компаний используют ИИ в своем бизнесе (McKinsey докладе, 2018). Согласно тому же отчету, ИИ может создавать значительную ценность во всех отраслях. Например, в банковской сфере потенциал ИИ оценивается в $300 миллиардов, в розничной торговле это число резко возросло до $600 миллиарда долларов.

Чтобы раскрыть потенциальную ценность ИИ, компании должны выбрать правильную структуру глубокого обучения. В этом руководстве вы узнаете о различных библиотеках, доступных для выполнения задач глубокого обучения. Некоторые библиотеки существуют уже много лет, а в последние годы появилась новая библиотека, такая как TensorFlow.

8 лучших библиотек/фреймворков для глубокого обучения

В этом списке мы сравним лучшие платформы глубокого обучения. Все они имеют открытый исходный код и популярны в сообществе специалистов по данным. Мы также сравним популярные ML в качестве поставщиков услуг.

Torch

Torch — это старая библиотека машинного обучения с открытым исходным кодом. Она была впервые выпущена 15 лет назад. Основной язык программирования — LUA, но есть и реализация на C. Сравнение с Python.TorВ отличие от TensorFlow, он поддерживает обширную библиотеку алгоритмов машинного обучения, включая глубокое обучение. Он поддерживает реализацию CUDA для параллельных вычислений.

TorИнструмент глубокого обучения ch используется большинством ведущих лабораторий, таких как Facebook. GoogleTwitter, Nvidia и так далее. Torу ch есть библиотека в Python зовут Питорч.

Инфер.нет

Infer.net разрабатывается и поддерживается Microsoft. Infer.net — это библиотека, основное внимание которой уделяется байесовской статистике. Infer.net — это инструмент визуализации для глубокого обучения, предназначенный для того, чтобы предложить практикующим специалистам самые современные алгоритмы вероятностного моделирования. Библиотека содержит аналитические инструменты такие как байесовский анализ, скрытая цепь Маркова, кластеризация.

Keras

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

Keras был разработан Франсуа Шолле, исследователем из [название компании]. GoogleKeras используется в таких известных организациях, как CERN, Yelp, Square и др. Google, Netflix, и Uber.

Keras

Theano

Theano — это библиотека глубокого обучения, разработанная Университетом Монреаля в 2007 году. По сравнению с Theano и TensorFlow, она предлагает быстрые вычисления и может работать как на процессоре, так и на графическом процессоре. Theano был разработан для обучения алгоритмов глубоких нейронных сетей.

Microsoft Когнитивный инструментарий (CNTK)

Microsoft набор инструментов, ранее известный как CNTK, представляет собой библиотеку глубокого обучения, разработанную Microsoft. Если же ориентироваться на показатели от Microsoft, библиотека является одной из самых быстрых на рынке. Microsoft Toolkit — это библиотека с открытым исходным кодом, хотя Microsoft широко использует его для своих продуктов, таких как Skype, Cortana, Bing и Xbox. Набор инструментов доступен как в Python и C++.

MXNet

MXnet — это новейшая библиотека глубокого обучения. Он доступен на нескольких языках программирования, включая C++, Юля, Python и R. MXNet можно настроить для работы как на CPU, так и на GPU. MXNet включает в себя современную архитектуру глубокого обучения, такую ​​как сверточная нейронная сеть и долговременная кратковременная память. MXNet создан для работы в harmony с динамической облачной инфраструктурой. Основным пользователем MXNet является Amazon

Кафе

Caffe — это библиотека, построенная Янцин Цзя, когда он был аспирантом в Беркли. Сравнивая Caffe и TensorFlow, Caffe написан на C++ и может выполнять вычисления как на CPU, так и на GPU. Основное применение Caffe — сверточная нейронная сеть. Хотя в 2017 году Facebook расширил Caffe более глубокой архитектурой обучения, включая рекуррентную нейронную сеть. Caffe используют ученые и стартапы, а также некоторые крупные компании, такие как Yahoo!.

TensorFlow

TensorFlow — это Google Проект с открытым исходным кодом. TensorFlow — самая известная на сегодняшний день библиотека для глубокого обучения. Она была выпущена для широкой публики в конце 2015 года.

TensorFlow

TensorFlow разработан в C++ и имеет удобный Python API, хотя C++ Также доступны API. Такие известные компании, как Airbus, Google, IBM и т. д. используют TensorFlow для создания алгоритмов глубокого обучения.

TensorFlow против Theano против Torch против Keras против infer.net против CNTK против MXNet против Caffe: ключевые различия

Библиотека Платформа Написано в Cuda поддержка Параллельное выполнение Имеет обученные модели РНН CNN
Torch Linux, macOS, Windows Lua Да Да Да Да Да
Инфер.Нет Linux, macOS, Windows Visual Studio Нет Нет Нет Нет Нет
Keras Linux, macOS, Windows Python Да Да Да Да Да
Theano Кросс-платформенная Python Да Да Да Да Да
TensorFlow Linux, macOS, Windows, Android C++, Python, КУДА Да Да Да Да Да
НАБОР КОГНИТИВНЫХ ИНСТРУМЕНТОВ МАЙКРОСОФТ Linux, Windows, Mac с Docker C++ Да Да Да Да Да
Кафе Linux, macOS, Windows C++ Да Да Да Да Да
MXNet Linux, Windows, macOS, AndroidIOS, Javascript C++ Да Да Да Да Да

Вердикт

TensorFlow — лучшая библиотека из всех, потому что она создана так, чтобы быть доступной каждому. Библиотека Tensorflow включает в себя различные API для построения масштабной архитектуры глубокого обучения, такой как CNN или RNN. TensorFlow основан на вычислении графов и позволяет разработчику визуализировать построение нейронной сети с помощью Тензорбоад. Этот инструмент полезен для отладки программы. Наконец, Tensorflow создан для масштабного развертывания. Он работает на процессоре и графическом процессоре.

TensorFlow вtracПо сравнению с другими библиотеками для глубокого обучения, она пользуется наибольшей популярностью на GitHub.

Сравнение машинного обучения как услуги

Ниже приведены 4 популярных поставщика услуг DL.

Google Cloud ML

Google Предоставляет разработчику предварительно обученную модель, доступную в Cloud AutoML. Это решение предназначено для разработчиков, не обладающих глубокими знаниями в данной области. машинного обучения илиРазработчики могут использовать самые современные технологии. GoogleПредварительно обученная модель на их данных. Это позволяет любому разработчику обучить и оценить любую модель всего за несколько минут.

Google В настоящее время предоставляет REST API для компьютерного зрения, распознавания речи, перевода и обработки естественного языка.

Google Cloud ML

. Google Cloudвы можете обучить платформу машинного обучения, построенную на TensorFlow, Scikit-learn, XGBoost или Keras. Google Cloud машинное обучение будет обучать модели в облаке.

Преимущество использования Google Облачные вычисления упрощают развертывание машинного обучения в производственной среде. Нет необходимости настраивать контейнеры Docker. Кроме того, облако берет на себя инфраструктуру, зная, как распределять ресурсы между процессорами, графическими процессорами и тензорными процессорами. Это ускоряет обучение за счет параллельных вычислений.

AWS SageMaker

Главный конкурент для Google Cloud is Amazon облако, AWS. Amazon разработал Amazon SageMaker позволяет ученым и разработчикам данных создавать, обучать и внедрять в производство любые модели машинного обучения.
SageMaker доступен в Jupyter Notebook и включает в себя наиболее часто используемые библиотеки машинного обучения, TensorFlow, MXNet, Scikit-learn и другие. Программы, написанные с помощью SageMaker, автоматически запускаются в контейнерах Docker. Amazon управляет распределением ресурсов для оптимизации обучения и развертывания.

AWS SageMaker

Amazon предоставляет API разработчикам, чтобы сделать их приложения более интеллектуальными. В некоторых случаях нет необходимости изобретать велосипед и создавать новые модели с нуля, поскольку в облаке есть мощные предварительно обученные модели. Amazon предоставляет API-сервисы для компьютерного зрения, разговорных чат-ботов и языковых сервисов:

Три основных доступных API:

  • Amazon Признание: обеспечивает распознавание изображений и видео в приложении
  • Amazon Постигать: Выполняйте интеллектуальный анализ текста и обработку нейронного языка, например, чтобы автоматизировать процесс проверки законности финансового документа.
  • Amazon Лекс: Добавьте чат-бота в приложение

Azure Студия машинного обучения

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

Microsoft Azure Machine Learning Studio — это инструмент совместной работы с перетаскиванием для создания, обучения, оценки и развертывания решения машинного обучения. Модель может быть эффективно развернута как веб-сервисы и использована в нескольких приложениях, таких как Excel.

Azure Интерфейс машинного обучения интерактивен, позволяя пользователю создавать модель простым перетаскиванием элементов.ping элементы быстро.

Azure Студия машинного обучения

Когда модель готова, разработчик может сохранить ее и отправить в Azure Галерея or Azure Торговая площадка.

Azure Машинное обучение можно интегрировать в R или Python их собственный встроенный пакет.

IBM Watson ML

Watson Studio может упростить проекты обработки данных благодаря оптимизированному процессу, который позволяет...tracИзвлечение ценной информации и ценных выводов из данных помогает бизнесу работать эффективнее и быстрее. Watson Studio предоставляет простую в использовании среду для совместной работы в области анализа данных и машинного обучения, позволяющую создавать и обучать модели, подготавливать и анализировать данные, а также обмениваться результатами — все в одном месте. Watson Studio прост в использовании благодаря функции перетаскивания кода.

IBM Watson ML

Студия Watson поддерживает некоторые из самых популярных платформ, таких как Tensorflow, Keras, Pytorch, Caffe, и может развернуть алгоритм глубокого обучения на новейших графических процессорах Nvidia, чтобы ускорить моделирование.

Вердикт

С нашей точки зрения, Google Облачное решение является наиболее рекомендуемым. Google Облачные решения обеспечивают более низкие цены по сравнению с AWS, как минимум на 30%, в отношении хранения данных и решений для машинного обучения. Google Компания отлично справляется с задачей демократизации ИИ. Она разработала язык программирования с открытым исходным кодом, TensorFlow, оптимизированный для... информационное хранилище Connection предоставляет огромный набор инструментов, от визуализации и анализа данных до машинного обучения. Кроме того, Google Консоль эргономична и гораздо функциональнее, чем AWS или Windows.

Подведем итог этой публикации следующим образом: