ViTransformer простыми словами объясняет вводное объяснение _ViT
This article was original written by Jin Tian, you are welcomed to repost, first publish at blog.tsuai.cn. Please keep this copyright info, thanks, any question could be asked via wechat:
jintianiloveu
Давным-давно я написал статью: , содержание этой статьи было в основном обзором, и оно не объяснялось на уровне алгоритма, а также не представляло текущий прогресс трансформатор в деталях, и Какие структуры в настоящее время более оптимизированы.Эта статья стремится дать вам более подробную картину.Контент, который будет включен, относительно разбросан.Конечно, основная линия - это эти вопросы, на которые вы, возможно, сможете ответить из статьи:
- Я хочу знать, как использовать Vit, его базовую структуру, ввод и вывод и т. д.;
- Что такое Vit Token и чем он отличается от токена блокчейна Huobi;
- Как можно разыграть эти жетоны;
- Какой оптимальный алгоритм передачи и при чем тут трансформатор.
- Вопросы, терзающие душу: в чем суть трансформеров?
- Почему проблема расстояния является краеугольным камнем современных проблем машинного обучения, особенно GAN и трансформаторов;
- Итак, какова связь между GAN и Transform?Почему вы упомянули GAN?
- Может ли Transform выполнять сегментацию или регрессию, как CNN?
- ...
ПРЕДУПРЕЖДЕНИЕ ФБР: Эта статья представляет собой серию основных вводных статей для VisTransformer, которая содержит множество математических принципов, не являющихся формулами (человеческими словами), а также содержит множество терминов, которые даже я не могу понять и которые могут быть перемешаны с некоторые вводящие в заблуждение личные субъективные мнения, вся статья может быть нелогичной, бессмысленной или даже небрежной, пожалуйста, используйте ее с осторожностью и приветствую всех, чтобы комментировать и вежливо обсуждать.Но после прочтения я гарантирую, что вы будете просвещены, и вы Почувствуйте, что вы вскрыли две вены Рена и Ду. Если вы это чувствуете, ставьте лайки, ретвитите и комментируйте три дня подряд. Не зря я писал эту статью три дня и три ночи....
В этой серии вопросов я хочу начать с того, что всем знакомо. Это не CNN и не GAN, а электронная коммерция. Что происходит? Очень классическая проблема для продавцов: проблема распределения склада. Короче говоря, это проблема в следующем:
Например, у нас есть склады M, предположим, что у нас есть 100 складов по всей стране, а затем у нас теперь есть 899 клиентов, подписавшихся на наши продукты на складе, такие как графические карты GTX 3090. Проблема сейчас в том, что мы хотим самую низкую стоимость передачи, потому что каждый склад имеет расстояние от каждого клиента, мы хотим, чтобы каждый клиент получил товар с ближайшего склада, чтобы достичь оптимального расстояния и времени.Ограничение этой проблемы заключается в том, что каждый склад хранит количество GTX3090 ограничено.Тогда вопрос: как спроектировать план размещения склада, чтобы общая стоимость была наименьшей, и в то же время каждый пользователь мог получить любимую GTX3090.
Я считаю, что многие люди на самом деле знают эту проблему или сталкивались с вариантом этой проблемы.По сути, это задача динамического программирования, ищущая оптимальное решение при ограничениях.Конечно, такого рода задачи не обязательно имеют оптимальное решение. Может быть несколько разных оптимальных решений.Почему мы объясняем эту проблему при преобразовании Обобщите и просмотрите проблему, а затем соедините всю эту нить знаний в линию от более мелкого к более глубокому, а то я вам прямо Sinkhorn Transformer скину, вы должен думать, что я человек, который сошел с ума, потому что фонд упал. На самом деле эта проблема, по сути, мы можем понять ее как проблему преобразования дистрибутива, как бы это сказать.Можно понять так, застрял на складе это своего рода дистрибутив, в руках пользователя другой вид распределения, а оптимальная схема распределения есть. Эта задача оптимальной передачи является также оптимальным решением задачи преобразования распределения. Приятно понимать, что мы прошли долгий путь, и вот еще одна недостающая концепция, а именнорасстояние, так называемая стоимость выше, на самом деле, большинство проблем преобразования распределения машинного обучения можно отнести к «проблеме расстояния».Многие могут сказать, разве проблема расстояния не очень проста? Я знаю L1 L2, и Я знаю намного больше Для других расстояний, тогда я спрашиваю вас, знаете ли вы математическую теорию, лежащую в основе каждого расстояния? Влияют ли они на преобразование или оценку распределений? Почему расхождение KL, которое может характеризовать разницу между двумя распределениями, но а не расстояния?Почему два нормальных распределения, одно из которых является минимальным переносом другого, могут иметь бесконечный KL для вычисления обоих?
На самом деле индекс оценки всех расстояний должен удовлетворять симметрии, потому что вы должны быть одинаковыми, когда вы двигаетесь от А к В и от В к А, иначе расстояние не имеет смысла.Так что вы оглядываетесь назад на дивергенцию KL.Этот индекс асимметричен , моя взаимная информация от p до q и q до p может иметь разные значения, поэтому GAN не использует расхождение KL или расхождение JS, а расстояние EM (Wasserstein) для измерения сходства между генератором и дискриминатором.
Мы все знаем, что WD полностью решает проблему градиентного взрыва в GAN, и он очень подходит для других случаев, когда измеряется сходство двух распределений, даже если между ними нет пересечения, Но WD имеет чрезвычайно глубокие коннотации в геометрии, если x — риманово многообразие, P(x) — пространство, составленное из вероятностных мер на x, и если расстояние на P(x) равно расстоянию Вассерштейна, то относительная энтропия выпукла на P(x) и x имеет неотрицательные Риччи кривизна - эквивалентный вывод.
Случайно снова просмотрел GAN, кто-то спросит, какое это имеет отношение к Transformer?Это связано, мы упоминаем WD, потому что хотим обсудитьзадача оптимальной передачи.Вернемся к этому вопросу.Обсудим этот вопрос дальше.Мы уже рассмотрели дивергенцию KL и расстояние WD.Всесильно ли расстояние Вассерштейна?Какие ограничения оно имеет?
Введите описание Синкхорна
Давайте сначала ответим на поставленные выше вопросы. Мы знаем, что расстояние Вассерштейна решает проблему измерения расстояния любого некоррелированного распределения и имеет глубокий римановский геометрический смысл, но оно также вводит проблему. Точнее, мы иногда будем на этом основании, добавить небольшое требование,Мы хотим, чтобы модель имела компромисс по степени соответствия сложности, другими словами, мы поощряем распределение переходов ближе к более равномерному распределению..
Для этого необходимо ввести представление расстояния Синкхорна, фактически на основе ВД добавляется регулярное слагаемое.
Вот расстояние Синкхорна. Некоторые люди могут спросить, зачем добавлять регулярный член, чтобы ограничить сложность модели? На самом деле это очень простой вопрос. Мы все знаем, что такое регулярность. Подгонка, тогда почему регуляризация может предотвратить переоснащение? полагаться означает ограничить сложность модели.У некоторых студентов возникает вопрос, почему можно ограничить сложность модели?Пожалуйста, определите сложность модели.
На самом деле мы можем вернуться к регулярности L1 и регулярности L2:
Эти два незатейливых регулярных члена ограничивают сложность модели, ограничивая флуктуацию величины параметра, другими словами, чем больше, по вашему мнению, количество ненулевых параметров, тем выбирается L1, и модель, по вашему мнению, тем больше флуктуация то есть, чем сложнее модель. , то используйте L2 для ее регуляризации.
Ну, мы знаем, что Синкхорн добавляет регулярный член, основанный на расстоянии WD, чтобы еще больше ограничить сложность модели.Это делает перенос модели более соответствующим сложности, которую мы хотим, а затем ограничивает сложность модели.
Итак, возникает вопрос, а какое это имеет отношение к Трансформеру? Да, мы только что упомянули слово: транспорт. Это очень похоже на Трансформера.
Суть Трансформера
Почему мы тратим много времени на объяснение задачи оптимальной передачи, потому что я хочу, чтобы она была ближе к сути проблемы. Я не хочу размещать здесь никаких принципиальных схем о трансформаторах. Вместо этого я хочу изучить только одну Дело в том, что это метод расчета внимания.Все знают, что преобразователь на самом деле представляет собой серию механизмов внимания, но знаете ли вы, как они рассчитываются?Как это работает в строительной модели?
Сначала посмотрите на картинку:
Это четкая диаграмма проблемы в первые дни поля НЛП.Из этой картины мы можем увидеть суть так называемого внимания, которое на самом деле является задачей оптимизации передачи.Подобная структура преобразователя, привитого в поле CV не может избежать такой сути.Для иллюстрации этой точки зрения, я выложу еще одну картинку здесь
Трансформер и VSlam
Ребят если не говорить об этом, то придется тянуть Слэм?Это как-то связано с чужим VSlam?Расцвела сфера Deep-VSlam.Таких как граф сеть,трансформатор..Высокий -технические люди, которые могут его использовать, уже использовали его. Сейчас я поймаю последний эпизод, чтобы поговорить об отношениях между ними. Вы должны поговорить об этих двух, подходящий момент, который я могу найти, этоСравнение функций.
Давайте поговорим о волшебной бумаге MagicLeap. Само собой разумеется, удивительный эффект бумаги SuperGlue, мы в основном объясняем часть AttentionGNN, которая представляет собой модель GNN самоконтроля. Это ничего, ключ в том, что процесс сопоставления более интересен , В области vSLAM или любого приложения SLAM сопоставление двух игл данных для нахождения отношения преобразования позы является одним из основных элементов содержания. GNN в SuperGlue предназначен для имитации человеческого процесса поиска совпадающих ключевых точек. Мы в основном обеспокоены с этим соответствием, а не конкретной реализацией.
Идея этого алгоритма заключается в том, что сначала у нас есть начальная характерная точка, которая состоит из признаков положения и признаков внешнего вида, которые могут быть выражены многомерным выходным вектором MLP, Эти два также могут быть связаны через механизм внимания, Таким образом, он может быть представлен вектором. Затем в статье строится полный граф. В этом графе есть два вида ребер, один из которых является самостоятельным краем, который соединяет характерные точки внутри изображения, а другой - поперечным ребром. , который соединяет характерные точки этого графа и все характерные точки другого графа, здесь в процессе построения модели применяется механизм внимания.
X-Formers
Когда статья была написана в это место, я обнаружил, что все не так просто, как я себе представлял, семейство трансформеров действительно цветет, и каждая версия имеет свои особенности и ограничения.Это ядро этой статьиВы можете смотреть другую любовь или нет, этот абзац действительно ценен!Мы должны предложить очень важную концепцию под названием: режим трансформации.
Как сказать?Трансформеры также делятся на разные режимы.Если быть точным, мы можем классифицировать их в зависимости от того, как они используются:
- Только кодировщик, например, для классификации изображений;
- Только декодеры, такие как некоторые предварительно обученные языковые модели;
- кодировщик-декодер, такой как машинный перевод.
Для архитектуры кодер-декодер это относительно традиционный и простой преобразователь, а его кодер и декодер могут содержать модули механизма самоконтроля с несколькими головками.
На картинке выше есть призовое соревнование: кто кодер, а кто декодер?
Интересно, что в рисунках проектирования кодировщика нет механизма ограничения в себе должен, если причинно-следственный способ или может быть несущим, но механизм собственного внимания декодера, необходимо, если причинность.
Люди потратили много времени на оптимизацию структуры трансформатора с разных сторон.Из приведенного выше рисунка видно, что вычислительная сложность трансформатора, полученного Vanilla, очень высока.Сложность этого расчета сейчас сложно реализовать. Это также подталкивает людей к постоянной оптимизации.
Информация, которую сообщает вам эта семантическая карта, является направлением, в котором некоторые из самых передовых академических работ оптимизируют архитектуру.Здесь мы также перечисляем некоторые из текущих алгоритмов оптимизации и их вычислительную сложность:
Категории здесь означают:
- FP: fixed patterns
- M: memory;
- LP: learnable patterns;
- KR: kernel
- RC: recurrence
Эти аббревиатуры описывают разные точки питания, то есть прорывы в повышении эффективности трансформатора.Видно, что до сих пор точки питания у всех кажутся более склонными к направлению KR и LR.Далее я буду рассказать о скудной работе трансформеров в этом направлении.
Здесь я кратко объясню эти различные направления оптимизации:
- FP: то есть ограниченный фиксированный режим оптимизации, такой как локальное окно или окно переменного шага, для оптимизации матрицы внимания;
- Блочные паттерны: он делит входную последовательность на фиксированные фасты и учитывает локальное рецептивное поле.Проще говоря, он делит входную последовательность на блоки или берет ведро, а затем выполняет вычисления, что эквивалентно атомизации ввода, поэтому исходное N ^ 2 становится B ^ 2. Когда B намного меньше, чем N, вычислительные затраты могут быть значительно снижены. Это по существу не меняет структуру сети, а только меняет организацию ввода;
- Stried Pattern: Грубо говоря, это разреженный преобразователь, который сокращает расчет за счет увеличения размера шага большего окна;
- Сжатый шаблон: ввод напрямую подвергается субдискретизации, поэтому при уменьшении длины ввода цель состоит в том, чтобы уменьшить объем вычислений за счет уменьшения ввода;
- CP: комбинированная схема оптимизации, то есть объединение множества разных точек.Например, разреженный преобразователь объединяет часть многоголового внимания в другие модули и объединяет некоторые шаги и локальное внимание для сокращения операции;
- LP: обучаемый режим для оптимизации. Суть LP состоит в том, чтобы определить взаимосвязь между различными токенами и назначить токены разным корзинам или кластерам. Например, в Reformer представлен метод измерения подобия на основе хэша, который эффективен. Кластерные токены в соответствующие ведра, обратите внимание!Здесь снова упоминается метрика, то есть метрика расстояния или распространения, что еще раз сублимирует основную идею этой статьи!Например, сеть SININHORN сортировки вводит сортировку на многоподъемные блоки последовательности, чтобы сортировать важность весов внимания. Эти аналогичные функции размещаются вместе с функцией потери для выполнения сквозной тренировки. Режим оптимизации LP Сохраняйте фиксированный режим, но автоматический кластер токена таких методов заставляет их получить более оптимизированную глобальную карту последовательности.
- M: Другой способ — это метод глобальной памяти, эта часть метода проектирования заключается в изучении кластеров непосредственно из токенов входной последовательности;
- K: В последнее время это популярный метод повышения эффективности. Механизм внимания рассматривается через функцию ядра. Использование функции ядра позволяет тонко переписать механизм собственного внимания. Избегайте явного вычисления матрицы NxN, чтобы значительно уменьшить сумма расчета, ее тоже можно считать частным случаем Lowrank;
- Р: Изучите нарушения, рекурсивно связывая блоки.
По поводу сравнения эффективности каждой конкретной точки прорыва, можно тянуть к финальной ссылке для просмотра конкретных деталей соответствующей статьи.Я не буду здесь разворачиваться.Скажу прямо заключение.
Хотя все заняты обновлением различных структур трансформаторов и использованием различных средств для их оптимизации.Но простого способа сравнить их эффекты почти нет.Кроме того, во многих работах используются разные оценочные показатели, сворачивание затрудняет сравнение.Поэтому,Какой метод является более простым и эффективным, до сих пор остается неразгаданной загадкой..
С одной стороны, существуют различные модели, ориентированные наgenerative modeling, демонстрируя возможности предлагаемого блока Transformer в последовательном AR (авторегрессивном) моделировании. С этой целью Sparse Transformers, Adaptive Transformers, Routing Transformers и Reformers в основном сосредоточены на задачах генеративного моделирования. Эти тесты обычно включают языковое моделирование и/или попиксельную генерацию изображений на таких наборах данных, как Wikitext, enwik8 и/или ImageNet/CIFAR. А рекуррентные модели на основе сегментов (такие как Transformer-XL и Compressive Transformers) также ориентированы на крупномасштабные задачи языкового моделирования, такие как PG-19.
С одной стороны, некоторые модели в основном ориентированы на кодирование только таких задач, как ответы на вопросы, понимание прочитанного и/или выбор из теста Glue. Например, модели ETC экспериментируются только с ответами на тесты вопросов, такие как NaturalQuestions или TriviaQA. Linformer, с другой стороны, фокусируется на подмножестве тестов GLUE. Эта декомпозиция очень естественна и интуитивно понятна, потому что такие модели, как ETC и Linformer, нельзя использовать в AR (авторегрессивном) способе, то есть нельзя использовать для декодирования. Это усугубляет сложность сравнения этих моделей кодировщиков с другими моделями.
Некоторые модели фокусируются на балансе двух вышеперечисленных. Longformer пытается сбалансировать это, запуская тесты для задач генеративного моделирования и кодирования. Sinkhorn Transformer сравнивает задачи генеративного моделирования и задачи только кодирования.
Ну а пока весь прогресс в области трансформаторов почти ясен.
Sinkhorn Transformer
Структура трансфомера, предложенная этим вариантом, я проложила многое вперед, и наконец-то могу кинуть вот эту статью:
Потому что я знаю, что если я брошу эту статью в начале, 98% людей ее не поймут и не поймут, о чем я говорю.В заключение, структура трансформатора сегодня недостаточно эффективна для памяти, поэтому вы читаете много бумаги скажут, что хотя CNN имеет много параметров, но он быстрее, причина в том, что существующая архитектура или цепочка инструментов не могут быть эффективными при расчете Transformer.
Основные вклады этой статьи:
Предложен механизм разреженного внимания, основанный на алгоритме Синкхорна.И это эффективное представление может быть получено.Этот метод внимания с экономией памяти сравним с традиционным механизмом внимания и выше, чем предложенные ранее разреженные преобразователи.
Из-за численной сложности уровня внимания и ограничения длины входной последовательности существующие преобразователи обычно приводят всю модель в субоптимальное состояние, а общая вычислительная эффективность не является оптимальной.
Идея этой статьи состоит в том, чтобы преобразовать проблему внимания в проблему сортировки:
Упомянутый выше преобразователь является одним из нескольких способов повышения эффективности. Он использует направление LP, то есть оптимизирует матрицу внимания и изучает разреженность этой матрицы путем самообучения. Методы, которые он использует То есть мы уже давно предложили алгоритм синкхорна, то есть через этот алгоритм реализуется сопоставление токена и соответствующего блока, и эту операцию можно добавить в модель для сквозного обучения.
Суммировать
На самом деле развитие трансформаторов не так удовлетворительно, как предполагалось.Я думаю, что основными препятствиями в настоящее время являются:
- Из приведенного выше анализа видно, что у преобразователя все еще есть проблемы, такие как низкая эффективность, противоречивые показатели оценки, слишком много вариантов и непоследовательные задачи оценки;
- Некоторые из профессий, которые вы видите, являются в основном общими профессиями, а не конкретными в определенной области, например, специализируются на зрении, специализируются на речи и т. д., а некоторые из существующих очень специфических профессий очень специфичны, так что вы не знаете этого. Структура трансофмера не является врожденным преимуществом, независимо от того, для какой задачи мы ее используем.
В конце концов, это одна и та же фраза, практика приносит истинное знание, и только когда вы поместите его в свои собственные проблемы, вы узнаете, полезна ли эта вещь или нет.
уведомление
В следующей статье мы получим конкретные визуальные проблемы и проведем эксперименты, чтобы увидеть, как работает трансформатор.
Reference
- csdn blog
- Хуан Ю. «Эффективные трансформаторы: опрос» от Google Research в сентябре 2020 г.
- Берт несколько вопросов
- Efficient Transformers: A Survey
Если вы хотите изучить искусственный интеллект и больше заинтересованы в передовых технологиях искусственного интеллекта, вы можете присоединиться к нашей планете знаний, чтобы получать информацию из первых рук, передовые научные тенденции, отраслевые новости и многое другое! Ваша поддержка побудит нас создавать чаще, и мы поможем вам начать более глубокое обучение!