Skip to content

Experimental implementation of "Looped Transformers are Better at Learning Learning Algorithms" showing superior performance with 12x fewer parameters. Includes complete environment setup, pre-trained weights, and extensive experiments comparing Looped TFs vs traditional Transformers for In-Context Learning.

Notifications You must be signed in to change notification settings

Vadimbuildercxx/looped_transformer

Folders and files

NameName
Last commit message
Last commit date

Latest commit

Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 

Repository files navigation

ΠžΡ‚Ρ‡Π΅Ρ‚ ΠΏΠΎ исслСдованию Looped Transformers ΠΈ ΠΈΡ… возмоТностСй.

Мини исслСдованиС-ΠΎΡ‚Ρ‡Π΅Ρ‚ ΠΏΠΎ ΡΡ‚Π°Ρ‚ΡŒΠ΅ - https://arxiv.org/abs/2311.12424

ОглавлСниС

Установка срСды

ВсС ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Π½Π½Ρ‹Π΅ вСрсии Π±ΠΈΠ±Π»ΠΈΠΎΡ‚Π΅ΠΊ содСрТатся Π² environment.yml. Для установки срСды ΠΌΠΎΠΆΠ½ΠΎ Π²ΠΎΡΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚ΡŒΡΡ ΡΠ»Π΅Π΄ΡƒΡŽΡ‰ΠΈΠΌΠΈ ΠΊΠΎΠΌΠ°Π½Π΄Π°ΠΌΠΈ:

conda env create -f environment.yml
conda activate looped_tf

Π’ случаС трудностСй с Ρ‚Ρ€Π΅Π½ΠΈΡ€ΠΎΠ²ΠΊΠΎΠΉ ΠΌΠΎΠ΄Π΅Π»ΠΈ всС вСса находятся ΠΏΠΎ ΠΏΡƒΡ‚ΠΈ /scripts/scripts/models.

Π’Π²Π΅Π΄Π΅Π½ΠΈΠ΅

Π—Π° основу исслСдования взята ΡΡ‚Π°Ρ‚ΡŒΡ Looped Transformers are Better at Learning Learning Algorithms. Π’ Π΄Π°Π½Π½ΠΎΠΉ Ρ€Π°Π±ΠΎΡ‚Π΅ ΠΌΡ‹ посмотрим Π½Π° возмоТности ΠΏΠΎ ΡƒΠ»ΡƒΡ‡ΡˆΠ΅Π½ΠΈΡŽ ΠΌΠΎΠ΄Π΅Π»ΠΈ, скорости Π΅Π΅ сходимости, ΠΏΡ€ΠΎΠ²Π΅Ρ€ΠΈΠΌ нСсколько Π³ΠΈΠΏΠΎΡ‚Π΅Π· ΠΈ ΠΏΠΎΠΏΡ€ΠΎΠ±ΡƒΠ΅ΠΌ ΠΎΠ±ΠΎΡΠ½ΠΎΠ²Π°Ρ‚ΡŒ ΠΏΠΎΠ»ΡƒΡ‡Π΅Π½Π½Ρ‹ΠΉ Ρ€Π΅Π·ΡƒΠ»ΡŒΡ‚Π°Ρ‚. Π’Ρ‹Π²Π΅Π΄Π΅ΠΌ ΠΌΠ΅Ρ‚Ρ€ΠΈΠΊΠΈ для сравнСния Π°Ρ€Ρ…ΠΈΡ‚Π΅ΠΊΡ‚ΡƒΡ€ ΠΏΡ€ΠΈ Ρ€Π°Π·Π»ΠΈΡ‡Π½Ρ‹Ρ… ΠΏΠ°Ρ€Π°ΠΌΠ΅Ρ‚Ρ€Π°Ρ… ΠΈ посмотрим, Ρ‡Ρ‚ΠΎ влияСт Π½Π° Ρ‚ΠΎΡ‚ ΠΈΠ»ΠΈ ΠΈΠ½ΠΎΠΉ Ρ€Π΅Π·ΡƒΠ»ΡŒΡ‚Π°Ρ‚. Π‘ΠΎΠ»ΡŒΡˆΠ°Ρ Ρ‡Π°ΡΡ‚ΡŒ экспСримСнтов ΠΏΡ€ΠΎΠ²ΠΎΠ΄ΠΈΠ»Π°ΡΡŒ с ΠΏΠ°Ρ€Π°ΠΌΠ΅Ρ‚Ρ€Π°ΠΌΠΈ $d={10}$ ΠΈ количСством Ρ‚ΠΎΡ‡Π΅ΠΊ $k={31, 41}$. Бписок ΠΌΠΎΠ΄ΠΈΡ„ΠΈΠΊΠ°Ρ†ΠΈΠΉ исходного рСпозитория ΠΏΡ€ΠΈΠ²Π΅Π΄Π΅Π½ Π² ΠΊΠΎΠ½Ρ†Π΅.

Одна Ρ‡Π°ΡΡ‚ΡŒ экспСримСнтов ΠΏΡ€ΠΎΠ²ΠΎΠ΄ΠΈΠ»Π°ΡΡŒ Π² Π½ΠΎΡƒΡ‚Π±ΡƒΠΊΠ°Ρ… Ρ„ΠΎΡ€ΠΌΠ°Ρ‚Π° experiment_*.ipynb. Другая Ρ‡Π°ΡΡ‚ΡŒ экспСримСнтов ΠΏΡ€ΠΎΠ²ΠΎΠ΄ΠΈΠ»Π°ΡΡŒ Π² ΡƒΠ΄Π°Π»Π΅Π½Π½ΠΎΠΉ срСдС (kaggle), ΠΈΡ… ΠΊΠΎΠ½Ρ„ΠΈΠ³ΡƒΡ€Π°Ρ†ΠΈΠΈ находятся Π² ΠΏΠ°ΠΏΠΊΠ΅ configs.

Π—Π°Π΄Π°Ρ‡Π° Ρ€Π°Π±ΠΎΡ‚Ρ‹: ΡΡ€Π°Π²Π½ΠΈΡ‚ΡŒ Π²ΠΎΠ·ΠΌΠΎΠΆΠ½ΠΎΡΡ‚ΡŒ Π·Π°Ρ†ΠΈΠΊΠ»Π΅Π½Π½Ρ‹Ρ… ΠΈ ΠΎΠ±Ρ‹Ρ‡Π½Ρ‹Ρ… ΠΌΠΎΠ΄Π΅Π»Π΅ΠΉ для In-Context Learning Π² контСкстС Π»ΠΈΠ½Π΅ΠΉΠ½ΠΎΠΉ рСгрСссии (с ΡˆΡƒΠΌΠΎΠΌ ΠΈ Π±Π΅Π·).

Π‘Ρ€Π°Π²Π½Π΅Π½ΠΈΠ΅ эффСктивности Looped TFs с ΠΎΠ±Ρ‹Ρ‡Π½Ρ‹ΠΌΠΈ TFs

ВсС экспСрСмСнты ΠΏΡ€ΠΎΠ²ΠΎΠ΄ΠΈΠ»ΠΈΡΡŒ с Π²Ρ‹ΠΊΠ»ΡŽΡ‡Π΅Π½Π½Ρ‹ΠΌ Mixed Precision, ΠΏΠΎΡΠΊΠΎΠ»ΡŒΠΊΡƒ ΠΎΠ½ Π½Π΅ влиял Π½Π° ΡΠΊΠΎΡ€ΠΎΡΡ‚ΡŒ обучСния - ΠΈΠ·-Π·Π° Ρ‚ΠΎΠ³ΠΎ, Ρ‡Ρ‚ΠΎ gpt2_nano Π½Π΅ ΠΌΠΎΠΆΠ΅Ρ‚ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚ΡŒ GPU эффСктивно, ΠΈ ΠΏΠΎ этой ΠΆΠ΅ ΠΏΡ€ΠΈΡ‡ΠΈΠ½Π΅, Ρ‚Ρ€Π΅Π½ΠΈΡ€ΠΎΠ²ΠΊΠ° ΠΎΡΡ‚Π°Π²Π°Π»Π°ΡΡŒ ΠΎΡ‚Π½ΠΎΡΠΈΡ‚Π΅Π»ΡŒΠ½ΠΎ ΠΌΠ΅Π΄Π»Π΅Π½Π½ΠΎΠΉ. Одна Ρ‡Π°ΡΡ‚ΡŒ экспСрСмСнтов ΠΏΡ€ΠΎΠ²ΠΎΠ΄ΠΈΠ»Π°ΡΡŒ Π½Π° локальной машинС с Nvidia 3060ti mobile, Π° вторая Π½Π° ΡƒΠ΄Π°Π»Π΅Π½Π½ΠΎΠΉ машинС.

Для сравнСния Π΄Π²ΡƒΡ… Ρ‚ΠΈΠΏΠΎΠ² ΠΌΠΎΠ΄Π΅Π»Π΅ΠΉ, посмотрим Π½Π° ΡΠΊΠΎΡ€ΠΎΡΡ‚ΡŒ сходимости трансформСра (TF) с ΠΏΠ°Ρ€Π°ΠΌΠ΅Ρ‚Ρ€ΠΎΠΌ $L = 12$ ΠΈ Looped TFs с ΠΏΠ°Ρ€Π°ΠΌΠ΅Ρ‚Ρ€Π°ΠΌΠΈ $L = 1; b = {5, 10, 20, 25}; T= {10, 20}$. Π‘Ρ‹Π»ΠΈ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Π½Ρ‹ ΡΠ»Π΅Π΄ΡƒΡŽΡ‰ΠΈΠ΅ ΠΏΠ°Ρ€Π°ΠΌΠ΅Ρ‚Ρ€Ρ‹ Heads=4, dims=10, points=31. На Π³Ρ€Π°Ρ„ΠΈΠΊΠ΅ квадратичная ошибка ΠΌΠ°ΡΡˆΡ‚Π°Π±ΠΈΡ€ΠΎΠ²Π°Π½Π° Π½Π° Ρ€Π°Π·ΠΌΠ΅Ρ€Π½ΠΎΡΡ‚ΡŒ рСгрСссии $loss_{scaled} = \frac{loss}{d}$.

