๋Œ€ํšŒ ํ”„๋กœ์ ํŠธ/ํ”„๋กœ์ ํŠธ

๊ฐ์ • ๋ถ„๋ฅ˜ ๋ชจ๋ธ ๋งŒ๋“ค๊ณ  ์„ฑ๋Šฅ ๊ฐœ์„ ๊นŒ์ง€ (BERT, GPT2, RoBERTa, DistilBERT)

์ฃผ์˜ ๐Ÿฑ 2023. 1. 29. 18:18
728x90
๋ฐ˜์‘ํ˜•

๊ฐ„๋‹จํ•œ ๊ธ๋ถ€์ • ์ด์ง„ ๋ถ„๋ฅ˜ ๋ชจ๋ธ์„ ๋งŒ๋“ค์—ˆ๋‹ค. 

์ „์ฒด์ฝ”๋“œ๋Š” ๊นƒํ—™์—์„œ ๋ณผ ์ˆ˜ ์žˆ๋‹ค!

https://github.com/Juyoung-b/Improving-the-Performance-of-Sentiment-Classification

 

GitHub - Juyoung-b/Improving-the-Performance-of-Sentiment-Classification

Contribute to Juyoung-b/Improving-the-Performance-of-Sentiment-Classification development by creating an account on GitHub.

github.com

 

์˜์–ด๋กœ ๋œ ๋ ˆ์Šคํ† ๋ž‘ ๋ฆฌ๋ทฐ๋ฅผ ๊ฐ€์ง€๊ณ , ๊ธ์ •(1), ๋ถ€์ •(0)์œผ๋กœ ๋ถ„๋ฅ˜ํ•˜๋Š” ๊ฐ„๋‹จํ•œ task ๋ชจ๋ธ์ด๋‹ค. 

์ด๋ฒˆ ํ”„๋กœ์ ํŠธ์—์„  ๋ชจ๋ธ์˜ ์„ฑ๋Šฅ์„ ๊ฐœ์„ ํ•˜๋Š”๊ฒƒ์— ์ง‘์ค‘ํ–ˆ๋‹ค.

๋‹ค์–‘ํ•œ pre-trained ๋ชจ๋ธ์„ ์จ๋ณด๊ณ , ์ •ํ™•๋„๋ฅผ ์˜ฌ๋ฆฌ๊ธฐ ์œ„ํ•ด ํ•˜์ดํผํŒŒ๋ผ๋ฏธํ„ฐ ํŠœ๋‹๊ณผ ์‹œ๋„ํ•œ ๋ฐฉ๋ฒ•๋“ค์— ์ดˆ์ ์„ ๋งž์ท„๋‹ค. ๋Œ€๋žต์ ์ธ ํ”Œ๋กœ์šฐ๋Š” ๋‹ค์Œ๊ณผ ๊ฐ™๋‹ค. 

๊ฐœ๋ฐœ ํ™˜๊ฒฝ์€ python, pytorch, ์ฝ”๋žฉ ํ”„๋กœํ”Œ๋Ÿฌ์Šค ์ด๋‹ค. 

1.  ๋ฐ์ดํ„ฐ ์ค€๋น„

Yelp ๋ฐ์ดํ„ฐ์…‹์˜ ๊ธ๋ถ€์ •์ด ๋ ˆ์ด๋ธ”๋ง๋œ ๋ ˆ์Šคํ† ๋ž‘ ๋ฆฌ๋ทฐ ์ด 443,259๊ฐœ๋ฅผ ์ค€๋น„ํ–ˆ๋‹ค. train ๋ฐ์ดํ„ฐ๋กœ๋Š” ๊ธ์ •๋ฆฌ๋ทฐ 266041๊ฐœ ๋ฌธ์žฅ, ๋ถ€์ •๋ฆฌ๋ทฐ๋Š” 177218๊ฐœ์˜ ๋ฌธ์žฅ, validation๋ฌธ์žฅ์€ ๊ธ๋ถ€์ • ๊ฐ๊ฐ 2000๊ฐœ์”ฉ ์ค€๋น„ํ–ˆ๋‹ค. 

 

2.  ์ „์ฒ˜๋ฆฌ

