7 супер практичных методов визуализации сети Pytorch, приходите и соберите их

Предисловие

  • Цель визуализации сети обычно состоит в том, чтобы проверить, является ли конструкция сетевой структуры разумной, и в то же время наблюдать, соответствует ли характер изменения входных данных в сети ожиданиям, и вносить корректировки на основе этого.
  • В настоящее время существует множество методов визуализации сети, но не многие из них практичны, или некоторые методы подходят только для определенных сетей и не подходят для настраиваемых сетевых структур.
  • После изучения и проверки я лично обнаружил, что существует относительно хорошие методы визуализации сети 7. Новичкам рекомендуется использовать метод 1 и метод 5 вместе, что является простым и легким в использовании.
  • Специально для отображения структуры сети и просмотра параметров сети рекомендуется создать в Anaconda отдельную среду, поскольку некоторые методы необходимо устанавливать с сопоставлением версий.В новой среде можно установить и другие версии torch и torchvision.

Вставьте сюда описание изображения

1. краткий обзор факела

torchsummary выводит такую ​​информацию, как структура уровня процесса, параметры слоя и общие параметры сетевой модели. Для большинства новичков и алхимиков нет особого смысла сосредотачиваться на конкретной информации о межуровневых параметрах. torchsummary можно легко использовать для получения параметров сети и размера выходной модели. Эффект показан ниже. Конкретные методы использования см. Визуализация сетевой модели pytorch (1 ): torchsummary .

Вставьте сюда описание изображения

2. графвиз + торчвиз

Этот метод требует установки двух пакетов torchviz и Graphviz и программного обеспечения Graphviz одновременно.Структура выходной сети недостаточно интуитивно понятна и подходит для людей, которые обращают внимание на внутренние детали сети.Схема структуры выходной сети должна быть получен путем отслеживания обратного распространения, поэтому оно инвертируется. Конкретные методы установки и использования см. Визуализация сетевой модели pytorch (2):graphviz + torchviz .

Вставьте сюда описание изображения

3. Ноутбук Jupyter + тензорные часы

Этот метод необходимо реализовать с помощью Jupyter Notebook. Это программное обеспечение очень просто в использовании и изучении. Основные проблемы — соответствие версий между установочными пакетами и конфигурация интерпретатора Python в Jupyter Notebook. Схема структуры выходной сети относительно интуитивно понятна. Детали также относительно богаты. Конкретные методы установки и использования см. по ссылке Визуализация модели сети pytorch (3): Jupyter Notebook + tensorwatch .

Вставьте сюда описание изображения

4. тензорная доскаX

tensorboardX относительно прост в использовании и имеет богатые функции, но во время установки необходимо выполнить сопоставление версий, иначе возникнет множество ошибок. Вывод структуры сети, выводимый tensorboardX, необходимо просматривать в браузере. Он относительно непригляден, но содержит множество деталей. Конкретные методы использования и установки см. по ссылке «Визуализация сетевой модели Pytorch» (4): tensorboardX .

Вставьте сюда описание изображения

5. нейтроны

Метод, который настоятельно рекомендуется. У netron есть три метода: пакет python, программное обеспечение netron и онлайн-версия netron для просмотра структуры сети. Как правило, для просмотра структуры сети достаточно использовать пакет python netron. netron выведет в браузер структуру сети, которую можно экспортировать в браузер.Можно сказать, красиво и практично. Конкретные методы установки и практические методы см. по ссылке Визуализация модели сети pytorch (5): netron .

Вставьте сюда описание изображения

6. скрытый слой

Скрытый слой также является относительно практичным методом визуализации сети с относительно большим количеством функций. Проблема в том, что он должен сопоставляться между версиями, иначе будет сообщено о многих ошибках. Конкретные методы использования и установки см. по ссылке Визуализация сетевой модели pytorch (6): скрытый слой .

Вставьте сюда описание изображения

7. PlotNeuralNet

Строго говоря, это не инструмент сетевой визуализации, а всего лишь инструмент рисования. Пользовательская сетевая структура преобразуется в текстовый код с использованием кода Python для создания графика. Обратите внимание, что сетевая структура здесь не имеет ничего общего с сетевой структурой, которую вы хотите обучить или протестировать. С PlotNeuralNet сложно начать работу, и он может рисовать диаграммы только для простых сетевых структур, что крайне непрактично для сложных сетевых структур. Конкретные методы установки и использования см. по ссылке «Визуализация сетевой модели Pytorch» (7): PlotNeuralNet .

Вставьте сюда описание изображения

Заключение

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

おすすめ

転載: blog.csdn.net/Wenyuanbo/article/details/118937790