Insight ๐Ÿ˜Ž

LM์˜ context window, ๊ธธ์–ด์•ผ ํ• ๊นŒ? ์งง์•„์•ผ ํ• ๊นŒ? ๐Ÿ“๐Ÿคจ

Cartinoe 2023. 7. 26. 17:30

Newly spotlighted elements of LM โœจ

 LM์€ ์‹œ์‹œ๊ฐ๊ฐ ๋ณ€ํ™”ํ•ด๊ฐ€๊ณ  ์žˆ๋‹ค. ๋ฉฐ์น  ์ „์— ์ƒˆ๋กญ๊ฒŒ ๋ฐœํ‘œ๋œ ๋ชจ๋ธ์ด ์˜ค๋Š˜์—์„œ๋Š” ๊ทธ ๋ฉด๋ชจ๊ฐ€ ๋‚ฑ๋‚ฑ์ด ํŒŒ์•…๋˜์–ด ๋ถ€์กฑํ•œ ์ ๋“ค์ด๋‚˜ ๋‹จ์ ๋“ค์ด ์ง€์ ๋ฐ›๊ณ  ์žˆ๋Š” ์š”์ฆ˜์ด๋‹ค. ๐Ÿ˜ฅ ๊ทธ๋งŒํผ LM์€ ๊ทธ๊ฒƒ์ด ํŒŒ๋ผ๋ฏธํ„ฐ๋“  ๋ฐ์ดํ„ฐ๋“  ๋‹ค๋ฐฉ๋ฉด์œผ๋กœ ๋น ๋ฅด๊ฒŒ ๋ณ€ํ™”ํ•ด๋‚˜๊ฐ€๊ณ  ์žˆ๋Š”๋ฐ, ์ด๋ฒˆ ํฌ์ŠคํŒ…์—์„œ ๋‹ค๋ค„๋ณด๊ณ ์ž ํ•˜๋Š” ๋‚ด์šฉ์€ ์˜ค๋žœ ์‹œ๊ฐ„ ๋™์•ˆ ๋ณ„๋กœ ๊ฑด๋“œ๋ ค์ง€์ง€ ์•Š๋‹ค๊ฐ€ ์ตœ๊ทผ์— ์—ฌ๋Ÿฌ ์—ฐ๊ตฌ(Chen et al., 2023, Ding et al., 2023, Liu et al., 2023)๋ฅผ ํ†ตํ•ด ๋‹ค์‹œ ๊ฐ๊ด‘๋ฐ›๊ณ  ์žˆ๋Š” ๋‚ด์šฉ์ธ LM์˜ context window์— ๋Œ€ํ•ด์„œ ์–˜๊ธฐํ•ด๋ณด๊ณ ์ž ํ•œ๋‹ค! ๐Ÿ˜Š

 

https://www.aitimes.com/news/articleView.html?idxno=152588

 

What is the 'context window'? ๐Ÿค”

 ์‹œ์ž‘ํ•˜๊ธฐ์— ์•ž์„œ์„œ ์ด๋ฒˆ ํฌ์ŠคํŒ…์—์„œ ์ค‘์š”ํ•˜๊ฒŒ ๋‹ค๋ค„๋ณผ ๋‚ด์šฉ์ธ 'context window', ๊ณผ์—ฐ ๋ฌด์—‡์ธ๊ฑธ๊นŒ? ์ง์—ญ์„ ํ•ด๋ณด๋ฉด '๋ฌธ๋งฅ ์ฐฝ'์ด๋ผ๋Š” ๋ญ”๊ฐ€ ์•„๋ฆฌ์†กํ•œ ์˜๋ฏธ๋ฅผ ์–ป์„ ์ˆ˜ ์žˆ์„ ๊ฒƒ์ด๋‹ค. ๐Ÿ˜Š ์ด๊ฒƒ์ด ์‚ฌ๋žŒ์˜ ๊ด€์ ์—์„œ ๋ฐ”๋ผ๋ณด์•˜๊ธฐ์— ์ด์ƒํ–ˆ๋˜ ๊ฒƒ์ด์ง€ ๋ชจ๋ธ์˜ ๊ด€์ ์—์„œ ๋ณธ๋‹ค๋ฉด ์ง€๊ทนํžˆ ์ •์ƒ์ ์ธ ํ‘œํ˜„์ด๋ผ๊ณ  ํ•  ์ˆ˜ ์žˆ๋‹ค! ํ•˜์ง€๋งŒ, ์•„์ง ์šฐ๋ฆฌ๋Š” ์‚ฌ๋žŒ์ด๊ธฐ์— ์•„๋ฆฌ์†กํ•˜๊ธฐ๋งŒ ํ•  ํ…๋ฐ ์ฐจ๊ทผ์ฐจ๊ทผ ๋ชจ๋ธ์˜ ๊ด€์ ์—์„œ context window๋ฅผ ์•Œ์•„๊ฐ€ ๋ณด๋„๋ก ํ•˜์ž! ๐Ÿšฉ

 

 context window๋ฅผ ์ดํ•ดํ•˜๊ธฐ ์œ„ํ•ด์„œ๋Š” LM์ด text๋ฅผ ์–ด๋–ค ๋ฐฉ์‹์œผ๋กœ ์ดํ•ดํ•˜๋Š”์ง€๋ฅผ ์šฐ์„  ์ดํ•ดํ•ด์•ผ ํ•  ํ•„์š”๊ฐ€ ์žˆ๋‹ค. ์ด ์„ค๋ช…์„ ์œ„ํ•œ ์˜ˆ์‹œ ๋ฌธ์žฅ์œผ๋กœ ๋‹ค์Œ์˜ ๋ฌธ์žฅ์„ ์˜ˆ์‹œ๋กœ ์‚ฌ์šฉํ•˜๋„๋ก ํ•˜๊ฒ ๋‹ค.

 

