- BrainTools - https://www.braintools.ru -

Нейросетевая архитектура формирования автоматических навыков. Часть 1

Введение

Идея предлагаемой архитектуры возникла из наблюдения за тем, как человеческий мозг [1] осваивает новые действия и превращает их в привычки.

Когда человек впервые сталкивается с незнакомой задачей, её решение требует сознательного внимания [2]. Необходимо сосредоточиться, попробовать один или несколько вариантов, получить обратную связь и скорректировать поведение [3]. Однако после многократного успешного повторения [4] действие постепенно становится автоматическим и выполняется практически без участия сознания.

В общем случае наш мозг работает по принципу «стимул-желание-реакция-подкрепление». Этот принцип хорошо описывается в книге Джеймса Клира «Атомные привычки», что и вдохновило меня на создание подобной архитектуры.

Хороший пример — обучение [5] вождению. Начинающий водитель отдельно контролирует положение педалей, переключение передач, поворот руля и дорожную обстановку. По мере накопления опыта [6] значительная часть этих операций превращается в привычку и начинает выполняться автоматически.

Прямо во время написания статьи я сдаю на водительские права, так что мне везёт воочию наблюдать как обучается моя собственная «нейронка».

Предлагаемая архитектура переносит этот принцип в систему из нескольких простых нейронных сетей. Незнакомые входные данные сначала обрабатываются «сознательной» сетью. После получения правильного ответа и положительного подкрепления [7] генеративная сеть создаёт множество похожих примеров. На них дообучается «подсознательная» сеть, после чего сходные ситуации начинают обрабатываться быстро и автоматически.

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

Общая схема архитектуры

Нейросетевая архитектура формирования автоматических навыков. Часть 1 - 1

Схема нейросетевой архитектуры формирования автоматических навыков

Архитектура состоит из четырёх основных нейросетевых компонентов:

1.          Классификатора новизны;

2.          Сознательной нейронной сети;

3.          Генеративной нейронной сети;

4.          Подсознательной нейронной сети.

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

Математическое описание

Входные данные

Пусть на вход системы поступает изображение

Нейросетевая архитектура формирования автоматических навыков. Часть 1 - 2

где

Нейросетевая архитектура формирования автоматических навыков. Часть 1 - 3

 — высота изображения,

Нейросетевая архитектура формирования автоматических навыков. Часть 1 - 4

 — ширина изображения, а

Нейросетевая архитектура формирования автоматических навыков. Часть 1 - 5

 — количество каналов.

В первом эксперименте можно использовать чёрно-белые изображения размером

Нейросетевая архитектура формирования автоматических навыков. Часть 1 - 6

:

Нейросетевая архитектура формирования автоматических навыков. Часть 1 - 7

На каждом изображении находится одна двумерная геометрическая фигура.

Классификатор новизны

Классификатор новизны определяет, знаком ли системе поступивший вход:

Нейросетевая архитектура формирования автоматических навыков. Часть 1 - 8

где

Нейросетевая архитектура формирования автоматических навыков. Часть 1 - 9

 — нейронная сеть определения новизны, а

Нейросетевая архитектура формирования автоматических навыков. Часть 1 - 10

 — оценка вероятности того, что изображение не относится к уже освоенным вариантам.

Для маршрутизации используется порог

Нейросетевая архитектура формирования автоматических навыков. Часть 1 - 11

:

Нейросетевая архитектура формирования автоматических навыков. Часть 1 - 12
Нейросетевая архитектура формирования автоматических навыков. Часть 1 - 13

где

Нейросетевая архитектура формирования автоматических навыков. Часть 1 - 14

 — подсознательная сеть, а

Нейросетевая архитектура формирования автоматических навыков. Часть 1 - 15

 — сознательная сеть. Таким образом, знакомые изображения поступают в подсознание, а новые — в сознание.

Работа подсознательной сети

Подсознательная сеть выполняет классификацию уже знакомых фигур:

Нейросетевая архитектура формирования автоматических навыков. Часть 1 - 16

Её выходом является распределение вероятностей по классам:

Нейросетевая архитектура формирования автоматических навыков. Часть 1 - 17

где

Нейросетевая архитектура формирования автоматических навыков. Часть 1 - 18

 — общее количество возможных фигур.

Предсказанный класс определяется выражением