Как ΠΌΠΎΠΆΠ½ΠΎ Π²ΠΈΠ΄Π΅Ρ‚ΡŒ ΠΈΠ· Π³Ρ€Π°Ρ„ΠΈΠΊΠΎΠ², Looped TFs ΠΏΡ€ΠΈ ΡƒΠ²Π΅Π»ΠΈΡ‡Π΅Π½ΠΈΠΈ $ b $ Π΄Π°Π΅Ρ‚ ΡƒΠ»ΡƒΡ‡ΡˆΠ΅Π½ΠΈΠ΅ ΠΌΠ΅Ρ‚Ρ€ΠΈΠΊ. ΠŸΡ€ΠΈ количСствС ΠΏΠ°Ρ€Π°ΠΌΠ΅Ρ‚Ρ€ΠΎΠ² Π² 12 Ρ€Π°Π· мСньшим, Ρ‡Π΅ΠΌ Ρƒ ΠΎΠ±Ρ‹Ρ‡Π½ΠΎΠ³ΠΎ трансформСра, ΠΎΠ½ ΠΏΠΎΠΊΠ°Π·Ρ‹Π²Π°Π΅Ρ‚ сопоставимыС с ΠΎΠ±Ρ‹Ρ‡Π½Ρ‹ΠΌ трансформСром ΠΏΠΎΠΊΠ°Π·Π°Ρ‚Π΅Π»ΠΈ.

Π˜Ρ‚Π΅Ρ€Π°Ρ‚ΠΈΠ²Π½Ρ‹Π΅ свойства

Π‘Ρ€Π°Π²Π½ΠΈΠΌ Ρ‚ΠΎΡ‡Π½ΠΎΡΡ‚ΡŒ ΠΌΠΎΠ΄Π΅Π»Π΅ΠΉ ΠΈ посмотрим Π½Π° ΠΈΡ… ΠΏΠΎΠ²Π΅Π΄Π΅Π½ΠΈΠ΅ Π½Π° Ρ€Π°Π·Π½Ρ‹Ρ… итСрациях (Π² дальнСйшСм Π΄Π°Π½Π½Ρ‹ΠΉ ΠΌΠ΅Ρ‚ΠΎΠ΄ Π±ΡƒΠ΄Π΅Ρ‚ использован Π½ΠΈ ΠΎΠ΄ΠΈΠ½ Ρ€Π°Π·). Для этого ΠΎΠ±ΡƒΡ‡ΠΈΠΌ Looped TFs со значСниями $b={5, 10, 20}; T={ 20, 10}$ ΠΈ посмотрим Π½Π° ΠΈΡ… ΡΡ…ΠΎΠ΄ΠΈΠΌΠΎΡΡ‚ΡŒ ΠΏΡ€ΠΈ Π±ΠΎΠ»ΡŒΡˆΠΈΡ… $b$.

alt text alt text

Из Π³Ρ€Π°Ρ„ΠΈΠΊΠ° ΠΌΠΎΠΆΠ΅ΠΌ Π²ΠΈΠ΄Π΅Ρ‚ΡŒ, Ρ‡Ρ‚ΠΎ ΠΏΡ€ΠΈ большСм $b$ Looped TF ΠΏΠΎΠΊΠ°Π·Ρ‹Π²Π°Π΅Ρ‚ сСбя Π»ΡƒΡ‡ΡˆΠ΅ ΠΈ Ρ€Π΅Π·ΡƒΠ»ΡŒΡ‚Π°Ρ‚Ρ‹ ΠΌΠΎΠ΄Π΅Π»ΠΈ становятся Π±ΠΎΠ»Π΅Π΅ ΡΡ‚Π°Π±ΠΈΠ»ΡŒΠ½Ρ‹ΠΌΠΈ.
ЭкспСримСнты ΠΏΡ€ΠΎΠ²ΠΎΠ΄ΠΈΠ»ΠΈΡΡŒ Π² Π±Π»ΠΎΠΊΠ½ΠΎΡ‚Π΅ experiment_schedule.ipynb.

Π”ΠΎΠΏΠΎΠ»Π½ΠΈΡ‚Π΅Π»ΡŒΠ½ΠΎ

Появилась ΡΠ»Π΅Π΄ΡƒΡŽΡ‰Π°Ρ Π³ΠΈΠΏΠΎΡ‚Π΅Π·Π°:

Π“ΠΈΠΏΠΎΡ‚Π΅Π·Π°

Π’Ρ€Π΅Π½ΠΈΡ€ΠΎΠ²ΠΊΠ° с использованиСм ΡˆΠ΅Π΄ΡƒΠ»ΠΈΠ½Π³Π° (ΠΏΠΎ ΠΏΠ°Ρ€Π°ΠΌΠ΅Ρ‚Ρ€Ρƒ $b$) ΠΌΠΎΠΆΠ΅Ρ‚ Π΄Π°Ρ‚ΡŒ Π»ΡƒΡ‡ΡˆΡƒΡŽ ΡΡ…ΠΎΠ΄ΠΈΠΌΠΎΡΡ‚ΡŒ ΠΏΡ€ΠΈ ΡƒΠ²Π΅Π»ΠΈΡ‡Π΅Π½ΠΈΠΈ ΠΏΠ°Ρ€Π°ΠΌΠ΅Ρ‚Ρ€a $b$ Π½Π° этапС Π²Π°Π»ΠΈΠ΄Π°Ρ†ΠΈΠΈ.

Однако Π² процСссС экспСримСнта со слабыми модСлями (n_embs=128), это ΠΏΠΎΠ΄Ρ‚Π²Π΅Ρ€Π΄ΠΈΠ»ΠΎΡΡŒ Ρ‚ΠΎΠ»ΡŒΠΊΠΎ частично. ΠŸΡ€ΠΈ Ρ‚Ρ€Π΅Π½ΠΈΡ€ΠΎΠ²ΠΊΠ΅ с Ρ€Π°Π·Π½Ρ‹ΠΌ $b$, Π½Π° большСм количСствС ΠΈΡ‚Π΅Ρ€Π°Ρ†ΠΈΠΉ ΠΏΡ€ΠΈ $T=20$ модСль Π΄Π°Π΅Ρ‚ ΠΌΠ΅Π½ΡŒΡˆΡƒΡŽ ΠΎΡˆΠΈΠ±ΠΊΡƒ. Однако ΠΏΡ€ΠΈ $T=10$ Π΄Π°Π½Π½ΠΎΠ΅ ΠΏΡ€Π°Π²ΠΈΠ»ΠΎ Π½Π΅ выполняСтся.
ΠžΠΏΡ‹Ρ‚Ρ‹ ΠΏΡ€ΠΎΠ²ΠΎΠ΄ΠΈΠ»ΠΈΡΡŒ Π² Π±Π»ΠΎΠΊΠ½ΠΎΡ‚Π΅ experiment_shedule.ipynb ΠΈ Π² Π±Π»ΠΎΠΊΠ½ΠΎΡ‚Π΅ experiment_shedule_2.ipynb.

Из Π³Ρ€Π°Ρ„ΠΈΠΊΠΎΠ² Π²Ρ‹ΡˆΠ΅ ΠΌΠΎΠΆΠ½ΠΎ Π²ΠΈΠ΄Π΅Ρ‚ΡŒ, Ρ‡Ρ‚ΠΎ, Π² ΠΎΡ‚Π»ΠΈΡ‡ΠΈΠΈ ΠΎΡ‚ ΠΌΠΎΠ΄Π΅Π»Π΅ΠΉ с ΠΏΠ°Ρ€Π°ΠΌΠ΅Ρ‚Ρ€Π°ΠΌΠΈ $b=5; b=10; b=15$, Ρƒ ΠΌΠΎΠ΄Π΅Π»ΠΈ с Π²Π°Ρ€ΡŒΠΈΡ€ΠΎΠ²Π°Π½ΠΈΠ΅ΠΌ $b=5-10; b=5-15$ Π½Π° этапС Π²Π°Π»ΠΈΠ΄Π°Ρ†ΠΈΠΈ ΠΏΠΎΠΊΠ°Π·Π°Ρ‚Π΅Π»ΠΈ точности сильно разнятся. Π’Π°ΠΊΠΆΠ΅ Π±Ρ‹Π»ΠΈ протСстированы ΠΌΠΎΠ΄Π΅Π»ΠΈ с Ρ€Π°Π·ΠΌΠ΅Ρ€Π½ΠΎΡΡ‚ΡŒΡŽ n_embs=256 - ΠΌΡ‹ ΡƒΠ²Π΅Π»ΠΈΡ‡ΠΈΠ»ΠΈ Ρ€Π°Π·ΠΌΠ΅Ρ€Π½ΠΎΡΡ‚ΡŒ ΠΌΠΎΠ΄Π΅Π»Π΅ΠΉ Π² Π΄Π²Π° Ρ€Π°Π·Π° ΠΎΡ‚Π½ΠΎΡΠΈΡ‚Π΅Π»ΡŒΠ½ΠΎ ΠΏΡ€Π΅Π΄Ρ‹Π΄ΡƒΡ‰ΠΈΡ…, ΠΎΠ΄Π½Π°ΠΊΠΎ это Π½Π΅ ΠΈΠ·ΠΌΠ΅Π½ΠΈΠ½ΠΈΠ»ΠΎ полоТСния. Π’ΠΎΠ·ΠΌΠΎΠΆΠ½ΠΎ, Π΄Π°Π½Π½Ρ‹Π΅ Ρ€Π΅Π·ΡƒΠ»ΡŒΡ‚Π°Ρ‚Ρ‹ связаны с Ρ‚Π΅ΠΌ, Ρ‡Ρ‚ΠΎ модСль пытаСтся ΠΏΠΎΠ΄ΡΡ‚Ρ€ΠΎΠΈΡ‚ΡŒΡΡ ΠΏΠΎΠ΄ Ρ€Π°Π·Π½ΠΎΠ΅ количСство ΠΈΡ‚Π΅Ρ€Π°Ρ†ΠΈΠΉ Π²ΠΎ врСмя обучСния.

N Ρ‚ΠΎΠΊΠ΅Π½ΠΎΠ²

ΠŸΡ€ΠΎΠ²Π΅Ρ€ΠΈΠΌ Π³ΠΈΠΏΠΎΡ‚Π΅Π·Ρƒ:

Π“ΠΈΠΏΠΎΡ‚Π΅Π·Π°

МодСль ΠΈΠΌΠ΅Π΅Ρ‚ Π²ΠΎΠ·ΠΌΠΎΠΆΠ½ΠΎΡΡ‚ΡŒ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚ΡŒ Ρ‡Π°ΡΡ‚ΡŒ Ρ‚ΠΎΠΊΠ΅Π½ΠΎΠ² ΠΊΠ°ΠΊ Ρ…Ρ€Π°Π½ΠΈΠ»ΠΈΡ‰Π΅ ΠΈΠ½Ρ„ΠΎΡ€ΠΌΠ°Ρ†ΠΈΠΈ с ΠΏΡ€Π΅Π΄Ρ‹Π΄ΡƒΡ‰Π΅Π³ΠΎ шага.