'๋‚˜๋Š” ๊ฐ€๋ฐฉ์„ ๋ฉ”๊ณ  ์žˆ๋‹ค.'

 

 ๋จผ์ € ์‚ฌ๋žŒ์˜ ์ž…์žฅ์—์„œ ์ƒ๊ฐํ•ด๋ณด๋ฉด ๋ญ ์‚ฌ์‹ค ์ดํ•ดํ•˜๊ณ  ๋ถ„์„ํ•˜๊ณ  ํ•  ๊ฒƒ๋„ ์—†์ด ๊ทธ๋ƒฅ '์•„ ๊ฐ€๋ฐฉ์„ ๋ฉ”๊ณ  ์žˆ๊ตฌ๋‚˜~'๋ผ๊ณ  ๋ฐ”๋กœ ๊ฒฐ๋ก ์ด ๋‚˜์˜ฌ ์ˆ˜ ์žˆ์„ ๊ฒƒ์ด๋‹ค. ๐Ÿ˜„ ํ•˜์ง€๋งŒ LM์€ ๊ทธ๋Ÿฌํ•  ์ˆ˜ ์—†์œผ๋‹ˆ ์ด ๋ฌธ์žฅ์„ ์ฐฌ์ฐฌํžˆ ๋ณด๊ณ  ํ•˜๋‚˜ํ•˜๋‚˜ ๋œฏ์–ด๋ด์•ผ ํ•œ๋‹ค. ์ด๋•Œ ์ด ๋ฌธ์žฅ์˜ ์š”์†Œ๋ฅผ ํ•˜๋‚˜ํ•˜๋‚˜ ๋œฏ์–ด๋ณด๊ธฐ ์œ„ํ•ด ํ•„์š”ํ•œ ๊ฒƒ์ด ๋ฐ”๋กœ ๋ชจ๋ธ์ด ์‚ฌ์šฉํ•˜๋Š” ๋‹จ์–ด๋ผ๊ณ  ๋ถ€๋ฅผ ์ˆ˜ ์žˆ๋Š” 'Token(ํ† ํฐ)'์ด๋ผ๋Š” ๊ฒƒ์ด๋‹ค! ์‚ฌ์‹ค ์ด token์€ tokenizer์˜ ์ข…๋ฅ˜์— ๋”ฐ๋ผ์„œ ํ† ํฐํ™”๋˜๋Š” ๋ฐฉ์‹์ด ์ƒ์ดํ•œ๋ฐ ๊ฐ„๋‹จํ•˜๊ฒŒ word-level์˜ tokenizer(์‹ค์ œ๋กœ ์‚ฌ์šฉ๋˜๋Š” tokenizer๋Š” ํ›จ์”ฌ ๋” ๋ณต์žกํ•œ ๊ธฐ์ค€์„ ๊ฐ€์ง€๊ณ  ํ† ํฐํ™”๋ฅผ ์ง„ํ–‰ํ•ฉ๋‹ˆ๋‹ค)๋ฅผ ์‚ฌ์šฉํ•œ๋‹ค๊ณ  ํ–ˆ์„ ๋•Œ ์œ„์˜ ์˜ˆ์‹œ ๋ฌธ์žฅ์€ ๋‹ค์Œ๊ณผ ๊ฐ™์ด ํ† ํฐํ™”๊ฐ€ ๋  ์ˆ˜ ์žˆ๋‹ค.

 

['๋‚˜๋Š”', '๊ฐ€๋ฐฉ์„', '๋ฉ”๊ณ ', '์žˆ๋‹ค']

 

 ์ด๋ ‡๊ฒŒ ๋ณด๋‹ˆ ์ข€ ๋” ์ง๊ด€์ ์œผ๋กœ ๋ชจ๋ธ์ด ์–ด๋–ป๊ฒŒ text๋ฅผ ๋ฐ”๋ผ๋ณด๋Š”์ง€ ์ดํ•ดํ•  ์ˆ˜ ์žˆ์ง€ ์•Š๋Š”๊ฐ€? ๐Ÿ˜Š ๋ฌผ๋ก  ์ด๋ ‡๊ฒŒ ํ† ํฐํ™”๋œ token์„ ๊ฐ€์ง€๊ณ  ์ž์‹ ๋งŒ์˜ vocabulary์— ์ด ํ† ํฐ๋“ค์„ ์ €์žฅํ•ด ๋‘๊ณ  ๋“ฑ์žฅํ•  ๋•Œ๋งˆ๋‹ค ๋ถˆ๋Ÿฌ์™€์„œ ์“ฐ๊ณ  ํ•˜๋Š” ๋ณต์žกํ•œ ๊ณผ์ •๋“ค์„ ํ†ตํ•ด์„œ ์‚ฌ์šฉ๋˜๊ธฐ๋Š” ํ•˜์ง€๋งŒ ๋Œ€๋žต์ ์ธ ๊ฐœ์š”๋Š” ๋ฌธ์žฅ์„ ์ข€ ๋” ์„ธ๋ถ„ํ™”๋œ ํ˜•ํƒœ์†Œ ๋˜๋Š” ํŠน์ • ๋‹จ์œ„๋กœ ๋‚˜๋ˆ„์–ด์„œ ๋ฐ”๋ผ๋ณด๋Š” ๊ฒƒ์„ 'Tokenization(ํ† ํฐํ™”)'๋ผ๊ณ  ํ•œ๋‹ค. ์ด ๊ณผ์ •์„ ํ†ตํ•ด ๋‚˜์˜ค๋Š” ์ถœ๋ ฅ๋ฌผ์ด 'Token(ํ† ํฐ)'์ธ ๊ฒƒ์ด๋‹ค. 

 

 ์ž, ํ† ํฐ์— ๋Œ€ํ•ด์„œ ์•Œ์•„๋ดค์œผ๋‹ˆ ์ด์ œ ๋ณธ๊ฒฉ์ ์œผ๋กœ context window๊ฐ€ ๋ฌด์—‡์ธ์ง€ ์•Œ์•„๋ณผ ์‹œ๊ฐ„์ด๋‹ค! ๐Ÿ˜š ๊ทธ์ „์— context window๊ฐ€ ์–ด๋–จ ๋•Œ ์‚ฌ์šฉ๋˜๋Š” ๊ฒƒ์ธ์ง€์— ๋Œ€ํ•ด ๋จผ์ € ์•Œ์•„๋ณด๋„๋ก ํ•˜์ž. ๐Ÿ˜ (ํ˜„๊ธฐ์ฆ์ด ๋‚  ํ…Œ์ง€๋งŒ ๋ชจ๋‘ ๊ผญ ํ•„์š”ํ•œ ์ •๋ณด๋“ค์ด๋‹ˆ ์ฐธ๊ณ  ๋”ฐ๋ผ์™€ ์ค„ ์ˆ˜ ์žˆ๊ธธ ๋ฐ”๋ž๋‹ˆ๋‹ค!!) ์•„๊นŒ ์•ž์—์„œ ๋งํ–ˆ๋˜ ๊ฒƒ์ฒ˜๋Ÿผ ๋ชจ๋ธ์€ text๋ฅผ ๋ฐ›์•„๋“ค์—ฌ์„œ ํ† ํฐํ™”๋ฅผ ๊ฑฐ์น˜๊ณ  ๋ฌธ์žฅ์˜ ์˜๋ฏธ๋ฅผ ํ•ด์„ํ•˜๊ณ  ์ด๋ ‡๊ฒŒ ํ•ด์„๋œ ๋ฌธ์žฅ์„ ๊ฐ€์ง€๊ณ  ์ถœ๋ ฅ์„ ํ•ด๋‚ด๋Š” ์—ญํ• ์„ ํ•œ๋‹ค. ๊ทธ๋ ‡๋‹ค๋ฉด ๋ชจ๋ธ์ด text๋ฅผ ์–ด๋–ป๊ฒŒ ๋ฐ›์•„๋“ค์ผ ์ˆ˜ ์žˆ๋Š” ๊ฒƒ์ผ๊นŒ? ๊ทธ๋ฆฌ๊ณ  ์–ผ๋งˆํผ ๋ฐ›์•„๋“ค์—ฌ์•ผ ํ•˜๋Š” ๊ฑธ๊นŒ? ์ •๋‹ต!! ๊ทธ๋•Œ ์‚ฌ์šฉํ•˜๋Š” ๊ฒƒ์ด ๋ฐ”๋กœ ์ด 'context window'์ธ ๊ฒƒ์ด๋‹ค. 

 

