← Вернуться к списку

Как получить сложность каждого слоя, последовательность операций и максимальную длину пути в архитектуре сверточной нейронной сети (CNN)?

Краткое содержание

В статье «Внимание — всё, что вам нужно», приведена таблица 1, кто-нибудь пояснит, какая архитектура имеется в виду в строке «Свёрточная (Convolution)», и соответственно опишите остальные три колонки этой строки? Остальные архитектуры достаточно понятны: например, рекуррентная («Recurrent») требует $O(d^2)$ операций на один временной шаг для умножения скрытого состояния на весовую матрицу, и таких временных шагов всего $n$, которые выполняются последовательно ($O(n)$). Таким образом информация от первого до последнего токена в предложении проходит через $O(n)$ шагов. Для механизма само-внимания каждый токен учитывает все другие токены, формируя таким образом $O(n^2)$ пар, каждая из которых вычисляется посредством скалярного произведения, занимающего $O(d)$ операций. Очевидно, длина пути равна $O(1)$, и все эти операции над парами могут выполняться независимо друг от друга. Строка же «Свёрточная (Convolution)» мне непонятна!

Полный текст статьи пока не загружен.