์ „๋ถ€ ํ•œ ๋ฌธ์žฅ์œผ๋กœ ๋œ ์˜์–ด ๋ฆฌ๋ทฐ๋กœ, ์ „์ฒ˜๋ฆฌํ•  ๊ฒƒ์ด ์—†์–ด ํ•˜์ง„ ์•Š์•˜๋‹ค. 

 

3. fine-tuning

huggingface์˜ transformer ๋ชจ๋“ˆ๋กœ ๊ฐ ๋ชจ๋ธ์„ ๋ถˆ๋Ÿฌ์™€์„œ ํ›ˆ๋ จ์‹œํ‚ค๋Š” ๊ฒƒ์€ ์–ด๋ ต์ง€ ์•Š๋‹ค.

BERT, RoBERTa, DistilBERT, GPT2์˜ ํ† ํฌ๋‚˜์ด์ €, ๋ชจ๋ธ์„ ๋ถˆ๋Ÿฌ์™€ trainํ–ˆ๋‹ค. ๋ถ„๋ฅ˜์— ์“ธ ์ˆ˜ ์žˆ๋Š” ๋ชจ๋ธ์€ ์ด ๋ง๊ณ ๋„ ALBERT, ๋“ฑ ๋‹ค์–‘ํ•œ ๋ชจ๋ธ๋“ค์ด ์žˆ๋‹ค. 

๊ฐ ๋ชจ๋ธ์„ ์‚ฌ์šฉํ•œ ์ด์œ ๋Š” ์šฐ์„ , BERT๋Š” ๋ฐฉ๋Œ€ํ•œ corpus๋กœ ํ›ˆ๋ จ๋œ ๋ชจ๋ธ์ด๊ธฐ์— fine tuning์œผ๋กœ ๋†’์€ ์„ฑ๋Šฅ์„ ๋‚ผ ์ˆ˜ ์žˆ๋Š” ๋ชจ๋ธ์ด๋‹ค. RoBERTa๋Š” ํŽ˜์ด์Šค๋ถ์—์„œ ๊ณต๊ฐœํ•œ ์–ธ์–ด๋ชจ๋ธ๋กœ, BERT๋ฅผ ๊ธฐ๋ฐ˜์œผ๋กœ ํ•˜์ง€๋งŒ ํ”„๋ฆฌํŠธ๋ ˆ์ธ ๋ฐฉ์‹์„ ๋ณ€ํ™”์‹œํ‚ค๊ณ , ํ•™์Šต ๋ฐ์ดํ„ฐ๋ฅผ ์ฆ๊ฐ€์‹œ์ผœ ๊ธฐ์กด ๋ฒ„ํŠธ์˜ ํ•œ๊ณ„์ ์„ ๋ณด์™„ํ•œ ๋ชจ๋ธ์ด๋‹ค. ๋…ผ๋ฌธ์— ๋”ฐ๋ฅด๋ฉด, RoBERTa๊ฐ€ BERT๋ณด๋‹ค ์šฐ์„ธํ•œ ์„ฑ๋Šฅ์„ ๋ณด์ด๊ธฐ์— ์‹คํ—˜ ๋ชจ๋ธ์— ์ถ”๊ฐ€ํ–ˆ๋‹ค.(์‹ค์ œ๋กœ RoBERTa๊ฐ€ BERT๋ณด๋‹ค ๋†’์€ ์ •ํ™•๋„๋ฅผ ๋ณด์˜€๋‹ค.)DistilBERT๋Š” BERT๋ณด๋‹ค 40% ์ž‘๊ณ , 60% ๋น ๋ฅด๋ฉด์„œ๋„ 97%์˜ capability๋ฅผ ๋ณด์กดํ•˜๋Š” ๋ชจ๋ธ๋กœ, ํšจ์œจ์ ์ธ ๋ชจ๋ธ์ด๋ผ ํŒ๋‹จํ•˜์—ฌ ์‚ฌ์šฉํ–ˆ๋‹ค.ํ•˜์ง€๋งŒ ์ฝ”๋žฉ GPU ์ œํ•œ๋Ÿ‰์ด ์žˆ์–ด ํ•œ ๋ฒˆ๋ฐ–์— ์‹คํ—˜ํ•ด๋ณด์ง„ ๋ชปํ–ˆ๋‹ค..