ΠŸΠΎΡΡ‚Π°Π½ΠΎΠ²ΠΊΠ° экспСримСнтов. Π‘ΡƒΠ΄Π΅ΠΌ ΡƒΠ±ΠΈΡ€Π°Ρ‚ΡŒ ΠΊΠ°ΠΊ $n$-ΠΏΠ΅Ρ€Π²Ρ‹Ρ…, Ρ‚Π°ΠΊ ΠΈ $n$-послСдних Ρ‚ΠΎΠΊΠ΅Π½ΠΎΠ² Π½Π° ΠΎΡ‚Π΄Π΅Π»ΡŒΠ½ΠΎ ΠΎΠ±ΡƒΡ‡Π΅Π½Π½Ρ‹Ρ… модСлях с Ρ€Π°Π·Π½Ρ‹ΠΌ $T$. Π“Ρ€Π°Ρ„ΠΈΠΊΠΈ Π±ΡƒΠ΄Π΅ΠΌ ΡΡ‚Ρ€ΠΎΠΈΡ‚ΡŒ ΡΠ»Π΅Π΄ΡƒΡŽΡ‰ΠΈΠΌ ΠΎΠ±Ρ€Π°Π·ΠΎΠΌ: ΠΏΠΎ оси абсцисс - количСство ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΠ΅ΠΌΡ‹Ρ… Ρ‚ΠΎΠΊΠ΅Π½ΠΎΠ², Π° ΠΏΠΎ оси ΠΎΡ€Π΄ΠΈΠ½Π°Ρ‚ - квадратичная ошибка.

ΠŸΠΎΠΏΡ€ΠΎΠ±ΡƒΠ΅ΠΌ Π±Ρ€Π°Ρ‚ΡŒ N послСдних Ρ‚ΠΎΠΊΠ΅Π½ΠΎΠ²

Π§Ρ‚ΠΎΠ±Ρ‹ ΠΏΠΎΠ½ΡΡ‚ΡŒ, насколько ΠΌΡ‹ ΠΌΠΎΠΆΠ΅ΠΌ ΠΎΠ±Ρ€Π΅Π·Π°Ρ‚ΡŒ количСство Ρ‚ΠΎΠΊΠ΅Π½ΠΎΠ², ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Π΅ ΠΏΠΎΠ΄Π°ΡŽΡ‚ΡΡ Π² модСль, замаскируСм Ρ‡Π°ΡΡ‚ΡŒ ΠΈΠ· Π½ΠΈΡ…, ΠΈ посмотрим Π½Π° ΠΌΠ΅Ρ‚Ρ€ΠΈΠΊΠΈ. МодСли ΠΎΠ±ΡƒΡ‡Π°Π»ΠΈΡΡŒ с ΠΏΠ°Ρ€Π°ΠΌΠ΅Ρ‚Ρ€Π°ΠΌΠΈ $b = {5, 10, 20}; T = {10, 20}$ ΠΏΡ€ΠΈ количСствС шагов Ρ€Π°Π²Π½Ρ‹ΠΌ 20000.

На Π³Ρ€Π°Ρ„ΠΈΠΊΠ°Ρ… Π½ΠΈΠΆΠ΅ ΠΌΡ‹ ΠΌΠΎΠΆΠ΅ΠΌ Π²ΠΈΠ΄Π΅Ρ‚ΡŒ Π²ΠΏΠΎΠ»Π½Π΅ ΠΎΠΆΠΈΠ΄Π°Π΅ΠΌΡ‹ΠΉ Ρ€Π΅Π·ΡƒΠ»ΡŒΡ‚Π°Ρ‚ - для ΠΌΠΎΠ΄Π΅Π»Π΅ΠΉ ΠΎΠ±ΡƒΡ‡Π΅Π½Π½Ρ‹Ρ… с ΠΏΠ°Ρ€Π°ΠΌΠ΅Ρ‚Ρ€Π°ΠΌΠΈ $b = {5, 10, 20}; T = {10, 20}$ Ρ‚ΠΎΡ‡Π½ΠΎΡΡ‚ΡŒ ΡƒΡ…ΡƒΠ΄ΡˆΠ°Π΅Ρ‚ΡΡ вмСстС с ΡƒΠΌΠ΅Π½ΡŒΡˆΠ΅Π½ΠΈΠ΅ΠΌ количСства Ρ‚ΠΎΠΊΠ΅Π½ΠΎΠ², ΠΏΠΎΡΡ‚ΡƒΠΏΠ°ΡŽΡ‰ΠΈΡ… Π½Π° Π²Ρ…ΠΎΠ΄.

Π’Π°ΠΊΠΆΠ΅ интСрСсно, Ρ‡Ρ‚ΠΎ ΠΏΡ€ΠΈ ΡƒΠ²Π΅Π»ΠΈΡ‡Π΅Π½ΠΈΠΈ количСства ΠΈΡ‚Π΅Ρ€Π°Ρ†ΠΈΠΉ ΠΏΡ€ΠΈ инфСрСнсС ΠΌΡ‹ ΠΏΠΎΠ»ΡƒΡ‡Π°Π΅ΠΌ Ρ‚Π°ΠΊΡƒΡŽ ΠΆΠ΅ ΠΎΡˆΠΈΠ±ΠΊΡƒ Π½Π° ΠΊΠ°ΠΆΠ΄ΠΎΠΌ этапС отбрасывания $n$ Ρ‚ΠΎΠΊΠ΅Π½ΠΎΠ². МоТно ΡΠ΄Π΅Π»Π°Ρ‚ΡŒ Π²Ρ‹Π²ΠΎΠ΄, Ρ‡Ρ‚ΠΎ ΠΎΠ³Ρ€Π°Π½ΠΈΡ‡Π΅Π½ΠΈΠ΅ количСства ΠΏΠΎΠ΄Π°Π²Π°Π΅ΠΌΡ‹Ρ… с ΠΊΠΎΠ½Ρ†Π° Ρ‚ΠΎΠΊΠ΅Π½ΠΎΠ² сильно влияСт Π½Π° качСство. Но Ρ‡Ρ‚ΠΎ Ссли Π±Ρ€Π°Ρ‚ΡŒ $n$ ΠΏΠ΅Ρ€Π²Ρ‹Ρ… Ρ‚ΠΎΠΊΠ΅Π½ΠΎΠ²?

ΠŸΠΎΠΏΡ€ΠΎΠ±ΡƒΠ΅ΠΌ Π±Ρ€Π°Ρ‚ΡŒ N ΠΏΠ΅Ρ€Π²Ρ‹Ρ… Ρ‚ΠΎΠΊΠ΅Π½ΠΎΠ²

ΠŸΠΎΠΏΡ€ΠΎΠ±ΡƒΠ΅ΠΌ Π·Π°ΠΌΠ°ΡΠΊΠΈΡ€ΠΎΠ²Π°Ρ‚ΡŒ всС Ρ‚ΠΎΠΊΠ΅Π½Ρ‹ ΠΊΡ€ΠΎΠΌΠ΅ $n$ ΠΏΠ΅Ρ€Π²Ρ‹Ρ… ΠΈ посмотрим Π½Π° ΠΌΠ΅Ρ‚Ρ€ΠΈΠΊΠΈ ΠΌΠΎΠ΄Π΅Π»Π΅ΠΉ.

Как ΠΌΠΎΠΆΠ΅ΠΌ Π²ΠΈΠ΄Π΅Ρ‚ΡŒ, ΠΎΡ‰ΡƒΡ‚ΠΈΠΌΠΎΠΉ Ρ€Π°Π·Π½ΠΈΡ†Ρ‹ это Π½Π΅ Π΄Π°Π»ΠΎ, Π²ΠΈΠ΄ΠΈΠΌΠΎ для Π·Π°Ρ†ΠΈΠΊΠ»Π΅Π½Π½Ρ‹Ρ… трансформСров ΠΏΠ΅Ρ€Π²Ρ‹Π΅ ΠΈ послСдниС Ρ‚ΠΎΠΊΠ΅Π½Ρ‹ ΠΈΠΌΠ΅ΡŽΡ‚ ΡΡ…ΠΎΠΆΡƒΡŽ Π²Π°ΠΆΠ½ΠΎΡΡ‚ΡŒ. МСньшСС количСство Ρ‚ΠΎΠΊΠ΅Π½ΠΎΠ² Π½Π΅Π³Π°Ρ‚ΠΈΠ²Π½ΠΎ влияСт Π½Π° ΠΈΡ‚ΠΎΠ³ΠΎΠ²Ρ‹Π΅ ΠΏΠΎΠΊΠ°Π·Π°Ρ‚Π΅Π»ΠΈ ΠΌΠΎΠ΄Π΅Π»ΠΈ. МоТно ΡΠ΄Π΅Π»Π°Ρ‚ΡŒ Π²Ρ‹Π²ΠΎΠ΄ Ρ‡Ρ‚ΠΎ исходная Π³ΠΈΠΏΠΎΡ‚Π΅Π·Π° Π²Π΅Ρ€Π½Π°, Π΄ΠΎΠΏΠΎΠ»Π½ΠΈΡ‚Π΅Π»ΡŒΠ½Ρ‹Π΅ Ρ‚ΠΎΠΊΠ΅Π½Ρ‹ Π½Π° Π²Ρ…ΠΎΠ΄Π΅ Π΄Π΅ΠΉΡΡ‚Π²ΠΈΡ‚Π΅Π»ΡŒΠ½ΠΎ ΠΏΠΎΠ·Π²ΠΎΠ»ΡΡŽΡ‚ ΠΌΠΎΠ΄Π΅Π»ΠΈ ΠΎΠ±ΡƒΡ‡Π°Ρ‚ΡŒΡΡ для хранСния ΠΈΠ½Ρ„ΠΎΡ€ΠΌΠ°Ρ†ΠΈΠΈ ΠΎ Ρ‚ΠΎΠΊΠ΅Π½Π°Ρ… с ΠΏΡ€Π΅Π΄Ρ‹Π΄ΡƒΡ‰Π΅ΠΉ ΠΈΡ‚Π΅Ρ€Π°Ρ†ΠΈΠΈ. ЭкспСримСнты ΠΏΡ€ΠΎΠ²ΠΎΠ΄ΠΈΠ»ΠΈΡΡŒ Π² Π±Π»ΠΎΠΊΠ½ΠΎΡ‚Π°Ρ… experiment_last_n_tokens.ipynb ΠΈ experiment_first_n_tokens.ipynb.

