Обложка канала

tldr_arxiv

Короткий и четкий разбор свежих и нашумевших статей по deep learning

tldr_arxiv

8 лет назад
Открыть в
Differentiable plasticity: training plastic neural networks with backpropagation
https://arxiv.org/pdf/1804.02464.pdf
За наводку спасибо @VictorPo
🕐 Когда - 2 апреля 2018 года

🥂 В чем понт
В своей статье авторы к традиционным весам в нейронной сети предлагают добавлять еще и так называемую 'пластичность’ - величину, которая зависит от входа и выхода в нейрон. Такая идея почерпнута из знания о том, как устроен мозг человека - если долго и одновременно активировать одни и те же нейроны, то связь между ними усилится. Авторы говорят, что такой метод может заметно улучшить гибкость сетей и приводят несколько экспериментов, в которых пластичная сеть бьет обычную

🔎 Подробности
📎 О пластичности
Чтобы сочетать в своем алгоритме все лучшее, в качестве новых весов в нейронной сети авторы взяли сумму обычных и пластичных весов, причем для упрощения коэффициенты в сумме весов фиксируется для всей сети. Пластичные веса отличаются от фиксированных тем, что они зависят от входов и выходов в нейроны. Если говорить конкретнее, пластичный вес на шаге t представляет из себя произведение активаций входа и выхода из нейрона, домноженного на коэффициент k, просуммированного с пластичным весом на шаге на t-1, домноженным на коэффициент 1-k. Коэффициент k для простоты фиксирован для всей сети и обучается как дополнительный параметр. Таким образом, если оба нейрона дают высокую активацию одновременно, пластичный вес между ними растет, в противном случае - деградирует.

🔧 Эксперименты
👓 Pattern memorization
Сначала авторы рассмотрели задачу запоминания паттернов. Сети показывают набор из перемешанных бинарных паттернов - векторов, каждый элемент которых соответствует либо красному, либо синему цвету, вместе с векторами, просто заполненными нулями. Затем один из паттернов деформируют- заполняют наполовину нулями, и просят сеть его восстановить. Пластичная реккурентная нейросеть на 200 эпохе с 51 нейроном дала результат, который смогла выдать LSTM на 600 000 эпохе с 2050 нейронами.

🍢 One-shot pattern classification
В этой задаче авторы взяли Omniglot dataset, состоящий из символов, относящихся к разным классам. В каждом эпизоде из всех классов случайно выбирают несколько классов и обучаются на части примеров из них. На тесте применяют алгоритм к примерам из выбранных классов. Работу пластичного алгоритма сравнили с другими методами- наш метод дает сравнимые результаты с некоторыми алгоритмами, в которых значительно больше параметров, и обгоняет алгоритмы со схожим числом параметров.

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

✏️ Что в итоге?
Статья с интересной идеей о том, как увеличить выразительность модели с добавлением пластичности в веса. Авторы несколько раз говорят, что пошли по самому простому варианту - при выборе механизма пластичности, в определении для всей сети одинаковых коэффициентов пластичности, в постановке задачи и самих задачах. Соответственно в качестве идей для развития - докрутить все вышеперечисленные вещи, которые не докрутили авторы.