С 2016 года популярность искусственного интеллекта растет, и 20% крупных компаний используют ИИ в своих компаниях ( отчет McKinsey , 2018). Согласно тому же отчету, ИИ может создавать существенную ценность в разных отраслях. В банковском деле , например, потенциал ИИ оцениваются в $ 300 млрд в розничном числе усилится до $ 600 миллиардов долларов.
Чтобы раскрыть потенциальную ценность ИИ, компании должны выбрать правильную структуру глубокого обучения. В этом руководстве вы узнаете о различных библиотеках, доступных для выполнения задач глубокого обучения. Некоторые библиотеки существуют уже много лет, а в последние годы появилась новая библиотека, такая как TensorFlow.
8 лучших библиотек глубокого обучения / Framework
В этом списке мы сравним лучшие рамки глубокого обучения. Все они с открытым исходным кодом и популярны в сообществе исследователей данных. Мы также будем сравнивать популярные ML как поставщиков услуг
факел
Torch — это старая библиотека машинного обучения с открытым исходным кодом. Впервые он был выпущен 15 лет назад. Это основные языки программирования LUA, но есть реализация на C. Torch поддерживает обширную библиотеку для алгоритмов машинного обучения, включая глубокое обучение. Он поддерживает реализацию CUDA для параллельных вычислений.
Torch используется в большинстве ведущих лабораторий, таких как Facebook, Google, Twitter, Nvidia и так далее. У Torch есть библиотека с именами Python Pytorch.
Infer.net
Infer.net разработан и поддерживается Microsoft. Infer.net — это библиотека, в которой основное внимание уделяется байесовской статистике. Infer.net разработан для того, чтобы предлагать практикующим врачам самые современные алгоритмы вероятностного моделирования. Библиотека содержит аналитические инструменты, такие как байесовский анализ, скрытая цепь Маркова, кластеризация.
Keras
Keras — это среда Python для глубокого изучения. Это удобная библиотека для построения любого алгоритма глубокого обучения. Преимущество Keras в том, что он использует один и тот же код Python для работы на CPU или GPU. Кроме того, среда кодирования является чистой и позволяет обучать современный алгоритм для компьютерного зрения, распознавания текста среди прочего.
Keras был разработан Франсуа Шоле, исследователем из Google. Keras используется в известных организациях, таких как CERN, Yelp, Square или Google, Netflix и Uber.
Theano
Theano — библиотека глубокого обучения, разработанная Университетом Монреаля в 2007 году. Она предлагает быстрые вычисления и может работать как на CPU, так и на GPU. Theano был разработан для обучения алгоритмов глубоких нейронных сетей.
MICROSOFT КОГНИТИВНЫЙ ИНСТРУМЕНТ (CNTK)
Инструментарий Microsoft, ранее известный как CNTK, — это библиотека глубокого обучения, разработанная Microsoft. По данным Microsoft, библиотека является одной из самых быстрых на рынке. Инструментарий Microsoft — это библиотека с открытым исходным кодом, хотя Microsoft широко использует ее для таких продуктов, как Skype, Cortana, Bing и Xbox. Инструментарий доступен как на Python, так и на C ++.
MXNet
MXnet — это недавняя библиотека глубокого обучения. Он доступен с несколькими языками программирования, включая C ++, Julia, Python и R. MXNet можно настроить для работы как на CPU, так и на GPU. MXNet включает в себя современную архитектуру глубокого обучения, такую как сверточная нейронная сеть и длинная кратковременная память. MXNet создан для работы в гармонии с динамической облачной инфраструктурой. Основным пользователем MXNet является Amazon
Caffe
Caffe — это библиотека, построенная Янцином Цзя, когда он был аспирантом в Беркли. Caffe написан на C ++ и может выполнять вычисления как на CPU, так и на GPU. Основное использование Caffe — это сверточная нейронная сеть. Хотя в 2017 году Facebook расширил Caffe более глубокой архитектурой обучения, включая Recurrent Neural Network. caffe используют ученые и стартапы, а также некоторые крупные компании, такие как Yahoo !.
TensorFlow
TensorFlow — это проект Google с открытым исходным кодом. TensorFlow — самая известная библиотека глубокого обучения в наши дни. Он был выпущен для публики в конце 2015 года
TensorFlow разработан на C ++ и имеет удобный API-интерфейс Python, хотя API C ++ также доступны. Известные компании, такие как Airbus, Google, IBM и другие, используют TensorFlow для создания алгоритмов глубокого обучения.
TensorFlow против Theano против факела против Keras против infer.net против CNTK против MXNet против Caffe: ключевые отличия
Библиотека | Платформа | Написано в | Поддержка Cuda | Параллельное выполнение | Имеет обученные модели | РНН | CNN |
факел | Linux, MacOS, Windows | Lua | да | да | да | да | да |
Infer.Net | Linux, MacOS, Windows | Visual Studio | нет | нет | нет | нет | нет |
Keras | Linux, MacOS, Windows | питон | да | да | да | да | да |
Theano | Кросс-платформенная | питон | да | да | да | да | да |
TensorFlow | Linux, MacOS, Windows, Android | C ++, Python, CUDA | да | да | да | да | да |
МИКРОСОФТ КОГНИТИВ ИНСТРУМЕНТ | Linux, Windows, Mac с докером | C ++ | да | да | да | да | да |
Caffe | Linux, MacOS, Windows | C ++ | да | да | да | да | да |
MXNet | Linux, Windows, MacOs, Android, iOS, Javascript | C ++ | да | да | да | да | да |
Вердикт:
TensorFlow — лучшая библиотека из всех, потому что она создана для того, чтобы она была доступна каждому. Библиотека Tensorflow включает в себя различные API для построения в масштабе архитектуры глубокого обучения, таких как CNN или RNN. TensorFlow основан на вычислении графиков, он позволяет разработчику визуализировать построение нейронной сети с помощью Tensorboad. Этот инструмент полезен для отладки программы. Наконец, Tensorflow создан для развертывания в масштабе. Он работает на процессоре и графическом процессоре.
Tensorflow привлекает наибольшую популярность на GitHub по сравнению с другими системами глубокого обучения.
Сравнение машинного обучения как услуги
Ниже приведены 4 популярных DL в качестве поставщиков услуг.
Google Cloud ML
Google предоставляет разработчикам предварительно обученную модель, доступную в облаке AutoML. Это решение существует для разработчика, не имеющего достаточных знаний в области машинного обучения. Разработчики могут использовать на своих данных современную модель Google, прошедшую предварительную подготовку. Это позволяет любым разработчикам обучать и оценивать любую модель всего за несколько минут.
В настоящее время Google предоставляет REST API для компьютерного зрения, распознавания речи, перевода и НЛП.
Используя Google Cloud, вы можете обучить основам машинного обучения на TensorFlow, Scikit-learn, XGBoost или Keras. Машинное обучение в Google Cloud проведет обучение моделей в облаке.
Преимущество использования облачных вычислений Google заключается в простоте внедрения машинного обучения в производство. Нет необходимости настраивать Docker-контейнер. Кроме того, облако заботится об инфраструктуре. Он знает, как распределять ресурсы с процессорами, графическими процессорами и TPU. Это делает обучение быстрее с параллельными вычислениями.
AWS SageMaker
Основным конкурентом Google Cloud является облако Amazon, AWS. Amazon разработал Amazon SageMaker, чтобы позволить ученым и разработчикам данных создавать, обучать и внедрять любые модели машинного обучения.
SageMaker доступен в Jupyter Notebook и включает в себя наиболее часто используемую библиотеку машинного обучения, TensorFlow, MXNet, Scikit-learn и другие. Программы, написанные с помощью SageMaker, автоматически запускаются в контейнерах Docker. Amazon управляет распределением ресурсов для оптимизации обучения и развертывания.
Amazon предоставляет разработчикам API для добавления интеллектуальных функций в их приложения. В некоторых случаях нет необходимости изобретать велосипед, создавая с нуля новые модели, в то время как в облаке есть мощные предварительно обученные модели. Amazon предоставляет услуги API для компьютерного зрения, диалоговых чатов и языковых служб:
Три основных доступных API:
- Amazon Rekognition: обеспечивает распознавание изображений и видео для приложения
- Amazon Comprehend: выполнять анализ текста и обработку нейронного языка, например, для автоматизации процесса проверки законности финансового документа
- Amazon Lex: добавьте чат-бота в приложение
Студия машинного обучения Azure
Вероятно, одним из самых дружественных подходов к машинному обучению является Azure Machine Learning Studio. Существенным преимуществом этого решения является то, что не требуется никаких предварительных знаний в области программирования.
Студия машинного обучения Microsoft Azure — это инструмент для совместной работы, позволяющий создавать, обучать, оценивать и развертывать решения для машинного обучения. Модель может быть эффективно развернута как веб-сервисы и использоваться в нескольких приложениях, таких как Excel.
Интерфейс машинного обучения Azure является интерактивным, позволяя пользователю создавать модели, просто перетаскивая элементы.
Когда модель готова, разработчик может сохранить ее и отправить в галерею Azure или на рынок Azure.
Машинное обучение Azure можно интегрировать в R или Python с помощью собственного встроенного пакета.
IBM Watson ML
Watson studio может упростить проекты обработки данных с помощью упрощенного процесса, который позволяет извлекать ценность и анализ данных, помогая бизнесу становиться умнее и быстрее. Watson studio предоставляет удобную среду совместной работы с данными и машинного обучения для создания и обучения моделей, подготовки и анализа данных, а также обмена идеями в одном месте. Watson Studio прост в использовании благодаря коду перетаскивания.
Watson studio поддерживает некоторые из самых популярных сред, таких как Tensorflow, Keras, Pytorch, Caffe, и может развернуть алгоритм глубокого обучения на новейших графических процессорах Nvidia, чтобы ускорить моделирование.
Вердикт:
На наш взгляд, облачное решение Google является наиболее рекомендуемым. Облачное решение Google обеспечивает более низкую цену AWS как минимум на 30% за хранение данных и решение для машинного обучения. Google отлично справляется с демократизацией ИИ. Он разработал язык с открытым исходным кодом, TensorFlow, оптимизированное соединение с хранилищем данных, предоставляет огромные инструменты от визуализации данных, анализа данных до машинного обучения. Кроме того, Google Console является эргономичной и намного более полной, чем AWS или Windows.