Π”ΠΎΠΏΠΎΠ»Π½Π΅Π½ΠΈΠ΅

Π’ Ρ€Π΅Π·ΡƒΠ»ΡŒΡ‚Π°Ρ‚Π΅ провСдСния экспСримСнтов ΠΏΡ€ΠΎΡΠ²ΠΈΠ»ΠΎΡΡŒ интСрСсноС ΠΏΠΎΠ²Π΅Π΄Π΅Π½ΠΈΠ΅ ΠΊΠΎΡ‚ΠΎΡ€ΠΎΠ΅ ΠΏΠΎΡ‚Π΅Π½Ρ†ΠΈΠ°Π»ΡŒΠ½ΠΎ ΠΌΠΎΠΆΠ΅Ρ‚ вСсти ΠΊ ΠΏΠ΅Ρ€Π΅ΠΎΠ±ΡƒΡ‡Π΅Π½ΠΈΡŽ ΠΌΠΎΠ΄Π΅Π»ΠΈ, ΠΈ ΠΈΠ½ΠΎΠ³Π΄Π° ΠΎΡ‚ΡΡƒΡ‚ΡΡ‚Π²ΠΈΡŽ возмоТности Π°Π΄Π°ΠΏΡ‚ΠΈΡ€ΠΎΠ²Π°Ρ‚ΡŒΡΡ Π½Π° Π½ΠΎΠ²Ρ‹Π΅ Π΄Π°Π½Π½Ρ‹Π΅. ΠŸΡ€ΠΈ использовании 20-30 Ρ‚ΠΎΠΊΠ΅Π½ΠΎΠ² ΠΌΡ‹ Π½Π° ΠΎΠ±ΠΎΠΈΡ… Π³Ρ€Π°Ρ„ΠΈΠΊΠ°Ρ… ΠΌΠΎΠΆΠ΅ΠΌ Π½Π°Π±Π»ΡŽΠ΄Π°Ρ‚ΡŒ ΡƒΠΌΠ΅Π½ΡŒΡˆΠ΅Π½ΠΈΠ΅ точности, ΠΈ Π½Π° послСднСй Ρ‚ΠΎΡ‡ΠΊΠ΅ ΠΏΠ΅Ρ€Π΅Π΄ скачком Ρ€Π΅Π·ΠΊΠΎΠ΅ ΡƒΠ²Π΅Π»ΠΈΡ‡Π΅Π½ΠΈΠ΅ точности. Π”Π°Π½Π½ΠΎΠ΅ ΠΏΠΎΠ²Π΅Π΄Π½ΠΈΠ΅ стоит ΠΈΡΡΠ»Π΅Π΄ΠΎΠ²Π°Ρ‚ΡŒ Π½Π° Ρ€Π°Π·Π½ΠΎΠΉ размСрности, количСствС Ρ‚ΠΎΠΊΠ΅Π½ΠΎΠ² ΠΈ Π΄Ρ€ΡƒΠ³ΠΈΡ… Π·Π°Π΄Π°Ρ‡Π°Ρ… классификации (Π΄Π΅Ρ€Π΅Π²ΠΎ, MLP, ... ).

Π’Π°ΠΊΠΆΠ΅ ΠΏΡ€ΠΈ маскировании $n$ Ρ‚ΠΎΠΊΠ΅Π½ΠΎΠ² Π½Π° этапС обучания Π°Π»Π³ΠΎΡ€ΠΈΡ‚ΠΌ сходился Π·Π½Π°Ρ‡ΠΈΡ‚Π΅Π»ΡŒΠ½ΠΎ ΠΌΠ΅Π΄Π»Π΅Π½Π½Π΅Π΅ ΠΈΠ»ΠΈ Ρ‡Π°Ρ‰Π΅ всСго Π½Π΅ сходился вовсС. Π’ΠΎΠ·ΠΌΠΎΠΆΠ½ΠΎ, стоит ΠΈΠ·ΠΌΠ΅Π½ΠΈΡ‚ΡŒ ΠΏΠΎΠ΄Ρ…ΠΎΠ΄ ΠΊ ΠΌΠ°ΡΠΊΠΈΡ€ΠΎΠ²Π°Π½ΠΈΡŽ ΠΈ ΠΏΠΎΡΠΌΠΎΡ‚Ρ€Π΅Ρ‚ΡŒ, ΠΊΠ°ΠΊ модСль Π±ΡƒΠ΄Π΅Ρ‚ ΠΎΠ±ΡƒΡ‡Π°Ρ‚ΡŒΡΡ, Ссли ΠΊΠ°ΠΊΠΎΠΉ-Ρ‚ΠΎ ΠΏΡ€ΠΎΡ†Π΅Π½Ρ‚ Π΄Π°Π½Π½Ρ‹Ρ… Π·Π°ΡˆΡƒΠΌΠ»Π΅Π½.

Looped n-layers

ΠŸΡ€ΠΎΠ²Π΅Ρ€ΠΈΠΌ возмоТности Π·Π°Ρ†ΠΈΠΊΠ»Π΅Π½Π½Ρ‹Ρ… трансформСров ΠΏΡ€ΠΈ ΠΎΠ±ΡƒΡ‡Π΅Π½ΠΈΠΈ с количСством слоСв $L > 1$.

Основной экспСримСнт

Π‘ΡƒΠ΄Π΅ΠΌ ΠΎΠ±ΡƒΡ‡Π°Ρ‚ΡŒ Π·Π°Ρ†ΠΈΠΊΠ»Π΅Π½Π½Ρ‹Π΅ трансформСры с Π²Π°Ρ€ΡŒΠΈΡ€ΠΎΠ²Π°Π½ΠΈΠ΅ΠΌ $b, L, T$. На Π³Ρ€Π°Ρ„ΠΈΠΊΠ΅ Π½ΠΈΠΆΠ΅ ΠΌΠΎΠΆΠ΅ΠΌ Π²ΠΈΠ΄Π΅Ρ‚ΡŒ, Ρ‡Ρ‚ΠΎ ΡƒΠ²Π΅Π»ΠΈΡ‡Π΅Π½ΠΈΠ΅ количСства слоСв Ρƒ ΠΌΠΎΠ΄Π΅Π»ΠΈ Π΄Π°Π΅Ρ‚ Π»ΡƒΡ‡ΡˆΡƒΡŽ Ρ‚ΠΎΡ‡Π½ΠΎΡΡ‚ΡŒ c фиксированной запятой ΠΏΡ€ΠΈ ΡƒΠ²Π΅Π»ΠΈΡ‡Π΅Π½Π½ΠΎΠΌ количСствС ΠΈΡ‚Π΅Ρ€Π°Ρ†ΠΈΠΉ.

Π”Π°Π½Π½Ρ‹ΠΉ ΠΏΠ°Ρ‚Ρ‚Π΅Ρ€Π½ повторяСтся с Ρ€Π°Π·Π½Ρ‹ΠΌ ΠΏΠ°Ρ€Π°ΠΌΠ΅Ρ‚Ρ€ΠΎΠΌ $T$ ΠΈ ΠΏΡ€ΠΈ Ρ€Π°Π·Π½ΠΎΠΉ (случайной) ΠΈΠ½ΠΈΡ†ΠΈΠ°Π»ΠΈΠ·Π°Ρ†ΠΈΠΈ вСсов. ΠŸΡ€Π΅Π΄ΠΏΠΎΠ»ΠΎΠΆΠ΅Π½ΠΈΠ΅ состоит Π² Ρ‚ΠΎΠΌ, Ρ‡Ρ‚ΠΎ ΠΏΡ€ΠΈ ΡƒΠ²Π΅Π»ΠΈΡ‡Π΅Π½Π½ΠΎΠΌ $L$ Π²Π½ΡƒΡ‚Ρ€ΠΈ ΠΌΠΎΠ΄Π΅Π»ΠΈ ΠΏΠΎΡΠ²Π»ΡΡŽΡ‚ΡΡ Π±ΠΎΠ»Π΅Π΅ слоТныС зависимости. Π­Ρ‚ΠΈΠΌ ΠΌΠΎΠΆΠ΅Ρ‚ ΠΎΠ±ΡŠΡΡΠ½ΡΡ‚ΡŒΡΡ ΠΊΠ°ΠΊ Π±ΠΎΠ»Π΅Π΅ долгая ΡΡ…ΠΎΠ΄ΠΈΠΌΠΎΡΡ‚ΡŒ Π½Π° этапС Ρ‚Ρ€Π΅Π½ΠΈΡ€ΠΎΠ²ΠΊΠΈ, Ρ‚Π°ΠΊ ΠΈ Π»ΡƒΡ‡ΡˆΠΈΠ΅ значСния Π²ΠΎ врСмя Π²Π°Π»ΠΈΠ΄Π°Ρ†ΠΈΠΈ ΠΌΠΎΠ΄Π΅Π»ΠΈ.

Π‘Ρ…ΠΎΠ΄ΠΈΠΌΠΎΡΡ‚ΡŒ Π½Π° этапС Ρ‚Ρ€Π΅Π½ΠΈΡ€ΠΎΠ²ΠΊΠΈ