Нейросетевая архитектура формирования автоматических навыков. Часть 1 - 19

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

Работа сознательной сети

Если изображение признано новым, оно поступает в сознательную сеть:

Нейросетевая архитектура формирования автоматических навыков. Часть 1 - 20

Сознательная сеть также выдаёт распределение вероятностей по возможным классам:

Нейросетевая архитектура формирования автоматических навыков. Часть 1 - 21

После выбора класса система получает подкрепление:

Нейросетевая архитектура формирования автоматических навыков. Часть 1 - 22

В простейшем случае награда задаётся так:

Нейросетевая архитектура формирования автоматических навыков. Часть 1 - 23

где

Нейросетевая архитектура формирования автоматических навыков. Часть 1 - 24

 — правильный класс изображения.

Если ответ неверный, параметры сознательной сети обновляются:

Нейросетевая архитектура формирования автоматических навыков. Часть 1 - 25

где

Нейросетевая архитектура формирования автоматических навыков. Часть 1 - 26

 — параметры сознательной сети,

Нейросетевая архитектура формирования автоматических навыков. Часть 1 - 27

 — скорость обучения, а

Нейросетевая архитектура формирования автоматических навыков. Часть 1 - 28

 — распределение вероятностей ответов.

Когда сознательная сеть получает положительное подкрепление, сохраняется успешная пара

Нейросетевая архитектура формирования автоматических навыков. Часть 1 - 29

Работа генеративной сети

Генеративная нейронная сеть получает успешный пример

Нейросетевая архитектура формирования автоматических навыков. Часть 1 - 30

 и случайный вектор

Нейросетевая архитектура формирования автоматических навыков. Часть 1 - 31

:

Нейросетевая архитектура формирования автоматических навыков. Часть 1 - 32

где

Нейросетевая архитектура формирования автоматических навыков. Часть 1 - 33

 — генеративная сеть, а

Нейросетевая архитектура формирования автоматических навыков. Часть 1 - 34

 — новый вариант исходного изображения.

Генератор создаёт набор похожих изображений:

Нейросетевая архитектура формирования автоматических навыков. Часть 1 - 35

Для всех сгенерированных изображений сохраняется тот же класс:

Нейросетевая архитектура формирования автоматических навыков. Часть 1 - 36

В результате формируется синтетический датасет:

Нейросетевая архитектура формирования автоматических навыков. Часть 1 - 37

Этот процесс является аналогом мысленного представления множества вариантов уже увиденного объекта.

Обучение подсознания

Подсознательная сеть дообучается на новых примерах:

Нейросетевая архитектура формирования автоматических навыков. Часть 1 - 38

где функция потерь может быть обычной категориальной кросс-энтропией:

Нейросетевая архитектура формирования автоматических навыков. Часть 1 - 39

Чтобы не происходило забывания [8] ранее изученных фигур, обучение желательно проводить одновременно на новых и старых примерах:

Нейросетевая архитектура формирования автоматических навыков. Часть 1 - 40

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

Экспериментальная задача: классификация двумерных фигур

Постановка задачи

Система должна распознавать простые геометрические фигуры на чёрно-белых изображениях. В качестве классов можно использовать:

•             круг;

•             квадрат;

•             треугольник;

•             крест;

•             звезду.

Все выходные классы задаются заранее, однако на начальном этапе подсознательная сеть обучается только на части фигур. Например:

Нейросетевая архитектура формирования автоматических навыков. Часть 1 - 41

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

Начальное обучение

Подсознательная сеть предварительно обучается распознавать круг, квадрат и треугольник. Каждая фигура представляется в различных вариантах:

•             разных размеров;

•             в разных положениях на изображении;

•             с различной толщиной линий;

•             с небольшими поворотами;

•             с добавленным шумом.

Одновременно обучается классификатор новизны. Он должен считать варианты этих трёх фигур знакомыми, а изображения других фигур — новыми.

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

Появление новой фигуры

После начального обучения системе показывается изображение креста. Классификатор новизны должен определить, что изображение не похоже на ранее изученные данные:

Нейросетевая архитектура формирования автоматических навыков. Часть 1 - 42

Поэтому изображение отправляется в сознательную сеть. Сознательная сеть выбирает один из пяти классов. Если выбран неверный класс, сеть получает отрицательное подкрепление [9]. Если выбран класс «крест», она получает положительное подкрепление:

