-
Notifications
You must be signed in to change notification settings - Fork 2
Peer_Session_Week_2
2021.05.03 (์)
- ํ์ : BM25 ํ ํฌ๋์ด์ฆ ์๋ฌด๊ฒ๋ ์ ํ ๊ฒ ์ฑ๋ฅ ๊ฐ์ฅ ์ข์์ (๋ฒ ์ด์ค๋ผ์ธ morphs ์ฌ์ฉ)
- ์ตํจ Elasticsearch Guide 7.12
- ์์๋ธ ์๋ โ ์ฑ๋ฅ ํ๋ฝ
- ํ์ : ์์๋ธ์ ์ด๋ป๊ฒ ?
- ์ตํจ : k=1๋ก ํด์ ๊ฐ ๋ชจ๋ธ์ด ์์ธกํ ๊ฒ์ Count ๊ธฐ์ค์ผ๋ก ์์๋ธ ์๋ํจ. k์ ๊ฐ์ ๋๊ฒ ์ฃผ๋ ๊ฒฝ์ฐ๋ ์๋ ๊ฒ ๊ฐ์ผ๋, 1๊ฐ๋ฅผ ์ฐ๋๊ฒ ์ข๋ค๋ ๊ธ์ ๋ดค๋ค.
Evaluating QA: the Retriever & the Full QA System
- ์ตํจ : k=1๋ก ํด์ ๊ฐ ๋ชจ๋ธ์ด ์์ธกํ ๊ฒ์ Count ๊ธฐ์ค์ผ๋ก ์์๋ธ ์๋ํจ. k์ ๊ฐ์ ๋๊ฒ ์ฃผ๋ ๊ฒฝ์ฐ๋ ์๋ ๊ฒ ๊ฐ์ผ๋, 1๊ฐ๋ฅผ ์ฐ๋๊ฒ ์ข๋ค๋ ๊ธ์ ๋ดค๋ค.
- ์ข
ํ : Votingํ ๋์๋ k๋ฅผ ๋ ๋ง์ด ์ฐ๋๊ฒ ์ข์ง ์์๊น?
- ์ตํจ : ๊ฒฝํ์ k๊ฐ ์ฌ๋ผ๊ฐ์๋ก ๋จ์ด์ง๋๋ผ.
- ํ์ : BM25๊ฐ ๋ ์ข๋ค๊ณ ์๊ฐ BM25๋ Dense Embedding์์ ๊ฐ ์์ธก์ ๋ด๊ณ , BM25์์ ๋ธ ์์ธก์ ๊ธฐ์ค์ผ๋ก Dense Embedding๊ณผ๋ ๋งค์นญ์ด ๋๋์ง๋ฅผ ์ฒดํฌํ๋ ํํ๋ฅผ ๊ตฌ์์ค์.
- ์ข ํ : Dense Embedding์์ ์ฑ๋ฅ ํฅ์ ๊ฐ๋ฅ์ฑ์ด ๋ณด์ธ๋ค. ์๊พธ Cuda Error๊ฐ ๋์ ์์ง์ ๋ฉ์ถฐ์๋ค. ์ค๋ฐ๊ฟ ๋ฌธ์์ ๊ฐ์ ํ ์คํธ๋ ์ ์ฒ๋ฆฌ๋ก ์ง์ฐ๊ณ ์ฌ์ฉํ๋ค.
- ์ข ํ : ์ค๋ ๊ฐ์ ์ค์ต์์ ์ฌ์ฉํ ๋์๋ ํ์ต์ ๋ํ ๋ด์ฉ์ ์๊ณ , ๋ถ๋ฌ๋ค ์ฐ๋ ๊ฒ๋ง ์๋๋ผ.
- ์ตํจ & ์ข ํ & ํ์ : ์๋ฌดํผ Dense Embedding๋ ํ์ฉํด์ ์์ธก์ ํ๋ ๊ฒ์ด ์ข์ ๊ฒ ๊ฐ๋ค.
- ์ตํจ
- Random Mask ์์๋ดค๋ค โ validation์์ ํจ๊ณผ ๆ
- but, ์ ์ถ ์ ์ฑ๋ฅ ํ๋ฝ
- ์ ์ฒ๋ฆฌ๋ ๋ฌด์กฐ๊ฑด ํ์ํ ๋ฏ(KorQuAD๋ ๋ณ๋ค๋ฅธ ์ฒ๋ฆฌ ์์ด ์ฑ๋ฅ์ด ์ ๋์ค๋ ๊ฒ์ผ๋ก ๋ดค์ ๋, ๋ฐ์ดํฐ ์ฒ๋ฆฌ๋ง ์ํด๋ ์ข์ ํจ๊ณผ๊ฐ ์์ ๊ฒ ๊ฐ๋ค.)
- \n โ ๊ฐํ ๋ฌธ์ ์ ์ฒ๋ฆฌ
- ์ด๋ชจํฐ์ฝ ์ ์ฒ๋ฆฌ
- ์์ง : ElectraForQA๋ฅผ ํ๋ ์ค์. monologg๋์ด KorQuAD์์ 90๋ช%๋ฅผ ์ฐ์๋ค๋๋ผ. ๋ฒ ์ด์ค๋ผ์ธ Tokenizer์์ ์ฐจ์ด๊ฐ ์์ด์, ๋ ์์ฑ์ ๊ตฌํํด์ผ ํจ. ์ด๊ฑธ ์ ์ด๋ป๊ฒ ํ๋ฉด ๊ตฌํํ ์ ์์ ๊ฒ ๊ฐ๋ค. ์ด ๋ฒ ์ด์ค๋ผ์ธ์ ๋ง๋๋ก ๋ฐ๊พธ๊ณ , ์ฐ๋ฆฌ ๋ฐ์ดํฐ๋ก ์ฌํ์ต ์ํค๋๊ฒ ์๋ฏธ๊ฐ ์์๊น? ์ด ์์
์ ํ๋๊ฒ ํจ์จ์ ์ด๊ธด ํ ๊น?์ ๋ํ ์๋ฌธ๋ ์๋ค.
- ์ตํจ : Fast Tokenizer์๋ง ํด๋น ์์ฑ์ด ์๋ ๊ฒ์ธ๊ฐ?
- ์์ง : ํ์ฌ ์ฌ์ฉํ๋ ค๋ Tokenizer๋ Fast๊ฐ ์๊ณ , ๊ทธ๋ฌ๋ค๋ณด๋ ๋ฒ ์ด์ค๋ผ์ธ์์ ์ฌ์ฉํ๋ ์์ฑ์ด ์๋ค.
- ์ข ํ & ์ฌํฌ : monologg๋์ด ํ ํ์ต ๋ฐฉ๋ฒ์ ์์๋ณด๊ณ ํ์ฉํด ๋ณผ ์ ์์ง ์์๊น?
- ์ตํจ : KoElectra๋ก ๋๋ฆด๋ ๋์๋ ๊ฐ๋ค.
- ์์ง : Fine Tuning๋ Model์ด ์๋์๊ฐ๊ณ ์๋ค.
- ์ฌํฌ & ์ตํจ : ์ผ๋จ ํด๋ณด๋ ๊ฒ ์ข์ ๊ฒ ๊ฐ๋ค.
- ์ตํจ : Fast Tokenizer์๋ง ํด๋น ์์ฑ์ด ์๋ ๊ฒ์ธ๊ฐ?
- ํ์ : ์กฐ๊ธ ๋ค๋ฅธ Context๋ฅผ ๋ฃ๊ณ , ์ ๋ต์ด ์๋ค๋ ๊ฒ์ ํ์ต์ํค๋ฉด ์ข์ง ์์๊น?
- ์ฌํฌ : ์ ๋ต์ด ์๋ค๋ ๊ฒ์ ํ์ต์ํฌ ์ ์๋ค๋ฉด ์ข์ ๊ฒ ๊ฐ๋ค.
- ์์ง : ์ข ํ๋๊ป ์ฝ์ด๋ฌ๋ผ๊ณ ํ ๋ ผ๋ฌธ์ด ๋น์ทํ ๋ด์ฉ์ด ๋ด๊ฒจ์๋ค.
2021.05.04 (ํ)
- ํ์ : ์ ์ฒ๋ฆฌ๋ฅผ ์ด๋ ๋จ๊ณ์์ ํ์ฉํ๋?
- ์ตํจ : Retrieval ๋จ๊ณ์์๋ถํฐ ํ์ฉํ๋ค. ์ด๋ ์ฑ๋ฅํฅ์์ด ์์ง๋ ์์๊ณ , ์ด ์ ์ฒ๋ฆฌ ๋ Text๋ฅผ Reader์์ ํ์ฉํ๊ธฐ ์ํด ์ด ๋จ๊ณ์์๋ถํฐ ์ฒ๋ฆฌํ๊ณ ์ฌ์ฉํจ.
- ์ข
ํ : ์ด์ ๋งํ๋ Cuda Error์ ์์ธ์ ์ฐพ์๋ค. (ํ์ต ์ ๋ฆฌ์ ์ฌ๋ ค๋จ๋ค.) ์๋๋ Context ์ ์ฒด์ ๋ํด์ Index๋ฅผ ์ก์์ฃผ๋ ค๊ณ ํ์. ์ฌ์ ํ์ต๋ ๋ชจ๋ธ์ 512 Size์ด๊ธฐ ๋๋ฌธ์, Index๊ฐ ๋์ด๊ฐ๋ฉด ๋ถ๋ฅผ์๊ฐ ์๊ธฐ ๋๋ฌธ์. ๊ทธ๋์, ๋ฌธ์ฅ๋จ์๋ก ๋์ด์ 512์ด๋ด๋ก ํด๊ฒฐํ ์ ์๋๋ก ํ์. ๊ทผ๋ฐ, ์ด ์ดํ์ Cuda Error๊ฐ ๋จ. ํ ๋ฌธ์ฅ์ธ๋ฐ๋, 512๋ฅผ ๋์ด๊ฐ๋ ๋ฌธ์ ๊ฐ ์์๊ธฐ ๋๋ฌธ์ด์์. ๊ทธ๋์ 512๊ฐ ๋์ด๊ฐ๋ ๋ฌธ์ฅ์ ๋ํด์๋ ๊ทธ ์ดํ Index๋ฅผ ๋์ผํ๊ฒ 512๋ก ์ฒ๋ฆฌํจ. ๋๋ ค๋ณด๊ณ ์ฑ๋ฅ ์ฒดํฌ๋ฅผ ํ๊ธฐ ์ํด ์์๋ฐฉํธ์ ๊ฐ๊น์ด ์ฒ๋ฆฌ๋ฅผ ํ ์ํฉ์.
- ์ตํจ : ๋ถ์ฉ์ด์ ๊ฐ์ ์ ๋ณด๋ฅผ ์ ๊ฑฐํ๊ณ ๋๋ฉด ๋ชจ๋ ๋ฌธ์ฅ์ 512 ์ด๋ด๋ก ๋ฃ์ ์ ์์์ง๋ !
- ์ตํจ : Dense Embedding์ ํ์ฉํด๋ณด์. Elastic Search๋ก ํ 20๊ฐ๋ฅผ ๋ฝ๊ณ , ๊ทธ ๋ค์์ Dense Embedding์ ํต๊ณผํด์ ์ต์ข
N๊ฐ์ Document๋ฅผ ์ฐพ๋ ๊ฒ์ ์ด๋จ๊น?
- ์ข ํ : ์๋ํ ์๊ฐ์ ํ๋ค. ๋ค๋ง, ์์๋ ์ด๋ค๊ฒ ๋ ์ข์์ง๋ ๊ณ ๋ฏผ์ด ๋๋ค.
- ์ตํจ : Top20์ด๋ฉด ๊ฑฐ์ 100% ์ ๋ต์ ํด๋นํ๋ Document๋ฅผ ์ฐพ์ ๊ฒ ๊ฐ๋ค. ๊ทธ๋ผ, ์ด ์ค์์ Dense Embedding์ ํต๊ณผํ๋ฉด ์ข์ ๊ฒ ๊ฐ๋ค๋ ์๊ฐ์ด ๋ค์๋ค.
- ํ์ : ์ฟผ๋ฆฌ๋ฅผ ๊ธฐ๋ฐ์ผ๋ก ์ ์ฒด ๋ฌธ์ฅ๊ณผ์ ์ ์ฌ๋๋ฅผ ๊ตฌํ๊ณ ์ ์ฌ๋๊ฐ ๋์ ๋ฌธ์ฅ์ ์ ๋ ฅ์ผ๋ก ์ฌ์ฉํ๋ ๊ฒ์ ์ด๋จ๊น?
- ์ตํจ : ์ ์ฒ๋ฆฌ๋, Concat ๋๊ฐ ์จ๋ดค๋๋ฐ, ๋ ๋ค ์ฑ๋ฅ ํฅ์์ด ์์๋ค.
- ํ์: concat ํ ๊ฑฐ ์จ๋ดค๋๋ฐ 5~7์ด ๊ฐ์ฅ ์ ๋นํ์
- ์ตํจ: 5๊ฐ or 7๊ฐ?
- ํ์: 7๊ฐ (10๊ฐ๋ ํ์คํ ์๋ โ EM์ ์ฌ๋ผ๊ฐ๋๋ฐ F1 ์ค์ฝ์ด๋ ์ข ๋จ์ด์ง)
- ์ตํจ: 5๊ฐ or 7๊ฐ?
- ์์ง : offset_mapping๊ณผ overflow_to_sample_mapping์ ๊ตฌํํ๋ ค๊ณ ํ๋๋ฐ, ๊ฒฐ๊ณผ๋ก ์ ์ผ๋ก label์ ํด๋นํ๋ ๊ฐ๋ง ์ฐพ์ผ๋ฉด ๋ ๊ฒ์ด๋ผ๊ณ ์๊ฐํจ. ๊ทธ๋์, ํ์์ ๋ง๊ฒ ๋ง๋ค์ด๋ง ์ฃผ๋ฉด ๋ ๊ฒ์ด๋ผ๊ณ ์๊ฐํ์. Logic ๊ธฐ๋ฐ์ผ๋ก ๋์ผํ ํจ๊ณผ๋ฅผ ๋ด๋๋ก ์๋ฅผ ๊ตฌํํ ์ ์์ ๊ฒ ๊ฐ๋ค.
- ์ฌํฌ : Span ๋จ์ Random Masking ์ค๋ช (Notion ๋งํฌ ์ฐธ์กฐ) ๋จ์ด์ ์์์ ์ฐพ๋ Logic์ด ์๊ณ , Randomํ ๊ธธ์ด๋งํผ์ Token์ Maskingํ๋ ํํ๋ก ๊ตฌ์ฑ๋์ด ์์. MLM๊ณผ SBO์ Task๋ก Loss๋ฅผ ๊ตฌํ๋ ํํ๋ก ํ์ต์ ์ํฌ ์ ์์. ์ด๋ฅผ ํตํด์, Token์ ์๋ฏธ๋จ์๋ก ์ ๊ตฌ๋ถํ๋ Model์ ๋ง๋ค ์ ์์ผ๋ฆฌ๋ผ ์๊ฐ ๋จ.
- ์ตํจ : Token ๋จ์ Random Masking์ ์ฑ๋ฅ์ด ๋จ์ด์ก๋ค.
- ์ข ํ : Question์ชฝ์ Masking์ ํด๋ณด๋ ๊ฑด ์ด๋จ๊น?
- ์์ง : ํ์๋์ด ๋ง๋ Dataset ์ ์ฉํด๋ณด์๋๊ฐ? ์ตํจ๋?
- ์ตํจ : ์ถ๊ฐ ๋ฐ์ดํฐ ์ฐ๋ ๊ฒ์ ๋ค์ ์๋ํด๋ณด๊ธด ํด์ผํ ๊ฒ ๊ฐ๋ค. (ํ ๋ก ๊ฒ์ํ์ ์ฌ๋ผ์จ ๊ฒ์ ๋ณด๋๊น, ๊ธธ์ด์ ๊ฐ์ ์ด์๊ฐ ์์์์ง๋ ๋ชจ๋ฅด๊ฒ ๋ค.)
- ์ตํจ : ํ์ต ํ ๋๋ ์ฌ๋ฌ Context๋ฅผ Concatenateํ๊ณ , ํ์ต ์ํค๋๊น ์ฑ๋ฅ์ ์ค๋ฅด๋๋ผ. ํ์ฌ k=5, 7๊น์ง๋ ํด๋ณผ ์์
- ํ์ : Question์ ๋ณํํ๋ ๋ฐฉ๋ฒ์ ์ด๋จ๊น?
- ์ฌํฌ : ์์ง๋์ด ์ค ๋ ผ๋ฌธ ์ข์๋ฏ Top N์ Document๋ฅผ ๊ฐ์ ธ์์, Noise๋ฅผ ์ ๊ฑฐํ๋ค. Document๋ฅผ Paragraph๋ก ๋๋ ์ ๊ฐ๊ณ ์ค์. Paragraph๋ด์์ Ranking์ ๋งค๊ธฐ๊ณ , ์ค์ํ Paragraph๋ง ๊ฐ์ ธ์ค์. ์๊ด์ด ์๋ Paragraph๋ Noise๋ก ํ๋จํจ.
2021.05.05 (์)
-
์ปดํผํฐ์ ์ ์งํํ๋ฉด์ ์ฃผ์ด์ง ํ ์คํฌ์ ๋ง๊ฒ ์งํ(์ ์ฒ๋ฆฌ, ๋ถ์ฉ์ด ์ ์๋ฑ๋ฑ...) ํ๋๊ฒ ์ค์ํ๋ค๋ ๋ง์ ๋ง์ด ๋ค์๋๋ฐ ์์ง ๊ฒฝํ์ด ์ ์ด ํด๋น ๋ง์ด ์ ์๋ฟ์ง ์์ต๋๋ค. ๊ฐ๋จํ ์์๊ฐ์๊ฒ ์์๊น์?? (๊ธฐ๊ณ๋ ํด๋ถ๋ถ์ด ์๋์ฌ๋ ๊ด์ฐฎ์ต๋๋ค)
-
ํ์คํฌ๋ฅผ ์๊ฐํ๋ฉด ๋น์ฐํ ๋ถ๋ถ์ด ์์ ๊ฒ ๊ฐ์. Task๋ง๋ค ๋ค๋ฅธ ๊ฒฝ์ฐ๊ฐ ๋ง์. wiki์์ ๊ฐ์ ธ์ค๋ค๋ณด๋ฉด ๋ค์ด๊ฐ๋ ํ๋, ์ด๋ชจํฐ์ฝ, HTML Tag ๋ฑ ๊ฐ์ Classification์ ๊ฒฝ์ฐ์๋ ์ด๋ชจ์ง๋ฅผ ๋๋๋ ๊ฒฝ์ฐ๋ ์์. ์๋ฅผ ๋ค๋ฉด, ๋ฌธ์ฅ๋ถํธ์ ๊ฒฝ์ฐ๋ Task์ ๋ฐ๋ผ ์ฒ๋ฆฌ ๋ฐฉ๋ฒ์ด ๋ฌ๋ผ์ง ๋ฏ
-
์ค์ํ Input์ธ๊ฐ์ ๋ํ ์ฌ๋ถ๋ก ์๊ฐํด๋ณด๋ฉด ์ข์ ๋ฏํ๋ค. ์์ด์ ๊ฒฝ์ฐ ๊ด์ฌ๊ฐ ์๋ฏธ๋ฅผ ํ์ ํ๋๋ฐ ์ค์ํ๊ฐ? ์ ๊ฐ์ด ์๊ฐํ ์ ์์๋ฏ. ๋ถ์ฉ์ด๋ Named Entity๋ก ์ธ์ํ๊ณ ๋จ๊ฒจ๋๊ฑฐ๋ ์ฒ๋ฆฌํ๊ฑฐ๋ ํ๋ ๋ฑ ๊ฐํ๋ฌธ์ ์ ๊ฑฐ ๋ฑ์ ์ฑ๋ฅ ํฅ์์ ๋์์ด ๋๋ ๊ฒ์ด ๋ง์. ํน์๋ฌธ์ ๋ฑ ์ ๊ฑฐ๋ ํต์ ๋ง์ด ์ฌ์ฉํจ. ์๋๋ ์ ๋ต์ ๋ฐฐ๋ฆฌ์์ด์ ์ด ์๋๋ฐ, ์ด๋ ๊ธฐ ๋๋ฌธ์ ํต์์ ์ผ๋ก๋ ์ง์ฐ๋๊ฒ ๋ง์. ex) ์ธ๋ฌผ์ ์ด๋ฆ์ ์ฐพ๋ ๊ฒฝ์ฐ, ์ฑ์ด ์๊ณ ์๊ณ , ๋ฑ๊ณผ ๊ฐ์ ๋ฐฐ๋ฆฌ์์ด์ ์ด ์์ด์ผ ํจ. but) ํ์ฌ๋ answer๊ฐ 1๊ฐ ๋ฐ์ ์๊ธด ํจ. โ ๋ฌธ์ ์ ์๋ฅผ ๋ฐ๋ผ๊ฐ๋๊ฒ ๋ง๋ ๊ฒ ๊ฐ๋ค.
-
์ข ํ : ๋ง์ฝ ๊บฝ์ ๋ฅผ ๋ถ์ด๋ ์์ผ๋ก Prediction์ ๋ณ๊ฒฝํ๋ ๊ฒ์ ์ด๋จ๊น์?
๋ฉํ ๋ : ๊ฐ๋ฅํ ํ์ฒ๋ฆฌ ๋ฐฉ๋ฒ์ผ ์ ์์. but, ๋ชจ๋ Prediction์ ๋ถ์ฌ์ผ ํ๋์ง์ ๋ํ ์์ฌ๊ฒฐ์ ์ Data์ ๋ถํฌ ๋ฑ ํ์ธ ํ์ ํ๋ ๊ฒ์ด ์ค์ํ ๋ฏ
-
-
-
๋ฒ ์ด์ค๋ผ์ธ์์ ์ฌ์ฉํ๋ Tokenizer๋ PreTrainedTokenizerFast (FastTokenizer) ๊ธฐ๋ฐ์ธ๋ฐ ์ ๊ฐ ์ฌ์ฉํ๊ณ ์ถ์ QA task์ fine-tune๋ tokenizer๋(monologg/koelectra-base-v2-finetuned-korquad) FastTokenizer ๊ธฐ๋ฐ์ด ์๋๋ผ FastTokenizer์์ ์ ๊ณตํ๋ ๋ช๋ช feature๋ค์ด ์์ต๋๋ค. (ex. offset_mapping, overflow_to_sample_mapping ๋ฑ) ์ง๊ธ์ผ๋ก์ ์ ํฌ ๋ฒ ์ด์ค๋ผ์ธ์ ๋ง๊ฒ ํด๋น feature๋ค์ ์ง์ ๊ตฌํํด๋ณด๋ ์์ผ๋ก ์งํํ๊ณ ์๋๋ฐ ํน์ ์ด๊ฒ ๋ง๊ณ ๋ ๋ค๋ฅธ ๋ฐฉ๋ฒ์ด ์์๊น์?
- ์์ง : KorQuAD๋ก ๋ฏธ๋ฆฌ ํ์ตํ Model์ ํ์ฉํด๋ณด๋ ค๊ณ ํ ์๋์๋ค. KorQuAD์์ ์ฑ๋ฅ์ด ๋ณด์ฅ๋์ด๋, ์ฐ๋ฆฌ Data์ ์์ ๋ง์ง๋ ์์๋ ๊ฒ ๊ฐ๋ค. ์ด๋ฐ ์ ๊ทผ ๋ฐฉ๋ฒ์ด ์ข์๊น์? ๋ฉํ ๋ : KorQuAD์ ์ฐ๋ฆฌ์ Data๋ ๋ถํฌ๊ฐ ๋ค๋ฅด๊ธฐ๋ ํ๋ค. ์ง๋ฌธ์ ์ ํ๋ ๋ค๋ฅด๊ณ , Context์ ์ ํ๋ ์ข ๋ค๋ฅด๋ค. Data์ ๋ถํฌ๊ฐ ๋ค๋ฅธ ๊ฒ์ ๋ง๋ค. ํ์ง๋ง, Data๋ฅผ ์ถ๊ฐํ๋ค๋ ์๋ฏธ์์, ํ์ต์์ ๋์์ด ๋ ๊ฑฐ๋ผ๋ ์๊ฐ์ ํ๋ค.
- ์ตํจ : KorQuAD๋ฅผ ์ฌ์ฉํด์ ํ์ต์์ผ๋ดค๋๋ฐ, ์คํ์ ์ผ๋ก๋ ์ฑ๋ฅ์ด ๋งค์ฐ ๋จ์ด์ง๋๋ผ. ๊ทธ๋ฆฌ๊ณ ๊ธธ์ด๋ ๋งค์ฐ ๋ค๋ฅธ ๊ฒ์ ๋ณผ ์ ์์๋ค. Wiki Dataset๊ณผ KorQuAD Dataset์ ๊ธธ์ด๋ฅผ ๋น์ทํ๊ฒ ๋ง์ถ๋๊ฑด ์ด๋จ๊นํ๋ ์๊ฐ๋ ํ๊ณ ์์. ๊ทธ๋ฆฌ๊ณ ์ด๋ ๊ฒ Data๋ฅผ ๋๋ฆฌ๋ฉด Retrieval์ ์ฑ๋ฅ์ด ๋จ์ด์ง๋ ๊ฒ๋ ์ฐ๋ ค๊ฐ ๋๋ค. ๋ฉํ ๋ : KorQuAD๋ก ํ์ต์ ์งํํ ๋ค์์, ๊ทธ ๋ค์์ ์ฐ๋ฆฌ Dataset (KLUE)๋ฅผ ํ์ตํด๋ณด๋ ๊ฒ๋ ๋ฐฉ๋ฒ์ผ ์ ์๋ค. ํน์ Oversampling์ ํด์ ๋น์จ์ ๋ง์ถ๋ ํํ๋ก ํ์ต์์ผ๋ณด๋ ๊ฒ๋ ๋ฐฉ๋ฒ์ผ ์ ์๋ค. ๊ธธ์ด๋ ์ด์ฐจํผ Readingํ ๋ ์๋ผ์ ์ฝ๊ธฐ ๋๋ฌธ์, ํฌ๊ฒ ๋ฌธ์ ๋์ง ์์ ๊ฒ์ด๋ผ๊ณ ์๊ฐํ๋ค.
- ์ตํจ : ์ KorQuAD์ ์ฐ๋ฆฌ์ Data์ ๊ธธ์ด๋ ์ ์ฐจ์ด๊ฐ ํฐ๊ฐ์? ๋ฉํ ๋ : KLUE Data๊ฐ KorQuAD๋ณด๋ค ์ด๋ ต๊ฒ ์ค๊ณํ๋ค. ์๋๋ฉด, KorQuAD์ ๋ค๋ฅด๊ฒ ๋ง๋ค์ด์ผ ํ๊ธฐ ๋๋ฌธ์, ๋ ์ด๋ ต๊ฒ ๋ง๋ค์๋ค. ๊ทธ๋์ ๋ ์ด๋ ค์ธ ๊ฒ์.
- ์ต : ์ต์ง๋ก KorQuAD์ ๋ง์ถ ํ์๋ ์๋ ๊ฒ์ผ๊น์? ๋ฉํ ๋ : ํ๋ต์ ๋๋ฆด ์๋ ์์ ๊ฒ๊ฐ๋ค. ๊ทผ๋ฐ Model์ ๊ธฐ์ค์ผ๋ก ์๊ฐํด๋ณด๋ฉด, ํฐ ์๋ฏธ๋ ์์ผ๋ฆฌ๋ผ ์๊ฐํ๋ค.
-
๋ฆฌํธ๋ฆฌ๋ฒ ๋จ๊ณ์์ elastic search(open source ๊ฒ์ ์์ง)๋ฅผ ํ์ฉํ๊ณ ์๋๋ฐ, ๋์ฒดํ ๋งํ, ํน์ ๊ฒธํ ๋งํ ๋ค๋ฅธ ์์๊ฐ ์์๊น์?
- Elastic Search๋ ๋งค์ฐ ์ข์ Choice๋ผ๊ณ ์๊ฐํจ. ์ ๋งํ Search API ์ค์์๋ ๊ฐ์ฅ ์ฑ๋ฅ์ด ์ข๋ค๊ณ ์๋ ค์ ธ ์์. ํ์ดํผ ํ๋ผ๋ฏธํฐ๋ง ์ ์ค์ ํด์ฃผ๋ฉด ์ข์ ๋ฏ. ๋ด๋ถ ์๊ณ ๋ฆฌ์ฆ์ ๋ฌด์์ผ๋ก ์ธ์ง ๋ฑ์ด ์ค์ํ ๋ฏํจ. ์ด์ ์ ํ์ฌ์์ ๊ฒ๋ ์ด์ฌํ ๋ง๋ค๋ Search System๋ณด๋ค ๊ทธ๋ฅ ๊ฐ๋ค ์ด Elastic Search๊ฐ ์ ๋์ํ๋ค. ์ต์ข
์ ์ผ๋ก๋ Retrieval์ ๋ฒ์ด๋๋ ํํ๋ก ๋๊ณ , ์์๋ธ ํ์์ผ๋ก ๋ ๋ฐฉํฅ ๋ชจ๋ ๋ค ์ผ๋ค. ์๋ฌดํผ Retrieval ๋จ๊ณ์์๋ Elastic Search๊ฐ ๋งค์ฐ ์ข๋ค.
- ์ฌํฌ : Elastic Search์ Dense Embedding์ ๊ฐ์ด ์จ๋ณด๋ ค๊ณ ํ๋๋ฐ, ์ด ์ ๊ทผ ๋ฐฉ๋ฒ์ด ์ข์๊น์? ๋ฉํ ๋ : ์ค์ ๋ก ํ์ ์์๋ ์์๋ธ๋ก ์ ๊ทผํ๋ค. Elastic Search์ Dense Embedding์์ Proba๋ฅผ ๋ฝ์์ ํ์ฉํ ์ ์์. ์ด๋ฅผ ํฉ์น๋ ๋ฐฉ๋ฒ๋ ๋ค์ํจ. Union Set์ผ๋ก ๋ชจ๋ ๋ฝ์์ ๋ณธ๋ค๋ ์ง, ํ์ฌ๋ ์๊ฐ์ด ์ค์์น ์์ผ๋, ๊ฐ Retriever์์ ๋์จ Context๋ฅผ ๋ชจ๋ ํ์ฉํด์ ์ถ๋ก ํ๋ ๋ฐฉ๋ฒ์ผ๋ก ์ ๊ทผํ ์๋ ์์ ๊ฒ ๊ฐ๋ค.
- Elastic Search๋ ๋งค์ฐ ์ข์ Choice๋ผ๊ณ ์๊ฐํจ. ์ ๋งํ Search API ์ค์์๋ ๊ฐ์ฅ ์ฑ๋ฅ์ด ์ข๋ค๊ณ ์๋ ค์ ธ ์์. ํ์ดํผ ํ๋ผ๋ฏธํฐ๋ง ์ ์ค์ ํด์ฃผ๋ฉด ์ข์ ๋ฏ. ๋ด๋ถ ์๊ณ ๋ฆฌ์ฆ์ ๋ฌด์์ผ๋ก ์ธ์ง ๋ฑ์ด ์ค์ํ ๋ฏํจ. ์ด์ ์ ํ์ฌ์์ ๊ฒ๋ ์ด์ฌํ ๋ง๋ค๋ Search System๋ณด๋ค ๊ทธ๋ฅ ๊ฐ๋ค ์ด Elastic Search๊ฐ ์ ๋์ํ๋ค. ์ต์ข
์ ์ผ๋ก๋ Retrieval์ ๋ฒ์ด๋๋ ํํ๋ก ๋๊ณ , ์์๋ธ ํ์์ผ๋ก ๋ ๋ฐฉํฅ ๋ชจ๋ ๋ค ์ผ๋ค. ์๋ฌดํผ Retrieval ๋จ๊ณ์์๋ Elastic Search๊ฐ ๋งค์ฐ ์ข๋ค.
-
์์ ๋จ์ ํ ํฌ๋์ด์ง ํ์ด ์์๊น์?
- Pretrained Model์ ํ์ฉํ๊ณ ์๋๋ฐ, ๋์ผํ Tokenizer๋ฅผ ํ์ฉํด์ฃผ๋๊ฒ ์ข์ ๊ฒ์ด๋ค. Tokenizer๋ฅผ ๋ฐ๊พธ๋ ๊ฑด ์ข ์ด๋ ค์ด ์ ๊ทผ๋ฐฉ๋ฒ์ธ ๊ฒ ๊ฐ๋ค. ํด๋น Tokenizer๋ก Tokenizing์ ํด์ผ Model์ด ์ดํดํ ๊ฒ์. ํใ
+ใ
ใด ๊ณผ ๊ฐ์ด ์กฐํฉํ Tokenizing์ ํ์. ์์๋ ์์ฑํ์ผ๋ก ํ๊ณ ์์. ์ด๊ฒ ๋ ์ข์ ์ฑ๋ฅ์ ๋ณด์ด๊ณ ์์. ์๋ง KLUE ๋ ํ์
จ๋ ๋ง์์ ์์ฑํ์ผ๋ก Tokenizingํ๋ผ๋ ์๋ฏธ์์ผ๋ฆฌ๋ผ ์๊ฐํจ. ์ผ๋จ ์ด๋ ค์ด ๋ฌธ์ ์ธ ๊ฒ ๊ฐ์. ๋น์ฅ ๋ ์ค๋ฅธ ์์ด๋์ด๋ POS Tagging์ ํด์ ๋ผ๋ผ ์ ์์์ง๋ ๋ชจ๋ฅด๊ฒ ๋ค. ๊ทธ๋ฌ๋ฉด ๋ผ๋ ๋ฐฉ๋ฒ์ผ๋ก ํ์ต์ ์งํํ ์ ์์์๋ ์๋ค. ์ด๋ฌ๋ฉด ํ์ต๋จ๊ณ์์ ํ์ฉํ ์ ์์ง ์์๊น? ์ค๊ฐ์ ๋์ด์ฐ๊ธฐ๋ฅผ ๋ฃ๋ ํํ๋ก ํ๋ฉด, ์๋ฏธ์์ผ๋ก ํฌ๊ฒ ๋ฌ๋ผ์ง์ง ์๊ธฐ ๋๋ฌธ์, ํด๊ฒฐํ ์ ์์ง ์์๊น ์๊ฐํ๋ค.
- ์ฌํฌ : Mecab์ผ๋ก ๋ผ๋ ๊ฒ๋ ์๊ฐ์ ํ๋๋ฐ, ์ด ๋ฐฉ๋ฒ์ด ์ ์์ ์ธ ์ ๊ทผ๋ฐฉ๋ฒ์ผ๊น์? A : ์์ฐ๋ ์ ๊ทผ๋ฐฉ๋ฒ์ด ์๋๋ค. Pre Tokenizing์ด๋ผ๋ ๋ฐฉ๋ฒ์ ์ฌ์ฉํ๊ธฐ๋ ํ๋ค. ์ด๋ฐ ์ ๊ทผ ๋ฐฉ๋ฒ์ ์์ฃผ ์ฌ์ฉํ๋ค. Pretokenizer๋ก ๋ฏธ๋ฆฌ Token๋ค์ ์ฐข์ด๋๊ณ Tokenizing์ ์ํํจ. ๊ฑฑ์ ๋๋ ๋ฌธ์ ๋, Pre-trained Model์ ํ์ฉํ๊ณ ์๊ธฐ ๋๋ฌธ์, Model์ด ํ์ตํ ํํ์ ๋งค์ฐ ๋ค๋ฅด๊ฒ ๋ ๊ฒฝ์ฐ์ Model ์์ฒด๊ฐ ์ฑ๋ฅ์ด ํ๋ฝํ ์ ์๋ค. (Tradeoff ๆ)
- Pretrained Model์ ํ์ฉํ๊ณ ์๋๋ฐ, ๋์ผํ Tokenizer๋ฅผ ํ์ฉํด์ฃผ๋๊ฒ ์ข์ ๊ฒ์ด๋ค. Tokenizer๋ฅผ ๋ฐ๊พธ๋ ๊ฑด ์ข ์ด๋ ค์ด ์ ๊ทผ๋ฐฉ๋ฒ์ธ ๊ฒ ๊ฐ๋ค. ํด๋น Tokenizer๋ก Tokenizing์ ํด์ผ Model์ด ์ดํดํ ๊ฒ์. ํใ
+ใ
ใด ๊ณผ ๊ฐ์ด ์กฐํฉํ Tokenizing์ ํ์. ์์๋ ์์ฑํ์ผ๋ก ํ๊ณ ์์. ์ด๊ฒ ๋ ์ข์ ์ฑ๋ฅ์ ๋ณด์ด๊ณ ์์. ์๋ง KLUE ๋ ํ์
จ๋ ๋ง์์ ์์ฑํ์ผ๋ก Tokenizingํ๋ผ๋ ์๋ฏธ์์ผ๋ฆฌ๋ผ ์๊ฐํจ. ์ผ๋จ ์ด๋ ค์ด ๋ฌธ์ ์ธ ๊ฒ ๊ฐ์. ๋น์ฅ ๋ ์ค๋ฅธ ์์ด๋์ด๋ POS Tagging์ ํด์ ๋ผ๋ผ ์ ์์์ง๋ ๋ชจ๋ฅด๊ฒ ๋ค. ๊ทธ๋ฌ๋ฉด ๋ผ๋ ๋ฐฉ๋ฒ์ผ๋ก ํ์ต์ ์งํํ ์ ์์์๋ ์๋ค. ์ด๋ฌ๋ฉด ํ์ต๋จ๊ณ์์ ํ์ฉํ ์ ์์ง ์์๊น? ์ค๊ฐ์ ๋์ด์ฐ๊ธฐ๋ฅผ ๋ฃ๋ ํํ๋ก ํ๋ฉด, ์๋ฏธ์์ผ๋ก ํฌ๊ฒ ๋ฌ๋ผ์ง์ง ์๊ธฐ ๋๋ฌธ์, ํด๊ฒฐํ ์ ์์ง ์์๊น ์๊ฐํ๋ค.
-
๋ฆฌํธ๋ฆฌ๋ฒ ๋จ๊ณ์์๋ ๋ฆฌํธ๋ฆฌ๋ฒ ๋ชจ๋ธ๋ผ๋ฆฌ ์์๋ธํ๋ ๊ฒฝ์ฐ๊ฐ ์ข ์ข ์๋์? (์๋ก ๋ค๋ฅธ score ์ธก์ ๋ฒ์ ์ฌ์ฉํ์ฌ ์์๋ธ์ ์ฑ๋ฅ์ด ์ ๋์์ต๋๋ค.)
- ์ตํจ : ๋ค์ํ ์กฐํฉ์ผ๋ก ์์๋ธ์ ํ๋๋ฐ, ๊ฒฝํ์ ์ผ๋ก ์ฑ๋ฅ์ด ๋จ์ด์ก์ต๋๋ค. ์ค๊น์? ๋ฉํ ๋ : Sparse ์ค์์๋ BM25๊ฐ ์ ์ผ ์ํ๋ค. ๋ค๋ฅธ ๊ธฐ๋ฒ๊ณผ Correlation์ด ๋์ ์ ๋ค๊ณผ ๋ฌถ์ด์ ๊ทธ๋ฐ๊ฒ ์๋๊น์ถ๋ค. ๋ํ, ๊ฐ ๋ชจ๋ธ์ ์ฑ๋ฅ์ฐจ์ด๊ฐ ์์ด์ ์ผ์๋ ์๋ค.
- ์ตํจ : ์ฑ๋ฅ ์์ฒด๋ ํฐ ์ฐจ์ด๊ฐ ์์๋ค. ๋ฉํ ๋ : ๊ทธ๋ผ ์๋ง Correlation์ด ๋ฌธ์ ๊ฐ ๋ ๋ฏ ํ๋ค.
- ์ข ํ : Dense Embedding์ ๋ง๋ค๊ณ ์๋๋ฐ, Context์ ๊ธธ์ด๊ฐ ๊ธธ์ด์, ๋ฌธ์ ๊ฐ ์๊ธฐ๊ณ ์๋ค. ์ด๋ป๊ฒ ํ ๊น์? Baseline์์์ Code๋ฅผ ํ์ฉํ์๋, Retrieval ๋จ๊ณ์์๋ ์์ชฝ ํ ํฐ๋ง ๋ค์ด๊ฐ๋ ํํ๊ฐ ๋๋ค. ํ์ฌ๋ ๊ฐ ๋ฌธ์ฅ์ผ๋ก ์งค๋ผ์ Average Pooling์ ํ๋ ํํ๋ก ํ๊ณ ์์. ๋ฉํ ๋ : Context๋ฅผ ์ฌ๋ผ์ด๋ฉ ํ๋ฉด์ ์๋ฅด๊ณ , ๊ฐ๊ฐ์ ๋ฌธ์ฅ์ ๊ฐ๊ฐ์ Context์ฒ๋ผ ํ๋จํ๋ฉด์, ํ๋๋ผ๋ ๊ฑธ๋ฆฌ๋ฉด ๋ฝ์์ค๋ ํํ๋ก ๊ตฌํ์ ํ๋ ๊ฒ๋ ๋ฐฉ๋ฒ์ผ ์ ์์.
- ์ข ํ : Inference Time์์๋ ์ด๋ป๊ฒ ์ ์ฉํ๋ฉด ์ข์๊น์? ๋ฉํ ๋ : ๋์ผํ ๋ฐฉ๋ฒ์ผ๋ก ์ํํด๋ ๋ ๊ฒ ๊ฐ๋ค. ๊ทธ ์ค์ ํ๋๋ผ๋ ๊ฑธ๋ฆฌ๋ฉด ํด๋น Context์ ID ๋ฑ์ ์ด์ฉํด์ ๋ค ๋ฝ์์ค๋ฉด ๋ ๋ฏํ๋ค. ์คํ๋ ค, Trainingํ ๋์๋ Average ํํ๋ก ์ํํ๋๊ฒ ๋์ ๊ฒ ๊ฐ๊ณ , Inference์์ ์ ๋ฐฉ๋ฒ์ ์ฌ์ฉํด๋ณด๋ ๊ฒ ์ข์ง ์์๊น ์๊ฐํจ. ์ถ๊ฐ์ ์ธ ๋ฐฉ๋ฒ์ผ๋ก, ์ ๋ต์ด ํฌํจ๋ ๋ถ๋ถ๋ง positive example๋ก ํ์ฉํ๊ณ ๋๋จธ์ง๋... ๋ฒ๋ฆฌ๋ ์์ผ๋ก(negative example๋ก..?) ํ์ต์ ํ๋ ๊ฒ๋ ๋ฐฉ๋ฒ์ผ ์ ์๋ค. ๋๋จธ์ง๋ ๋ฒ๋ ค์ ์์ ํ์ฉํ์ง ์๋ ๋ฐฉ๋ฒ๋ ์์ ์ ์์.
-
MRC task์์ Masking์ ์ ์ฉํ ๋ ์ด๋ค ์์ผ๋ก ์ํํ๋์? ํ์ฌ๊น์ง์ ์คํ ๊ฒฐ๊ณผ๋ก๋ context์ ๋๋ค masking์ ํ๋ ๊ฒ๋ณด๋ค, ์ง๋ฌธ์๋ง masking์ ํ๋ ์ชฝ์ด ์ฑ๋ฅ์ด ์ข์๋๋ฐ ์ด์ ๊ฐ ๊ถ๊ธํฉ๋๋ค.
- Word Dropout์ด๋ผ๋ ๋ฐฉ๋ฒ์ด ์์. Context์ ๋ํ Masking๋ณด๋ค, Question์ Maskingํ์ ๋ ์ข์๋ค๋ ๊ฒ์ ํด์ํด๋ณด๋ฉด, Context์๋ ์ธ๋ฐ ์๋ Token์ด ๋ง์์ ํจ๊ณผ๊ฐ ๋ฏธ๋ฏธํ์ ๊ฒ์. Question์ ํจ์ฌ ์ค์ํ ์ ๋ณด๊ฐ ๊ฐ๋ ค์ง๋ ํํ์. ๊ทธ๋์ ๋ฌธ์ ๊ฐ ์ด๋ ค์์ง๊ณ ์ข์ ๊ฒฐ๊ณผ๊ฐ ๋์๋ค๊ณ ์๊ฐํจ. ์ถ๊ฐ๋ก, ์ ๋ต์ ๋ง์คํน์ด ๋๋ ๊ฒฝ์ฐ์๋ ์์ ๋ฌธ์ ๋ฅผ ํ๋ ธ์ ๊ฒ์ด๋ค. ์ด ๋๋ฌธ์ ์ฑ๋ฅ์ด ๋จ์ด์ก์ผ๋ฆฌ๋ผ ์๊ฐํจ.
- ์ฌํฌ : ๊ทธ๋ผ ์ง๋ฌธ๊ณผ ์ ์ฌ๋๊ฐ ๋์ ๋ฌธ์ฅ์ Masking์ ํ๋ ๋ฐฉ๋ฒ์ ์ ํจํ ๊น์? ๋ฉํ ๋ : 7๋ฒ์ด๋ ์ฐ๊ฒฐํด์ ์ค๋ช ํ๊ฒ ์. ๊ฑฑ์ ์ด ๋๋ ๊ฒ์, ๋ง์คํน์ด ํท๊ฐ๋ฆฌ๋ ๋ฌธ์ฅ์ ๋ํ ํ์์ฒ๋ผ ์ดํด๋ ์๋ ์์์๋.
- Word Dropout์ด๋ผ๋ ๋ฐฉ๋ฒ์ด ์์. Context์ ๋ํ Masking๋ณด๋ค, Question์ Maskingํ์ ๋ ์ข์๋ค๋ ๊ฒ์ ํด์ํด๋ณด๋ฉด, Context์๋ ์ธ๋ฐ ์๋ Token์ด ๋ง์์ ํจ๊ณผ๊ฐ ๋ฏธ๋ฏธํ์ ๊ฒ์. Question์ ํจ์ฌ ์ค์ํ ์ ๋ณด๊ฐ ๊ฐ๋ ค์ง๋ ํํ์. ๊ทธ๋์ ๋ฌธ์ ๊ฐ ์ด๋ ค์์ง๊ณ ์ข์ ๊ฒฐ๊ณผ๊ฐ ๋์๋ค๊ณ ์๊ฐํจ. ์ถ๊ฐ๋ก, ์ ๋ต์ ๋ง์คํน์ด ๋๋ ๊ฒฝ์ฐ์๋ ์์ ๋ฌธ์ ๋ฅผ ํ๋ ธ์ ๊ฒ์ด๋ค. ์ด ๋๋ฌธ์ ์ฑ๋ฅ์ด ๋จ์ด์ก์ผ๋ฆฌ๋ผ ์๊ฐํจ.
-
token ๋จ์ ๋๋ค masking์ด ์๋, span ๋จ์์ masking์ ์ด๋ป๊ฒ ์๊ฐํ์๋์? ๊ด๋ จ ๋ฌธํ
-
Span ๋จ์๋ก Masking์ ํ๋ ๊ฒ์ Pretrain ๋จ๊ณ์์ ํ๋ ๊ฒ ๊ฐ๊ธฐ๋ ํ๋ค. ๊ทผ๋ฐ, ๊ด์ฐฎ์ ์ ๊ทผ ๋ฐฉ๋ฒ์ธ ๊ฒ ๊ฐ๋ค. ์๋ฏธ๊ฐ ์๋ ๋จ์๋ก(entity ๋จ์) Span์ ์ก๊ณ ๋ง์คํน์ ํ๋๊ฒ ์ข์ ์ฑ๋ฅ์ ๋๋ค๋ ๊ฒฐ๊ณผ๊ฐ ์๋ค.
์ค์ํ๊ฑด, ์ ๋ต์ ๋ง์คํน์ ํ๋ฉด ์๋๋ค๊ณ ์๊ฐํจ.
- ์ข ํ : ์ผ๋ฐ์ ์ผ๋ก context ๋ด์์ ์ค์ํ span์ ์ฐพ์์ masking์ ํ๋ค๊ณ ํ์ จ๋๋ฐ ์ค์ํ span์ ์ด๋ป๊ฒ ์ฐพ์ผ๋ฉด ๋ ๊น์? ๋ฉํ ๋ : Fine Tuning์ ๋จ๊ณ์ Pre training ๋จ๊ณ๋ฅผ ๊ตฌ๋ถํด์ ์๊ฐํด๋ด์ผ ํ ๊ฒ ๊ฐ๋ค. Fine Tuning ๋จ๊ณ์์ ์ด๋์ ๋ง์คํน ํด์ผํ๋๊ฐ์ ๋ํ ๊ฒ์ ๋ ํผ๋ฐ์ค๋ฅผ ๋ณธ ์ ์ด ์๋ค. ์ ๋ต Context ๋ด์ ์ ๋ต ์ฃผ๋ณ์ Token์ ๋ง์คํน ํ๋ ๋ฐฉ๋ฒ์ ์ด๋จ๊นํ๊ณ ์๊ฐํจ. (์ ๋ต ์ธ ๋ค๋ฅธ ์ํฐํฐ) ์ ๋ต์ด ๋ค์ด์๋ ๋ฌธ์ฅ์ ์๋ฏธ๋ฅผ ์ดํดํด์ผ ํ๊ธฐ ๋๋ฌธ์, ํด๋น ๋ฌธ์ฅ์ ์กฐ๊ธ ๋ ์ดํดํ๊ธฐ ์ด๋ ต๊ฒ ๋ง๋๋ ๊ฒ์ ์๋ฏธ๊ฐ ์์ ๊ฒ ๊ฐ๋ค. ๊ผญ Entity๊ฐ ์๋๋๋ผ๋, ๋์ฌ์ ๊ฐ์ ํํ์ Token์ ๋ง์คํนํ๋ ๊ฒ๋ ์ข์ ๋ฐฉ๋ฒ์ผ ์ ์๋ค.
- ์ฌํฌ : Masking์ ์์ด Data์ ์์์ด Data๋ฅผ ์ฌ๋ฌ๋ฒ ํ์ต์ํค๋ฉด ๋ฌธ์ ๊ฐ ์๊ธฐ์ง๋ ์์๊น์? ๋ฉํ ๋ : ์คํ๋ ค ๋ง์ํ์ ๋ฐฉ๋ฒ์ด ๋ ์ข์ ๊ฒ ๊ฐ๋ค.
-
-
XLM roberta large, koelectra ์์ฃผ๋ก ํ์ฉ ์ค์ธ๋ฐ ์ถ์ฒํด์ฃผ์ค๋ง ํ model์ด ์์ผ์ ๊ฐ์?!
- XLM๋งํผ ์ข์๊ฒ ์๋ ๊ฒ ๊ฐ๋ค. Electra Model์ ์ฌ์ค ์ฑ๋ฅ์ ์์ฒญ ์ฌ๋ฆฌ๋ ค๋ ๋ชฉ์ ์ด ์๋์๋ค. ์ ์ ๋ฆฌ์์ค๋ฅผ ์จ์ Bert๋งํ ์ฑ๋ฅ์ ๋ด๊ฒ ๋ค๊ณ ํ๊ฒ Electra์ ๋ชฉ์ ์ด๋ค. ํ์ค์ ์ผ๋ก Bert๋ณด๋ค ์๊ณ , ๋น ๋ฅด๊ณ ํจ. ๊ทผ๋ฐ ์ฑ๋ฅ์ Bert๊ฐ ๋ ์ข์. (๊ทธ๋์ ํ์
์์๋ Electra๋ฅผ ์์ฃผ ์.) ๊ทผ๋ฐ, ์ฑ๋ฅ๋ฉด์์๋ roberta๊ฐ ์งฑ์ด๋ค. T5๋ ์จ๋ดค๋์ง? ์ด๊ฒ๋ ์คํํด๋ณผ๋งํ ๊ฐ์น๊ฐ ์๋ค๊ณ ์๊ฐํจ. ์ด ๋ชจ๋ธ์ด QA์ ์ ํฉํ๊ฒ ๋์ด์๋ค๊ณ ์๊ฐํ๋ค. T5์ Encoder ๋ถ๋ถ๋ง ๋ผ์ด๋ด์ ์ฐ๋ฉด roberta์ฒ๋ผ ์ธ ์ ์๋ค.
- ์ตํจ : MRC์์ ์์๋ธํ ์ ์๋ ๋ฐฉ๋ฒ์ ๋ฌด์์ด ์์๊น์? ๋ฉํ ๋ : ์ผ๋จ 2์คํ ์ด์ง๋ก ๊ฐ๋ค๋ ๊ฒ ๊ฐ์ผ๋, MRC์์ ์์๋ธ์ ๋ํด ์ค๋ช ํ๊ฒ ์. ํ๋ฅ ๊ฐ์ผ๋ก ํ๊ธฐ๋ ์ด๋ ค์ธ ๊ฒ ๊ฐ๊ณ , ๊ฐ ์ ๋ต์ ๋ด๊ณ Proba๊ฐ ๊ฐ์ฅ ๋์ ๊ฒ์ ์ฐพ๋ ๋ฐฉ์์ด ๋ ๋ฏํจ. ์ฌ๋ฌ๊ฐ์ MRC๋ฅผ ์งํํ๊ณ , ๊ฐ Model์ ์ ๋ต Span์ ํ์ธํ๊ณ , ์ด๋ฅผ Votingํ๋ ๋ฐฉ๋ฒ์ ์ฌ์ฉํ ์ ์์ ๊ฒ ๊ฐ๋ค. ๊ฐ ๋ชจ๋ธ์ด ์ถ๋ ฅํ๋ Span์ Score๋ฅผ ๋ณด๊ณ ์ต์ข ์ถ๋ ฅ์ ๊ฒฐ์ ํ๋ ์์ผ๋ก ์ฌ์ฉ ๊ฐ๋ฅํ ๋ฏ. Logit์ ํ๊ท ์ ๊ตฌํด์ ์์๋ธ ํ ์๋ ์์ ๋ฏ. ๋ง์ฝ Scale์ด ๋ค๋ฅด๋ฉด Normalization์ ํ๋ฉด ๋ ๋ฏ ํจ.
- XLM๋งํผ ์ข์๊ฒ ์๋ ๊ฒ ๊ฐ๋ค. Electra Model์ ์ฌ์ค ์ฑ๋ฅ์ ์์ฒญ ์ฌ๋ฆฌ๋ ค๋ ๋ชฉ์ ์ด ์๋์๋ค. ์ ์ ๋ฆฌ์์ค๋ฅผ ์จ์ Bert๋งํ ์ฑ๋ฅ์ ๋ด๊ฒ ๋ค๊ณ ํ๊ฒ Electra์ ๋ชฉ์ ์ด๋ค. ํ์ค์ ์ผ๋ก Bert๋ณด๋ค ์๊ณ , ๋น ๋ฅด๊ณ ํจ. ๊ทผ๋ฐ ์ฑ๋ฅ์ Bert๊ฐ ๋ ์ข์. (๊ทธ๋์ ํ์
์์๋ Electra๋ฅผ ์์ฃผ ์.) ๊ทผ๋ฐ, ์ฑ๋ฅ๋ฉด์์๋ roberta๊ฐ ์งฑ์ด๋ค. T5๋ ์จ๋ดค๋์ง? ์ด๊ฒ๋ ์คํํด๋ณผ๋งํ ๊ฐ์น๊ฐ ์๋ค๊ณ ์๊ฐํจ. ์ด ๋ชจ๋ธ์ด QA์ ์ ํฉํ๊ฒ ๋์ด์๋ค๊ณ ์๊ฐํ๋ค. T5์ Encoder ๋ถ๋ถ๋ง ๋ผ์ด๋ด์ ์ฐ๋ฉด roberta์ฒ๋ผ ์ธ ์ ์๋ค.
-
Query์ ํด๋นํ๋ Token์ Embedding Vector๋ฅผ ์ง์ ์ ์ผ๋ก ํ์ฉํด๋ณด๊ณ ์ถ์๋ฐ ๊ด๋ จ ๋ ผ๋ฌธ ์์๊น์?
- ๋น์ฅ ๊ธฐ์ต๋๋ ๋
ผ๋ฌธ์ ์๋ค. ํด๋ณผ๋งํ ์์ด๋์ด์ธ ๊ฒ ๊ฐ๋ค. ๋จ์ Pooling๋ณด๋ค, ํ์ตํ ์ ์๋ layer๋ฅผ ๋๊ณ , ํ์ฉํด๋ณด๋ ๊ฒ์ ์ด๋จ์ง? ์ถ๊ฐ์ ์ธ Information์ ์ด๋ป๊ฒ ๋ ์ค ์ ์์์ง? ๋ฐฑ๋ณธ ๋ชจ๋ธ์ด ์ปค๋ฒํ์ง ๋ชปํ๋ ์๋ฏธ๋ฅผ ์ถ๊ฐํ๋๊ฒ ์ข์ ์์ด๋์ด ์ผ ๊ฒ ๊ฐ๋ค.
- ์ฌํฌ : ์๋ฏผ์ค ๊ต์๋์ด ์ฐธ์ฌํ ๋ ผ๋ฌธ์ ๋ณด๋ฉด, ์ง๋ฌธ์ ํ๋ ์คํ ์ดํธ ๋ฒกํฐ๋ก ๋ง๋ค์ด์ ํ์ฉํ๋ ๋ฐฉ๋ฒ์ด ์๋๋ผ. ์ง๋ฌธ์ด ์ค์ํ ๊ฒ ๊ฐ์์ ์ ์ฉํ๋ ค๋ ์๋์. ์ง๋ฌธ์ ๋ฒกํฐํํ ๋ GloVe์ ๊ฐ์ Model์ ์ฌ์ฉํ๋ ๊ฒ์ ์ด๋จ์ง? ์์ด๋ก ๋ฒ์ญํด์ ์ฐ๋ ๊ฒ์ ์ด๋จ์ง์ ๋ํ ์๊ฐ๋ ๋ค์๋ค.
- Q1 : ํ๊ตญ์ด๋ก GloVe๋ฅผ ํ์๋ ๋ ์ง? ๊ทธ๋ฌ๋๊ฒ ๋ ์ข์ ๊ฒ ๊ฐ๋ค. ๊ดํ ์ค๋ฅ๊ฐ ๋ ์ ์๋ค.
- Q2 : ์๋ฏผ์ค ๊ต์๋์ Real time ๊ธฐ๋ฐ์ ๋ ผ๋ฌธ์ ์ ๋ณด๋ฅผ ํ์ฉํ ์ ์์๊น์? ์ด๊ฑด ๊ด์ ์์ฒด๊ฐ ์์ ๋ค๋ฅด๋ค. ์ง๊ธ์ ๋ฌธ์๋จ์๋ก ๋ณด๊ณ , ๊ฐ์ฅ ์ข์ ๋ฌธ์๋ฅผ ์ฐพ๊ณ ๋ฆฌ๋ํ๋ ํํ์. ์ด ๋ ผ๋ฌธ์ ๋ฌธ์๋ฅผ ๋ฏธ๋ฆฌ ๋ค ์ชผ๊ฐ๊ณ , ๊ฐ ๋ชจ๋ ํ๋ ์ด์ฆ๋ฅผ ์๋ฒ ๋ฉ ํ๋ ํํ๋ก ์งํํจ. ๊ฑฐ๊ธฐ์ ๊ฐ์ฅ ์ ํฉํ ํ๋ ์ด์ฆ๋ฅผ ์ฐพ๋ ํํ์.
- Q3 : Ranking Paragraph ๋ ผ๋ฌธ์ ์์ด๋์ด๋ฅผ ์ ์ฉํด๋ณผ ์๋ ์์๊น์? ๊ฐ Paragraph์ ๋ํด ranking์ ๋งค๊ธฐ๊ณ reading์ ํ๋ ๊ฒ์ ์ข์ ์ ๊ทผ ๋ฐฉ๋ฒ์ธ ๊ฒ ๊ฐ๋ค.
- ์ถ๊ฐ ๋ต๋ณ : BiDrectional์ MRC์ ํ์ค์ผ๋ก ์ฌ์ฉ๋ ์ ๋๋ก ๋งค์ฐ๋งค์ฐ๋งค์ฐ ์ข์ Model์ด๋ค. BERT์ดํ์ ํ์ฌ๋ ์์ฐ๋ Model ๊ตฌ์กฐ์ด๊ธด ํ๋ค. BERT์ Pretrainํ๋ ๊ฒ์ ์๊ฐํด๋ดค์ ๋, ์ง๊ธ๊ณผ ๊ฐ์ ํํ๋ก ์งํ๋๊ณ ์๊ธฐ๋ ํ๋ค. ๋์ ํด๋ณผ๋งํ ์ข์ IDEA๋ผ๊ณ ๋ ์๊ฐํ๋, ์ด๋ป๊ฒ ๋ณด๋ฉด BERT ๊ตฌ์กฐ์ ์ํด ์ด๋ฏธ ๊นจ์ง ๋ฐฉ๋ฒ์ด๋ผ๊ณ ์ดํดํ ์๋ ์์ ๊ฒ ๊ฐ๋ค. ์๋ํด๋ณผ๋ง์ ํ๋, ์ฑ๋ฅ๋ฉด์ ์์ด์ ์ฅ๋ดํ ์๋ ์๋ค๊ณ ์๊ฐํ๋ค.
- ์ข ํ : BiDirectional Attention Flow Model๊ณผ BERT๋ฅผ ์กฐํฉํ๋ ๋ฐฉ๋ฒ์ ์ด๋จ๊น์? ๋ฉํ ๋ : Contextual Embedding์ BERT๋ก ์ฐ๊ณ , Query์์ Attention์ ๋ด๊ณ , ์ดํ์ Transformer๋ฅผ ํ์ฉํ๋ ํํ๋ก Embedding์ ์ถ๊ฐ๋ก ํด์, ์ถ๋ ฅ์ ๋ด๋ ๊ฒ์ ์ด๋จ๊น ์๊ฐ์ด ๋ฆ.
- ์ข ํ : Data ์์ ๋นํด ๋๋ฌด ํ์ต๋์ง ์์ Layer๋ฅผ ์ถ๊ฐํ๋ ๊ฒ์ ์๋์ง ๊ฑฑ์ ๋๊ธฐ๋ ํ๋ค. ๋ฉํ ๋ : ๋์ผํ ๊ฑฑ์ ์ ๋๋ค. Modeling Layer ๋ถ๋ถ์ด ์ ๋๋ก ํ์ต ๋ ์ง ๊ฑฑ์ ์ด ๋๊ธด ํ๋ค. ์ค์ ๋ก BERT ์์ Layer๋ฅผ ๋ง์ด ์์ง ์์ผ๋ ค๋ ์ด์ ๋ ๋์ผํ ์ด์ ๋ค.
- ์ฌํฌ : KorQuAD๋ก ์ฌ์ ํ์ต ์ํค๊ณ ๋์ ์ฌ์ฉํ๋ ๊ฑด ์ด๋จ๊น์? ๋ฉํ ๋ : ๋งค์ฐ๋งค์ฐ๋งค์ฐ ํต์ฌ์ ์ธ ์ ๊ทผ์ด๋ค. ์ด๋ฅผ ํ์ต์ ํ์ฉํ๊ณ ์ ๊ทผํ๋ ๊ฑด ๋งค์ฐ๋งค์ฐ ์ค์ํ๋ค.
- ๋น์ฅ ๊ธฐ์ต๋๋ ๋
ผ๋ฌธ์ ์๋ค. ํด๋ณผ๋งํ ์์ด๋์ด์ธ ๊ฒ ๊ฐ๋ค. ๋จ์ Pooling๋ณด๋ค, ํ์ตํ ์ ์๋ layer๋ฅผ ๋๊ณ , ํ์ฉํด๋ณด๋ ๊ฒ์ ์ด๋จ์ง? ์ถ๊ฐ์ ์ธ Information์ ์ด๋ป๊ฒ ๋ ์ค ์ ์์์ง? ๋ฐฑ๋ณธ ๋ชจ๋ธ์ด ์ปค๋ฒํ์ง ๋ชปํ๋ ์๋ฏธ๋ฅผ ์ถ๊ฐํ๋๊ฒ ์ข์ ์์ด๋์ด ์ผ ๊ฒ ๊ฐ๋ค.
-
์ถ๊ฐ ์ง๋ฌธ : ์ง๋ฌธ์ Paraprasing ํด์ ์ฌ๋ฌ ์ง๋ฌธ์ ๋ง๋ค๊ณ ๋ ๋ง์ Sample์ ๋ง๋๋ ์ ๊ทผ ๋ฐฉ๋ฒ์ ์ด๋จ๊น์?
์ข์ ์ ๊ทผ ๋ฐฉ๋ฒ์ธ ๊ฒ ๊ฐ๋ค. but, ์ธ๊ฐ ์ง๋ฅ์ ๋น์ถ์ฒํจ. ๊ฐ๋จํ ๋ฐฉ๋ฒ์ผ๋ก๋ Rule Base๋ก ํ ์ ์์ ๊ฒ ๊ฐ๋ค. ์กฐ๊ธ ๋ค๋ฅธ ํํ์ ์ง๋ฌธ์ ๋ง๋ค ์ ์์๋ฏ ํ๋ค. Question ํ ํ๋ฆฟ์ ๋ง๋ค์ด์ ์ง๋ฌธ์ ์์ฑํด๋ผ ์ ์์ ๊ฒ ๊ฐ๋ค. ์ญ๋ฒ์ญ์ด ํจ๋ฌํ๋ ์ด์ง์์ ๊ฐ์ฅ ๋ง์ด ์ฌ์ฉ๋๋ ๋ฐฉ๋ฒ์ด๋ค. Text Data Augmentation์ผ๋ก ๊ฒ์ํด์ ๋ค์ํ ๋ฐฉ๋ฒ์ ์ฌ์ฉํ ์ ์์ ๊ฒ ๊ฐ๋ค. PLM์ ํ์ฉํด์ ๊ฐ์ฅ ๊ฐ๊น์ด ๋จ์ด๋ก ๋ฐ๊พธ๋ ํํ๋ก ํ ์๋ ์์.
2021.05.06 (๋ชฉ)
- ๋ ผ์ ์ฌํญ ์์
- ์ตํจ : KorQuAD๋ก ํ์ต ์ํจ ํ ์ฐ๋ฆฌ Data๋ก ํ์ต์ํค๋ ๊ฒ ํด๋ดค๋ค.
- ์ตํจ : Validation Set์ ๋ญ๋ก ํ ๊น์?
- ์ฌํฌ & ์ข ํ : KorQuAD๋ก ์ฐ๋๊ฒ ์ข์๋ฏ
- ํ์ : Question์ Maskingํ๋ ๋ฐฉ๋ฒ ๋ค๋ฅธ๊ฑธ ํด๋ดค๋ค. ๋จ์ด ๊ธฐ์ค Random Masking์ ํด์ ํ์ต์ ์งํํด๋ดค๋ค. Original Question, Masking Question ์ฌ๋ฌ๊ฐ๋ฅผ ๋ชจ๋ ํ์ต์ ํ์ฉํด๋ดค๋ค.
- Mecab์ผ๋ก Pretokenizingํจ. ๋ฌธ์ฅ ๋จ์๋ก ์๋ผ์ ํ์ฉํจ. ํ์ต ํ ๋ 512 ๊ธธ์ด๋ฅผ ๋๋คํ๊ฒ ์ฌ์ฉํจ.
- ์ถ๋ก ํ ๋ ์ ๋ฐ์ฉ ์ค๋ฒ๋ฉํ๋ฉด์ ์ ์ฒด Context๋ฅผ ์ฌ์ฉํจ. ์ดํ ์ ์ฒด Average๋ฅผ ํจ. ๋งค ๋ฐฐ์น๋ง๋ค Context๊ฐ ๋ช๊ฐ๋ก ์๋ฆด์ง ๋ชจ๋ฅด๋ ๊ฒ๋ ํฐ ๋ฌธ์ ์๋ค. GPU๊ฐ ํฐ์ง์ง ์๊ฒ ์ฌ๋ฆฌ๊ณ ๋ด๋ฆฌ๋ ๊ฒ์ ์ฝํธ๋กคํ๋๊ฒ ์ค์ํ๋ค.
- Elastic Search Error๋ก ํ์ฌ ์ค๋จ ์ํ์. (์ ํํ๊ฒ๋ nori๊ฐ ๋์ํ์ง ์์.) โ ํด๊ฒฐํจ.
- ์ค์น ๋ฐ ํ์ฉ๋ฐฉ๋ฒ ์ค๋ช
- Data ์ ์ฒ๋ฆฌ : ๊ฐํ๋ฌธ์์ ํน์๋ฌธ์ ๋ฑ ์ง์ฐ๊ธฐ. โ ์ค๋ฐ๊ฟ ๋ฌธ์๋ฅผ ๊ตฌ๋ถํ ์ ์๋ ๋ฐฉ๋ฒ๋ ์์ผ๋ฉด ์ข๊ฒ ๋ค. โ [SEP]๋ ์ฑ๋ฅ์ด ์์ฒญ ๋จ์ด์ง๋ค. DataDict ํํ๋ก ์ฌ์ ์ฅํจ.
- ๊ฑฑ์ ๋๋ ์ฌํญ : backbone name์ model name์ผ๋ก ์ค์ ํด์ ์ ์ฅํ๊ณ ์์. koelectra ์ฌ์ฉํ ๋ monologg ๋๋ ํ ๋ฆฌ ํํ๋ก ์ ๊ทผํจ. (tokenizer๋ฅผ ์ ๋ฌํด์ผํ ๋ฏ)
- Retrieval : bm25๋ก ๋ฐ๊ฟ์ ์ํํด๋ดค๋ค. BM250kapi๋ผ๋ API๋ฅผ ์ฌ์ฉํด๋ดค๋ค.
- Data Masking : Question์ ํน์ ๋จ์ด๋ค์ MASK๋ก ๋ฐ๊พธ๊ณ Data๋ฅผ ๋๋ ค์ค. ์ด Data๋ฅผ Dataset์ผ๋ก ๋ค์ ์ ์ฅํ๊ณ , ํ์ต์ ํ์ฉํจ. Maskingํ ๋ Tokenizer๋ฅผ ์ ๋ฌํด์ Token์ ๊ฐฏ์๋ฅผ ๋ง์ถ๋ ๋ฐฉ๋ฒ์?
- ์กฐ์ฌ๋ฒ๋ฆฌ๊ธฐ : ํ์ฒ๋ฆฌ ์ดํ Last Processing ํจ์๋ก, ์ฌ์ฒ๋ฆฌํด์ ์กฐ์ฌ์ ํน์ Tag๋ฅผ ๋ฒ๋ฆผ. '์'์ ๊ฐ์ ์กฐ์ฌ๋ฅผ ๋ผ๋๊ฒ ์ด๋ ต๋ค. Mecab Tokenizer๋ง๊ณ ๋ค๋ฅธ ๊ฒ๋ ์จ๋ณด๋๊ฒ๋ ๋ฐฉ๋ฒ์ผ ๋ฏ.
2021.05.07 (๊ธ)
- ์ตํจ : ๊ตฌ๊ธ์ ํ๊ตญ์ด ๋ถ์ฉ์ด ์ด๋ฏธ ์น๋ฉด ์์ฒญ ๋ง์ด ๋์ด
โ ๋ถ์ฉ์ด ์ฌ์ ์ถ๊ฐ (Top1์ผ๋๋ 0.5์ค๋ฆ, Top9์ ๋์ผํ ์์น)
- ์ตํจ : ์ฌ๋ฌ Context๋ฅผ ๋ณด๋๊ฒ ์ํํ ์๋ ์๋ค๋ ์๊ฐ์ด ๋ค์๋ค.
- ์ข ํ : K๊ฐ ๋์์ ๋ ์ฑ๋ฅ์ด ๋์ด๋๋๊ฒ, ์ฐ๋ คํ ์ด์ ๋๋ฌธ์ด์๋ค๊ณ ํ๋๋ผ๋, LB๊ธฐ์ค์ผ๋ก ๊ฐ๋๊ฒ ๋ง๋ ๊ฒ ๊ฐ๋ค. ์ผ๋ฐํ ๋ ์ฑ๋ฅ์ Checkํ ๋งํ ์๋จ์ด ๋ง๋ ์น ์๊ณ , ์ด๊ฒ๊น์ง๋ ๊ณ ๋ คํ์ง ์๊ณ ๋จ์ผ ๊ธฐ์ค์ผ๋ก ๊ฐ๋๊ฒ ์ข์ ๊ฒ ๊ฐ๋ค.
- ์ข
ํ : Elastic Search๋ก 20๊ฐ์ Context๋ฅผ ์ฐพ์์. GT๊ฐ ์๋ ๊ฒฝ์ฐ์ GT๋ฅผ ์ถ๊ฐํด์ Positive๋ก ์ฌ์ฉํ๊ฒ ํ์. ํ์ต ํ ๋ Batch 2๋ง ๋ผ๋ ํฐ์ง. Batch๋ 1์ธ๋ฐ, ์ด ํ Batch๋ด์ 20๊ฐ์ Pair๊ฐ ๋ค์ด์๋ ํํ์. ํ์ตํ๋๋ฐ ๋๋ฌด ์ค๋ ๊ฑธ๋ฆฌ๋ ๋ฌธ์ ๊ฐ ์๋ค. ํ ์ํญ์ 1์๊ฐ ์ ๋ ๊ฑธ๋ฆฐ๋ค. ๋ค๋ฅธ ๋ชจ๋ธ๋ ํ์ต์์ผ์ ํ์ธํด๋ด์ผ ํ ๊ฒ ๊ฐ๋ค. lr์ ์ค์ด๊ณ epoch์ ๋๋ฆฌ๋๊น ์ ์ ๋ ํ์ต์ด ์ ๋๋ ํํ๋ฅผ ๋ณด์ฌ์ฃผ๊ณ ์์.
- ์ตํจ : KorQuAD๋ ํ์ตํ๋๋ฐ ์ค๋ ๊ฑธ๋ฆฌ๊ธด ํ๋๋ฐ, ์ฌ๋ฌ ๋ฐฉ๋ฒ์ผ๋ก ์ฌํ์ต ์์ผ์ ํ๋ ํํ๋ ์ด๋จ๊น ์๊ฐ์ด ๋ ๋ค.
-
์ตํจ : Conv Layer ์ถ๊ฐ, KorQuAD๋ก ํ์ตํ ๋ ๋ ๋ง์ด ๋๋ฆผ(3์ํญโ8์ํญ), ์กฐ์ฌ ๋ฒ๋ฆฌ๋๊ฑฐ ํ์๋๊ฑฐ๋ก ๋ฐ๊ฟ.
- ํ์ : ์ฝ๋ ๊ฐ์ ๋์ผ๋, ์ ์ฉํด๋ณด์. (์ฌ๋ฌ ํ ํฌ๋์ด์ ์ฌ์ฉํด๋ด.)
-
ํ๊ท : ํํ์ ๋ถ์๊ธฐ๋ณ prediction error rate ๋น๊ต
-
์์ง : prepare_train_dataset๊ณผ prepare_validation_dataset ํจ์๋ฅผ ์๋ก ๊ตฌํํ๊ณ ์์. (์์ฒญ ๊ณ ์ํจ. ๋งค์ฐ ๋ง์ ๋ ธ๋ ฅ์ด ๋ค์ด๊ฐ.) offset_mapping์ ๊ฒฐ๊ตญ ๊ตฌํํด์ผ ํ ๊ฒ ๊ฐ์. ๋์ค์ validation data๋ ํ์ต์ ์ฌ์ฉํ๋ฉด ์ข๊ฒ ๋ค.
-
ํ์ : Scheduler ๋นผ๊ณ ํ์ตํด๋ณด๋ ๊ฑด ์ด๋จ๊น ์๊ฐ์ด ๋ ๋ค. K์ ๋ฐ๋ผ ๋ค๋ฅธ Prediction์ Hard Voting ํด๋ณด๋๊ฑด ์ด๋จ๊น ์ถ๋ค.
-
ํ์ : ์ญ๋ฒ์ญ์ผ๋ก Question์ ๋๋ ค์ ํ์ตํด๋ดค๋๋ฐ, ์คํ ์ ์ฑ๋ฅ์ด ๋ด๋ ค๊ฐ.
-
์ตํจ : KorQuAD Data ๋ฑ ์ธ๋ถ ๋ฐ์ดํฐ๋ฅผ ์ฌ์ฉํ ๋๋, ์ฌ์ ํ์ต ํ ํ์ KLUE Data๋ก ์ฌํ์ต ์ํค๋๊ฒ ๋ ์ข์ ๊ฒ ๊ฐ๋ค.
- ํ์ & ์ข ํ : ํ์ต Epoch๋? ์?
- ์ตํจ : KorQuAD๋ 8Ep, KLUE๋ 3Ep โ KorQuAD๋ ๋ ํ์ตํด๋ ๋ ๋ฏ, KLUE๋ ์ด ์ ๋๋ฉด ์๋ ดํ๋ ๋ฏ.
-
ํ์ : Context๋ฅผ ์ฌ๋ฌ ๊ฐ ๊ฐ๊ณ ์์, ๋ฌธ์ฅ ๋ฑ์ผ๋ก ์๋ฅด๊ณ , Question๊ณผ ๊ด๋ จ ์๋ ๊ฒ๋ค๋ก๋ง ํ์ต์ ํ๋ ๊ฑด ์ด๋จ๊น?
- ์ตํจ : ๊ด๋ จํด์, ๊ธธ์ด์ ๋ํ ์ด์๋ก ์๊ฐํ์๋๋ฐ, ๋ฉํ ๋ ๋ง์ ๋ฃ๊ณ ๋์ ๊ธธ์ด์ ๋ํด ๋ค์ ๊ณ ๋ฏผํ๊ณ ์๋ค.
- ์ฌํฌ : Context๋ฅผ Phasage๋ก ์๋ผ์ Wiki Data๋ฅผ ๋ง๋ค๊ณ , ๊ฐ Phasage์ ๋ํด ํ์ต์ ์งํํ๋ฉด, ๋ ๋ค์ํ ๋ฌธ์ฅ์ ๋ณด๊ณ ํ์ต์ด ๋ ๊ฒ ๊ฐ๋ค.
-
๋ฌธ์ ์ ํ๊ณ ์๋ ์ฌํญ : ๊ธธ์ด์ ๋ฐ๋ผ ์ฑ๋ฅ์ด ๋ฌ๋ผ์ง ๊ฒ ๊ฐ๋ค.
ํ์คํ์ง ์์ ์ฌํญ : -> ์งง์ Phasage๋ฅผ ๋ณด๋๊ฒ ๋ ์ข์ Logit์ด ๋์ฌ๊น? -> ๊ธด Phasage๋ฅผ ๋ณด๋๊ฒ ๋ ์ข์ Logit์ด ๋์ฌ๊น?
๊ฐ์ค 1. ์งง์ Phasage๊ฐ ์ข์ ๊ฒ ๊ฐ๋ค. -> ์ ๋ต๊ณผ ๋ฌด๊ดํ Noiseํ Data๋ค์ ๋ฌด์ํ ์ ์๋ค. -> ์งง๊ฒ ์๋ฅด๋ ๋งํผ, ํ Context์ ๋ํด์ ์ฌ๋ฌ๊ฐ์ Feature (Sample)๋ก ํ์ตํ ์ ์๋ค.
๊ฐ์ค 2. ๊ธด Phasage๊ฐ ์ข์ ๊ฒ ๊ฐ๋ค. -> ๋ฌธ๋งฅ์ ํ์ ํด์ผ ํ๋ Task์ธ ๋งํผ, ํ Sample์ ํฌํจ๋ ๋ฌธ๋งฅ ์ ๋ณด๊ฐ ์ค์ํ ๊ฒ ๊ฐ๋ค. -> ํ Context์ ๋ํด ์ ์ Feature์ ๋ํ Logit์ ๋ด๊ธฐ ๋๋ฌธ์, ๋ ํ์คํ๊ฒ Token์ ์ก์ ์ ์์ ๊ฒ ๊ฐ๋ค.
-
ํ๊ท๋ ์๊ฐ : -> Retrieval์ ๊ด๋ จ์๋ ์ฌ๋ฌ๊ฐ์ Context๋ฅผ ๋์ ธ์ฃผ๋๊ฒ ๋ง๋ ๊ฒ ๊ฐ๋ค. -> ๋ฌธ์ฅ์ ์๋ฅด๊ฑฐ๋ ํ๋ ๊ฒ์, MRC Train ๊ณผ์ ์์ ์ด๋ฃจ์ด์ ธ์ผ ํ๋ ๊ฒ ๊ฐ๋ค.
- ํ์๋ ์๊ฐ : -> ํ์ต ์ชฝ๋ณด๋ค๋, Inferenceํ ๋, ๋ ๋ง์ Context์ ๋ํด์ ์ถ๋ก ์ ํ๊ณ ์ ํ์. -> ๋ ๋ง์ Context์ ๋ํด์ ๋ค ์ถ๋ก ์ ๋๋ฆด ์ ์์ผ๋, ๊ด๋ จ์๋ ๋ฌธ์ฅ๋ค์ ๋ํด์๋ง ํ๋ฉด ์ด๋จ๊น? ํ๋ ์์ด๋์ด์์.
-
์ข ํ๋ ์๊ฐ : -> ์งง์ ์๋ก ์ข์ ๊ฒ ๊ฐ๋ค. -> Context๋ฅผ 10๊ฐ ๋ฝ์์จ๋ค. -> ๋๊ฐ์ ํฌ๊ธฐ๋ก ์๋ฅธ๋ค. (๋ฌธ์ฅ๋จ์ ๋ฑ) -> ๊ทธ๋ฆฌ๊ณ ๋ ๋ฝ๋๋ค. -> ์ฌ๊ธฐ์ ๋ฝํ Top N์ผ๋ก ํ์ตํ๊ณ , ์ถ๋ก ํ์.
- ์ฌํฌ๋ ์๊ฐ : -> Elastic Search์์ ๋ถํ์ํ ์ ๋ณด๋ฅผ ๋ฐฐ์ ํ๋ฉด ๋ ์ข์ Retrieval์ ํ ์ ์์ ๊ฒ ๊ฐ์๋ค. -> MRC Task ์์ฒด๋, ๋ง์ ๋ฌธ์ฅ์ ๋ด์ผํ ํ์๊ฐ ์์ ๊ฒ ๊ฐ์๋ค. -> ๊ฐ์ค 1์ด ๋ ํฉ๋นํ๋ค๊ณ ์๊ฐํ๋ค. -> Elastic Search๋ฅผ ํ๋ฒ๋ง ํ์ฐ๋๊ฒ ๋ง๋ ๊ฒ ๊ฐ๋ค.
์ง๊ธ Retrieval ๋จ๊ณ์์ Ground Truth๋ฅผ Context ๋จ์์ DocID๋ฅผ ์ฐ๋๊ฒ ์๋๊ณ , ๋ฌธ์ฅ ๋จ์๋ก Answer word๊ฐ ์๋ Phasage๋ฅผ GT๋ก ์ฐ๊ฒ ๋ค. -> ์ฌ๊ธฐ์ Doc stride overlab์ ์ฃผ๋ฉด ์ด์ํด์ง ์ ์๋ค. -> answer์ text๋ฅผ ๊ธฐ๋ฐ์ผ๋ก ํ๊ฒ ๋๋ฉด, ์ฌ๋ฌ๊ฐ์ phasage๊ฐ ์ค๋ฉด ~~ -> ์ฌ๊ธฐ์ concat์ ํ๋ฉด, MRC์ GT๊ฐ ๋ง๊ฐ์ง ์ ์๋ค. -> ๊ทธ๋ผ ํ์ตํ ๋๋ ๊ฐ๊ฐ ๋ฐ๋ก phasage๋ณ๋ก ํ์ตํ๋ฉด ๋ ๊ฒ ๊ฐ๋ค. -> ์ด์ฟ ์๊ฒฌ์ ํ์ตํ ๋๋ Concat์ ํด๋ ๋ ๊ฒ ๊ฐ๋ค. -> ํ์&์ข ํ ์๊ฒฌ, Overlab๋ ๋ฌธ์ฅ์ด ์ฌ๋ฌ๋ฒ Concat๋ ํํ์ sample์ด ๋ง๋ค์ด์ง๋ฉด ์ด์ํด์ง ๊ฑฐ ๊ฐ๋ค. => ๋ฉํ ๋๊ป ์ง๋ฌธ ๋๋ฆฌ๊ธฐ๋ก
2021.05.08 (ํ )
- ์ข ํ : Dense Embeddingํ ๋ Model์ ๋ ๊ฐ ์ฌ๋ ค์ผํ๋, Cuda Error๊ฐ ์๊พธ ํฐ์ง๋ค. ์ผ๋จ 2๊ฐ๋ก ํด๋ณด๊ณ , ์๋๋ฉด ๋์ค์ 1๊ฐ๋ก ๋ฐ๊ฟ๋ณด์.
- ์ตํจ : Context Concatํ๋๊ฑฐ๊ฐ Public LB๋ ๊ณผ์ ํฉ ๋ฑ์ ๋ฌธ์ ๊ฐ ์์๊น ๊ฑฑ์ ๋๋ค.
- ํ์ & ํ๊ท : ๋ฌธ์ ์์ ๋ฏ ํ๋ค! 10๊ฐ ์ด์์ผ๋ก ์คํ์ ํด๋ณด๋ฉด ์ข์๋ฏ!