3

Я изучаю нейронные сети, а точнее, классификацию изображений на данный момент. Пока я читал, мне было интересно, выполнено ли это когда-либо/выполнимо. Если бы кто-нибудь мог указать мне на некоторые источники или идеи, я был бы признателен!Обращаясь к цели нейронных сетей

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

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

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

Это то, как Google Deep Dream визуализирует то, что он «мечтает»?

Я надеюсь, что это понятно, что я имею в виду, если нет, я отвечу на любые вопросы.

ответ

0

Является ли это тем, как Google Deep Dream визуализирует то, что он «мечтает»?

Довольно много, кажется, по крайней мере, как люди, стоящие за ней объяснить:

Один способ визуализировать то, что происходит [в слоя нейронной сети], чтобы превратить сеть с ног на голову и попросите его улучшить входное изображение таким образом, чтобы выявить конкретную интерпретацию. Скажем, вы хотите знать, какое изображение приведет к «Банану». Начните с изображения, полного случайного шума, затем постепенно настройте изображение по отношению к тому, что нейронная сеть считает бананом (см. Соответствующую работу [...]). Само по себе это работает не очень хорошо, но это происходит, если мы накладываем предварительное ограничение на то, что изображение должно иметь аналогичную статистику для естественных изображений, таких как соседние пиксели, которые необходимо скоррелировать.

Source - Весь пост в блоге стоит прочитать.

0

Я думаю, вы можете понять основной подход из блога Karpathy в: http://karpathy.github.io/2015/03/30/breaking-convnets/

нормальной подготовки ConvNet: «Что происходит с счет правильного класса, когда я шевелить этот параметр»

Создание дурацких изображений: «Что происходит со счетом (независимо от того, какой класс вы хотите), когда я покачиваю этот пиксель?»

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

Смежные вопросы