Size: a a a

gonzo-обзоры ML статей

2019 May 24
gonzo-обзоры ML статей
источник
gonzo-обзоры ML статей
источник
2019 May 25
gonzo-обзоры ML статей
Мы завели чатик для обсуждения статей. Иногда хочется, так что велкам:
https://t.me/joinchat/BVpazxaJ5vHOsrnZ2xRlaQ

Вот ACT как раз можно пообсуждать ;)
источник
2019 May 26
gonzo-обзоры ML статей
В дополнение к посту про SACT есть видео доклада Миши Фигурнова на семинаре в Вышке:

https://youtu.be/xp5lLiA-hA8
источник
2019 May 28
gonzo-обзоры ML статей
Продолжение про ACT, часть 4-я.

#3: Universal Transformer

Наконец про трансформеры. Лёша про них уже недавно писал, но теперь более детально.

Universal Transformers
Mostafa Dehghani, Stephan Gouws, Oriol Vinyals, Jakob Uszkoreit, Łukasz Kaiser
Статья: https://arxiv.org/abs/1807.03819
Презентация: http://mostafadehghani.com/wp-content/uploads/2018/08/Universal_Transformers.pdf
Код: https://github.com/tensorflow/tensor2tensor/blob/master/tensor2tensor/models/research/universal_transformer.py
Некоторые другие реализации: https://github.com/topics/universal-transformer

Работа выставлялась постером на ICLR 2019, но известна уже более полугода.

По сути делаем трансформер с рекуррентностью и динамическим критерием останова. А заодно вроде как получаем Turing completeness (теоретическую способность вычислить всё вычислимое — сэмулировать машину Тьюринга).

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

Добавление рекуррентного inductive bias должно быть полезным в задачах, где такой bias естественнен (некоторые алгоритмические и языковые задачи).

На каждом рекуррентном шаге выполняются две операции: 1) self-attention по входной для этого слоя последовательности, 2) transition function поверх выходов self-attention’а, независимо в каждой позиции. В работе применяли две различные transition function в зависимости от задачи: separable convolution или полносвязную сеть с relu.

Это Universal Transformer.

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

Это Adaptive Universal Transformer.

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

На bAbi QA dataset результат хороший. На subject-verb agreement обычный трансформер работает хуже LSTM, а адаптивный универсальный дотягивает до SOTA. На LAMBADA бьёт и обычный трансформер и LSTM. На алгоритмических задачах не дотягивает до Neural GPU (который обучался по специальному протоколу), но бьёт LSTM и обычный трансформер. На Learning to Execute тоже бьёт эту парочку. На машинном переводе в WMT 2014 en-de тоже бьёт обычные и weighted трансформеры.

В общем явно хорошая штука.

Среди преимуществ авторы отмечают эффективность по данным — работает на маленьких датасетах.

Авторы сводят Universal Transformer к Neural GPU (который Turing complete) и соответственно доказывают, что UT тоже Turing complete. Для тех, кто этой темой ранее не интересовался, про RNN также существует доказательство, что они Turing complete. Но про это как-нибудь отдельно, если будет интересно. Также на ICLR 2019 была другая интересная работа про универсальность обычных трансформеров и Neural GPU, но про неё тоже как-нибудь отдельно.
источник
gonzo-обзоры ML статей
источник
gonzo-обзоры ML статей
источник
gonzo-обзоры ML статей
Results on bAbI tasks
источник
gonzo-обзоры ML статей
Universal Transformer with dynamic halting
источник
gonzo-обзоры ML статей
Внимание, трансформер думает!
источник
gonzo-обзоры ML статей
Перспектива
источник
2019 May 29
gonzo-обзоры ML статей
Open book on AutoML by Springer:
"Automated Machine Learning
Methods, Systems, Challenges"

Можно скачать pdf, epub

https://link.springer.com/book/10.1007/978-3-030-05318-5
источник
gonzo-обзоры ML статей
источник
2019 June 16
gonzo-обзоры ML статей
Adaptive Attention Span in Transformers
Sainbayar Sukhbaatar, Edouard Grave, Piotr Bojanowski, Armand Joulin
Статья: https://arxiv.org/abs/1905.07799
Бенчмарки: https://paperswithcode.com/paper/adaptive-attention-span-in-transformers

Работа идейно близкая к ACT: давайте теперь сделаем адаптивным attention span трансформера.

Проблема обычного трансформера в том, что размер контекста, по которому считается self-attention, фиксирован и кроме того не может быть большим, потому что вычисления и память растут квадратично. Для увеличения контекста недавно уже было несколько решений, например, Transformer XL или Sparse Transformer. В первом из них ввели нечто вроде рекуррентности по времени, а во втором сильно облегчили матрицу внимания за счёт факторизации. Здесь же авторы (все из FB) вводят адаптивность, слой сам определяет необходимый ему размер контекста, так что это сокращает вычислительную сложность трансформера и позволяет, где надо, иметь большой контекст.

Кроме адаптивности в обычный трансформер вводятся две модификации.

1) Относительные позиционные ембеддинги (из работы Shaw et.al, https://arxiv.org/abs/1803.02155)
2) Механизм кеширования (из работы Dai про Transformer XL, https://arxiv.org/abs/1901.02860)

Далее размер контекста (attention span) каждой головы self-attention’а выучивается независимо от других (это называется adaptive attention span) путём добавления кусочно-линейной невозрастающей функции, маскирующей attention span. Функция состоит из двух кусков: константная единица от нуля до z (выучиваемый параметр) и спадающий до нуля кусок от z до z+R (гиперпараметр).

Усовершенствованным вариантом является dynamic attention span, динамически изменяющий attention span в зависимости от текущего входа. Здесь параметр z является функцией от входа (соответствует одному полносвязному слою с сигмоидальной активацией).

Проверяли на датасетах text8 и enwiki8, пробовали модели двух размеров (маленькая: 12 слоёв и размер внутреннего эмбеддинга 512; и большая: 24 слоя и эмбеддинг 768; везде 8 голов attention’а).

Сравнивались с Transformer XL и с глубоким (64 слоя) символьным трансформером Al-Rfou (https://arxiv.org/abs/1808.04444). Большие модели получили SotA на обоих датасетах с меньшим числом параметров и с меньшими FLOPS’ами.

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

В общем прикольно, работает. В целом это довольно прямолинейный перенос идеи ACT.

Всё ещё кипятите? Тогда мы идём к вам. Что там ещё у нас в сетках зашито и не является адаптивным?
источник
gonzo-обзоры ML статей
источник
gonzo-обзоры ML статей
источник
gonzo-обзоры ML статей
источник
gonzo-обзоры ML статей
источник
gonzo-обзоры ML статей
источник
2019 June 23
gonzo-обзоры ML статей
Дружественные каналы с разборами статей, похожие на наш.

https://t.me/govorit_ai
Фокус на диалоговых системах и NLP
источник