Из интСрСсного стоит ΠΎΡ‚ΠΌΠ΅Ρ‚ΠΈΡ‚ΡŒ, Ρ‡Ρ‚ΠΎ, Ρ‡Π΅ΠΌ большС слоСв Ρƒ ΠΌΠΎΠ΄Π΅Π»ΠΈ, Ρ‚Π΅ΠΌ большС шагов ΠΈΡ‚Π΅Ρ€Π°Ρ†ΠΈΠΈ Π΅ΠΉ Π½Π΅ΠΎΠ±Ρ…ΠΎΠ΄ΠΈΠΌΠΎ Ρ‡Ρ‚ΠΎΠ±Ρ‹ ΡΠΎΠΉΡ‚ΠΈΡΡŒ. К ΠΏΡ€ΠΈΠΌΠ΅Ρ€Ρƒ, для ΠΌΠΎΠ΄Π΅Π»Π΅ΠΉ с ΠΏΠ°Ρ€Π°ΠΌΠ΅Ρ‚Ρ€Π°ΠΌΠΈ $b=10; L=1$ срСднСквадратичная ошибка Π½Π°Ρ‡ΠΈΠ½Π°Π΅Ρ‚ ΡƒΠ±Ρ‹Π²Π°Ρ‚ΡŒ быстрСС ΠΊ ΠΌΠΈΠ½ΠΈΠΌΠ°Π»ΡŒΠ½ΠΎΠΌΡƒ Π½Π°Π±Π»ΡŽΠ΄Π°Π΅ΠΌΠΎΠΌΡƒ Ρ€Π΅Π·ΡƒΠ»ΡŒΡ‚Π°Ρ‚Ρƒ. Π’Π°ΠΊΠΆΠ΅ Π²Ρ‹Ρ…ΠΎΠ΄ Π½Π° ΠΏΠ»Π°Ρ‚ΠΎ достигаСтся быстрСС ΠΏΡ€ΠΈ $L=2$ ΠΈ сильно быстрСС, Ρ‡Π΅ΠΌ Ρƒ $L=4$. Π Π΅Π·ΡƒΠ»ΡŒΡ‚Π°Ρ‚Ρ‹ ΠΈΠ·ΠΎΠ±Ρ€Π°ΠΆΠ΅Π½Ρ‹ Π½Π° Π³Ρ€Π°Ρ„ΠΈΠΊΠ΅ Π½ΠΈΠΆΠ΅:

ΠŸΠΎΠ»ΡƒΡ‡Π°Π΅Ρ‚ΡΡ, Ρ‡Ρ‚ΠΎ ΡΡ…ΠΎΠ΄ΠΈΠΌΠΎΡΡ‚ΡŒ зависит Π½Π΅ Ρ‚ΠΎΠ»ΡŒΠΊΠΎ ΠΎΡ‚ числа ΠΈΡ‚Π΅Ρ€Π°Ρ†ΠΈΠΉ $b$, Π½ΠΎ ΠΈ ΠΎΡ‚ числа слоСв $L$. Π Π΅Π·ΡƒΠ»ΡŒΡ‚Π°Ρ‚Ρ‹ Π±Ρ‹Π»ΠΈ ΠΏΠΎΠ»ΡƒΡ‡Π΅Π½Ρ‹ ΠΏΡ€ΠΈ Ρ€Π°Π·Π½ΠΎΠΌ ΠΏΠ°Ρ€Π°ΠΌΠ΅Ρ‚Ρ€Π΅ $T$.

ЭкспСримСнт проводился Π² Π±Π»ΠΎΠΊΠ½ΠΎΡ‚Π΅ experiment_looped_n_layers.ipynb.

Π—Π°ΠΌΠ΅Π½ΠΈΠΌ Attention Π½Π° SSM

ΠŸΠΎΡΡ‚Π°Π½ΠΎΠ²ΠΊΠ° Π·Π°Π΄Π°Ρ‡ΠΈ

Π’ Π΄Π°Π½Π½ΠΎΠΉ сСрии экспСрСмСнтов ΠΏΠΎΠΏΡ€ΠΎΠ±ΡƒΠ΅ΠΌ ΠΈΡΡΠ»Π΅Π΄ΠΎΠ²Π°Ρ‚ΡŒ ΠΊΠ°ΠΊ Π²Π΅Π΄Π΅Ρ‚ сСбя Mamba (Π°Ρ€Ρ…ΠΈΡ‚Π΅ΠΊΡ‚ΡƒΡ€Π° ΠΈΠ· ΡΡ‚Π°Ρ‚ΡŒΠΈ Transformers are SSMs: Generalized Models and Efficient Algorithms Through Structured State Space Duality ). РСализация взята ΠΈΠ· Π±ΠΈΠ±Π»ΠΈΠΎΡ‚Π΅ΠΊΠΈ zetascale ΠΈ рСпозитория mamba-minimal. Π‘Ρ‚ΠΎΠΈΡ‚ Π·Π°ΠΌΠ΅Ρ‚ΠΈΡ‚ΡŒ, Ρ‡Ρ‚ΠΎ врСмя обучСния ΠΌΠΎΠ΄Π΅Π»ΠΈ сильно большС Π² ΠΎΡ‚Π»ΠΈΡ‡ΠΈΠ΅ стандартного Π±Π»ΠΎΠΊΠ° трансформСра, ΠΏΠΎΡΠΊΠΎΠ»ΡŒΠΊΡƒ Ρ‚Π°ΠΌ Π½Π΅ Ρ€Π΅Π°Π»ΠΈΠ·ΠΎΠ²Π°Π½Ρ‹ ΠΌΠ½ΠΎΠ³ΠΈΠ΅ ΠΌΠ΅Ρ‚ΠΎΠ΄Ρ‹ ΠΎΠΏΡ‚ΠΈΠΌΠΈΠ·Π°Ρ†ΠΈΠΈ. ВмСсто стандартного Π΄ΠΈΠ°ΠΏΠ°Π·ΠΎΠ½Π° Ρ‚Ρ€Π΅Π½ΠΈΡ€ΠΎΠ²ΠΊΠΈ $8 min - 20 min$ ΠΎΠ±ΡƒΡ‡Π΅Π½ΠΈΠ΅ ΠΌΠΎΠ΄Π΅Π»ΠΈ Π·Π°Π½ΠΈΠΌΠ°Π΅Ρ‚ $1 h - 8 h$.

ΠŸΡ€ΠΎΠ²Π΅Ρ€ΠΈΠΌ ΡΠ»Π΅Π΄ΡƒΡŽΡ‰ΡƒΡŽ Π³ΠΈΠΏΠΎΡ‚Π΅Π·Ρƒ:

Π“ΠΈΠΏΠΎΡ‚Π΅Π·Π°

ПовСдСниС ΠΌΠΎΠ΄Π΅Π»Π΅ΠΉ Π±ΡƒΠ΄Π΅Ρ‚ ΠΏΠΎΡ…ΠΎΠΆΠ΅ ΠΊΠ°ΠΊ ΠΏΡ€ΠΈ Ρ‚Ρ€Π΅Π½ΠΈΡ€ΠΎΠ²ΠΊΠ΅, Ρ‚Π°ΠΊ ΠΈ ΠΏΡ€ΠΈ Π²Π°Π»ΠΈΠ΄Π°Ρ†ΠΈΠΈ.

Mamba

Для построСния ΠΌΠΎΠ΄Π΅Π»ΠΈ Π·Π°ΠΌΠ΅Π½ΠΈΠΌ ΠΎΡΠ½ΠΎΠ²Π½ΡƒΡŽ модСль GPT-nano Π½Π° Π°Ρ€Ρ…ΠΈΡ‚Π΅ΠΊΡ‚ΡƒΡ€Ρƒ Mamba. Π‘Π°ΠΌΠ° рСализация находится Π² mamba_nano.py. Π‘Ρ‹Π»Π° ΠΎΠ±ΡƒΡ‡Π΅Π½Π° базовая модСль с Ρ€Π°Π·Π½Ρ‹ΠΌ количСством ΠΈΡ‚Π΅Ρ€Π°Ρ†ΠΈΠΉ. Π Π°Π·Π½ΠΎΠ΅ количСство шагов Π²Ρ‹Π·Π²Π°Π½ΠΎ большим Π²Ρ€Π΅ΠΌΠ΅Π½Π΅ΠΌ обучСния ΠΌΠΎΠ΄Π΅Π»ΠΈ, ΠΎΠ΄Π½Π°ΠΊΠΎ ΠΌΡ‹ всС Ρ€Π°Π²Π½ΠΎ ΠΌΠΎΠΆΠ΅ΠΌ ΠΏΡ€ΠΎΡΠ»Π΅Π΄ΠΈΡ‚ΡŒ основныС ΠΌΠΎΠΌΠ΅Π½Ρ‚Ρ‹, Ρ‚Π°ΠΊΠΈΠ΅ ΠΊΠ°ΠΊ Π²Ρ‹Ρ…ΠΎΠ΄ Π½Π° ΠΏΠ»Π°Ρ‚ΠΎ ΠΈ Π½Π°Ρ‡Π°Π»ΠΎ падСния Ρ†Π΅Π»Π΅Π²ΠΎΠΉ ΠΌΠ΅Ρ‚Ρ€ΠΈΠΊΠΈ. Π Π΅Π·ΡƒΠ»ΡŒΡ‚Π°Ρ‚Ρ‹ обучСния ΠΏΡ€ΠΈΠ²Π΅Π΄Π΅Π½Ρ‹ Π½Π° Π³Ρ€Π°Ρ„ΠΈΠΊΠ΅ Π½ΠΈΠΆΠ΅. Для Π±ΠΎΠ»Π΅Π΅ наглядного сравнСния использовалось ΡΠΊΠΎΠ»ΡŒΠ·ΡΡ‰Π΅Π΅ срСднСС.

Как ΠΌΡ‹ ΠΌΠΎΠΆΠ΅ΠΌ ΡƒΠ²ΠΈΠ΄Π΅Ρ‚ΡŒ модСль, проявляСт сСбя достаточно интСрСсно - Π½Π° ΠΏΠ΅Ρ€Π²Ρ‹Ρ… итСрациях квадратичная ошибка ΠΏΠ°Π΄Π°Π΅Ρ‚ сильно быстрСС, Ρ‡Π΅ΠΌ Ρƒ Looped TF, ΠΈ Π΄Π°Π»Π΅Π΅ ΠΈΠ΄Π΅Ρ‚ Π²Ρ‹Ρ…ΠΎΠ΄ Π½Π° ΠΏΠ»Π°Ρ‚ΠΎ, Π½ΠΎ нСсмотря Π½Π° эти ΠΏΠΎΠΊΠ°Π·Π°Ρ‚Π΅Π»ΠΈ, итоговая ошибка Ρƒ ΠΌΠΎΠ΄Π΅Π»Π΅ΠΉ Π½Π° Π±Π°Π·Π΅ Π°Ρ€Ρ…ΠΈΡ‚Π΅ΠΊΡ‚ΡƒΡ€Ρ‹ Mamba большС, Ρ‡Π΅ΠΌ Ρƒ ΠΌΠΎΠ΄Π΅Π»Π΅ΠΉ Π½Π° Π±Π°Π·Π΅ трансформСров. ΠŸΠΎΡΠΌΠΎΡ‚Ρ€Π΅Π² Π½Π° Π³Ρ€Π°Ρ„ΠΈΠΊ Π½ΠΈΠΆΠ΅, ΠΌΠΎΠΆΠ½ΠΎ ΠΏΡ€Π΅Π΄ΠΏΠΎΠ»ΠΎΠΆΠΈΡ‚ΡŒ, Ρ‡Ρ‚ΠΎ Mamba Π½Π°ΠΊΠ°ΠΏΠ»ΠΈΠ²Π°Π΅Ρ‚ большС ошибок Π² процСссС выполнСния (ΠΏΠΎ ΡΡ€Π°Π²Π½Π΅Π½ΠΈΡŽ с трансформСром, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹ΠΉ становится Π±ΠΎΠ»Π΅Π΅ ΡΡ‚Π°Π±ΠΈΠ»ΡŒΠ½Ρ‹ΠΌ).

