Проблемът: кое към кое се отнася
„Момичето остави чашата на масата, защото тя беше нестабилна.“ Към какво се отнася „тя“ — към чашата или към масата? Човек решава мигновено, защото знае какво значи нестабилен предмет.
Ако сменим последната дума на „пълна“, отговорът се обръща. Значи смисълът на „тя“ зависи от дума, която идва след нея. Модел, който чете строго отляво надясно и пази едно състояние, се затруднява точно тук.
Идеята на вниманието
Внимание (attention)
Механизъм, при който за всяка позиция в текста моделът пресмята колко е важна всяка друга позиция и след това смесва техните представяния в съответната пропорция.
- Всяка дума задава въпрос: „кой ми е нужен, за да се разбера“.
- Всяка дума предлага ключ: „ето какъв съм аз“.
- Съвпадението между въпроса и ключовете дава тегла — това е вниманието.
- Представянето на думата се обновява като смес от останалите според тези тегла.
Всичко това се повтаря на много слоя. След първия слой „тя“ вече носи част от смисъла на „масата“; след следващия — още повече контекст. Така думата постепенно натрупва значението си в конкретното изречение.
Много глави
На всеки слой има няколко успоредни механизма („глави“). Едната може да следи граматични връзки, друга — местоименията, трета — темата. Никой не им е задавал ролите; те се появяват при обучението.
Защо трансформърът измести всичко
- Успоредност — предишните архитектури четяха дума след дума и не можеха да използват пълноценно видеокартите. Трансформърът обработва цялата редица наведнъж и обучението стана десетки пъти по-бързо.
- Дълги връзки — връзката между първата и последната дума е една стъпка, а не сто.
- Мащабируемост — оказа се, че с повече данни, повече параметри и повече изчисления резултатът продължава да се подобрява предвидимо. Точно това направи възможни днешните модели.
Статията, която го въвежда, е от 2017 г. и се казва „Attention Is All You Need“. Буквата „Т“ в GPT е точно от transformer.
Цената
Квадратична сложност
Всяка дума гледа всяка друга. При 1000 думи това е милион двойки; при 10 000 — сто милиона. Затова дългият контекст е скъп и затова контекстните прозорци растяха бавно, въпреки че всички ги искаха.
Няма ред по подразбиране
Механизмът гледа всички позиции едновременно и сам по себе си не знае коя дума е първа. Затова към всяка дума се добавя информация за позицията ѝ — иначе „кучето ухапа човека“ и „човекът ухапа кучето“ ще изглеждат еднакво.
Какво не решава
Вниманието не носи разбиране и не прави модела верен. То е механизъм за смесване на контекст — много силен, но пак статистически.