Второй приём Ноам предложил для самого механизма вычисления весов внимания. Он математически обосновал, что если делить ключевые произведения на корень из размерности, обучение становится стабильнее. Эта мелочь, на первый взгляд техническая, на практике сильно влияла на сходимость. Её назвали scaled dot-product attention.
Оставалась одна философская проблема. Если ни в каком месте сети не сохраняется порядок слов, как сеть узнает, что «собака укусила человека» — это не то же самое, что «человек укусил собаку»? В рекуррентной сети порядок естественен: слова приходят по очереди. В архитектуре без рекуррентности — нет.
Чтобы это исправить, авторы добавили в каждый вектор слова небольшую сигнальную составляющую, кодирующую его позицию в предложении. Они придумали аккуратное математическое решение: использовать значения синусов и косинусов разных частот в зависимости от позиции. Это позволило сети различать слова, стоящие в разных местах, не делая никакой явной рекуррентной обработки. Изобретение это они назвали positional encoding, позиционное кодирование.
В мае 2017 года готовая архитектура была обучена на классической задаче машинного перевода — конкурсном наборе WMT 2014 для пары английский-французский. Большая версия модели содержала более двухсот миллионов параметров, что по тогдашним меркам было средним размером, но не выдающимся. Обучение шло на восьми видеокартах в течение трёх с половиной суток.
Полученные результаты были удивительны не столько абсолютной величиной, сколько отношением её к стоимости обучения. По стандартной метрике BLEU модель набрала 41,8 балла, что было новым state-of-the-art показателем. Лучшие на тот момент рекуррентные модели, обученные командами в Google и Facebook, набирали примерно столько же, но требовали для обучения недели или даже месяцы вычислений на сотнях видеокарт. Трансформер показывал ту же точность, обучаясь в десятки раз дешевле и быстрее.
Это означало, в принципе, две очень важные вещи. Первая: качество перевода в принципе достижимо без рекуррентных сетей. Гипотеза Якоба подтвердилась. Вторая, гораздо более далекоидущая: эту архитектуру можно масштабировать. Раз модель в двести с лишним миллионов параметров обучается за три с половиной дня, значит, модель в десять миллиардов параметров — потенциально за приемлемое время. На рекуррентных сетях о таком масштабе нельзя было даже мечтать.
Команда провела ещё несколько дополнительных экспериментов и убедила саму себя, что архитектура хорошо работает не только на машинном переводе. На задаче синтаксического парсинга английского языка трансформер также показал отличные результаты. Это, в общем-то, и решило: они написали полную статью, и решили публиковать её не только как работу по машинному переводу, а как работу о новой общеприменимой архитектуре нейронных сетей для последовательной обработки данных.
Когда статья была написана, оставался последний вопрос: как её назвать. Авторы сидели в одной из переговорных комнат в Маунтин-Вью и спорили несколько часов. У Лиона Джонса был хороший музыкальный вкус, и в какой-то момент он предложил вариант, по форме совпадавший с названием известной песни группы Beatles. В оригинале песня называлась All You Need Is Love. У них всё было про внимание, и Джонс сказал: давайте назовём Attention Is All You Need. Получится с одной стороны звучно, с другой — точно по сути.
Остальные согласились с улыбкой. Этот заголовок впоследствии станет одним из самых известных в истории компьютерных наук и, кстати, породит особый под-жанр научных статей с подобными названиями. К двадцать пятому году количество arXiv-препринтов, в названии которых будет фраза All You Need, превысит семьсот.
Имя самой архитектуры — Transformer — было предложено Якобом. Просто потому, что это слово ему нравилось как звучание. Никакого глубокого смысла за этим не было. В одной из позднейших бесед Якоб об этом так и сказал: Trans-former — слово, которое мне понравилось.
В нём, разумеется, можно было разглядеть и более глубокий смысл: трансформация одной последовательности в другую, transformation. Но семантически название было не более и не менее выбранным, чем когда-то «бит» (от binary digit) или «энтропия» (по совету фон Неймана во время одного из визитов Шеннона в Принстон). Имя — это имя; ему нужно, чтобы оно запоминалось и легко произносилось, а не чтобы оно описывало внутреннее устройство явления.