Π˜Π½Ρ‚Π΅Ρ€Π΅ΡΠ½ΠΎ, Ρ‡Ρ‚ΠΎ зациклСнная Mamba ΠΏΠΎΠΊΠ°Π·Ρ‹Π²Π°Π΅Ρ‚ сСбя ΡΡ‚Π°Π±ΠΈΠ»ΡŒΠ½Π΅Π΅ Π½Π° большСм количСствС ΠΈΡ‚Π΅Ρ€Π°Ρ†ΠΈΠΉ ΠΏΡ€ΠΈ Π²Π°Π»ΠΈΠ΄Π°Ρ†ΠΈΠΈ. Основная Π³ΠΈΠΏΠΎΡ‚Π΅Π·Π° состоит Π² Ρ‚ΠΎΠΌ, Ρ‡Ρ‚ΠΎ сама Π°Ρ€Ρ…ΠΈΡ‚Π΅ΠΊΡ‚ΡƒΡ€Π° ΠΌΠΎΠ΄Π΅Π»ΠΈ Π±ΠΎΠ»Π΅Π΅ Π½Π°Ρ‚ΡƒΡ€Π°Π»ΡŒΠ½ΠΎ Ρ€Π°Π±ΠΎΡ‚Π°Π΅Ρ‚ Π² Ρ†ΠΈΠΊΠ»Π΅. ΠŸΠΎΡΠΊΠΎΠ»ΡŒΠΊΡƒ Mamba это sequence-based network, Π² Ρ‚Π΅ΠΎΡ€ΠΈΠΈ ΠΎΠ½Π° ΠΌΠΎΠΆΠ΅Ρ‚ Π±ΠΎΠ»Π΅Π΅ Π½Π°Ρ‚ΡƒΡ€Π°Π»ΡŒΠ½ΠΎ Ρ€Π°Π±ΠΎΡ‚Π°Ρ‚ΡŒ с Ρ†ΠΈΠΊΠ»Π°ΠΌΠΈ, ΠΎΠ΄Π½Π°ΠΊΠΎ этот тСзис стоит ΠΏΡ€ΠΎΠ²Π΅Ρ€ΠΈΡ‚ΡŒ ΠΎΡΠ½ΠΎΠ²Π°Ρ‚Π΅Π»ΡŒΠ½Π΅Π΅, Π½Π° Π΄Ρ€ΡƒΠ³ΠΈΡ… экспСримСнСтах.

ПослСсловиС

Для ΠΊΠΎΠ½Π΅Ρ‡Π½Ρ‹Ρ… Π²Ρ‹Π²ΠΎΠ΄ΠΎΠ² ΠΏΠΎ использованию Π΄Π°Π½Π½ΠΎΠΉ Π°Ρ€Ρ…ΠΈΡ‚Π΅ΠΊΡ‚ΡƒΡ€Ρ‹ ΠΈ Π΅Π΅ возмоТностСй с Π·Π°Ρ†ΠΈΠΊΠ»ΠΈΠ²Π°Π½ΠΈΠ΅ΠΌ стоит провСсти большС экспСрСмСнтов. Но Π²Π²ΠΈΠ΄Ρƒ сильного увСличСния Π²Ρ€Π΅ΠΌΠ΅Π½ΠΈ Ρ€Π°Π±ΠΎΡ‚Ρ‹, ΡΠ΄Π΅Π»Π°Ρ‚ΡŒ это тяТСло, Π½Π΅ прибСгая ΠΊ Ρ‚Π΅ΠΌ ΡƒΠ»ΡƒΡ‡ΡˆΠ΅Π½ΠΈΡΠΌ (ΠΎΠ΄Π½Π° ΠΈΠ· самых Π²Π°ΠΆΠ½Ρ‹Ρ… частСй ΡΡ‚Π°Ρ‚ΡŒΠΈ), ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Π΅ Π΄Π΅Π»Π°ΡŽΡ‚ ΠΌΠΎΠ΄Π΅Π»ΠΈ Mamba быстрСС ΠΏΡ€ΠΈ ΡƒΠ²Π΅Π»ΠΈΡ‡Π΅Π½ΠΈΠΈ контСкста. Однако, ΠΈΠ·Π½Π°Ρ‡Π°Π»ΡŒΠ½Π°Ρ Π³ΠΈΠΏΠΎΡ‚Π΅Π·Π° Π½Π΅ ΠΏΠΎΠ΄Ρ‚Π²Π΅Ρ€Π΄ΠΈΠ»Π°ΡΡŒ - модСль ΠΏΠΎΠΊΠ°Π·Π°Π»Π° сСбя слабСС ΠΎΡ‚Π½ΠΎΡΠΈΡ‚Π΅Π»ΡŒΠ½ΠΎ трансформСров, ΠΎΠ΄Π½Π°ΠΊΠΎ Π²ΠΎΠ·ΠΌΠΎΠΆΠ½Ρ‹ΠΉ Ρ‚ΡŽΠ½ΠΈΠ½Π³ ΠΏΠ°Ρ€Π°ΠΌΠ΅Ρ‚Ρ€ΠΎΠ² ΠΌΠΎΠΆΠ΅Ρ‚ ΠΏΠΎΠΌΠΎΡ‡ΡŒ ΠΌΠΎΠ΄Π΅Π»ΠΈ Π΄ΠΎΡΡ‚ΠΈΠ³Π½ΡƒΡ‚ΡŒ ΠΏΠΎΡ…ΠΎΠΆΠΈΡ… ΠΏΠΎΠΊΠ°Π·Π°Ρ‚Π΅Π»Π΅ΠΉ точности. И хотя модСль достигаСт мСньшСй точности ΠΏΠΎ ΡΡ€Π°Π²Π½Π΅Π½ΠΈΡŽ с трансформСрами, ΠΌΠΎΠΆΠ½ΠΎ ΡƒΠ²ΠΈΠ΄Π΅Ρ‚ΡŒ, Ρ‡Ρ‚ΠΎ Π΅Π΅ зациклСнная вСрсия Π²Π΅Π΄Π΅Ρ‚ сСбя Π·Π½Π°Ρ‡ΠΈΡ‚Π΅Π»ΡŒΠ½ΠΎ Π»ΡƒΡ‡ΡˆΠ΅, Π° это Π·Π½Π°Ρ‡ΠΈΡ‚, Ρ‡Ρ‚ΠΎ ΠΈ с Π΄Ρ€ΡƒΠ³ΠΈΠΌΠΈ Π°Ρ€Ρ…ΠΈΡ‚Π΅ΠΊΡ‚ΡƒΡ€Π°ΠΌΠΈ ΠΈΡ… Π·Π°Ρ†ΠΈΠΊΠ»Π΅Π½Π½Ρ‹Π΅ вСрсии ΠΌΠΎΠ³ΡƒΡ‚ Π΄Π°Ρ‚ΡŒ Π·Π½Π°Ρ‡ΠΈΡ‚Π΅Π»ΡŒΠ½Ρ‹ΠΉ прирост Π² точности.

НСмного измСним модСль

Одним ΠΈΠ· основых элСмСнтов Π°Ρ€Ρ…ΠΈΡ‚Π΅ΠΊΡ‚ΡƒΡ€Ρ‹ ΠΌΠΎΠ΄Π΅Π»ΠΈ являСтся Ρ†ΠΈΠΊΠ» с находящимся Π²Π½ΡƒΡ‚Ρ€ΠΈ трансформСром. Π’Π°ΠΊ ΠΊΠ°ΠΊ ΠΌΡ‹ стараСмся ΠΈΠΌΠΈΡ‚ΠΈΡ€ΠΎΠ²Π°Ρ‚ΡŒ ΠΈΡ‚Π΅Ρ€Π°Ρ‚ΠΈΠ²Π½Ρ‹Π΅ Π°Π»Π³ΠΎΡ€ΠΈΡ‚ΠΌΡ‹, ΠΏΠΎΠΏΡ€ΠΎΠ±ΡƒΠ΅ΠΌ ΠΏΠΎΠ·Π°ΠΈΠΌΡΡ‚Π²ΠΎΠ²Π°Ρ‚ΡŒ идСю ΠΈΠ· Π³Ρ€Π°Π΄ΠΈΠ΅Π½Ρ‚Π½ΠΎΠ³ΠΎ спуска. Π”Π°Π΄ΠΈΠΌ ΠΌΠΎΠ΄Π΅Π»ΠΈ Π½ΠΎΠ²Ρ‹ΠΉ ΠΏΠ°Ρ€Π°ΠΌΠ΅Ρ‚Ρ€ $lr \in \mathbb{R}$, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹ΠΉ Π±ΡƒΠ΄Π΅Ρ‚ ΠΎΠ±ΡƒΡ‡Π°Ρ‚ΡŒΡΡ вмСстС с модСлью. Π‘ΡƒΠ΄Π΅ΠΌ ΠΊΠ°ΠΆΠ΄ΡƒΡŽ ΠΈΡ‚Π΅Ρ€Π°Ρ†ΠΈΡŽ Ρ†ΠΈΠΊΠ»Π° ΡƒΠΌΠ½ΠΎΠΆΠ°Ρ‚ΡŒ исходныС Π΅ΠΌΠ±Π΅Π΄ΠΈΠ½Π³ΠΈ Π½Π° lr. ΠžΠ±ΡƒΡ‡ΠΈΠΌ для Π±ΠΎΠ»Π΅Π΅ справСдливого оцСнивания нСсколько ΠΌΠΎΠ΄Π΅Π»Π΅ΠΉ с ΠΏΠ°Ρ€Π°ΠΌΠ΅Ρ‚Ρ€Π°ΠΌΠΈ $b={5, 10, 15}$ ΠΈ ΠΌΠΎΠ΄Π΅Π»ΠΈ Π±Π΅Π· ΠΌΠΎΠ΄ΠΈΡ„ΠΈΠΊΠ°Ρ†ΠΈΠΈ Π½Π° этих ΠΆΠ΅ конфигурациях.