GPT-2๋Š” BERT์™€ ๋‹ฌ๋ฆฌ transformer ์˜ ๋””์ฝ”๋”๋ฅผ ์‚ฌ์šฉํ•˜๋Š” ๋ชจ๋ธ์ด๊ณ , ์ž…๋ ฅ ์‹œํ€€์Šค์˜ ๋งˆ์ง€๋ง‰ ํ† ํฐ์€ ์ž…๋ ฅ ๋’ค์— ์™€์•ผ ํ•˜๋Š” ๋‹ค์Œ ํ† ํฐ์„ ์˜ˆ์ธก ํ•˜๋Š”๋ฐ ์‚ฌ์šฉ๋œ๋‹ค. ์ด๋Š” ์ž…๋ ฅ ์‹œํ€€์Šค์˜ ๋งˆ์ง€๋ง‰ ํ† ํฐ์— ์˜ˆ์ธก์— ํ•„์š”ํ•œ ๋ชจ๋“  ์ •๋ณด๊ฐ€ ํฌํ•จ๋˜์–ด ์žˆ์Œ์„ ์˜๋ฏธํ•˜๋ฏ€๋กœ ๋ถ„๋ฅ˜์—์„œ ๊ทธ ์ •๋ณด๋ฅผ ์‚ฌ์šฉํ•˜์—ฌ ์˜ˆ์ธกํ•  ์ˆ˜ ์žˆ๊ธฐ์— ๋ถ„๋ฅ˜ ํƒœ์Šคํฌ๋ฅผ ์ˆ˜ํ–‰ํ•  ์ˆ˜ ์žˆ๋‹ค.

Bert์—์„œ์ฒ˜๋Ÿผ ์ฒซ ๋ฒˆ์งธ ํ† ํฐ ์ž„๋ฒ ๋”ฉ์„ ์‚ฌ์šฉํ•˜์—ฌ ์˜ˆ์ธกํ•˜๋Š” ๋Œ€์‹  ๋งˆ์ง€๋ง‰ ํ† ํฐ ์ž„๋ฒ ๋”ฉ์„ ์‚ฌ์šฉํ•˜์—ฌ ์˜ˆ์ธกํ•ด์•ผ ํ•˜๊ธฐ์—, ๊ธฐ์กด BERT๊ธฐ๋ฐ˜ ๋ชจ๋ธ๊ณผ ๋‹ค๋ฅด๊ฒŒ  GPT2์—์„œ๋Š” ์˜ˆ์ธก์„ ์œ„ํ•ด ๋งˆ์ง€๋ง‰ ํ† ํฐ์„ ์‚ฌ์šฉํ•˜๊ณ  ์žˆ์œผ๋ฏ€๋กœ ์™ผ์ชฝ์— ํŒจ๋”ฉ์„ ๋„ฃ์–ด์•ผ ํ•œ๋‹ค. 

 

4. ๊ฒฐ๊ณผ

- ํ•˜์ดํผํŒŒ๋ผ๋ฏธํ„ฐ ํŠœ๋‹

ํ•˜์ดํผํŒŒ๋ผ๋ฏธํ„ฐ๋Š” ๋ฐฐ์น˜์‚ฌ์ด์ฆˆ, ๋Ÿฌ๋‹๋ ˆ์ดํŠธ, ์—ํฌํฌ๋ฅผ ์กฐ์ •ํ–ˆ๋Š”๋ฐ ์ฝ”๋žฉ GPU ์ œํ•œ์ด ์žˆ์–ด ๋ฐฐ์น˜์‚ฌ์ด์ฆˆ๋Š” 512์ด์ƒ ํ•  ์ˆ˜ ์—†์—ˆ๊ณ  ์—ํฌํฌ๋„ 3~4ํšŒ๋ฐ–์— ๋ชปํ–ˆ๋‹ค. ๋Ÿฌ๋‹๋ ˆ์ดํŠธ๋Š” 1์—ํฌํฌ ์ดํ›„ ๋กœ์Šค๊ฐ€ ์ž˜ ์ค„์–ด๋“ค์ง€ ์•Š์•„ ๋Ÿฌ๋‹๋ ˆ์ดํŠธ ์Šค์ผ€์ฅด๋Ÿฌ๋ฅผ ์ถ”๊ฐ€ํ–ˆ๋‹ค. ๋Ÿฌ๋‹๋ ˆ์ดํŠธ ์Šค์ผ€์ฅด๋Ÿฌ๋Š” ํŒŒ์ดํ† ์น˜์—์„œ ์ œ๊ณตํ•˜๋Š” LamdaLR์„ ์‚ฌ์šฉํ•˜์—ฌ 0.6์˜ ๊ฑฐ๋“ญ์ œ๊ณฑ์œผ๋กœ ์ค„์–ด๋“ค๊ฒŒ ํ•˜์˜€๋‹ค. ์ถ”ํ›„์—๋Š” wandb์—์„œ ์ œ๊ณตํ•˜๋Š” sweepsํˆด์„ ์‚ฌ์šฉํ–ˆ๋‹ค. 

