Deep Learning Toolbox (ранее Neural Network Toolbox) обеспечивает основу для проектирования и реализации глубоких нейронных сетей, используя как предварительно обученные модели, так и приложения и инструменты для проектирования разработки архитектур нейронных сетей.

Вы можете использовать сверточные нейронные сети (ConvNets, CNNs) и сети с долгосрочной кратковременной памятью (LSTM) для классификации и регрессии для изображений, временных рядов и текстовых данных. Приложения в MATLAB Apps и различные графики помогают визуализировать характеристики активации слоев сети, редактировать архитектуру сети и отслеживать ход обучения.

При обучении на небольших наборах данных вы можете использовать методику переноса обучения, для уже обученных сетей и не начинать обучение сети с нуля, например можно использовать сети SqueezeNet, Inception-v3, ResNet-101, GoogLeNet, VGG-19 и т.д. или импортировать сеть из TensorFlow, Keras и Caffe.

Для ускорения обучения на больших наборах данных, вы можете распараллеливать вычисления на многоядерных процессорах и на графических процессорах GPU на вашем компьютере, используя Parallel Computing Toolbox, или использовать для обучения кластеры и облака, например, Amazon EC2® P2, P3 и G3 GPU используя MATLAB Distributed Computing Server.

Сети и архитектуры сетей

Сверточная нейронная сеть
Сверточная нейронная сеть

Используйте Deep Learning Toolbox для обучения сетей глубокого обучения для задач классификации, регрессии, анализа изображений, временных рядов и анализу текстовых данных.

Сверточные нейронные сети

Используйте сверточные сети для нахождения на изображениях определенных объектов, лиц людей и сцен. Создавайте и обучайте сверточные нейронные сети (CNN) для извлечения признаков и распознавания изображений.

LSTM - сети с долгосрочной кратковременной памятью (рекуррентные сети)

Анализируйте зависимости в последовательности данных, включая сигналы, аудио сигналы, текст и в другие данные на основе временных рядов. Построите и обучите LSTM - сеть для решения задач классификации и регрессии.

Архитектуры нейронных сетей

Используйте различные топологии сетей, такие как: последовательные слои, прямой ациклический граф (DAG) и рекуррентные архитектуры для построения архитектуры ваших сетей глубокого обучения. DAG архитектура предоставляет больше возможностей в построении топологии сети, пропуская или распараллеливая некоторые уровни сети.


Сверточная нейронная сеть Сверточная нейронная сеть

Разработка сетей и их анализ

Анализ архитектуры нейронной сети с использованием функции analyzeNetwork
Анализ архитектуры нейронной сети с использованием функции analyzeNetwork

Используйте Deep Learning Toolbox для обучения сетей глубокого обучения для задач классификации, регрессии, анализа изображений, временных рядов и анализу текстовых данных.

Сверточные нейронные сети

Используйте сверточные сети для нахождения на изображениях определенных объектов, лиц людей и сцен. Создавайте и обучайте сверточные нейронные сети (CNN) для извлечения признаков и распознавания изображений.

LSTM - сети с долгосрочной кратковременной памятью (рекуррентные сети)

Анализируйте зависимости в последовательности данных, включая сигналы, аудио сигналы, текст и в другие данные на основе временных рядов. Построите и обучите LSTM - сеть для решения задач классификации и регрессии.

Архитектуры нейронных сетей

Используйте различные топологии сетей, такие как: последовательные слои, прямой ациклический граф (DAG) и рекуррентные архитектуры для построения архитектуры ваших сетей глубокого обучения. DAG архитектура предоставляет больше возможностей в построении топологии сети, пропуская или распараллеливая некоторые уровни сети.


Анализ архитектуры нейронной сети с использованием функции analyzeNetwork Анализ архитектуры нейронной сети с использованием функции analyzeNetwork

Перенос обучения и обученные модели

График предсказательной точности предобученных сетей в зависимости от количества операций на одно предсказание, диаметр сети – количество обучаемых параметров
График предсказательной точности предобученных сетей в зависимости от количества операций на одно предсказание, диаметр сети – количество обучаемых параметров
График предсказательной точности предобученных сетей в зависимости от количества операций на одно предсказание, диаметр сети – количество обучаемых параметров График предсказательной точности предобученных сетей в зависимости от количества операций на одно предсказание, диаметр сети – количество обучаемых параметров

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

Разрабатывайте сети глубокого обучения

Создайте свои сети с нуля или импортируйте уже обученные модели сетей, визуализируйте их структуру, редактируйте слои и настраивайте их параметры используя приложение Deep Network Designer.