Π’ Ρ€Π΅Π·ΡƒΠ»ΡŒΡ‚Π°Ρ‚Π΅ ΠΌΡ‹ ΠΏΠΎΠ»ΡƒΡ‡ΠΈΠ»ΠΈ Π±ΠΎΠ»Π΅Π΅ Ρ‚ΠΎΡ‡Π½ΡƒΡŽ модСль. ΠŸΡ€ΠΈ Π±ΠΎΠ»ΡŒΡˆΠΈΡ… итСрациях, Π·Π° ΠΈΡΠΊΠ»ΡŽΡ‡Π΅Π½ΠΈΠ΅ΠΌ ΡˆΠ΅Π΄ΡƒΠ»ΠΈΠ½Π³Π°, Π³Π΄Π΅ Ρ€Π΅Π·ΡƒΠ»ΡŒΡ‚Π°Ρ‚ ΠΈΠ΄Π΅Π½Ρ‚ΠΈΡ‡Π΅Π½, ΠΌΡ‹ ΠΌΠΎΠΆΠ΅ΠΌ Π²ΠΈΠ΄Π΅Ρ‚ΡŒ, Ρ‡Ρ‚ΠΎ Π΄ΠΎΠΏΠΎΠ»Π½ΠΈΡ‚Π΅Π»ΡŒΠ½Π°Ρ информация ΠΎ Ρ†ΠΈΠΊΠ»Π΅ ΠΏΠΎΠΌΠΎΠ³Π°Π΅Ρ‚ ΡƒΠΌΠ΅Π½ΡŒΡˆΠΈΡ‚ΡŒ ΠΎΡˆΠΈΠ±ΠΊΡƒ послС обучСния. Π Π°Π·Π½ΠΈΡ†Π° Π² ΠΊΠ²Π°Π΄Ρ€Π°Ρ‚ΠΈΡ‡Π½ΠΎΠΉ ошибкС составляСт ~0.005, ~0.005, ~0.0024 для $b = {5, 10, 15}$ соотвСтствСнно.

b=5 b=10 b=15
Classic model 0.0067 0.0070 0.00328
LR model 0.0014 0.0019 0.00086

ΠŸΠΎΡΠΌΠΎΡ‚Ρ€ΠΈΠΌ Π½Π° Π³Ρ€Π°Ρ„ΠΈΠΊ обучСния ΠΌΠΎΠ΄Π΅Π»ΠΈ ΠΈ Π½Π° ΡΠΊΠΎΠ»ΡŒΠ·ΡΡ‰Π΅Π΅ срСднСС Π²ΠΎ врСмя Ρ‚Ρ€Π΅Π½ΠΈΡ€ΠΎΠ²ΠΊΠΈ. МоТСм ΡƒΠ²ΠΈΠ΄Π΅Ρ‚ΡŒ Ρ‡Ρ‚ΠΎ нашС Π΄ΠΎΠΏΠΎΠ»Π½Π΅Π½ΠΈΠ΅ ΠΊ Π°Ρ€Ρ…ΠΈΡ‚Π΅ΠΊΡ‚ΡƒΡ€Π΅ позволяСт ΡƒΡΠΊΠΎΡ€ΠΈΡ‚ΡŒ ΡΡ…ΠΎΠ΄ΠΈΠΌΠΎΡΡ‚ΡŒ Π°Π»Π³ΠΎΡ€ΠΈΡ‚ΠΌΠ°.

ЭкспСримСнт проводился Π² Π±Π»ΠΎΠΊΠ½ΠΎΡ‚Π΅ experiment_bonus.ipynb.

Π”ΠΎΠΏΠΎΠ»Π½ΠΈΡ‚Π΅Π»ΡŒΠ½Ρ‹Π΅ наблюдСния

ΠŸΠΎΡΠΊΠΎΠ»ΡŒΠΊΡƒ Looped TFs ΠΈΠΌΠ΅ΡŽΡ‚ прСимущСство Π²ΠΎ ΠΌΠ½ΠΎΠ³ΠΈΡ… ситуациях Π½Π°Π΄ ΠΎΠ±Ρ‹Ρ‡Π½Ρ‹ΠΌΠΈ TF с Ρ‚Π°ΠΊΠΈΠΌ ΠΆΠ΅ ΠΈΠ»ΠΈ большим количСством ΠΏΠ°Ρ€Π°ΠΌΠ΅Ρ‚Ρ€ΠΎΠ², исслСдованиС этого повСдСния ΠΌΠΎΠΆΠ΅Ρ‚ ΠΏΠΎΠΌΠΎΡ‡ΡŒ Π² ΠΏΠΎΠ½ΠΈΠΌΠ°Π½ΠΈΠΈ ΠΏΡ€ΠΈΡ€ΠΎΠ΄Ρ‹ Ρ‚Π°ΠΊΠΎΠ³ΠΎ повСдСния. Как ΠΎΠ΄ΠΈΠ½ ΠΈΠ· Π²Π°Ρ€ΠΈΠ°Π½Ρ‚ΠΎΠ², ΠΌΠΎΠΆΠ½ΠΎ ΠΏΠΎΡΠΌΠΎΡ‚Ρ€Π΅Ρ‚ΡŒ Π½Π° Π»Π°Π½Π΄ΡˆΠ°Ρ„Ρ‚ ΠΏΠΎΡ‚Π΅Ρ€ΡŒ ΠΌΠΎΠ΄Π΅Π»Π΅ΠΉ ΠΈ ΠΏΠΎΡΠΌΠΎΡ‚Ρ€Π΅Ρ‚ΡŒ Π½Π° ΠΈΡ… различия. ΠœΠ΅Ρ‚ΠΎΠ΄ взят ΠΈΠ· ΡΡ‚Π°Ρ‚ΡŒΠΈ Visualizing the Loss Landscape of Neural Nets.

Π‘Ρ‹Π»ΠΎ ΠΎΠ±ΡƒΡ‡Π΅Π½ΠΎ 5 ΠΌΠΎΠ΄Π΅Π»Π΅ΠΉ - ΠΎΠ΄ΠΈΠ½ Π·Π°Ρ†ΠΈΠΊΠ»Π΅Π½Π½Ρ‹ΠΉ трансформСр со значСниями $b = {5, 10, 15}; L= 1$, Π΅Ρ‰Π΅ ΠΎΠ΄ΠΈΠ½ со значСниями $b = 5; L= 2$ ΠΈ ΠΎΠ±Ρ‹Ρ‡Π½Ρ‹ΠΉ трансформСр со Π·Π½Π°Ρ‡Π΅Π½ΠΈΠ΅ΠΌ $L={2}$. ВрансформСр с ΠΎΠ΄Π½ΠΈΠΌ слоСм Π½Π΅ использовался Π²Π²ΠΈΠ΄Ρƒ нСсходимости Π½Π° Π·Π°Π΄Π°Ρ‡Π΅ Π»ΠΈΠ½Π΅ΠΉΠ½ΠΎΠΉ рСгрСссии. Π“Ρ€Π°Ρ„ΠΈΠΊΠΈ Π»Π°Π½Π΄ΡˆΠ°Ρ„Ρ‚ΠΎΠ² ΠΌΠΎΠΆΠ½ΠΎ ΡƒΠ²ΠΈΠ΄Π΅Ρ‚ΡŒ Π½ΠΈΠΆΠ΅.

МоТно ΡƒΠ²ΠΈΠ΄Π΅Ρ‚ΡŒ, Ρ‡Ρ‚ΠΎ Ρƒ Looped TF Π»Π°Π½Π΄ΡˆΠ°Ρ„Ρ‚ ΠΏΠΎΡ‚Π΅Ρ€ΡŒ Π±ΠΎΠ»Π΅Π΅ Ρ€Π°Π²Π½ΠΎΠΌΠ΅Ρ€Π½Ρ‹ΠΉ, Ρ‡Π΅ΠΌ Ρƒ ΠΎΠ±Ρ‹Ρ‡Π½ΠΎΠ³ΠΎ трансформСра. Π’Π°ΠΊΠΆΠ΅ Π² рядС случаСв Π»Π°Π½Π΄ΡˆΠ°Ρ„Ρ‚ ΠΈΠΌΠ΅Π΅Ρ‚ Π±ΠΎΠ»Π΅Π΅ ΠΊΡ€ΡƒΡ‚Ρ‹Π΅ спуски Π² окрСстности Ρ‚ΠΎΡ‡ΠΊΠΈ ΠΌΠΈΠ½ΠΈΠΌΡƒΠΌΠ°, Ρ‡Ρ‚ΠΎ ΠΌΠΎΠΆΠ΅Ρ‚ ΡΠ²ΠΈΠ΄Π΅Ρ‚Π΅Π»ΡŒΡΡ‚Π²ΠΎΠ²Π°Ρ‚ΡŒ ΠΎ Π±ΠΎΠ»Π΅Π΅ скорой сходимости. Π­Ρ‚ΠΎ ΠΆΠ΅ ΠΌΡ‹ ΠΌΠΎΠΆΠ΅ΠΌ Π²ΠΈΠ΄Π΅Ρ‚ΡŒ Π½Π° Π³Ρ€Π°Ρ„ΠΈΠΊΠ°Ρ… обучСния ΠΌΠΎΠ΄Π΅Π»ΠΈ. Π₯отя ΠΏΠΎ Π³Ρ€Π°Ρ„ΠΈΠΊΠ°ΠΌ нСльзя ΠΎΠ΄Π½ΠΎΠ·Π½Π°Ρ‡Π½ΠΎ Π³ΠΎΠ²ΠΎΡ€ΠΈΡ‚ΡŒ, Ρ‡Ρ‚ΠΎ влияСт Π½Π° Ρ‚Π°ΠΊΠΎΠ΅ Ρ…ΠΎΡ€ΠΎΡˆΠ΅Π΅ ΠΏΠΎΠ²Π΅Π΄Π΅Π½ΠΈΠ΅ Ρƒ Looped TF, Π½ΠΎ позволяСт Π΄Π°Ρ‚ΡŒ Π½Π΅ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Π΅ ΠΈΠ΄Π΅ΠΈ ΠΎΡ‚Π½ΠΎΡΠΈΡ‚Π΅Π»ΡŒΠ½ΠΎ Ρ‚ΠΎΠ³ΠΎ, Ρ‡Ρ‚ΠΎ ΠΌΠΎΠΆΠ΅Ρ‚ ΠΏΡ€ΠΎΠΈΡΡ…ΠΎΠ΄ΠΈΡ‚ΡŒ ΠΏΡ€ΠΈ ΠΎΠ±ΡƒΡ‡Π΅Π½ΠΈΠΈ ΠΌΠΎΠ΄Π΅Π»ΠΈ.

