Эволюция нейросетей для распознавания изображений в Google: Inception-v3 |
||
МЕНЮ Искусственный интеллект Поиск Регистрация на сайте Помощь проекту ТЕМЫ Новости ИИ Искусственный интеллект Разработка ИИГолосовой помощник Городские сумасшедшие ИИ в медицине ИИ проекты Искусственные нейросети Слежка за людьми Угроза ИИ ИИ теория Внедрение ИИКомпьютерные науки Машинное обуч. (Ошибки) Машинное обучение Машинный перевод Реализация ИИ Реализация нейросетей Создание беспилотных авто Трезво про ИИ Философия ИИ Big data Работа разума и сознаниеМодель мозгаРобототехника, БПЛАТрансгуманизмОбработка текстаТеория эволюцииДополненная реальностьЖелезоКиберугрозыНаучный мирИТ индустрияРазработка ПОТеория информацииМатематикаЦифровая экономика
Генетические алгоритмы Капсульные нейросети Основы нейронных сетей Распознавание лиц Распознавание образов Распознавание речи Техническое зрение Чат-боты Авторизация |
2016-06-14 11:44 Продолжаю рассказывать про жизнь Inception architecture - архитеткуры Гугла для convnets. Disclaimer: пост написан на основе отредактированных логов чата closedcircles.com, отсюда и стиль изложения, и уточняющие вопросы. В этот раз авторы пытаются сформулировать какие-то основные принципы построения архитектуры эффективных сетей (собственно статья - http://arxiv.org/abs/1512.00567). (напомню, цель Inception architecture - быть прежде всего эффективной в вычислениях и количестве параметров для реальных приложений, за то и любим)
Напомню, прошлая версия кирпичика построения сети выглядела вот так: Какие они делают в нем модификации
Тут мы обнаруживаем, что свертки-то делать становится дешево, и тогда почему бы вообще делать не 3x1 + 1x3, а сразу nx1 + 1xn!
Проблема в том, что первый вариант - как раз резко уменьшит количество активаций, а второй - неэффективен с точки зрения вычислений, потому что нужно проводить convolution на полном разрешении. Посему они предлагают гибридную схему - давайте сделаем на половину фич пул, а на половину - convolution.И так как после пула количество фич типично раза в два увеличивается, боттлнека не будет. Пул сожмет предыдущий не уменьшая количество фич, некоторые convolutions будут прогнаны в полном разрешении, но с количеством фич поменьше. Нетворк научится разделять, что требует полного разрешения, а для чего достаточно пула.
Отсюда и тот ужас на первом рисунке. Еще они обнаружили, что дополнительные классификаторы по бокам не сильно-то ускоряют тренировку, а скорее помогают, потому что работают как регуляризаторы - когда они к ним подключили Batch Normalization, сеть стала предсказывать лучше.Что еще... Они предлагают еще один трюк для дополнительной регуляризации - так называемый label smoothing. Идея вкратце такая: обычно target label для конкретного сэмпла это 1 там где класс правильный, и 0 где класс неправильный. Итого И вот вся эта машинерия жрет в 2.5 раз больше вычислительных ресурсов, чем Inception-v1 и достигает значительно лучших результатов. Они называют основную архитектуру Inception-v2, а версию, где дополнительные классификаторы работают с BN - Inception-v3. Однако, случились ResNets и выиграли Kaiming He сотоварищи из Microsoft Research Asia с результатом- 3.57%!!! интересно средний хомо сапиенс какую ошибку покажет на этих картинках. Источник: habrahabr.ru Комментарии: |
|