๋‹ค์Œ ํ‘œ๋Š” ๊ฒฐ๊ณผ๋ฅผ ํ•œ๋ˆˆ์— ๋ณผ ์ˆ˜ ์žˆ๊ฒŒ  ์ •๋ฆฌํ•œ ๊ฒƒ์ด๋‹ค. 

์ •ํ™•๋„๋Š” roBERTa๋ฅผ ์‚ฌ์šฉํ•œ ๊ฒฝ์šฐ๊ฐ€ 98.28๋กœ ์ œ์ผ ๋†’์•˜์œผ๋‚˜ test ์ •ํ™•๋„๋Š” BERT๊ฐ€ 98.9๋กœ ๊ฐ€์žฅ ๋†’์•˜๋‹ค.

๊ธฐ๋ณธ์ ์œผ๋กœ ์„ฑ๋Šฅ์ด ์ข‹๋‹ค๊ณ  ์•Œ๋ ค์ง„ ์ข‹์€ ๋ชจ๋ธ์„ ์“ฐ๊ณ , ๋ฐฐ์น˜์‚ฌ์ด์ฆˆ๋ฅผ ๋Š˜๋ฆฌ๋Š” ๊ฒƒ์ด ์„ฑ๋Šฅ์„ ๋†’์ธ๋‹ค๋Š” ๊ฒƒ์„ ์•Œ ์ˆ˜ ์žˆ๋‹ค. ๊ทธ๋ ‡์ง€๋งŒ ๋ฐฐ์น˜ ์‚ฌ์ด์ฆˆ๋ฅผ ๋ฌด์ž‘์ • ์—„์ฒญ ํฌ๊ฒŒ ํ•œ๋‹ค๊ณ  ํ•ด์„œ ์ •ํ™•๋„๊ฐ€ ์˜ฌ๋ผ๊ฐ€์ง€๋Š” ์•Š๋Š”๋‹ค. ๋ชจ๋ธ๋ณ„๋กœ ๋ฒ ์ŠคํŠธ ํ•˜์ดํผํŒŒ๋ผ๋ฏธํ„ฐ๊ฐ€ ๋‹ค ๋‹ค๋ฅด๊ธฐ ๋•Œ๋ฌธ์ด๋‹ค. 

- GPT2์˜ ํŠน์ด์ 

GPT2๋Š” ๋‹ค๋ฅธ BERT ๊ธฐ๋ฐ˜ ๋ชจ๋ธ๋“ค์— ๋น„ํ•ด ๋ชจ๋ธ ์ •ํ™•๋„๋ณด๋‹ค ํ…Œ์ŠคํŠธ ์ •ํ™•๋„๊ฐ€ ๋‚ฎ์•„์ง€๋Š” ๊ฒฝ์šฐ๊ฐ€ ๋ฐœ์ƒํ•œ ๊ฒƒ์œผ๋กœ ๋ณด์•„,

GPT2๊ฐ€ ๋‹ค๋ฅธ BERT๊ธฐ๋ฐ˜ ๋ชจ๋ธ์— ๋น„ํ•ด classification task ์—์„œ๋Š” ์„ฑ๋Šฅ์ด ์ข‹์ง€ ์•Š์€ ๊ฒฝํ–ฅ์ด ์žˆ๋‹ค๊ณ  ์ƒ๊ฐ๋˜์–ด ์ด์œ ๋ฅผ ์ฐพ์•„๋ณธ ๊ฒฐ๊ณผ,