Нейросетевая архитектура формирования автоматических навыков. Часть 1 - 43

После этого сохраняется успешная пара

Нейросетевая архитектура формирования автоматических навыков. Часть 1 - 44

Генерация воображаемых примеров

Генеративная сеть создаёт множество вариантов исходного креста:

•             крест в другой части изображения;

•             крест большего или меньшего размера;

•             повёрнутый крест;

•             крест с более толстыми линиями;

•             крест с шумом;

•             частично перекрытый крест;

•             слегка деформированный крест.

Получается синтетический датасет нового класса:

Нейросетевая архитектура формирования автоматических навыков. Часть 1 - 45

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

Формирование автоматического навыка

После освоения нового класса классификатор новизны обновляется. Теперь изображения крестов должны считаться знакомыми:

Нейросетевая архитектура формирования автоматических навыков. Часть 1 - 46

Следовательно, они начинают направляться сразу в подсознательную сеть:

Нейросетевая архитектура формирования автоматических навыков. Часть 1 - 47

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

Предлагаемые архитектуры нейронных сетей

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

Последовательность обучения системы

1.          Предварительное обучение. Подсознательная сеть обучается на круге, квадрате и треугольнике. Классификатор новизны обучается на тех же фигурах. Генеративная сеть осваивает преобразования геометрических объектов. Сознательная сеть получает начальные веса.

2.          Появление новой фигуры. Системе показывается крест. Классификатор новизны отправляет его в сознательную сеть.

3.          Получение правильного ответа. Сознательная сеть выбирает класс и получает подкрепление. После правильного ответа сохраняется пара

Нейросетевая архитектура формирования автоматических навыков. Часть 1 - 48

4.          Воображение. Генеративная сеть создаёт множество вариантов креста.

5.          Усвоение. Подсознательная сеть обучается на сгенерированных крестах и на части старых примеров.

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

Критерии успешности эксперимента

Снижение участия сознательной сети

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

Нейросетевая архитектура формирования автоматических навыков. Часть 1 - 49

Освоение нового класса подсознанием

Точность подсознательной сети на новых вариантах фигуры должна увеличиться после обучения на сгенерированных примерах.

Сохранение старых навыков

После добавления нового класса точность на круге, квадрате и треугольнике не должна существенно снизиться.

Исчезновение новизны освоенного класса

Ошибка [10] реконструкции классификатора новизны для освоенной фигуры должна постепенно уменьшаться. В результате новый класс должен перестать направляться в сознательную сеть.

Заключение

Предлагаемая архитектура моделирует простой механизм формирования автоматических навыков по аналогии с тем, как человек осваивает привычки.

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

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

Основная проверяемая гипотеза формулируется следующим образом:

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

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

Это первая часть работы, посвящённой данной идее. Архитектура намеренно выбрана простой и ориентированной на базовую задачу, чтобы её можно было реализовать на практике, проверить экспериментально и затем итеративно усложнять. Да, здесь модели сразу знают количество возможных классов, а алгоритмы обучения подобраны не самые лучшие. В дальнейшем планируется последовательно переходить ко всё более сложным задачам, а в перспективе — к созданию агента, способного обучаться и функционировать в реальной среде.

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

Автор: AntonThai

Источник [11]


Сайт-источник BrainTools: https://www.braintools.ru

Путь до страницы источника: https://www.braintools.ru/article/34000

URLs in this post:

[1] мозг: http://www.braintools.ru/parts-of-the-brain

[2] внимания: http://www.braintools.ru/article/7595

[3] поведение: http://www.braintools.ru/article/9372

[4] повторения: http://www.braintools.ru/article/4012

[5] обучение: http://www.braintools.ru/article/5125

[6] опыта: http://www.braintools.ru/article/6952

[7] положительного подкрепления: http://www.braintools.ru/article/5528

[8] забывания: http://www.braintools.ru/article/3931

[9] отрицательное подкрепление: http://www.braintools.ru/article/5531

[10] Ошибка: http://www.braintools.ru/article/4192

[11] Источник: https://habr.com/ru/articles/1067024/?utm_source=habrahabr&utm_medium=rss&utm_campaign=1067024

www.BrainTools.ru

Rambler's Top100