Context window example

 

 ๋“œ๋””์–ด ์—ฌ๋Ÿฌ๋ถ„์ด ๊ธฐ๋‹ค๋ฆฌ๊ณ  ๊ธฐ๋‹ค๋ฆฌ๋˜ ์ •ํ™•ํžˆ context window๊ฐ€ ๋ฌด์—‡์ธ์ง€์— ๋Œ€ํ•ด์„œ ์•Œ์•„๋ณด๋„๋ก ํ•˜์ž!! context window์˜ ์ •ํ™•ํ•œ ์˜์˜๋Š” ๋ฌธ์žฅ์—์„œ ํƒ€๊นƒ ํ† ํฐ์˜ ์ฃผ๋ณ€์— ์žˆ๋Š” ํ† ํฐ๋“ค์„ ์˜๋ฏธํ•œ๋‹ค. ์ด๊ฒƒ์„ ์ด์ œ LM์—์„œ๋Š” ๋ชจ๋ธ์ด ํ† ํฐ ์ž…๋ ฅ์„ ๋ฐ›์•„๋“ค์ด๋Š” ๊ฒƒ์œผ๋กœ ์ƒ๊ฐํ•˜๋ฉด ํŽธ๋ฆฌํ•˜๊ณ , ์ด context window์˜ ๊ธธ์ด๋Š” ๋ชจ๋ธ์ด ์ž…๋ ฅ์œผ๋กœ ๋ฐ›์•„๋“ค์ด๋Š” ํ† ํฐ์˜ ๋ฒ”์œ„๋ผ๊ณ  ์ƒ๊ฐํ•˜๋ฉด ๋œ๋‹ค. ์˜ˆ๋ฅผ ๋“ค์–ด์„œ 512๊ฐœ์˜ ํ† ํฐ์„ context๋กœ ๋ฐ›์•„๋“ค์ธ๋‹ค๊ณ  ํ•˜๋ฉด context window์˜ ๊ธธ์ด๋Š” 512๊ฐ€ ๋˜๋Š” ๊ฒƒ์ด๋‹ค. ๋”์šฑ ์ž์„ธํ•œ ๋‚ด์šฉ์€ ๋‹ค์Œ์˜ ํฌ์ŠคํŒ…์—์„œ 3-1 ๋ถ€๋ถ„์„ ํ™•์ธํ•ด๋ณด๊ธธ ๋ฐ”๋ž€๋‹ค. ์ด์ œ LM์ด ์–ด๋–ป๊ฒŒ text๋ฅผ ๋ฐ”๋ผ๋ณด๋Š”์ง€์— ๋Œ€ํ•ด์„œ ์•Œ๊ฒŒ ๋˜์—ˆ๋‹ค. ๋ฐ”๋กœ ์ž์„ธํ•œ ๋…ผ๋ฌธ๋“ค์„ ์‚ดํŽด๋ณด๊ธฐ์—๋Š” ์•„์ง ๋ถ€์กฑํ•œ ๋ถ€๋ถ„๋“ค์ด ์žˆ์œผ๋‹ˆ, ๋งˆ์ง€๋ง‰์œผ๋กœ ์ด์ œ ๋ชจ๋ธ์ด ์–ด๋–ป๊ฒŒ ์ด text๋ฅผ ์ดํ•ดํ•  ์ˆ˜ ์žˆ๋Š”์ง€์— ๋Œ€ํ•ด ์•Œ์•„๋ณด๊ณ  ๋…ผ๋ฌธ๋“ค์— ๋Œ€ํ•ด์„œ ์‚ดํŽด๋ณด๊ฒ ๋‹ค! ๐Ÿ˜‹

 

Attention, how to understand the text? ๐Ÿคจ

 ์‚ฌ์‹ค ๋ชจ๋ธ์ด text๋ฅผ ์ดํ•ดํ•˜๋Š” ๋ฐฉ๋ฒ•๋“ค์€ ๋งŽ์ด ์žˆ์ง€๋งŒ, ์š”์ฆ˜์˜ ๋งŽ์€ LM์ด Transformer๋ฅผ ์‚ฌ์šฉํ•˜๋Š” ๋งŒํผ Transformer์— ์‚ฌ์šฉ๋œ ๊ฐ€์žฅ ํ•ต์‹ฌ ๊ธฐ์ˆ ์ด์ž ๋ชจ๋ธ์ด text๋ฅผ ์ดํ•ดํ•˜๋Š” ๋ฐฉ๋ฒ• ์ค‘ ํ•˜๋‚˜์ธ 'Attention'์— ๋Œ€ํ•ด์„œ ์•Œ์•„๋ณด๋„๋ก ํ•˜์ž! Attention์€ ๊ทธ ์ด๋ฆ„์—์„œ๋ถ€ํ„ฐ ์•Œ ์ˆ˜ ์žˆ๋“ฏ์ด '์ฃผ์˜๋ฅผ ๊ธฐ์šธ์ธ๋‹ค'๋ผ๋Š” ๋‚ด์šฉ์ด ์ฃผ๊ฐ€ ๋˜๋Š” method๋ผ๊ณ  ํ•  ์ˆ˜ ์žˆ๋‹ค. ์ด Attention์—๋„ ์—ฌ๋Ÿฌ ๊ฐ€์ง€ ์ข…๋ฅ˜๊ฐ€ ์žˆ๋Š”๋ฐ ์ง€๊ธˆ ์‚ดํŽด๋ณผ ๊ฒƒ์€ Transformer์—์„œ ์‚ฌ์šฉ๋œ 'Self-Attention'์ด๋‹ค. 

 

 Self-attention์˜ ์ž์„ธํ•œ ๋‚ด์šฉ์„ ์—ฌ๊ธฐ์„œ ์ „๋ถ€ ๋‹ค๋ฃจ๊ธฐ์—๋Š” ๊ทธ ์–‘์ด ์ƒ๋‹นํžˆ ๋ฐฉ๋Œ€ํ•˜๊ธฐ์— ์—ฌ๊ธฐ์„œ๋Š” ๊ฐ„๋‹จํžˆ ์–˜๊ธฐํ•ด๋ณด๋„๋ก ํ•˜๊ฒ ๋‹ค. Attention์€ ์ž…๋ ฅ ์‹œํ€€์Šค ๋‚ด์—์„œ ํ† ํฐ ๊ฐ„์˜ ๊ด€๊ณ„๋ฅผ ํ•™์Šตํ•˜์—ฌ ์ค‘์š”ํ•œ ์ •๋ณด๋ฅผ ๊ฐ•์กฐํ•˜๋Š” ๊ธฐ์ˆ ๋กœ, Self-attention์€ ๋‘ ๊ฐ€์ง€ ๋ฌธ์žฅ์„ ๋น„๊ตํ•˜์—ฌ ๊ฐ ๋ฌธ์žฅ์˜ ์š”์†Œ๋ผ๋ฆฌ์˜ ๊ด€๊ณ„๋ฅผ ํŒŒ์•…ํ•˜๋Š”๋ฐ, ์ด๋•Œ ๋‘ ๊ฐ€์ง€ ๋ฌธ์žฅ์„ ๋˜‘๊ฐ™์€ ๋ฌธ์žฅ์œผ๋กœ ์‚ฌ์šฉํ•˜๋Š” ๊ฒƒ์ด๋‹ค. ์ข€ ๋” ์ž์„ธํ•œ ๋‚ด์šฉ์— ๋Œ€ํ•ด์„œ๋Š” ๋‹ค์Œ์˜ ํฌ์ŠคํŒ…์˜ '4. ์‰ฝ๊ฒŒ ์ดํ•ดํ•˜๋Š” Transformer - Self-attention' ๋ถ€๋ถ„์„ ํ™•์ธํ•ด๋ณด๊ธธ ๋ฐ”๋ž€๋‹ค. 

 

