Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
Диплом (914).docx
Скачиваний:
4
Добавлен:
17.09.2019
Размер:
1.05 Mб
Скачать

1.5 Связывание через свертку

Тони Плейт в 2003 году разработал эффективный способ понимания связывания в нейронных сетях, с помощью вектора на основе представления, аналогичные, но более эффективный вычислительно, чем тензорное произведение предложенное Смоленским в 1990 году. Презентация идеи Плейта, которая называется связыванием через свертку, будет в значительной степени метафорической в этом разделе, а технические детали будут пояснены позднее. Элиасмит и Тэгард (2001), предлагают относительно пологое введение в метод Плейта.

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

В математике, свертка является составной функцией, которая выражается размером перекрытия сдвига одной функции f другой функцией g, выражая наложение одной функции на другую. Это понятие дает математически точный аналог физического процесса плетения, как понимается математическая свертка как смешение двух сигналов вместе (каждый из которых представлен функцией) образом примерно аналогичным тому, как плетение сочетает две нити волос вместе.

Плейт разработал методику, которую он назвал упрощением голографическим представления, которая применяется как аналог свертки вектора действительных чисел. Естественно думать о шаблонах нейронной активности с использованием векторов: если нейронная популяция содержит N нейронов, то её деятельность может быть представлена как последовательность, которая содержит N чисел, каждое из которых обозначает темп возбуждения нейрона. Например, если максимальный темп возбуждения нейрона 200 раз в секунду, скорость возбуждения нейрона 100 раз в секунду может быть представлена числом 0,5. Отсюда вектор (0,5, 0,4, 0,3, 0,2, 0,1) соответствует темпу возбуждения этого нейрона и четыре из них с более медленными темпами возбуждения.

Так вот основная идея: если абстрактно представить шаблон деятельности двух нейронных популяций векторов «А» и «В», то мы можем представить их комбинации как математическую свертку «А» и «В», что будет являться еще одним вектором соответствующему третьему шаблону нейронной активности. На данный момент мы игнорируем то, что это представляет физически. Полученный вектор имеет новые свойства, то есть свойства, которыми не обладают (или просто агрегатов), никакой из двух векторов, из которых он комбинируется. Результирующий вектор сочетает в себе информацию, включенную в каждый из векторов, полученную нелинейным образом, что позволяет лишь приблизительно восстановить их. Таким образом, свертка векторов производит новые связи, которые не являются просто суммой частей связанных вместе (Бунж, 2003, Вимсат, 2007).

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