Как я кошек отделил от собак при помощью нейросетки.
Фух, рассказывать тут можно много, но я расскажу на самой-самой поверхности.
Есть такой датасет на соревновании dogs vs cats, в котором нужно обучить что-нибудь на 25000 картинок собак и котов. Такой вот:
Посидел я, почесал репу. Сделал на коленке сетку, состоящую из 5 сверточных слоев. Как ни странно, такая сетка не зашла, ибо просто слишком "тупая". Так думал я. Ну хорошо, запиливаю большущую сеть:
из суммарно 42 сверточных слоев, что уже нереально дохрена. И что вы думаете? Нихрена! Не работает! Угадывает только в половине случаев, но при двух классах это не очень много...
Двое суток мучился, обращался в ods (наше научное сообщество), у друзей спрашивал. Задача простая, обидно прям. Решил уже было забить, как вдруг понял: у нас же между слоями образуется ерунда, надо нормализировать ерунду!
Добавляем слой BatchNorm (это такой слой, который приводит числа к адекватным, например оочень большие делит, а ооочень малькие умножает). И о чудо! 60% точности!
Такие дела :). Довел вот уже до 80%, наверное еще повышу. Если кому интересно - расскажу в следующем посте что означает рисунок выше, как создать такую сетку.
Спасибо за прочтение!
бм нашел в моем посте сиськи...
Искусственный интеллект
2.6K постов9.9K подписчика
Правила сообщества
Здесь вы можете свободно создавать посты по теме Искусственного интеллекта. Добро пожаловать :)
Разрешено:
- Делиться вопросами, мыслями, гипотезами, юмором на эту тему.
- Делиться статьями, понятными большинству аудитории Пикабу.
- Делиться опытом создания моделей машинного обучения.
- Рассказывать, как работает та или иная фиговина в анализе данных.
- Век жить, век учиться.
Запрещено:
I) Невостребованный контент
I.1) Создавать контент, сложный для понимания. Такие посты уйдут в минуса лишь потому, что большинству неинтересно пробрасывать градиенты в каждом тензоре реккурентной сетки с AdaGrad оптимизатором.
I.2) Создавать контент на "олбанском языке" / нарочно игнорируя правила РЯ даже в шутку. Это ведет к нечитаемости контента.
I.3) Добавлять посты, которые содержат лишь генеративный контент или нейросетевой Арт без какой-то дополнительной полезной или интересной информации по теме, без промтов или описания методик создания и т.д.
II) Нетематический контент
II.1) Создавать контент, несвязанный с Data Science, математикой, программированием.
II.2) Создавать контент, входящий в противоречие существующей базе теорем математики. Например, "Земля плоская" или "Любое действительное число представимо в виде дроби двух целых".
II.3) Создавать контент, входящий в противоречие с правилами Пикабу.
III) Непотребный контент
III.1) Эротика, порнография (даже с NSFW).
III.2) Жесть.
За нарушение I - предупреждение
За нарушение II - предупреждение и перемещение поста в общую ленту
За нарушение III - бан