@mIka01

Нейронная сеть для классифицирования сверх малых изображений?

Здраствуйте, мне необходимо написать нейросеть для условной классификации изображений. Условной потому, что изображения состоят из квадрата 20x20 , или 15x15, или 10x10 пикселей.
У меня получалось сделать классификатор малых квадратов до 15x15 пикселей. Мне сейчас требуется сравнение этих квадратов, то есть на входе два квадрата, а на выходе 2 нейрона (похоже или нет). До этого максимум первого слоя делал 300 нейронов, а сейчас от 800 до 200 (в зависимости от выбранных квадратов). Я не использовал свёрточные нейросети и как то не хотелось их сейчас применять (то есть хочу сделать на классической нейронной сети)

У меня вопрос можно ли использовать такой подход или все же надо будет использовать сверточную нейронную сеть?
Какой из размеров лучше подойдет (10x10, 15x15, 20x20) по вашему мнению? (пример изображений)
Сколько слоев и сколько нейронов в каждом слои нужно использовать? (до этого подбирал экспериментально)
Я обычно обучал несколько нейросетей (3) под каждый канал RGB, а потом коллегией выборщиков получал результат. Сейчас мне надо будет делать так же?

Заранее благодарю за ответ.
  • Вопрос задан
  • 100 просмотров
Пригласить эксперта
Ответы на вопрос 2
freeExec
@freeExec
Участник OpenStreetMap
Нет универсального ответа, делай так, так лучше. Так что продолжайте экспериментировать, и найдите, что лучше работает на ваших данных.
Ответ написан
@rPman
Нейронные сети в первую очередь не про сами сети, а про данные, на основе которых они обучаются.

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

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

Чем больше будет пар картинок (включая все комбинации всех имеющихся) тем больше шансов что сеть 'поймет' что именно определяет похожесть.

Про RGB, а характер изменений, в пределах которых нужно считать изображения похожими цвет участвует? если нет то почему бы от него вообще не избавиться? Или наоборот, отдавай сразу в одну сеть все три канала, она разберется. Еще можно заменить RGB на HSL (оно ближе к человеческому восприятию и его пониманию похожести).

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

p.s. попробуй вариант сети, когда один выход является оценкой похожести... с точки зрения реализации нет никакой разницы, но для сети это может быть проще чем искать два бинарных выхода
Ответ написан
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Войти через центр авторизации
Похожие вопросы