Содержание
Глава 1. Использование нейронных сетей для распознавания рукописных чисел Глава 2: Как работает алгоритм обратного распространения ошибки Глава 3: Часть 1: улучшение способа обучения нейронных сетей часть 2: почему регуляризация помогает уменьшить переобучение? Часть 3: как выбрать гиперпараметры нейронной сети? Глава 4. Наглядное доказательство того, что нейронные сети могут вычислять любую функцию Глава 5: Почему глубокие нейронные сети так сложно обучать? Глава 6: часть 1: глубокое обучение часть 2: недавний прогресс в распознавании изображений Послесловие: Существует ли простой алгоритм создания интеллекта? В 1998 году, когда был представлен MNIST, на обучение самых совершенных компьютеров уходили недели, и результаты были намного хуже, чем сегодняшние результаты, которые при использовании графического процессора занимают менее часа.Таким образом, MNIST больше не является задачей расширения границ возможностей технологий; Скорость обучения говорит о том, что данная задача хорошо подходит для изучения данной технологии.
Тем временем исследования продвигаются вперед, и современные работы изучают гораздо более сложные проблемы, требующие решения.
В этом разделе я кратко опишу некоторые примеры текущих работ, связанных с распознаванием изображений с помощью нейронных сетей.
Этот раздел отличается от остальной части книги.
В книге я сосредоточился на якобы долгоживущих идеях — обратном распространении ошибки, регуляризации, сверточных сетях.
Я старался избегать результатов, считавшихся модными на момент написания статьи, чья долгосрочная ценность была сомнительной.
В науке такие результаты чаще всего оказываются временными, быстро исчезают и не оказывают долгосрочного воздействия.
Учитывая это, скептик сказал бы: «Неужели недавний прогресс в распознавании изображений можно считать примером такой однодневки? Через два-три года все изменится.
Значит, эти результаты наверняка будут интересны небольшому числу специалистов, конкурирующих на передовой? Зачем их вообще обсуждать? Такой скептик был бы прав в том, что мелкие детали недавних работ постепенно потеряют воспринимаемую важность.
Однако за последние несколько лет произошли невероятные улучшения в решении особенно сложных задач распознавания изображений с использованием глубоких нейронных сетей (DNN).
Представьте себе историка науки, пишущего о компьютерном зрении в 2100 году.
Он определит 2011-2015 годы (и, вероятно, несколько лет после этого) как период значительных прорывов, вызванных глубокими сверточными сетями (DCN).
Это не означает, что GOS все еще будет использоваться в 2100 году, не говоря уже о таких деталях, как исключение, ReLU и т. д. Но это все же означает, что в истории идей произошел важный переход к текущему моменту.
Это похоже на открытие атома, изобретение антибиотиков: изобретение и открытие исторического масштаба.
Поэтому, не вдаваясь в подробности, стоит получить некоторое представление об интересных открытиях, совершаемых сегодня.
Работа 2012 ЛРМД
Позвольте мне начать с работы 2012 г., созданный командой исследователей из Стэнфорда и Google. Я назову его LRMD, по первым буквам фамилий первых четырех авторов.
LRMD использовала нейронную сеть для классификации изображений из базы данных ImageNet, что представляет собой очень сложную задачу распознавания образов.
Данные ImageNet за 2011 год, которые они использовали, включали 16 миллионов полноцветных изображений, разделенных на 20 000 категорий.
Изображения были загружены из Интернета и классифицированы сотрудниками сервиса Amazon Mechanical Turk. Вот некоторые из них:
Они относятся к категориям соответственно: калевка, бурый корневой гриб, пастеризованное молоко, круглые черви.
Если вы хотите попрактиковаться, я советую вам ознакомиться со списком ручных инструментов ImagNet, в котором различаются формовочные, торцевые плоскости, плоскости для снятия фасок и десятки других типов плоскостей, не говоря уже о других категориях.
Не знаю, как вы, а я не могу с уверенностью отличить все эти инструменты друг от друга.
Очевидно, это гораздо более сложная задача, чем MNIST! Сеть LRMD достигла приличной точности в 15,8% при распознавании изображений по данным ImageNet. Это может показаться не таким уж впечатляющим результатом, но это было огромное улучшение по сравнению с предыдущим результатом в 9,3%.
Этот скачок предполагает, что нейронные сети могут предложить эффективный подход к очень сложным задачам распознавания изображений, таким как ImageNet.
Работа 2012 КШ
За работой LRMD в 2012 году последовали Работа Крижевский, Суцкевер и Хинтон (КШ).KSH был обучен и проверен GSN с использованием ограниченного набора данных ImagNet. Это подмножество определяется популярным соревнованием по машинному обучению ImageNet Large-Scale Visual Recognition Challenge (ILSVRC).
Использование этого подмножества дало им удобный способ сравнить свой подход с другими ведущими методами.
Набор ILSVRC-2012 содержит около 1,2 миллиона изображений из 1000 категорий.
Наборы проверки и проверки содержат 150 000 и 50 000 изображений соответственно из одних и тех же 1000 категорий.
Одна из проблем конкурса ILSVRC заключается в том, что многие изображения ImageNet содержат несколько объектов.
Допустим, на изображении изображен лабрадор-ретривер, бегущий за футбольным мячом.
Т.
Н.
«Правильной» классификацией ILSVRC может быть лабрадор-ретривер.
Должны ли мы убрать баллы из алгоритма, если он помечает изображение как футбольный мяч? Из-за этой неоднозначности алгоритм считался правильным, если классификация из ImageNet входила в число 5 наиболее вероятных предположений алгоритма о содержании изображения.
По этому критерию из топ-5 GSS компании KSH достиг точности 84,7%, что намного лучше, чем у ее предыдущего конкурента, который достиг точности 73,8%.
При использовании более строгой метрики, когда метка должна точно совпадать с указанной, точность KSH достигла 63,3%.
Стоит кратко описать сеть KSH, потому что она вдохновила на большую часть последующей работы.
Как мы увидим, она также тесно связана с сетями, которые мы обучали в этой главе, хотя и более сложна.
KSH использовал GSN, обученный на двух графических процессорах.
Они использовали два графических процессора, поскольку на их конкретной карте (NVIDIA GeForce GTX 580) не хватало памяти для хранения всей сети.
Поэтому они разделили сеть на две части.
Сеть KSH имеет 7 слоев скрытых нейронов.
Первые пять скрытых слоев являются сверточными (некоторые используют max-pooling), а следующие 2 — полностью связными.
Выходной слой softmax состоит из 1000 нейронов, соответствующих 1000 классам изображений.
Вот эскиз сети, взятый из работы KSH. Подробности описаны ниже.
Обратите внимание, что многие слои разделены на две части, соответствующие двум графическим процессорам.
Входной слой имеет 3x224x224 нейрона, представляющих значения RGB для изображения размером 224x224. Напомним, что ImageNet содержит изображения разного разрешения.
Это представляет проблему, поскольку входной уровень сети обычно имеет фиксированный размер.
KSH справился с этой проблемой, масштабируя каждое изображение так, чтобы его короткая сторона составляла 256 пикселей в длину.
Затем они вырезали область размером 256x256 пикселей из середины изображения с измененным размером.
Наконец, KSH извлекает случайные фрагменты изображений размером 224x224 (и их горизонтальные отражения) из изображений размером 256x256. Это случайное сокращение — это способ расширения обучающих данных, чтобы уменьшить переобучение.
Это особенно полезно для обучения такой крупной сети, как KSH. Наконец, эти изображения размером 224x224 используются в качестве входных данных для сети.
В большинстве случаев вырезанное изображение содержит основной объект исходного изображения.
Перейдем к скрытым слоям сети KSH. Первый скрытый слой — это сверточный слой с максимальным шагом объединения.
Он использует локальные рецептивные поля размером 11х11 и шагом 4 пикселя.
Всего получено 96 карт объектов.
Карты функций разделены на две группы по 48: первые 48 карт относятся к одному графическому процессору, а вторые — к другому.
Максимальное объединение в этом и последующих слоях выполняется в разделах 3х3, но разделы объединения могут перекрываться и находиться на расстоянии всего 2 пикселя друг от друга.
Второй скрытый слой также является сверточным с максимальным пулом.
Он использует локальные рецептивные поля 5x5 и имеет 256 карт функций, разделенных по 128 для каждого графического процессора.
Карты объектов используют только 48 входных каналов, а не все 96 выходных каналов предыдущего слоя, как обычно.
Это связано с тем, что любая карта объектов получает входную информацию от графического процессора, на котором она хранится.
В этом смысле сеть отличается от сверточной архитектуры, которую мы описали ранее в этой главе, хотя, очевидно, основная идея остается той же.
Третий, четвертый и пятый слои являются сверточными, но без максимального объединения.
Их параметры: (3) 384 карты признаков, локальные рецептивные поля 3x3, 256 входных каналов; (4) 384 карты объектов, локальные рецептивные поля 3x3, 192 входных канала; (5) 256 карт объектов, локальные рецептивные поля 3x3, 192 входных канала.
Третий уровень обменивается данными между графическими процессорами (как показано на рисунке), чтобы карты объектов могли использовать все 256 входящих каналов.
Шестой и седьмой скрытые слои полностью связаны, по 4096 нейронов в каждом.
Выходной слой — softmax, состоящий из 1000 единиц.
Сеть KSH использует множество технологий.
Вместо использования сигмовидной или гиперболического тангенса в качестве функции активации используется ReLU, что значительно ускоряет обучение.
Сеть KSH содержит около 60 миллионов обучаемых параметров, и поэтому даже при большом наборе обучающих данных она подвержена переобучению.
Чтобы справиться с этим, авторы расширили обучающую выборку, используя случайное кадрирование изображений, как описано выше.
Далее они использовали вариант регуляризации и исключения L2. Сеть была обучена с использованием стохастического градиентного спуска на основе импульса с мини-пакетами.
Это краткий обзор многих ключевых идей в работе KSH. Некоторые детали я опустил, ищите их в статье сами.
Вы также можете посмотреть проект Алекса Крижевского куда-коннет (и его последователей), содержащий код, реализующий многие из описанных идей.
Развитый и версия этой сети на основе Теано .
Код раскрывает идеи, аналогичные тем, которые мы разработали в этой главе, хотя использование нескольких графических процессоров усложняет ситуацию.
Фреймворк Caffe имеет собственную версию сети KSH, подробности см.
в их " модель зоопарка ".
Конкурс 2014 ILSVRC
С 2012 года прогресс был довольно быстрым.Возьмем конкурс ILSVRC 2014 года.
Как и в 2012 году, участникам пришлось обучать сети на 1,2 миллионах изображений из 1000 категорий, а критерием качества было то, что один из 5 вероятных прогнозов находился в правильной категории.
Команда-победитель , состоящая в основном из сотрудников Google, использовала ГСН с 22 слоями нейронов.
Они назвали свою сеть GoogLeNet в честь LeNet-5. По критерию попадания в пятерку лучших вариантов GoogLeNet достиг показателя точности 93,33%, что значительно улучшило результат победителя 2013 года (Clarifai с 88,3%) и победителя 2012 года (KSH с 84,7%).
Насколько хороша точность GoogLeNet в 93,33%? В 2014 году группа исследователей написала обзор работы Соревнования ILSVRC. Один из обсуждавшихся вопросов заключался в том, насколько хорошо люди смогут справиться с этой задачей.
Для эксперимента они создали систему, которая позволяет людям классифицировать изображения из ILSVRC. Как поясняет в информативном блоге один из авторов работы Андрей Карпатый, привести результативность людей к показателям GoogLeNet было очень сложно:
Задача разметки изображений по пяти категориям из 1000 возможных быстро стала чрезвычайно сложной даже для тех из моих друзей в лаборатории, которые какое-то время работали с ILSVRC и его категориями.Иными словами, эксперт, работавший очень аккуратно, смог опередить Государственную налоговую службу, только приложив серьезные усилия.Сначала мы хотели отправить задачу в Amazon Mechanical Turk. Тогда мы решили попробовать нанять студентов за деньги.
Поэтому я организовал вечеринку по оцениванию среди специалистов своей лаборатории.
После этого я разработал модифицированный интерфейс, который использовал предсказания GoogLeNet для уменьшения количества категорий с 1000 до 100. И все равно задача была сложной — люди пропускали категории, выдавая ошибки около 13-15%.
В конце концов я понял, что для того, чтобы хотя бы приблизиться к результатам GoogLeNet, наиболее эффективным подходом было бы сесть самому и пройти невероятно долгий процесс обучения и последующий тщательный процесс разметки.
Сначала маркировка шла со скоростью около 1 штуки в минуту, но со временем ускорилась.
Некоторые изображения было легко распознать, тогда как другие (например, определенные породы собак, виды птиц или обезьян) требовали нескольких минут концентрации.
Я стал очень хорошо различать породы собак.
На основе моей выборки изображений были получены следующие результаты: GoogLeNet ошибался в 6,8% случаев; мой коэффициент ошибок составил 5,1%, что примерно на 1,7% лучше.
Карпаты сообщают, что второй эксперт, обученный на меньшем количестве изображений, смог снизить ошибку всего до 12% при выборе до 5 меток на изображение, что намного меньше показателей GoogLeNet. Потрясающие результаты.
И с тех пор, как появилась эта работа, несколько команд сообщили о разработке систем, уровень ошибок которых при выборе пяти лучших меток составлял даже менее 5,1%.
Иногда в СМИ эти достижения освещались как появление систем, способных распознавать изображения лучше, чем люди.
И хотя общие результаты потрясающие, есть множество нюансов, из-за которых нельзя считать, что компьютерное зрение работает для этих систем лучше, чем для человека.
Во многих отношениях конкурс ILSVRC представляет собой весьма ограниченную задачу — результаты поиска изображений в открытой сети не обязательно будут соответствовать тому, с чем программа сталкивается в практической задаче.
И, естественно, критерий «одна из пяти лучших оценок» весьма искусственен.
Нам еще предстоит пройти долгий путь до решения проблемы распознавания изображений, не говоря уже о более общей проблеме компьютерного зрения.
Но все равно очень здорово видеть, какой прогресс был достигнут в решении столь сложной проблемы всего за несколько лет.
Другие задачи
Я сосредоточился на ImageNet, но существует довольно много других проектов, использующих нейронные сети для распознавания изображений.Позвольте мне кратко описать несколько интересных результатов, полученных за последнее время, просто чтобы дать представление о текущей работе.
Одно вдохновляющее практическое занятие набор результатов был получен командой Google, которая применила GSS к проблеме распознавания адресных знаков в Google Street View. В своей работе они сообщают, как обнаружили и автоматически распознали почти 100 миллионов адресных знаков с точностью, сравнимой с возможностями человека.
И их система быстрая: она смогла расшифровать данные всех изображений Google Street View во Франции менее чем за час! Они пишут: «Доступность этого нового набора данных значительно улучшила качество геокодирования Google Maps в нескольких странах, особенно там, где не было других источников геокодирования».
Далее они делают более общее заявление: «Мы считаем, что с помощью этой модели мы решили проблему оптического распознавания коротких последовательностей способом, применимым для многих практических приложений».
Возможно, я произвел на вас впечатление парада победных и вдохновляющих результатов.
Конечно, самые интересные доклады касаются принципиальных вещей, которые нам пока неясны.
Например, в работа 2013 Было показано, что NS по существу имеет слепые зоны.
Посмотрите на изображения ниже.
Слева — изображение из ImageNet, которое сеть исследователей классифицировала правильно.
Справа — слегка измененное изображение (посередине показаны различия), которое сеть уже не смогла правильно распознать.
И авторы обнаружили, что такие «состязательные» изменения можно выбрать для любого изображения в базе данных, а не только для избранных.
Неприятный результат. В работе использовалась сеть, основанная на том же коде, что и сеть KSH, — то есть именно такая сеть, которая используется все чаще.
Хотя такие нейронные сети в принципе вычисляют непрерывные функции, эти результаты показывают, что они, скорее всего, будут вычислять почти дискретные функции.
Хуже того, они оказываются дискретными и нарушают наши интуитивные представления о разумном поведении.
Это проблема.
Кроме того, пока не очень понятно, что именно приводит к дискретности, в чем проблема: в функции потерь? Какие функции активации мне следует использовать? В сетевой архитектуре? В чем-то другом? Мы не знаем.
Но эти результаты не так плохи, как кажутся.
Хотя такие состязательные изменения довольно распространены, на практике они вряд ли встречаются.
Как сказано в работе:
Существование состязательных негативов противоречит способности сети достигать высоких показателей обобщаемости.Однако разочаровывает тот факт, что наше понимание нейронных сетей настолько плохое, что этот результат был обнаружен лишь недавно.В конце концов, если бы сеть могла хорошо обобщать, как бы она могла быть обманута такими враждебными негативами, неотличимыми от обычных примеров? Объяснение состоит в том, что набор состязательных негативов имеет чрезвычайно низкую вероятность и поэтому не наблюдается (или почти не наблюдается) в наборе обучающих данных, но имеет высокую плотность (примерно такую же, как рациональные числа) и поэтому может быть найден для почти в любом случае .
Конечно, главное преимущество таких результатов в том, что они стимулировали последующие работы по этой теме.
Показано, что обученная сеть может создавать изображения, которые для человека будут выглядеть как белый шум, и сеть будет классифицировать их по известным категориям с высокой степенью достоверности.
Это еще одна демонстрация того, что нам еще многое предстоит понять о работе нейронных сетей и их использовании для распознавания изображений.
Но, несмотря на эти результаты, общая картина обнадеживает. Мы наблюдаем быстрый прогресс в проведении чрезвычайно сложных тестов, таких как ImageNet. Мы также наблюдаем быстрый прогресс в решении реальных проблем, таких как распознавание уличных знаков в StreetView. Но, несмотря на вдохновение, недостаточно просто увидеть улучшения в тестах скорости или даже в реальных задачах.
Есть фундаментальные явления, о которых мы до сих пор плохо понимаем, например, существование состязательных образов.
И хотя такие фундаментальные проблемы еще только обнаруживаются (не говоря уже о том, чтобы решаться), говорить о приближении к решению проблемы распознавания изображений преждевременно.
Но в то же время подобные проблемы являются отличным стимулом для дальнейшей работы.
Другие подходы к глубоким нейронным сетям
В этой книге мы сосредоточились на одной проблеме: классификации цифр MNIST. Большая проблема, которая заставила нас понять множество мощных идей: стохастический градиентный спуск, обратное распространение ошибки, сверточные сети, регуляризация и т. д. Однако это тоже довольно узкая задача.Если вы почитаете литературу по нейронным сетям, вы встретите множество идей, которые мы не обсуждали: рекуррентные нейронные сети, машины Больцмана, генеративные модели, трансферное обучение, обучение с подкреплением и так далее и тому подобное! Нейронные сети — это обширная область.
Однако многие важные идеи являются вариациями идей, которые мы уже обсуждали, и их довольно легко понять.
В этом разделе я приоткрою завесу над этими необъятными просторами.
Их обсуждение не будет подробным и всеобъемлющим — это сделает книгу чрезвычайно раздутой.
Это будет импрессионистическая попытка показать концептуальное богатство этой области и связать некоторые концепции с теми, которые мы уже видели.
В тексте я приведу несколько ссылок на другие источники в качестве материалов для дальнейшего обучения.
Конечно, многие из них вскоре будут заменены другими, и вам, возможно, захочется поискать более свежую литературу.
Однако я верю, что многие основные идеи еще долго будут оставаться интересными.
Рекуррентные нейронные сети (RNN)
В использованных нами сетях прямого распространения есть один вход, который полностью определяет активацию всех нейронов последующих слоев.Это очень статичная картина: все в сети фиксировано и имеет застывший, кристаллический характер.
Но допустим, мы позволяем элементам сети динамически изменяться.
Например, поведение скрытых нейронов может определяться не только активациями в предыдущих слоях, но и активациями, произошедшими ранее во времени.
Активация нейрона может частично определяться его собственной более ранней активацией.
В сетях с прямым распространением такого точно не происходит. А возможно, активации скрытых и выходных нейронов будут определяться не только текущим входом в сеть, но и предыдущими.
Нейронные сети с таким типом изменяющегося во времени поведения известны как рекуррентные нейронные сети или RNN. Существует множество способов математически формализовать неформальное описание предыдущего абзаца.
Представление о них вы можете получить, прочитав Статья в Википедии .
На момент написания книги в английской версии статьи описывается не менее 13 различных моделей [на момент перевода в 2019 году их было уже 18 / прим.
перевод].
Но, если оставить в стороне математические детали, общая идея RNN заключается в том, что в сети происходят динамические изменения, происходящие с течением времени.
И, что неудивительно, они особенно полезны для анализа данных или процессов, которые изменяются с течением времени.
Такие данные и процессы естественным образом появляются в таких задачах, как анализ речи или естественного языка.
Одним из текущих применений RNN является более тесная интеграция нейронных сетей с традиционными способами представления алгоритмов, с такими концепциями, как машина Тьюринга и традиционные языки программирования.
В работа с 2014 года Была разработана RNN, которая может принимать на вход побуквенное описание очень простой программы на Python и прогнозировать результат ее работы.
Неформально говоря, сеть учится «понимать» определенные программы Python. Вторая работа 2014 года.
использовал RNN в качестве отправной точки для разработки «нейронной машины Тьюринга» (NMT).
Это компьютер общего назначения, вся структура которого может быть обучена с помощью градиентного спуска.
Они научили свой HMT создавать алгоритмы для нескольких простых задач, таких как сортировка или копирование.
Это, конечно, очень простые, игрушечные модели.
Обучение выполнению программы на Python типа print(398345+42598) не делает нейросеть полноценным интерпретатором языка! Неясно, насколько дальше будут развиваться эти идеи.
Тем не менее, результаты оказываются весьма интересными.
Исторически сложилось так, что нейронные сети хорошо распознавали закономерности, которые не справлялись с традиционными алгоритмическими подходами.
И наоборот, традиционные алгоритмические подходы хорошо справляются с решением проблем, сложных для нейронных сетей.
Сегодня никто не пытается реализовать веб-сервер или базу данных на базе NN! Было бы здорово разработать унифицированные модели, объединяющие сильные стороны как нейронных сетей, так и традиционных алгоритмических подходов.
RNN и вдохновленные ими идеи могут помочь нам в этом.
В последние годы RNN использовались для решения многих других задач.
Они были особенно полезны при распознавании речи.
Подходы на основе RNN устанавливать рекорды по качеству распознавания фонем.
Они также используется для разработки улучшенные модели речевого языка, который используют люди.
Улучшенные языковые модели помогают распознавать двусмысленности в речи, которые звучат похоже.
Хорошая модель языка сможет подсказать нам, что фраза «вперед до бесконечности» гораздо более вероятна, чем фраза «вперед без конечности», даже если они звучат похоже.
RNN использовался для достижения рекордных результатов на определенных языковых тестах.
Эта работа является частью более широкого использования нейронных сетей всех типов, а не только RNN, для решения задач распознавания речи.
Например, подход на основе DNN показал отличные результаты в непрерывном распознавании речи с большим словарным запасом.
Более Единая система на базе ГНС реализован в ОС Android от Google. Я немного рассказал о том, на что способны RNN, но не объяснил, как они работают. Возможно, вы не удивитесь, узнав, что многие идеи из мира сетей прямого распространения могут быть использованы в RNN. В частности, мы можем обучать RNN, напрямую изменяя градиентный спуск и обратное распространение ошибки.
Многие другие идеи, используемые в сетях прямого распространения, также будут полезны, от методов регуляризации до сверток, функций активации и стоимости.
Кроме того, многие идеи, развитые нами в книге, могут быть адаптированы для использования в СОК.
Модули долговременной памяти (LST)
Одна из проблем RNN заключается в том, что ранние модели было очень сложно обучать, даже сложнее, чем DNN. Причиной была проблема нестабильного градиента, которую мы обсуждали в главе 5. Напомним, что распространенным проявлением этой проблемы было то, что градиент продолжал уменьшаться по мере распространения по слоям в обратном направлении.Это крайне замедляет обучение ранних слоев.
В RNN эта проблема становится еще хуже, поскольку градиенты распространяются не только назад по слоям, но и назад во времени.
Если сеть работает достаточно долго, градиент может стать крайне нестабильным и на нем будет очень трудно учиться.
К счастью, RNN могут включать в себя идею, известную как модули.
долговременная память (ДКП).
Впервые данные модули были представлены Хохрайтер и Шмидхубер в 1997 году.
, специально для решения проблемы нестабильного градиента.
DCT облегчает получение хороших результатов при обучении RNN, и во многих недавних работах (включая те, на которые я уже ссылался) используются DCT или подобные идеи.
Сети глубоких убеждений, генеративные модели и машины Больцмана
В настоящее время интерес к глубокому обучению получил второе дыхание в 2006 году, после публикации работ ( 1 , 2 ), который объяснил, как обучать особый тип нейронной сети, называемый глубокой сетью доверия (DBN).GDM влияли на область исследований в течение нескольких лет, но затем их популярность начала снижаться, и в моду вошли сети прямого распространения и рекуррентные нейронные сети.
Несмотря на это, некоторые свойства GSD делают их весьма интересными.
Во-первых, GSD являются примером генеративной модели.
В сети прямой связи мы указываем входные активации, и они определяют активации функциональных нейронов дальше по сети.
Генеративную модель можно использовать аналогичным образом, но в нее можно подать значения нейронов, а затем запустить сеть в обратном направлении, генерируя входные значения активации.
Точнее, GDM, обученный на изображениях рукописных цифр, может сам генерировать изображения, похожие на рукописные цифры (возможно, после определенных действий).
Другими словами, GSD в каком-то смысле может научиться писать.
В этом смысле генеративные модели похожи на человеческий мозг: они умеют не только читать числа, но и записывать их.
Известный заявление Джеффри Хинтон утверждает, что для распознавания форм сначала нужно научиться создавать изображения.
Во-вторых, они способны обучение без учителя и почти без учителя.
Например, обучаясь на изображениях, GSD могут изучать функции, полезные для понимания других изображений, даже если на обучающих изображениях не было меток.
Возможность учиться без учителя чрезвычайно интересна как с фундаментальной научной точки зрения, так и с практической – если ее можно заставить работать достаточно хорошо.
Учитывая всю эту привлекательность GDM как моделей глубокого обучения, почему их популярность пошла на убыль? Частично это связано с тем, что другие модели, такие как сети прямой связи и рекуррентные сети, достигли потрясающих результатов, особенно прорывов в области распознавания изображений и речи.
Неудивительно, что этим моделям уделяется такое внимание, и оно вполне заслужено.
Однако из этого следует неприятный вывод. Рынок идей часто работает по принципу «победитель получает все», при этом почти все внимание уделяется тенденциям в конкретной области.
Людям может быть чрезвычайно трудно работать Теги: #Машинное обучение #искусственный интеллект #нейронные сети #глубокое обучение #учебник #учебник
-
Возвращение Блудного Сына
19 Oct, 24 -
Дрожащее Существо Или Генеральный Директор?
19 Oct, 24 -
Как Установить Ботов Для Starcraft Ii
19 Oct, 24 -
Голубое Небо
19 Oct, 24 -
Ход "Вороной"
19 Oct, 24 -
200 — Это Хорошо Или Плохо?
19 Oct, 24 -
Ефспо — Новый Союзник Opera Software
19 Oct, 24 -
Хабракаст В Эфире!
19 Oct, 24