Визуализация и логирование обучения.
Чтобы обучение сетей было меньше похоже на черный ящик, полезно визуализировать процесс обучения и то, что происходит внутри сети.
Одним из самых популярных инструментов для этого является tensorboard (для сетей написанных на tensorflow).
Tensorboard позволяет логировать разные типы данных(числовые значения, изображения, аудиофайлы, текстовые файлы). Отчет по каждому типу данных собирается в своеобразный контейнер (summary), который затем сохраняется в файловой системе.
Также, в tensorboard есть возможность просмотра вычислительного графа, узлов и ребер, соединяющих эти узлы.
Еще одна интересная фишка tensorboard это работа с весами сети, которые представляют собой тензоры достаточно большой размерности, тут же мы можем вывести информацию о том, как менялось распределение весов с каждым шагом или, например, работая с изображениями, мы можем отследить какие нейроны активировались на каждой итерации и как сеть постепенно училась распознавать, например, буквы.
В качестве альтернативы можно рассмотреть сервис Weights and Biases.
Weight and Biases это система для логирования экспериментов, ее сильная сторона в удобной организации информации по экспериментам.
Информация по всем экспериментам одной модели хранится в одном месте, каждый запуск (в wandb они называются runs’ы) помечен своим цветом, при таком интерфейсе очень удобно сравнивать результаты экспериментов, когда вы изменили какой-то небольшой параметр. Есть система фильтрации и возможность делиться результатом, составлять отчеты, версионировать датасеты и модели.
Также WandB обладает хорошей встроенной отказоустойчивостью, для возобновления работы после сбоев и поддерживает работу не только с tensorflow моделями.
Логирование важно как непосредственно датасаентисту, так и для бизнеса, задача которого решается, в том случае, когда нужно максимально просто и понятно донести людям, мало сведущим в этой теме, как работает модель и как и на что повлияли изменения параметров.
Чтобы обучение сетей было меньше похоже на черный ящик, полезно визуализировать процесс обучения и то, что происходит внутри сети.
Одним из самых популярных инструментов для этого является tensorboard (для сетей написанных на tensorflow).
Tensorboard позволяет логировать разные типы данных(числовые значения, изображения, аудиофайлы, текстовые файлы). Отчет по каждому типу данных собирается в своеобразный контейнер (summary), который затем сохраняется в файловой системе.
Также, в tensorboard есть возможность просмотра вычислительного графа, узлов и ребер, соединяющих эти узлы.
Еще одна интересная фишка tensorboard это работа с весами сети, которые представляют собой тензоры достаточно большой размерности, тут же мы можем вывести информацию о том, как менялось распределение весов с каждым шагом или, например, работая с изображениями, мы можем отследить какие нейроны активировались на каждой итерации и как сеть постепенно училась распознавать, например, буквы.
В качестве альтернативы можно рассмотреть сервис Weights and Biases.
Weight and Biases это система для логирования экспериментов, ее сильная сторона в удобной организации информации по экспериментам.
Информация по всем экспериментам одной модели хранится в одном месте, каждый запуск (в wandb они называются runs’ы) помечен своим цветом, при таком интерфейсе очень удобно сравнивать результаты экспериментов, когда вы изменили какой-то небольшой параметр. Есть система фильтрации и возможность делиться результатом, составлять отчеты, версионировать датасеты и модели.
Также WandB обладает хорошей встроенной отказоустойчивостью, для возобновления работы после сбоев и поддерживает работу не только с tensorflow моделями.
Логирование важно как непосредственно датасаентисту, так и для бизнеса, задача которого решается, в том случае, когда нужно максимально просто и понятно донести людям, мало сведущим в этой теме, как работает модель и как и на что повлияли изменения параметров.