GPT-2๋Š” BERT์™€ ๋‹ค๋ฅด๊ฒŒ ์•ž์—์„œ ๋ณธ ๋ฐ์ดํ„ฐ๋งŒ์„ ๊ธฐ๋ฐ˜์œผ๋กœ ๋‹ค์Œ ๋‹จ์–ด๋ฅผ ์˜ˆ์ธกํ•˜๋ฉด์„œ ํ•™์Šตํ•œ ๋ชจ๋ธ์ด๊ธฐ์— ๋ถ„๋ฅ˜ ์ž‘์—…์— ์‚ฌ์šฉ๋˜๋Š” ๊ฒฝ์šฐ ์ด๋ฏธ ๋ณธ ํŒจํ„ด์— ๋„ˆ๋ฌด ๋งŽ์ด ์˜์กดํ•˜๋Š” ๊ฒฝํ–ฅ์ด ์žˆ์–ด, ์ƒˆ ๋ฐ์ดํ„ฐ์—์„œ ์„ฑ๋Šฅ์ด ์ €ํ•˜๋  ์ˆ˜ ์žˆ์œผ๋ฉฐ ์ด๋Š” ๊ณผ์ ํ•ฉ์œผ๋กœ ์ด์–ด์งˆ ์ˆ˜ ์žˆ๋‹ค๊ณ  ํ•œ๋‹ค. ๋˜ํ•œ GPT-2๋Š” ํ…์ŠคํŠธ ๋ถ„๋ฅ˜๋ณด๋‹ค๋Š” ๋‹ค์Œ ๋‹จ์–ด๋‚˜ ํ† ํฐ์„ ์˜ˆ์ธกํ•˜๋Š” ๊ฒƒ์ด ์ฃผ์š” ๋ชฉํ‘œ์ธ ์–ธ์–ด ๋ชจ๋ธ์ด๊ธฐ์— ๋ถ„๋ฅ˜์—์„œ๋Š” ๋‹ค๋ฅธ ๋ชจ๋ธ์— ๋น„ํ•ด ๋‚ฎ์€ ์„ฑ๋Šฅ์ด ๋‚˜์˜ฌ ์ˆ˜ ์žˆ๋‹ค. 

๋˜ ๋‹ค๋ฅธ ์ด์œ ๋Š” GPT-2์˜ ํŒŒ๋ผ๋ฏธํ„ฐ ์ˆ˜๊ฐ€ ๋งŽ๊ธฐ ๋•Œ๋ฌธ์— ๋ชจ๋ธ์ด ๊ณผ์ ํ•ฉ๋˜๊ธฐ ์‰ฝ๋‹ค๋Š” ๊ฒƒ์ด๋‹ค. ๋งŽ์€ ํŒŒ๋ผ๋ฏธํ„ฐ๋ฅผ ์‚ฌ์šฉํ•˜๋ฉด ๋ชจ๋ธ์ด ํ›ˆ๋ จ ๋ฐ์ดํ„ฐ๋ฅผ ๋งž์ถœ ์ˆ˜ ์žˆ๋Š” ์šฉ๋Ÿ‰์ด ๋” ํฌ์ง€๋งŒ ์ƒˆ๋กœ์šด ๋ฐ์ดํ„ฐ๋กœ ์ž˜ ์ผ๋ฐ˜ํ™”ํ•˜์ง€ ๋ชปํ•  ์ˆ˜ ์žˆ๋‹ค๊ณ  ํ•œ๋‹ค.

๋ฌผ๋ก  ๋ชจ๋ธ๋งˆ๋‹ค ๋ฒ ์ŠคํŠธ ํ•˜์ดํผํŒŒ๋ผ๋ฏธํ„ฐ๊ฐ€ ๋‹ค ๋‹ค๋ฅผ ์ˆ˜ ์žˆ๋‹ค๋Š” ์ ์„ ๊ฐ์•ˆํ•˜๊ณ  ๋ดค์„ ๋•Œ, GPT2๋Š” BERT๊ธฐ๋ฐ˜ ๋ชจ๋ธ๋“ค์— ๋น„ํ•˜๋ฉด ํ…์ŠคํŠธ ๋ถ„๋ฅ˜๋ฌธ์ œ์—์„œ๋Š” ์ข‹์€ ์„ฑ๋Šฅ์„ ๋ณด์ด์ง€ ์•Š๋Š”๋‹ค๊ณ  ์ƒ๊ฐํ•œ๋‹ค.