ВсС экспСримСнты ΠΏΡ€ΠΎΠ²ΠΎΠ΄ΠΈΠ»ΠΈΡΡŒ Π² Π½ΠΎΡƒΡ‚Π±ΡƒΠΊΠ΅ loss_surface.ipynb, 3Π΄ Π³Ρ€Π°Ρ„ΠΈΠΊΠΈ ΠΌΠΎΠΆΠ½ΠΎ ΡƒΠ²ΠΈΠ΄Π΅Ρ‚ΡŒ Ρ‚Π°ΠΌ ΠΆΠ΅ ΠΈΠ»ΠΈ Π² ΠΏΠ°ΠΏΠΊΠ΅ images.

Дискуссия ΠΈ Π·Π°ΠΊΠ»ΡŽΡ‡Π΅Π½ΠΈΠ΅

ΠœΡ‹ ΠΏΡ€ΠΎΠ²Π΅Π»ΠΈ ряд экспСрСмСнтов с Looped TF ΠΈ TF, Π²Π°Ρ€ΡŒΠΈΡ€ΠΎΠ²Π°Π»ΠΈ ΠΈΡ… ΠΏΠ°Ρ€Π°ΠΌΠ΅Ρ‚Ρ€Ρ‹ ΠΈ ΠΏΠΎΠΏΡ‹Ρ‚Π°Π»ΠΈΡΡŒ ΠΈΠ½Ρ‚Π΅Ρ€ΠΏΠ΅Ρ€Ρ‚ΠΈΡ€ΠΎΠ²Π°Ρ‚ΡŒ Π²Ρ‹Π²ΠΎΠ΄ ΠΌΠΎΠ΄Π΅Π»ΠΈ. МоТно ΡΠΊΠ°Π·Π°Ρ‚ΡŒ, Ρ‡Ρ‚ΠΎ Π·Π°Ρ†ΠΈΠΊΠ»Π΅Π½Π½Ρ‹Π΅ трансформСры ΠΏΠΎΠΊΠ°Π·Π°Π»ΠΈ свою ΡΡ„Ρ„Π΅ΠΊΡ‚ΠΈΠ²Π½ΠΎΡΡ‚ΡŒ Π² Π·Π°Π΄Π°Ρ‡Π°Ρ… Π»ΠΈΠ½Π΅ΠΉΠ½ΠΎΠΉ рСгрСссии. МногиС Π²Ρ‹Π²ΠΎΠ΄Ρ‹, сдСланныС Π² ΠΎΡ€ΠΈΠ³ΠΈΠ½Π°Π»ΡŒΠ½ΠΎΠΉ ΡΡ‚Π°Ρ‚ΡŒΠ΅, ΠΏΠΎΠ΄Ρ‚Π²Π΅Ρ€Π΄ΠΈΠ»ΠΈΡΡŒ. Π‘Ρ‹Π»ΠΎ выяснСно, Ρ‡Ρ‚ΠΎ ΠΏΡ€ΠΈ ΡƒΠ²Π΅Π»ΠΈΡ‡Π΅Π½ΠΈΠΈ числа слоСв ΠΌΠΎΠ΄Π΅Π»ΠΈ Π²Π΅Π»ΠΈ сСбя ΠΎΠΆΠΈΠ΄Π°Π΅ΠΌΠΎ, ΡƒΠ»ΡƒΡ‡ΡˆΠ°Ρ ΠΈΡ‚ΠΎΠ³ΠΎΠ²ΠΎΠ΅ качСство ΠΌΠ΅Ρ‚Ρ€ΠΈΠΊ, ΠΎΠ΄Π½Π°ΠΊΠΎ Ссли слоСв ΡΡ‚Π°Π½ΠΎΠ²ΠΈΠ»ΠΎΡΡŒ слишком ΠΌΠ½ΠΎΠ³ΠΎ, модСль ΡΡ…ΠΎΠ΄ΠΈΠ»Π°ΡΡŒ сильно дольшС (особСнно ΠΏΡ€ΠΈ ΡƒΠ²Π΅Π»ΠΈΡ‡Π΅Π½ΠΈΠΈ $b$). Π§Ρ‚ΠΎΠ±Ρ‹ это ΠΈΡΠΏΡ€Π°Π²ΠΈΡ‚ΡŒ, ΠΌΠΎΠΆΠ½ΠΎ ΠΏΠΎΠΏΡ€ΠΎΠ±ΠΎΠ²Π°Ρ‚ΡŒ ΠΈΠ·ΠΌΠ΅Π½ΠΈΡ‚ΡŒ Π°Ρ€Ρ…ΠΈΡ‚Π΅ΠΊΡ‚ΡƒΡ€Ρƒ ΠΌΠΎΠ΄Π΅Π»ΠΈ, Π΄ΠΎΠ±Π°Π²ΠΈΡ‚ΡŒ Π²Π½ΡƒΡ‚Ρ€Π΅Π½Π½ΠΈΠΉ ΡˆΠ΅Π΄ΡƒΠ»ΠΈΠ½Π³, Ρ‡Ρ‚ΠΎΠ±Ρ‹ динамичСски ΠΈΠ·ΠΌΠ΅Π½ΡΡ‚ΡŒ ΠΏΠ°Ρ€Π°ΠΌΠ΅Ρ‚Ρ€ $b$ Π½Π° этапС инфСрСнса ΠΌΠΎΠ΄Π΅Π»ΠΈ, ΠΈΠ»ΠΈ ΠΆΠ΅ вовсС Π²Ρ‹Π±ΠΈΡ€Π°Ρ‚ΡŒ количСство ΠΈΡ‚Π΅Ρ€Π°Ρ†ΠΈΠΉ динамичСски.

Π§Ρ‚ΠΎΠ±Ρ‹ ΡƒΠ»ΡƒΡ‡ΡˆΠΈΡ‚ΡŒ ΠΎΠ±ΠΎΠ±Ρ‰Π°ΡŽΡ‰ΠΈΠ΅ способности ΠΌΠΎΠ΄Π΅Π»ΠΈ, ΠΌΠΎΠΆΠ½ΠΎ провСсти большС экспСримСнтов с Π²Π°Ρ€ΡŒΠΈΡ€ΠΎΠ²Π°Π½ΠΈΠ΅ΠΌ $b$ Π½Π° этапС Ρ‚Ρ€Π΅Π½ΠΈΡ€ΠΎΠ²ΠΊΠΈ, это ΠΌΠΎΠΆΠ΅Ρ‚ привСсти ΠΊ ΡƒΠ»ΡƒΡ‡ΡˆΠ΅Π½ΠΈΡŽ Ρ€Π΅Π·ΡƒΠ»ΡŒΡ‚Π°Ρ‚Π°.

АрхитСктура Mamba ΠΈ Π΅Π΅ "Looped" вСрсия ΠΏΠΎΠΊΠ°Π·Π°Π»Π° сСбя ΠΌΠ½ΠΎΠ³ΠΎΠΎΠ±Π΅Ρ‰Π°ΡŽΡ‰Π΅, ΠΈ хотя Π½Π΅ ΠΏΠΎΠ»ΡƒΡ‡ΠΈΠ»ΠΎΡΡŒ провСсти всС Π½Π΅ΠΎΠ±Ρ…ΠΎΠ΄ΠΈΠΌΡ‹Π΅ экспСримСнты, Π²Π²ΠΈΠ΄Ρƒ Π΄ΠΎΠ»Π³ΠΎΠ³ΠΎ Π²Ρ€Π΅ΠΌΠ΅Π½ΠΈ Ρ‚Ρ€Π΅Π½ΠΈΡ€ΠΎΠ²ΠΊΠΈ, ΠΎΠ½Π° ΠΏΠΎΠΊΠ°Π·Π°Π»Π° сСбя достаточно Ρ…ΠΎΡ€ΠΎΡˆΠΎ, Ρ‡Ρ‚ΠΎΠ±Ρ‹ ΠΈΡΡΠ»Π΅Π΄ΠΎΠ²Π°Ρ‚ΡŒ Π½Π° Π½Π΅ΠΉ Π·Π°Π΄Π°Ρ‡Ρƒ In-Context learning Π² контСкстС ΠΌΠΎΠ΄Π΅Π»Π΅ΠΉ Universal Transformer.

Π‘Π°ΠΌΠ° ΠΆΠ΅ интСрпрСтация ΠΌΠΎΠ΄Π΅Π»Π΅ΠΉ Π²Ρ‹Π·Ρ‹Π²Π°Π΅Ρ‚ большой интСрСс. Π‘Ρ‚ΠΎΠΈΡ‚ Π±ΠΎΠ»Π΅Π΅ Π²Π½ΠΈΠΌΠ°Ρ‚Π΅Π»ΡŒΠ½ΠΎ ΠΈΠ·ΡƒΡ‡ΠΈΡ‚ΡŒ ΠΏΠΎΠ²Π΅Π΄Π΅Π½ΠΈΠ΅ ΠΌΠΎΠ΄Π΅Π»Π΅ΠΉ ΠΊΠ°ΠΊ ΠΈΡ‚Π΅Ρ€Π°Ρ‚ΠΈΠ²Π½ΠΎΠ³ΠΎ Π°Π»Π³ΠΎΡ€ΠΈΡ‚ΠΌΠ° Π² Π·Π°Π΄Π°Ρ‡Π΅ In-Context learning для Π±ΠΎΠ»Π΅Π΅ слоТных Π·Π°Π΄Π°Ρ‡, Ρ‚Π°ΠΊΠΈΡ… ΠΊΠ°ΠΊ языковоС ΠΌΠΎΠ΄Π΅Π»ΠΈΡ€ΠΎΠ²Π°Π½ΠΈΠ΅ (LM) ΠΈΠ»ΠΈ ΠΆΠ΅ ΠΊΠΎΠΌΠΏΡŒΡŽΡ‚Π΅Ρ€Π½ΠΎΠ΅ Π·Ρ€Π΅Π½ΠΈΠ΅ (CV).

About

Experimental implementation of "Looped Transformers are Better at Learning Learning Algorithms" showing superior performance with 12x fewer parameters. Includes complete environment setup, pre-trained weights, and extensive experiments comparing Looped TFs vs traditional Transformers for In-Context Learning.

Topics

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published