На картинке выше представлена ​​архитектура системы машинного обучения до мелочей. Высокопроизводительное оборудование с предустановленными платформами глубокого обучения с открытым исходным кодом.

Давайте посмотрим на фреймворки более подробно:

Caffe - это среда глубокого обучения, разработанная Berkeley AI Research (BAIR) и участниками сообщества. Написано на C ++. Не совсем в отличие от https://spark.apache.org/, который также был разработан в Беркли.

Caffe может обрабатывать более 60 миллионов изображений в день с помощью одного графического процессора NVIDIA K40 *. Это 1 мс / изображение для вывода и 4 мс / изображение для обучения, а более свежие версии библиотек и оборудование работают еще быстрее. И исходный код Caffe размещен на Github.

Caffe типичен для многих библиотек глубокого обучения, которые часто возникают при университетах.

И как мы на самом деле используем Caffe? Адиль Моджахид написал отличную запись в блоге по этому же вопросу: Практическое введение в глубокое обучение с помощью Caffe и Python. Он использует набор данных из Kaggle, недавно приобретенный Google, состоящий из изображений собак и кошек, и демонстрирует, как создать алгоритм машинного обучения, способный определять правильное животное (кошку или собаку) на новых невидимых изображениях.

Библиотека Torch - это среда научных вычислений с широкой поддержкой алгоритмов машинного обучения, которая ставит на первое место графические процессоры с интерфейсом для C через LuaJIT. И, как и Caffe, библиотека Torch размещена на Github.

TensorFlow - хорошо известная программная библиотека с открытым исходным кодом для численных вычислений с использованием графов потоков данных, первоначально разработанная исследователями и инженерами, работающими в группе Google Brain Team по C ++ и Python. И снова с исходным кодом на Github.

По этой ссылке есть учебные пособия как использовать TensorFlow.

Theano был разработан в Université de Montréal. Это библиотека Python, которая позволяет вам эффективно определять, оптимизировать и оценивать математические выражения, включающие многомерные массивы. Он интегрирован с библиотекой NumPy для научных вычислений, а код находится на Github.

Учебник по глубокому обучению с Theano можно найти по этой ссылке.

Chainer, разработанный в Японии и недавно принятый Intel, - это еще один фреймворк глубокого обучения на основе Python. Он поддерживает вычисления CUDA (CUDA - это платформа параллельных вычислений и модель программирования, изобретенная NVIDIA), требует всего несколько строк кода для использования графического процессора и работает на нескольких графических процессорах. Он поддерживает ряд различных архитектур нейронных сетей, таких как сети с прямой связью, объединенные сети, рекуррентные сети и рекурсивные сети. И Код Chainer находится на Github с хорошим набором руководств здесь.

Из поддерживающих библиотек Bazel - это система сборки, NCCL - это библиотека коллективных коммуникаций NVIDIA, OpenBLAS - это библиотека. базовых подпрограмм линейной алгебры, и, наконец, DIGITS - это обучающая система NVIDIA Deep Learning GPU, которую можно использовать для обучения глубоких нейронных сетей (DNN) для классификации изображений, сегментации и обнаружения объектов. задания.

А чем отличаются фреймворки выше?

Этот учебник« Реализации и фреймворки глубокого обучения проясняет это».

Мощное сочетание аппаратного и программного обеспечения. Подчеркивая сильные позиции C ++ и Python в сфере глубокого обучения. А в аппаратной части жизненно важную роль играет графический процессор.