- ๋ณด์™„์ 

์‹คํ—˜ํ•˜๋ฉด์„œ loss์™€ acc๋ฅผ Wandb (Weight&Bias)๋ผ๋Š” ํˆด๋กœ ์‹œ๊ฐํ™”ํ•˜์—ฌ ๊ด€๋ฆฌํ–ˆ๋‹ค. 

 

์ •๋ฆฌํ•˜์ž๋ฉด 99%์˜ ์ •ํ™•๋„๋ฅผ ๋‹ฌ์„ฑํ•˜๊ฒ ๋‹ค๋Š” ๋ชฉํ‘œ๋กœ ํ•˜์ดํผ ํŒŒ๋ผ๋ฏธํ„ฐ ํŠœ๋‹์„ ํ•˜๊ณ  ๋‹ค๋ฅธ ๋ชจ๋ธ๋“ค์„ ์‚ฌ์šฉํ–ˆ์ง€๋งŒ ์ •ํ™•๋„๋ฅผ ํฌ๊ฒŒ ์˜ฌ๋ฆฌ์ง„ ๋ชปํ–ˆ๋‹ค. ๋‹ค๋ฅธ ๋ฐฉ๋ฒ•์„ ๋ชจ์ƒ‰ํ•œ ๊ฒฐ๊ณผ sweeps๋ฅผ ์‚ฌ์šฉํ•œ ํ•˜์ดํผํŒŒ๋ผ๋ฏธํ„ฐ ์„œ์นญ, ๋ฐ์ดํ„ฐ ์ฆ๊ฐ•์„ ๊ณ„ํšํ•˜์˜€์ง€๋งŒ, ์ฝ”๋žฉ์˜ GPU ์†Œ์ง„์œผ๋กœ ์„ค๊ณ„ํ•œ ๋ชจ๋“  ์‹คํ—˜์„ ์™„๋ฃŒํ•  ์ˆ˜ ์—†์—ˆ๋‹ค.(์—ญ์‹œ ์ธํ”„๋ผ๊ฐ€ ์ค‘์š”ํ•˜๋‹ค..) ์—ฌ๊ธฐ์„œ๋ถ€ํ„ฐ๋Š” ์‹œ๋„ํ–ˆ์ง€๋งŒ ์ ์šฉ์€ ํ•ด๋ณด์ง€ ๋ชปํ–ˆ๋˜ ์•„์ด๋””์–ด๋“ค์— ๋Œ€ํ•ด ์†Œ๊ฐœํ•ด๋ณด๋ ค ํ•œ๋‹ค. 

 

-Sweeps ๋ฅผ ํ†ตํ•œ ํ•˜์ดํผํŒŒ๋ผ๋ฏธํ„ฐ ์„œ์นญ

ํ•˜์ดํผ ํŒŒ๋ผ๋ฏธํ„ฐ๋ฅผ ์ผ์ผ์ด ๋ฐ”๊ฟ”์ฃผ๋Š” ๊ณผ์ •์„ ์ข€ ๋” ์šฉ์ดํ•˜๊ฒŒ ํ•˜๊ธฐ์œ„ํ•ด Sweeps๋ผ๋Š” ํˆด์„ ์‚ฌ์šฉํ–ˆ๋‹ค. ๋‹ค์Œ์€ Sweeps๋ฅผ ์ ์šฉํ•˜์—ฌ BERT ๋ชจ๋ธ๋กœ,  count=3์œผ๋กœ ํ•˜์—ฌ ์œ„์˜ ์„ธ๊ฐœ์˜ ํŒŒ๋ผ๋ฏธํ„ฐ๋ฅผ ๋ณ€ํ™”์‹œํ‚ค๋ฉด์„œ ํ•ด๋ณธ ๊ฒฐ๊ณผ์ด๋‹ค