Self-attention example (์ถœ์ฒ˜: https://jalammar.github.io/illustrated-transformer/)

 

 Attention์€ ์ง€๊ธˆ๊นŒ์ง€์˜ ๋ฐฉ์‹๋“ค๊ณผ๋Š” ๋‹ค๋ฅธ ๋ฐฉ๋ฒ•์œผ๋กœ text๋ฅผ ๋ฐ”๋ผ๋ณด๊ณ  ์ดํ•ดํ•จ์œผ๋กœ์จ ํ˜์‹ ์„ ๋ถˆ๋Ÿฌ์ผ์œผ์ผฐ๋‹ค. ํ•˜์ง€๋งŒ, ์Šน์Šน์žฅ๊ตฌํ•˜๋˜ Attention์—๊ฒŒ๋„ ์–ด๋‘ ์ด ๋“œ๋ฆฌ์› ์œผ๋‹ˆ.. ๊ทธ๊ฑด ๋ฐ”๋กœ context window์˜ length๋ฅผ ๋Š˜๋ฆฌ๊ธฐ๊ฐ€ ์‰ฝ์ง€ ์•Š๋‹ค๋Š” ์ ์ด๋‹ค! ๐Ÿ˜ฅ ์ด๋Š” Attention์ด ์ž‘๋™ํ•˜๋Š” ๋ฐฉ์‹์„ ๋ณด๋ฉด ์‰ฝ๊ฒŒ ์•Œ ์ˆ˜ ์žˆ๋Š”๋ฐ, Attention์€ ๋‘ ๋ฌธ์žฅ์˜ ๋ชจ๋“  ์š”์†Œ๋ฅผ ํ•จ๊ป˜ ๋น„๊ตํ•˜๊ฒŒ ๋˜๋‹ˆ ์–ด์ฉ” ์ˆ˜ ์—†์ด $O(n^{2})$์˜ ์‹œ๊ฐ„ ๋ณต์žก๋„๋ฅผ ๊ฐ€์ง€๊ฒŒ ๋˜์–ด context window length๋ฅผ ๋Š˜๋ฆฌ๊ฒŒ ๋˜๋ฉด, ๊ณ„์‚ฐ๋Ÿ‰์ด ๊ณฑ์ ˆ๋กœ ๋Š˜์–ด๋‚˜๊ฒŒ ๋˜์–ด ์ปดํ“จํŒ… ์ž์›์˜ ์ œ์•ฝ์— ๋ถ€๋”ชํžˆ๊ฒŒ ๋œ๋‹ค.. (์•ˆ ๋ผ..!! ๐Ÿ˜ญ๐Ÿ˜ญ) ๊ทธ๋Ÿฌ๋‚˜ ์ด๋Ÿฌํ•œ Attention์˜ ์ œ์•ฝ์„ ํ•ด๊ฒฐํ•˜๊ณ ์ž ํ•˜๋Š” ๋งŽ์€ ์—ฐ๊ตฌ๋“ค์ด ๋’ค์— ๋‚˜์˜ค๊ฒŒ ๋˜์—ˆ๊ณ , ๋‹ค์Œ ์„น์…˜์—์„œ๋Š” ์ด๋Ÿฌํ•œ ์—ฐ๊ตฌ๋“ค์— ๋Œ€ํ•ด์„œ ์•Œ์•„๋ณด๋„๋ก ํ•˜๊ฒ ๋‹ค!

 

Let's extend the context window! ๐Ÿ˜‹

 context window๋ฅผ ๋Š˜๋ ค๋ณด๊ธฐ ์ „์—!! ์™œ ์ด context window์˜ ๊ธธ์ด๋ฅผ ๋Š˜๋ ค์•ผ ํ• ๊นŒ? ๐Ÿคจ ์ž ํ•œ ๋ฒˆ ์ƒ๊ฐํ•ด ๋ณด์ž. ๋งŒ์•ฝ context window์˜ ๊ธธ์ด๊ฐ€ ์งง์œผ๋ฉด ๋ชจ๋ธ์ด text๋ฅผ ๋ฐ›์•„๋“ค์ผ ๋•Œ ํ•œ ๋ฒˆ์— ๋ฐ›์•„๋“ค์ด์ง€ ๋ชปํ•˜๊ณ  ํ•˜๋‚˜์˜ text๋„ ์—ฌ๋Ÿฌ ๊ฐœ๋กœ ๋‚˜๋ˆ ์„œ ๋ฐ›์•„๋“ค์—ฌ์•ผ ํ•˜๋Š” ๋“ฑ์˜ ๋ฌธ์ œ๊ฐ€ ๋ฐœ์ƒํ•˜๊ธฐ ๋งˆ๋ จ์ด๋‹ค. ์ด๋ ‡๊ฒŒ ๋˜๋ฉด ์–ด๋–ค ๋ฌธ์ œ๊ฐ€ ๋ฐœ์ƒํ• ๊นŒ? ์˜ˆ๋ฅผ ๋“ค์–ด ๋ณด๋ฉด, ์ฑ… ํ•œ ์žฅ์„ ๋„˜๊ธธ ๋•Œ๋งˆ๋‹ค ์ด์ „ ๋‚ด์šฉ์„ ๊นŒ๋จน๊ณ  ์ƒˆ๋กœ์šด ๋‚ด์šฉ์„ ๋ณด๊ฒŒ ๋˜๋Š” ๊ฒƒ์ด๋ผ๊ณ  ํ‘œํ˜„ํ•  ์ˆ˜ ์žˆ์„ ๊ฒƒ ๊ฐ™๋‹ค. ๐Ÿ˜„ ๋ฌผ๋ก  ๋น„์œ ๊ฐ€ ์ด๋Ÿฐ ๊ฒƒ์ด์ง€ ์‹ค์ œ๋กœ ๋ชจ๋ธ์ด ์ƒˆ๋กœ์šด ๊ฒƒ์„ ๋ฐฐ์šฐ๋ฉด ์ด์ „ ๊ธฐ์–ต์„ ๋ชจ๋‘ ๊นŒ๋จน๋Š”๋‹ค๋Š” ๊ฒƒ์ด ์•„๋‹ˆ๋‹ค!! ๐Ÿ™… ๊ฒฐ๊ตญ ์ •๋ฆฌํ•ด ๋ณด๋ฉด, context window์˜ ๊ธธ์ด๊ฐ€ ์งง์•„์ง€๋ฉด ๋ฌธ๋งฅ์˜ ํŒŒ์•…์— ํ๋ฆ„์ด ๋Š๊ธฐ๊ฒŒ ๋  ๊ฒƒ์ด๋‹ค. ๋”ฐ๋ผ์„œ ์ด๋Ÿฌํ•œ ๋ฌธ์ œ๋ฅผ ํ•ด๊ฒฐํ•˜๊ธฐ ์œ„ํ•ด context window๋ฅผ ๋Š˜๋ฆฌ๋Š” ๊ฒƒ์ด๋ผ๊ณ  ์ƒ๊ฐํ•˜๋ฉด ๋  ๊ฒƒ ๊ฐ™๋‹ค.

 

 ์ด์ œ ์ด์œ ๋„ ์•Œ๊ฒŒ ๋˜์—ˆ์œผ๋‹ˆ context window๋ฅผ ์–ด๋–ป๊ฒŒ ๋Š˜๋ฆด ์ˆ˜ ์žˆ์—ˆ๋Š”์ง€์— ๋Œ€ํ•ด์„œ ํ•œ ๋ฒˆ ์•Œ์•„๋ณด๋„๋ก ํ•˜์ž!! ๐Ÿšฉ ์—ฌ๋Ÿฌ๊ฐ€์ง€ ์—ฐ๊ตฌ๋“ค์ด ์žˆ์—ˆ์œผ๋‚˜ ๋ชจ๋“  ๋‚ด์šฉ์„ ๋‹ค๋ฃจ๊ธฐ์—๋Š” ๊ทธ ์–‘์ด ๋ฐฉ๋Œ€ํ•˜๊ธฐ์— ์˜ˆ์ „ ์—ฐ๊ตฌ๋“ค์— ๋Œ€ํ•ด์„œ๋Š” ๊ฐ„๋žตํ•œ ์„ค๋ช…๊ณผ ํ•จ๊ป˜ ๋ฆฌ๋ทฐ ๋งํฌ๋ฅผ ๋”ฐ๋กœ ๋‹ฌ์•„๋‘๋„๋ก ํ•˜๊ฒ ๋‹ค.

 

  • Transformer-XL(๋ฆฌ๋ทฐ ๋งํฌ: ํด๋ฆญ): context window๋ฅผ ๋Š˜๋ฆฐ๋‹ค๊ธฐ ๋ณด๋‹ค๋Š” ๊ณ ์ •๋œ context length์—์„œ ๋ฐœ์ƒํ•˜๋Š” ๋ฌธ์ œ๋ฅผ ํ•ด๊ฒฐํ•˜๊ณ  ์•ฝํ•ด์ง„ long-term dependency ๋ฌธ์ œ ํ•ด๊ฒฐ
  • XLNet(๋ฆฌ๋ทฐ ๋งํฌ: ํด๋ฆญ): Transformer-XL์„ ์ข€ ๋” ๊ฐœ์„ ์‹œํ‚ค๊ณ , ์–‘๋ฐฉํ–ฅ ํ•™์Šต์„ ํ•จ
  • Sparse Transformer(๋ฆฌ๋ทฐ ๋งํฌ: ํด๋ฆญ): ๊ธฐ์กด์˜ Attention์ด ๋ชจ๋“  ์š”์†Œ๋ฅผ ๋น„๊ตํ•˜๋Š” ๊ฒƒ์— ๋ฐ˜ํ•ด ์•ฝ๊ฐ„์˜ ํ ์„ ์คŒ์œผ๋กœ์จ ์‹œ๊ฐ„ ๋ณต์žก๋„๋ฅผ $\mathbf{O}(n \sqrt{n})$์œผ๋กœ ์ค„์ธ ๋ชจ๋ธ
  • Longformer(๋ฆฌ๋ทฐ ๋งํฌ: ํด๋ฆญ): Sliding window + Dilated Sliding + Global attention์„ ํ™œ์šฉํ•˜์—ฌ ์ข€ ๋” sparseํ•œ attention์„ ๋งŒ๋“ฆ์œผ๋กœ์จ ๋”์šฑ ๊ธด context length๋ฅผ ๊ฐ€๋Šฅํ•˜๊ฒŒ ํ•œ ๋ชจ๋ธ
  • BigBird(๋ฆฌ๋ทฐ ๋งํฌ: ํด๋ฆญ): Random + Sliding + Global attention์„ ํ™œ์šฉํ•˜์—ฌ ์ข€ ๋” sparseํ•œ attention์„ ๋งŒ๋“ฆ์œผ๋กœ์จ ๋”์šฑ ๊ธด context length๋ฅผ ๊ฐ€๋Šฅํ•˜๊ฒŒ ํ•œ ๋ชจ๋ธ

 

 ์œ„์™€ ๊ฐ™์ด LM์˜ context length๋ฅผ ๋Š˜๋ฆฌ๊ณ ์ž ์‹œ๋„ํ–ˆ๋˜ ๋งŽ์€ ๋…ผ๋ฌธ๋“ค์ด ์žˆ์—ˆ๋‹ค. ์ด ๋…ผ๋ฌธ๋“ค์˜ ๋Œ€๋žต์ ์ธ ์ ‘๊ทผ ๋ฐฉ์‹์„ ์‚ดํŽด๋ณด๋ฉด, ์•ž์„œ ์–ธ๊ธ‰ํ–ˆ๋˜ Attention์˜ quadratic computation ๋ฌธ์ œ๋ฅผ full attention์—์„œ ๋ฒ—์–ด๋‚˜ ์ข€ ๋” spars ํ•œ attention์„ ๋งŒ๋“ฆ์œผ๋กœ์จ ๊ณ„์‚ฐ๋Ÿ‰์„ linear ํ•˜๊ฒŒ ๋งŒ๋“ค๊ณ ์ž ํ•˜์˜€๋‹ค. ํ™•์‹คํžˆ ์ด๋Ÿฌํ•œ ๋ถ€๋ถ„์„ ๋ณด๋ฉด attention์˜ quadratic ํ•œ computation์€ ๋ถ€๋‹ด๋  ์ •๋„๋กœ ๋งŽ์€ ์–‘์˜ ๋ถ€ํ•˜๋ฅผ ๋ฐœ์ƒ์‹œํ‚ค๋Š” ๊ฒƒ ๊ฐ™๊ธด ํ•˜๋‹ค. ๐Ÿ˜…

 

 ๋…ผ๋ฌธ๋“ค ์™ธ์— ํ˜„์žฌ์˜ LLM๋“ค๋„ context window์˜ ๊ธธ์ด๋ฅผ ๋Š˜๋ ค๊ฐ€๊ณ  ์žˆ๋Š”๋ฐ MosaicML์˜ MPT๋Š” context window๋ฅผ 64K๊นŒ์ง€ ๋Š˜๋ฆฌ๊ณ , Anthropic์˜ Claude๋Š” 100K๊นŒ์ง€ ๋Š˜๋ฆฌ๋Š” ๋“ฑ ์—ฌ๋Ÿฌ ์‹œ๋„๋“ค์ด ์ผ์–ด๋‚˜๊ณ  ์žˆ๋‹ค. GPT-4์˜ context window length๊ฐ€ 32K์ด๊ณ , ๋ณดํ†ต์˜ open-source LLM๋“ค์ด 2K์ธ ๊ฒƒ์— ๋ฐ˜ํ•ด ์—„์ฒญ๋‚˜๊ฒŒ ๋Š˜์–ด๋‚œ ๊ฒƒ์ด๋‹ค! ๐Ÿ˜ฎ

 

 ์ด๋ ‡๊ฒŒ ํ•ด์„œ ์ดˆ๊ธฐ์˜ context window์˜ ๊ธธ์ด๋ฅผ ๋Š˜๋ฆฌ๊ธฐ ์œ„ํ•œ ์‹œ๋„๋“ค๊ณผ ์ตœ๊ทผ์˜ LLM๋“ค์˜ context window length์˜ ๋ณ€ํ™”์— ๋Œ€ํ•ด์„œ ์•Œ์•„๋ดค๊ณ , ์ด์ œ ์ตœ๊ทผ ์—ฐ๊ตฌ๋“ค์— ๋Œ€ํ•ด์„œ ์•Œ์•„๋ณด๋„๋ก ํ•˜์ž. 

 

Extending Context Window of Large Language Models via Positional Interpolation (Chen et al., 2023)

 

 ์ด ๋…ผ๋ฌธ์—์„œ๋Š” interpolation๊ณผ extrapolation ์ด๋ผ๋Š” ๊ฐœ๋…์„ ํ™œ์šฉํ•˜์—ฌ context window์˜ ๊ธธ์ด ์ œ์•ฝ์„ ํ•ด๊ฒฐํ•˜๊ณ ์ž ํ•˜์˜€๋‹ค. ์—ฌ๊ธฐ์„œ interpolation์ด๋ž€ ๋ฒ”์œ„ ์•ˆ์— ์žˆ๋Š” ๊ฐ’์„ ์˜ˆ์ธกํ•˜๋Š” ๋ณด๊ฐ„๋ฒ•์„ ์˜๋ฏธํ•˜๊ณ , extrapolation์ด๋ž€ ๋ฒ”์œ„ ๋ฐ–์— ์žˆ๋Š” ๊ฐ’์„ ์˜ˆ์ธกํ•˜๋Š” ๋ณด์™ธ๋ฒ•์„ ์˜๋ฏธํ•œ๋‹ค. ์ด ๊ฐœ๋…์„ ํ™œ์šฉํ•˜๊ธฐ ์œ„ํ•ด Positional Interpolation์„ ์†Œ๊ฐœํ•จ์œผ๋กœ์จ pre-training context window size๋ฅผ ๋„˜์–ด์„œ๋Š” input text๋ฅผ interpolation ๋ฒ”์œ„๊นŒ์ง€ ์ค„์ผ ์ˆ˜ ์žˆ๊ฒŒ ๋˜๋ฉด์„œ extrapolation์„ interpolation์œผ๋กœ ๋ฐ”๊ฟ€ ์ˆ˜ ์žˆ๊ฒŒ ๋˜์—ˆ๋‹ค! ๐Ÿ˜ ํ•œ ๋งˆ๋””๋กœ, extrapolation ๋˜๋Š” ํ† ํฐ๊นŒ์ง€๋„ interpolation ํ•  ์ˆ˜ ์žˆ๋„๋ก position์„ ๋ณ€๊ฒฝํ•˜์˜€๋‹ค๊ณ  ์ดํ•ดํ•˜๋ฉด ๋œ๋‹ค. ๋”ฐ๋ผ์„œ context window๋ณด๋‹ค ๊ธด text๊ฐ€ ์˜จ๋‹ค๊ณ  ํ•ด๋„ ๊ทธ position ์ •๋ณด๋ฅผ ๋”์šฑ ์ข๊ฒŒ ํ•ด์„œ interpolation ๋ฒ”์œ„๊นŒ์ง€ ์ขํž ์ˆ˜๋งŒ ์žˆ์œผ๋ฉด ๋˜๋Š” ๊ฒƒ์ด๋‹ค! ๊ทธ๋ž˜์„œ ๋…ผ๋ฌธ์—์„œ๋„ ์‹ค์ œ๋กœ 2,048์˜ ํ† ํฐ์„ ์ˆ˜์šฉํ•  ์ˆ˜ ์žˆ๋Š” context window์—์„œ 32,768๊ฐœ์˜ ํ† ํฐ๊นŒ์ง€ ์ฐธ์กฐํ•  ์ˆ˜ ์žˆ๋„๋ก ํ•˜์˜€๋‹ค! 

 

Positional Interpolation example (์ถœ์ฒ˜: paper)

 

LongNet: Scaling Transformers to 1,000,000,000 Tokens (Ding et al., 2023)

 

 Microsoft์—์„œ ๋ฐœํ‘œํ•œ ์ด ๋…ผ๋ฌธ์€ ๋ฐœํ‘œํ•˜์ž๋งˆ์ž ์ƒ๋‹นํžˆ ๊ธฐ์ƒ์ฒœ์™ธํ•œ ์ œ๋ชฉ์œผ๋กœ ์‚ฌ๋žŒ๋“ค์˜ ์ด๋ชฉ์„ ๋Œ ์ˆ˜ ์žˆ์—ˆ๋‹ค. ์•„๋‹ˆ ์‹ค์ œ๋กœ๋„ ๋งŽ์ด ๋Œ์—ˆ๋‹ค. ๋ˆ„๊ฐ€ 10์–ต ๊ฐœ์˜ ํ† ํฐ์„ ์ฒ˜๋ฆฌํ•  ์ˆ˜ ์žˆ๋Š” Transformer๊ฐ€ ๋‚˜์™”๋‹ค๋Š”๋ฐ ๊ตฌ๋ฏธ๊ฐ€ ๋‹น๊ธฐ์ง€ ์•Š์„ ์ˆ˜๊ฐ€ ์žˆ๊ฒ ๋Š”๊ฐ€! ๐Ÿคค ์‹ค์ œ ๋…ผ๋ฌธ์— ์žˆ๋Š” ์ด์ „ ๋ชจ๋ธ๋“ค๊ณผ์˜ context window length๋ฅผ ๋น„๊ตํ•œ ๊ทธ๋ž˜ํ”„๋ฅผ ๋ณด๋ฉด ํ™•์‹คํžˆ ๊ทธ ์—„์ฒญ๋‚œ ์œ„์ƒ์„ ํ™•์ธํ•  ์ˆ˜ ์žˆ๋‹ค.

 

Transformer sequence ๊ธธ์ด์˜ ํŠธ๋ Œ๋“œ (์ถœ์ฒ˜: LongNet paper)

 

 LongNet์—์„œ๋Š” ์ด๋Ÿฌํ•œ ์—„์ฒญ๋‚œ context window length๋ฅผ ๊ธฐ์กด์˜ attention์—์„œ ์ข€ ๋” sparseํ•ด์ง„ 'dilated attention'์„ ํ™œ์šฉํ•˜๊ณ , ์ด LongNet์„ ๋ถ„์‚ฐ Trainer๋กœ ์‚ฌ์šฉํ•˜์—ฌ 10์–ต ๊ฐœ์˜ ํ† ํฐ์„ ๋ฐ›์•„๋“ค์ผ ์ˆ˜ ์žˆ์–ด์กŒ๋‹ค. ์ด dilated attention์—์„œ segment length์™€ dilated rate๋ฅผ ๋ณ€ํ™”์‹œํ‚ค๋ฉด์„œ ์—ฌ๋Ÿฌ attention์„ ๋งŒ๋“ค๊ณ  ๊ทธ attention์„ ํ•ฉ์ณ์„œ ํ•˜๋‚˜์˜ dilated attention์„ ๋งŒ๋“œ๋Š” ๋ฐฉ์‹์ด๋‹ค. ์ž์„ธํ•œ ๋‚ด์šฉ์— ๋Œ€ํ•ด์„œ ์•Œ๊ณ  ์‹ถ๋‹ค๋ฉด ์ด ์œ ํŠœ๋ธŒ ์˜์ƒ๋ฅผ ํ™•์ธํ•˜๊ธธ ๋ฐ”๋ž€๋‹ค.

 

์™ผ์ชฝ: LongNet์˜ Dilated attention, ์˜ค๋ฅธ์ชฝ: LongNet์˜ ๋ถ„์‚ฐ Trainer (์ถœ์ฒ˜: LongNet paper)

 

 ์ด๋ ‡๊ฒŒ ํ•ด์„œ ๋งŒ๋“ค์–ด์ง„ LongNet์€ ์‹ค์ œ๋กœ ์‹คํ—˜์—์„œ๋„ ๊ธฐ์กด์˜ vanilla Transformer์˜ attention์— ๋น„ํ•ด์„œ ๋ง๋„ ์•ˆ ๋  ์ •๋„๋กœ ์ ์€ ๋Ÿฐํƒ€์ž„์œผ๋กœ ํ›จ์”ฌ ๋” ๊ธด ๋ฌธ์žฅ์„ ํ•ด์„ํ•  ์ˆ˜ ์žˆ์Œ์„ ๋ณด์—ฌ์คฌ๋‹ค! ๐Ÿ”ฅ

 

Dilated attention๊ณผ vanilla attention์˜ ๋Ÿฐํƒ€์ž„ ๋น„๊ต (์ถœ์ฒ˜: LongNet paper)

 

Should the context window be longer? ๐Ÿ˜

์ด๋ ‡๊ฒŒ ํ•ด์„œ context window์˜ length๋ฅผ ๋Š˜๋ฆฌ๋Š” ๋ฐฉ๋ฒ•๋“ค์— ๋Œ€ํ•ด์„œ ์•Œ์•„๋ดค๋‹ค. ๊ทธ๋ฆฌ๊ณ  ์—ฌ๋Ÿฌ ๋…ผ๋ฌธ๋“ค์—์„œ context window์˜ length๋ฅผ ๋Š˜๋ฆฌ๋‹ˆ ์„ฑ๋Šฅ๋„ ๋” ์ข‹๊ฒŒ ๋‚˜ํƒ€๋‚˜๋Š” ๊ฒƒ์œผ๋กœ ๋ณด์˜€๋‹ค. ํ•˜์ง€๋งŒ ์‹ค์ œ๋กœ ๋ชจ๋ธ์ด ์ถ”๋ก ์„ ํ•  ๋•Œ ์ด context window๋กœ ๋“ค์–ด์˜จ ๋ชจ๋“  ๋‚ด์šฉ๋“ค์„ ํ™œ์šฉํ•˜๋Š” ๊ฑธ๊นŒ? ๋งŒ์•ฝ ์‚ฌ์‹ค ๊ทธ๋ ‡์ง€ ์•Š๋‹ค๋ฉด, ์ด๋ ‡๊ฒŒ ๋ฌด๋ถ„๋ณ„ํ•˜๊ฒŒ context window์˜ length๋ฅผ ๋Š˜๋ฆฌ๋Š” ๊ฒƒ์€ ์˜คํžˆ๋ ค LM์—๊ฒŒ ๋…์ด ๋  ์ˆ˜๋„ ์žˆ๋‹ค! ๐Ÿ˜ฎ ๋”ฐ๋ผ์„œ context window์˜ length๋ฅผ ๋Š˜๋ฆผ์— ๋”ฐ๋ผ ๋ฐœ์ƒํ•˜๋Š” ๋ณ€ํ™”๋ฅผ ํŒŒ์•…ํ•˜๊ณ  ๋ถ„์„ํ•˜๊ธฐ ์œ„ํ•œ ์—ฐ๊ตฌ๋“ค๋„ ํ•„์š”ํ•˜๋‹ค. ์ด๋ฒˆ ์„น์…˜์—์„œ๋Š” Stanford University์™€ UC Berkeley์—์„œ ํ•จ๊ป˜ ์ž‘์„ฑํ•œ ๋…ผ๋ฌธ์ธ 'Lost in the Middle: How Language Models Use Long Contexts'(์ค„์—ฌ์„œ 'Lost in the Middle'์ด๋ผ๊ณ  ๋ถ€๋ฅด๋„๋ก ํ•˜๊ฒ ๋‹ค!)์— ๋Œ€ํ•ด์„œ ์•Œ์•„๋ณด๊ณ  context window์˜ ๊ธธ์ด์— ๋”ฐ๋ฅธ ์˜ํ–ฅ์— ๋Œ€ํ•ด ์•Œ์•„๋ณด๊ณ ์ž ํ•œ๋‹ค.

 

Lost in the Middle: How Language Models Use Long Contexts (Liu et al., 2023)

 

 'Lost in the Middle' ๋…ผ๋ฌธ์€ 2023๋…„ 7์›” ์— ๋‚˜์˜จ ๋…ผ๋ฌธ์œผ๋กœ ์•ž์„œ ์„ค๋ช…ํ•œ 'Extending Context Window...'์™€ LongNet์˜ ๋ฐœํ‘œ ์ดํ›„๋กœ context window์˜ ์ •ํ™•ํ•œ ์˜ํ–ฅ์— ๋Œ€ํ•ด ํ‰๊ฐ€ ๋ฐ ๋ถ„์„ํ•˜๊ธฐ ์œ„ํ•ด ์ž‘์„ฑ๋˜์—ˆ๋‹ค. ์ด ๋…ผ๋ฌธ์—์„œ ํ•˜๋Š” ์‹คํ—˜๋“ค์„ ์š”์•ฝํ•ด์„œ ์„ค๋ช…ํ•˜๋ฉด ๋‹ค์Œ๊ณผ ๊ฐ™๋‹ค.

 

์—ฌ๋Ÿฌ ๋ฌธ์„œ๋ฅผ ์ž…๋ ฅ์œผ๋กœ ์ฃผ๊ณ  ๊ทธ ์ค‘ ํ•˜๋‚˜์˜ ๋ฌธ์„œ๋งŒ ์ •๋‹ต์„ ํฌํ•จํ•˜๊ณ  ์žˆ๋Š” ์งˆ๋ฌธ์„

๋˜์ง€๊ณ , ๊ทธ ์งˆ๋ฌธ์˜ ์œ„์น˜์— ๋”ฐ๋ฅธ ์„ฑ๋Šฅ ๋ณ€ํ™”๋ฅผ ํŒŒ์•…ํ•ด ๋ณด์ž!

 

์œ„์™€ ๊ฐ™์€ ๋ฐฉ์‹์œผ๋กœ ๋ชจ๋ธ์ด ์ •๋‹ต ๋ฌธ์„œ๊ฐ€ input text์˜ ์–ด๋–ค ์œ„์น˜์— ์žˆ์„ ๋•Œ ๊ฐ€์žฅ ์ž˜ ์ฐพ์•„๋‚ด๋Š”์ง€๋ฅผ ์•Œ์•„๋‚ผ ์ˆ˜ ์žˆ๋‹ค. ๋…ผ๋ฌธ์—์„œ ์—ฌ๋Ÿฌ ๊ฐ€์ง€ ์‹คํ—˜์„ ์ง„ํ–‰ํ•ด ๋ณด๋Š”๋ฐ ๋Œ€๋ถ€๋ถ„์˜ ์‹คํ—˜์—์„œ ๋‹ค์Œ์˜ ๊ทธ๋ฆผ๊ณผ ๊ฐ™์€ U์žํ˜• ๊ทธ๋ž˜ํ”„๋ฅผ ์–ป๋Š” ๊ฒƒ์„ ๋ณผ ์ˆ˜ ์žˆ๋‹ค. ๋”ฐ๋ผ์„œ ๋ชจ๋ธ์€ input text์˜ ์ดˆ์ž…๊ณผ ๋ ๋ถ€๋ถ„์— ์ •๋‹ต ๋ฌธ์„œ๊ฐ€ ์žˆ์„ ๋•Œ ๊ฐ€์žฅ ์„ฑ๋Šฅ์ด ์ข‹๋‹ค๋Š” ๊ฒƒ์„ ํ™•์ธํ•  ์ˆ˜ ์žˆ๋‹ค.

 

์‹คํ—˜ ๊ฒฐ๊ณผ. U์žํ˜• ๊ทธ๋ž˜ํ”„ (์ถœ์ฒ˜: Lost in the Middle paper)

 

 ์ด๋Ÿฌํ•œ ๊ทธ๋ž˜ํ”„๋ฅผ ๋ณด๋ฉด ์•„๋ฌด๋ฆฌ ์ž…๋ ฅ์ด ๊ธธ๋‹ค๊ณ  ํ•ด์„œ(= context window length๊ฐ€ ๊ธธ๋‹ค๊ณ  ํ•ด์„œ) ์„ฑ๋Šฅ์ด ๋‚˜์•„์ง€์ง€๋Š” ์•Š์„ ๋ฟ๋”๋Ÿฌ, ๊ทธ ๋ชจ๋“  ์ •๋ณด๋ฅผ ํ™œ์šฉํ•˜์ง€ ๋ชปํ•œ๋‹ค๋ผ๋Š” ๊ฒƒ์„ ์•Œ ์ˆ˜ ์žˆ๋‹ค. ์‹ค์ œ๋กœ ๋…ผ๋ฌธ์—์„œ๋„ ๋งˆ์ง€๋ง‰ ๋ถ„์„์— ๋„ˆ๋ฌด ๋งŽ์€ ๋ฌธ์„œ๋ฅผ ์ž…๋ ฅ์œผ๋กœ ์ฃผ๋Š” ๊ฒƒ์€ ์„ฑ๋Šฅ ๊ฐœ์„ ์— ๋ณ„ ์˜ํ–ฅ์„ ๋ฏธ์น˜์ง€ ๋ชปํ•˜๊ณ , ๋”ฐ๋ผ์„œ ๊ด€๋ จ ์ •๋ณด๋ฅผ input context์˜ ์ดˆ์ž…์— ์ œ๊ณตํ•ด ์ฃผ๊ฑฐ๋‚˜ ์ ์€ ์ˆ˜์˜ ๋ฌธ์„œ๋ฅผ ์‚ฌ์šฉํ•˜๋Š” ๊ฒƒ์ด ๋” ๋‚ซ๋‹ค๊ณ  ์ฃผ์žฅํ•œ๋‹ค. 

 

My opinion ๐Ÿ˜™

 ๋ฌผ๋ก  'Lost in the Middle' ๋…ผ๋ฌธ์—์„œ๋Š” ์ •๋ณด ์ถ”์ถœ task์— ๋Œ€ํ•ด์„œ๋งŒ ์„ฑ๋Šฅ์„ ํ‰๊ฐ€ํ•œ ๊ฒƒ์ด๋ผ ๋ชจ๋“  task์— ๋Œ€ํ•ด ์ด๋Ÿฌํ•œ ๊ฒฝํ–ฅ์ด ์žˆ์„ ๊ฒƒ์ด๋ผ๊ณ ๋Š” ๋‹จ์ •์ง€์„ ์ˆ˜ ์—†์œผ๋‚˜ ์ •๋ณด ์ถ”์ถœ task์—์„œ ์ด๋Ÿฌํ•œ ๋ชจ์Šต์„ ๋ณด์—ฌ์ค€๋‹ค๋Š” ๊ฒƒ์€ ๋‹ค๋ฅธ task์—์„œ๋„ ์ด๋Ÿฐ ๋น„์Šทํ•œ ๊ฒฝํ–ฅ์„ ๋Œ ์ˆ˜๋„ ์žˆ๋‹ค๋Š” ๊ฒƒ์„ ๋ณด์—ฌ์ค€๋‹ค. ๐Ÿ˜ฅ ๋”ฐ๋ผ์„œ ๋ณด๋‹ค ํ™•์‹คํ•œ ๊ฒ€์ฆ์„ ์œ„ํ•ด์„œ๋Š” ๋” ๋„“์€ ๋ฒ”์œ„์˜ task์— ๋Œ€ํ•ด์„œ ์‹คํ—˜์„ ์ง„ํ–‰ํ•˜๋ฉฐ ๋ณด๋‹ค ํ™•์‹คํ•œ ๋ถ„์„์„ ํ•˜๋Š” ์—ฐ๊ตฌ๋“ค์ด ๋‚˜์™€์ค˜์•ผ ํ•œ๋‹ค. ๋ชจ๋ธ์— ์ƒˆ๋กœ์šด method๋ฅผ ์ ์šฉํ•˜์—ฌ ์ƒˆ๋กญ๊ณ  ๋” ๊ฐœ์„ ๋œ ๋ชจ๋ธ์„ ์ œ์•ˆํ•˜๋Š” ๊ฒƒ๋„ ์ข‹์ง€๋งŒ, ์ด๋Ÿฌํ•œ method๋กœ ์ธํ•ด ๋‚˜์˜จ ๊ฒฐ๊ณผ์— ๋ฌธ์ œ๋Š” ์—†๋Š”์ง€, ๊ดœ์ฐฎ์€ ๊ฒƒ์ธ์ง€ ๋ถ„์„ํ•˜๋Š” ๊ฒƒ๋„ ์ƒ๋‹นํžˆ ์ค‘์š”ํ•˜๋‹ค๊ณ  ์ƒ๊ฐํ•œ๋‹ค. ๐Ÿ˜

 

 ์ด๋ ‡๊ฒŒ ํ•ด์„œ LM์˜ context window์— ๋Œ€ํ•ด์„œ ์•Œ์•„๋ณด์•˜๋Š”๋ฐ, ํ•„์ž์˜ ์˜๊ฒฌ์„ ์ž ๊น ๋งํ•ด๋ณด์ž๋ฉด, ํ•„์ž๋Š” ์•„์ง ์ข€ ๋” ๋งŽ์€ ์—ฐ๊ตฌ๊ฐ€ ํ•„์š”ํ•˜๋‹ค๊ณ  ์ƒ๊ฐํ•œ๋‹ค. ํ™•์‹คํ•˜๊ฒŒ context window์˜ length๋ฅผ ๋Š˜๋ฆฌ๋Š” ๊ฒƒ์ด ์ด์ ์„ ๊ฐ€์ง„๋‹ค๋Š” ๊ฒƒ์„ ๋ฐœ๊ฒฌํ•˜์ง€ ์•Š๋Š” ์ด์ƒ ๋ฌด์ž‘์ • context window๋ฅผ ๋Š˜๋ ค๊ฐ€๋Š” ๊ฒƒ์€ ๋„ˆ๋ฌด ๋ฌด๋ชจํ•œ ๋„์ „์ด๋ผ๊ณ  ์ƒ๊ฐํ•œ๋‹ค. ๋ฌผ๋ก  ์ด๊ฒƒ์€ ํ•œ ์‚ฌ๋žŒ์˜ ์˜๊ฒฌ์— ๋ถˆ๊ณผํ•˜๋‹ˆ ๋„ˆ๋ฌด ๋ฌด๊ฒ๊ฒŒ ๋“ฃ์ง€๋Š” ๋ง๊ณ , ๊ฐ€๋ณ๊ฒŒ ํ˜๋ ค๋“ฃ๊ธธ ๋ฐ”๋ž€๋‹ค! ๐Ÿ˜ ์ด ๊ธ€์„ ์ฝ์€ ์—ฌ๋Ÿฌ๋ถ„๋“ค์˜ ์˜๊ฒฌ๋“ค๋„ ๋Œ“๊ธ€์— ๋‚จ๊ฒจ์ฃผ์‹œ๋ฉด ๊ฐ์‚ฌํ•  ๊ฒƒ ๊ฐ™์Šต๋‹ˆ๋‹ค! ํฌ์ŠคํŒ… ๋๊นŒ์ง€ ์ฝ์–ด์ฃผ์…”์„œ ๊ฐ์‚ฌํ•ฉ๋‹ˆ๋‹ค! ๐Ÿ™‡