Анализ сетей глубокого обучения

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

Визуализация

Визуализация архитектуры сети
Визуализация архитектуры сети

Импортируйте предварительно обученные модели в MATLAB.

Перенос обучения

Методика переноса обучения часто используется в приложениях глубокого обучения. Используйте предварительно обученную сеть в качестве отправной точки для решения новой задачи и быстрого переноса обучения в новую задачу с использованием меньшего количества изображений для обучения.

Предобученные модели

Загружайте предобученные модели сетей для исследований всего одной строкой кода. Импортируйте предварительно обученные сети, включая AlexNet, GoogLeNet, VGG-16, VGG-19, ResNet-101, Inception-v3 и SqueezeNet. Ознакомьтесь ниже со списком всех доступных предобученных сетей.

Визуализация архитектуры сети Визуализация архитектуры сети

Совместимость с сторонними фреймворками

Взаимодействие MATLAB с другими фреймворками глубокого обучения
Взаимодействие MATLAB с другими фреймворками глубокого обучения
Взаимодействие MATLAB с другими фреймворками глубокого обучения Взаимодействие MATLAB с другими фреймворками глубокого обучения

Используйте MATLAB совместно с другими фреймворками глубокого обучения.

ONNX конвертер

Импортируйте и экспортируйте модели ONNX в MATLAB для взаимодействия с другими фреймворками глубокого обучения. Формат ONNX позволяет обучать модели в одном фреймворке и переноситься в другой.

Импорт из TensorFlow-Keras

Импортируйте обученные модели из TensorFlow-Keras в MATLAB используя функцию importKerasNetwork.

Импорт из Caffe

Импортируйте модели из Caffe Model Zoo в MATLAB используя функцию importCaffeNetwork.

Ускорение процесса обучения

Ускорение обучения в зависимости от количества GPU
Ускорение обучения в зависимости от количества GPU

Ускорьте процесс обучения сетей используя GPU, вычисления в облаке или на распределенных вычислителях.

Обучение на GPU

Ускорьте процесс обучения используя высокопроизводительные NVIDIA GPU. Вы можете выполнять обучение как на одной GPU вашего ПК, так и на нескольких GPU используя рабочие станции NVIDIA DGX Station в дата центрах или облаках. Для ускорения и распараллеливания вычислений используйте MATLAB с Parallel Computing Toolbox совместно с видеокартами NVIDIA с поддержкой CUDA версии 3.0 и выше.

Обучение в облаке

Ускорьте процесс обучения используя вычисления в облаках на высокопроизводительных GPU для достижения лучшего результата.

Распределенные вычисления

Запускайте процесс обучения сети используя распределенные вычисления на ваших серверах задействуя все процессорные ядра вашего сервера.

Ускорение обучения в зависимости от количества GPU Ускорение обучения в зависимости от количества GPU

Генерация кода и развертывание сетей

Генерация кода и запуск алгоритма на NVIDIA Jetson
Генерация кода и запуск алгоритма на NVIDIA Jetson
Генерация кода и запуск алгоритма на NVIDIA Jetson Генерация кода и запуск алгоритма на NVIDIA Jetson

Развертывание обученных нейронных сетей на встраиваемых системах или их интеграция с различными средами.

Генерация кода

Используйте GPU Coder для генерации оптимизированного CUDA из кода MATLAB для глубокого обучения, обработки видео и систем автономного вождения. Используйте MATLAB Coder для генерации C/C++ кода для развертывания нейронных сетей на Intel,  ARM и других процессорах.

MATLAB Compiler

Используйте MATLAB Compiler и MATLAB Compiler SDK для развертывания обученных сетей в виде C/C++ библиотек, Microsoft .NET, Java классов и Python пакетов.

Неглубокие нейронные сети

Неглубокая сверточная нейронная сеть
Неглубокая сверточная нейронная сеть

Используйте модели не глубоких нейронных сетей для обучения с учителем и без.

Обучение с учителем

Используйте обучение с учителем для обучения моделей нейронных сетей для управления динамическими системами, классификации зашумленных данных и предсказания будущих событий.

Обучение без учителя

Находите зависимости в данных, автоматически определяйте схемы классификации, позволяя сети постоянно приспосабливаться к входным данным.

Каскадные автоэнкодеры

Выполняйте преобразование изучаемых признаков без учителя извлекая низкоуровневые признаки используя автоэнкодеры. Вы также можете использовать каскадные автоэнкодеры для обучения с учителем и используя последовательно несколько энкодеров.

Неглубокая сверточная нейронная сеть Неглубокая сверточная нейронная сеть

${message}

${message}