์„ธ ํŒŒ๋ผ๋ฏธํ„ฐ์ค‘ ๊ฐ€์žฅ ์ค‘์š”ํ•œ ํŒŒ๋ผ๋ฏธํ„ฐ๋Š” learning rate๋ผ๋Š” ์ , ์ฆ‰ ๊ฐ™์€ ๋ชจ๋ธ์„ ์‚ฌ์šฉํ•œ๋‹ค๋ฉด ๋ฐฐ์น˜ ์‚ฌ์ด์ฆˆ๋ฅผ ๋Š˜๋ฆฌ๋Š” ๊ฒƒ ์ด์ƒ์œผ๋กœ learing rate๋ฅผ ์ž˜ ์„ ํƒํ•˜๋Š” ๊ฒƒ์ด ๋” ์ค‘์š”ํ•˜๋‹ค๋Š” ๊ฒƒ์„ ๋ณผ ์ˆ˜ ์žˆ์—ˆ๋‹ค.

์‹œ๊ฐ„๊ณผ GPU  ์ œ์•ฝ์œผ๋กœ ์ถฉ๋ถ„ํ•œ ์‹œ๋„๋ฅผ ๋ชปํ•œ ์ ์ด ์•„์‰ฝ์ง€๋งŒ count ๊ฐ’์„ ์ถฉ๋ถ„ํžˆ ํฌ๊ฒŒํ•˜์—ฌ์„œ ์—ฌ๋Ÿฌ ํŒŒ๋ผ๋ฏธํ„ฐ๋“ค์„ ๋น„๊ตํ•ด ๋ณธ๋‹ค๋ฉด ์›ํ•˜๋Š” ์ตœ์ ์˜ ํŒŒ๋ผ๋ฏธํ„ฐ๊ฐ’์„ ์ฐพ๋Š”๋ฐ ๋„์›€์ด ๋  ๊ฒƒ์ด๋‹ค.

 

- back translation ์„ ํ†ตํ•œ ๋ฐ์ดํ„ฐ์ฆ๊ฐ•

๋ฐ์ดํ„ฐ ์ฆ๊ฐ•์€ ๋‹จ์–ด ๊ต์ฒด, ์‚ฝ์ž…, ์œ„์น˜ ๋ณ€๊ฒฝ, ์‚ญ์ œ๋ฅผ ํ•˜๋Š” ๋ฐฉ๋ฒ•๋„ ์žˆ์ง€๋งŒ. ํฐ ๋‹ค์–‘์„ฑ์„ ํ™•๋ณดํ•˜์ง€๋Š” ๋ชปํ•œ๋‹ค๋Š” ๋‹จ์ ์ด ์กด์žฌํ•œ๋‹ค. ์ด๋ฅผ ๊ทน๋ณตํ•˜๊ณ ์žํ•œ ๋Œ€ํ‘œ์ ์ธ Text Generation ๋ฐฉ๋ฒ•์ธ Back Translation์€ ๋ฒˆ์—ญ๊ธฐ๋ฅผ ์ด์šฉํ•˜์—ฌ Label์„ ์œ ์ง€ํ•œ ์ฑ„๋กœ ์›๋ณธ Data๋ฅผ ํƒ€ ์–ธ์–ด๋กœ ๋ฒˆ์—ญํ•œ ๋’ค, ๋‹ค์‹œ ์›๋ž˜์˜ ์–ธ์–ด๋กœ ์žฌ๋ฒˆ์—ญํ•˜๋Š”๋ฐ, ์ด๋•Œ ์ถ”๊ฐ€๋˜๋Š” ๋…ธ์ด์ฆˆ๊ฐ€ ์ฆ๊ฐ• ์ธก๋ฉด์—์„œ ์„ฑ๋Šฅ์„ ํฌ๊ฒŒ ์˜ฌ๋ฆฐ๋‹ค๊ณ ํ•œ๋‹ค. 

