μžμ—°μ–΄ 처리/Today I learned :

[NLP] μ–Έμ–΄λͺ¨λΈ: 트랜슀포머 κ°œμš”

주영 🐱 2022. 7. 28. 19:27
728x90
λ°˜μ‘ν˜•

μ–Έμ–΄ λͺ¨λΈμ΄λž€?

단어 μ‹œν€€μŠ€μ— ν™•λ₯ μ„ λΆ€μ—¬ν•˜λŠ” λͺ¨λΈ

 

트랜슀포머?

2017λ…„ ꡬ글이 μ œμ•ˆν•œ μ‹œν€€μŠ€-투-μ‹œν€€μŠ€ λͺ¨λΈ, κΈ°κ³„λ²ˆμ—­κ³Ό 같은 μ‹œν€€μŠ€-투-μ‹œν€€μŠ€  과제λ₯Ό μˆ˜ν–‰ν•œλ‹€.

 

μ‹œν€€μŠ€?

단어와 같은 λ¬΄μ–Έκ°€μ˜ λ‚˜μ—΄

 

μ‹œν€€μŠ€-투-μ‹œν€€μŠ€?

νŠΉμ • 속성을 μ§€λ‹Œ μ‹œν€€μŠ€λ₯Ό λ‹€λ₯Έ μ†μ„±μ˜ μ‹œν€€μŠ€λ‘œ λ³€ν™˜ν•˜λŠ” μž‘μ—… (기계 λ²ˆμ—­)

μ†ŒμŠ€ μ–Έμ–΄ -> 타깃 μ–Έμ–΄λ‘œ λ³€ν™˜ (μ΄λ•Œ 길이가 달라도 과제 μˆ˜ν–‰μ— λ¬Έμ œκ°€ μ—†μ–΄μ•Ό 함)

 

μ‹œν€€μŠ€-투-μ‹œν€€μŠ€ λͺ¨λΈμ˜ ꡬ성

인코더 : μ†ŒμŠ€ μ‹œν€€μŠ€ μ••μΆ•(=인코딩)ν•˜μ—¬ λ””μ½”λ”λ‘œ 보냄

디코더 : 타깃 μ‹œν€€μŠ€ 생성(=λ””μ½”λ”©)

 

트랜슀포머 ꡬ쑰

input:μ†ŒμŠ€ μ‹œν€€μŠ€ 전체

output : 타깃 μ‹œλ­”μŠ€ 일뢀

트랜슀포머 ν•™μŠ΅ κ³Όμ •

인코더 μž…λ ₯ : μ–΄μ œ, 카페, κ°”μ—ˆμ–΄, κ±°κΈ°, μ‚¬λžŒ, λ§Žλ”λΌ (μ†ŒμŠ€μ‹œν€€μŠ€ 전체)

디코더 μž…λ ₯: <s>

<s> 타깃 μ‹œν€€μŠ€μ˜ μ‹œμž‘μ„ μ•Œλ¦¬λŠ” μŠ€νŽ˜μ…œ 토큰

 

μΈμ½”λ”λŠ” μ†ŒμŠ€μ‹œν€€μŠ€λ₯Ό μ••μΆ•ν•΄ λ””μ½”λ”λ‘œ μ „μ†‘ν•˜κ³  λ””μ½”λ”λŠ” μΈμ½”λ”μ—μ„œ 받은 정보와 디코더 μž…λ ₯을 κ³ λ €ν•΄ λ‹€μŒ 토큰 (I)λ₯Ό 맞힘

 

 

트랜슀포머의 μ΅œμ’… 좜λ ₯ = 디코더 좜λ ₯ :::: 타깃 μ–Έμ–΄μ˜ μ–΄νœ˜ 수만큼의 μ°¨μ›μœΌλ‘œ κ΅¬μ„±λœ 벑터

νŠΉμ§• : λ²‘ν„°μ˜ μš”μ†Œλ“€μ˜ 값은 λͺ¨λ‘ ν™•λ₯ κ°’ ---- λͺ¨λ‘ λ”ν•˜λ©΄ 1이 됨

 

트랜슀포머의 ν•™μŠ΅μ€ 인코더와 λ””μ½”λ”μž…λ ₯이 μ£Όμ–΄μ‘Œμ„ λ•Œ μ •λ‹΅ λ‹¨μ–΄μ˜ ν™•λ₯ κ°’을 λ†’μ΄λŠ” λ°©ν–₯으둜 μˆ˜ν–‰ -> 이 λ°©ν–₯으둜 λͺ¨λΈμ„ 계속 μ—…λ°μ΄νŠΈ

 

ν•™μŠ΅ 과정에 이전 μ •λ‹΅ 타깃 μ‹œλ­”μŠ€ <s> I λ₯Ό λ„£μ–΄μ€Œ

 

이런 λ°©μ‹μœΌλ‘œ λ§λ­‰μΉ˜ 전체λ₯Ό ν•™μŠ΅ν•˜λ©΄ ν•œ-영 κΈ°κ³„λ²ˆμ—­ μˆ˜ν–‰μ΄ κ°€λŠ₯

λ°˜μ‘ν˜•