์ •๊ทœํ‘œํ˜„์‹์„ ํ™œ์šฉํ•˜์—ฌ ์ „์ฒ˜๋ฆฌ๋ฅผ ํ•˜๊ณ , ์˜์–ด → ํ”„๋ž‘์Šค์–ด → ์˜์–ด๋กœ ์žฌ๋ฒˆ์—ญํ•˜์—ฌ ๋ถ€์ •๋ฆฌ๋ทฐ 20๋งŒ๊ฐœ๊นŒ์ง€ ์ฆ๊ฐ•ํ•ด๋ณผ ๊ณ„ํš์„ ์„ธ์› ๋‹ค. ๊ธ์ •๋ฆฌ๋ทฐ์™€ ๋ถ€์ •๋ฆฌ๋ทฐ ๊ฐœ์ˆ˜๊ฐ€ 7๋งŒ๊ฐœ๋กœ ์ƒ๋Œ€์ ์œผ๋กœ ๊ธ์ •์ ์ธ ๋ฆฌ๋ทฐ๊ฐ€ ํ•™์Šต๊ณผ ๋ถ„๋ฅ˜๊ฐ€ ๋” ์ž˜ ๋œ๋‹ค๊ณ  ์ƒ๊ฐํ–ˆ๊ธฐ ๋•Œ๋ฌธ์ด๋‹ค. ๊ทธ๋Ÿฌ๋‚˜, 3300๊ฐœ ๊นŒ์ง€ ์ฆ๊ฐ•ํ•œ ์ƒํ™ฉ์—์„œ ์ฝ”๋žฉ GPU์™€ computer units ํ• ๋‹น๋Ÿ‰์„ ๋‹ค ์†Œ์ง„ํ•˜์—ฌ ์ ์šฉํ•˜์ง„ ๋ชปํ–ˆ๋‹ค.

 

- ๋” ์ข‹์€ ์‹œ๊ฐํ™”๋ฅผ ์œ„ํ•ด 

์„ธ๋ฒˆ์งธ๋กœ๋Š”, ์‹œ๊ฐํ™”ํ•œ ๋ชจ์Šต์„ ๋ณด์‹œ๋ฉด train loss์™€ validation loss๊ฐ€ ์„œ๋กœ ๋‹ค๋ฅธ time์— ์ฐํ˜€์žˆ๋Š”๊ฒƒ์„ ๋ณผ ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค. train์€ ๊ณ„์‚ฐ๋ ๋•Œ๋งˆ๋‹ค, val์€ ํŠน์ • ๊ตฌ๊ฐ„์˜ ํ‰๊ท ์œผ๋กœ ๊ณ„์‚ฐํ•˜์—ฌ ์‹œ๊ฐํ™”ํ–ˆ๊ธฐ ๋•Œ๋ฌธ์—, ์„œ๋กœ ๋ช…ํ™•ํ•œ ๋น„๊ต๊ฐ€ ์–ด๋ ค์› ๋‹ค. train loss๊ฐ€ ๊ธฐ๋ก๋˜๋Š” timestep์„ validation loss๊ฐ€ ๊ธฐ๋ก๋˜๋Š” time step๊ณผ ๋งž์ถฐ์•ผ ํ•  ๊ฒƒ์ด๋‹ค. ์ด ๋ฐฉ๋ฒ•์—๋Š” ์—ฌ๋Ÿฌ๊ฐ€์ง€๊ฐ€ ์žˆ๋Š”๋ฐ, vaildation์ด ์ฐํž๋•Œ train์„ ๊ฐ™์ด ์ฐ๊ฑฐ๋‚˜ log์— ์ €์žฅ๋˜๋Š” train loss ๋งŒ ์ญ‰ ์ €์žฅํ•œ๋’ค, ๋‚˜์ค‘์— ๋งž์ถฐ์„œ ๊ทธ๋ ค์ฃผ๋Š” ๋ฐฉ๋ฒ•์ด ์žˆ๋‹ค. 

 

- ensemble ๋ชจ๋ธ

์ถ”ํ›„์—๋Š” ๊ฐ ๋ชจ๋ธ ๋ณ„๋กœ ์ตœ์ ์˜ ํŒŒ๋ผ๋ฏธํ„ฐ๋ฅผ ์ฐพ์•„์„œ ๋งŒ๋“  ๋ช‡ ๊ฐœ์˜ ๋ชจ๋ธ๋“ค์„ ์ด์šฉํ•ด์„œ ensemble ๋ชจ๋ธ (hard voting classifier) ์„ ๋งŒ๋“ค์–ด์„œ ์‚ฌ์šฉํ•˜๋Š” ๊ฒƒ๋„ ์ข‹์€ ๋ฐฉ๋ฒ•์ด ๋  ๊ฒƒ ๊ฐ™์Šต๋‹ˆ๋‹ค. 

 

๋ฐ˜์‘ํ˜•