Week13 Day3 - ai-esg/our-history GitHub Wiki
ํ NLP 11์กฐ Week13 Day3
๋ชฉ์ฐจ
์ผ์
- 2021.10.27 ์
ํ์
- ๋ฌธ์์_T2075
- ๋ฐ๋ง๋ฃจ์ฐฌ_T2078
- ๋ฐ์๋ฉ_T2090
- ์ฐ์์ง_T2137
- ์ค์ํ_T2142
- ์ฅ๋๊ฑด_T2185
- ํํ์น_T2250
์ฃผ๊ฐ ์ผ์
ํผ์ด์ธ์
Reader
- answer๋ฅผ ๋ฝ์์ ๋, exact match ํน์ฑ์ ์กฐ์ฌ๊ฐ ์์ผ๋ฉด ํ๋ฆฐ ๊ฒ์ผ๋ก ํ์ ๋ ํ๋ฅ ์ด ๋๋ค๊ณ ์๊ฐ๋จ.
- konlpy์ mecab์ ์ฌ์ฉํ์ฌ ์๋ฏธ ์๋ ์กฐ์ฌ ์์ ๋ ๊ฒ ๊ณ ๋ ค
- konlpy์ mecab์ ์ฌ์ฉํ์ฌ ์๋ฏธ ์๋ ์กฐ์ฌ ์์ ๋ ๊ฒ ๊ณ ๋ ค
- No answer ์ถ๊ฐ? ๋ต ์์ ์ ์ธ, ์ํํธ ๋ณดํ ์ ํ๋ ๋ฐฉํฅ์ผ๋ก ๊ณ ๋ ค.
data ๋ถ์ (+ ๊ฐ ํ์ด์ฆ๋ณ input - output)
-
์๊ฐ์ด ๋จ๊ฑฐ๋, ๋ค์ ๋์ ์ด ์ด๋ ต๋ค๋ฉด ์งฌ์ ๋ด์ ์๋ํด ๋ณด์. ๋น ๋ฅผ์๋ก ์ข๋ค.
-
max_length retrieval ์ฑ๋ฅ๊ณผ์ ๊ด๊ณ?
-
์ธ๊ตญ์ด 10๊ฐ ์ด์ ๋ฌธ์ฅ์ ์ ์ธ (์ ์ฒ๋ฆฌ ์งํ)
-
URL ํ๊ทธ๋ฑ์ด ์ ๊ฑฐ๋์ง ์์ ๋ถ๋ถ์ด ์กด์ฌํ๋ค (๋ค์ ์ ์ฒ๋ฆฌ ํ๋ฒ์ ํด์คํ์๊ฐ ์๋ค.)
-
docs title ์ ๊ณผ์ฐ ์ด๋ป๊ฒ ํ์ฉ ์ ์์๊น??
-
retrieval์ ์ฑ๋ฅ์ด ์ข์ง ๋ชปํ๊ธฐ ๋๋ฌธ์ top k๋ฅผ ๋๊ฒจ ์ฃผ์์๋ reader์์ ์ด๋ป๊ฒ ์ด๋ฅผ ํ์ฉํด์ผ ํ๋๊ฐ?
- top k๋ฅผ ๋ชจ๋ ๋ถ์ฌ์ ํ๋์ ๋ฌธ์๋ก ๋ง๋ค์ด์ ๊ทธ ์์์ ๋ต์ ์ฐพ๋๋ค.
- ๋ฉ๋ชจ๋ฆฌ ๋ฌธ์ , ํ๋ จ ์๋ ๋ฌธ์ ๋ฑ์ ์ด์๊ฐ ์์
- top k๋ฅผ ํ๋์ฉ ๋๊ฒจ ๋ต์ ๋ฝ๊ณ ๊ทธ ์ค ํ๋๋ฅผ ๊ณ ๋ฅธ๋ค.
- ์ ๋ต ์์์ด๋ผ๋ ๋ต์ ๋์ถํ๋ ํ๋ จ๋ ํ์.
- ๋ชจ๋ ๋ฌธ๋จ์์ ์ ๋ต์์์ด๋ฉด ์ด๋ป๊ฒ ํด์ผ ํ๋๊ฐ?
- ์ฌ๋ฌ ๋ต์ด ๋์ค๋ฉด? ์ค์ฝ์ด, ๊ฐ์ค์น ๋ฑ์ผ๋ก ์ ํํ๋ ๊ธฐ์ค ์์ฑ์ด ํ์.
- ๊ฒฐ๊ตญ ๋ค ํด๋ณด๋๊ฒ ๋ต์ด๊ธฐ๋ ํ๋ค. (๋ญ๊ฐ ๋ ์ข์์ง๋ ์ธ๊ฐ์ด ๋จ์ธํ ์ ์๋ค.)
- top k๋ฅผ ๋ชจ๋ ๋ถ์ฌ์ ํ๋์ ๋ฌธ์๋ก ๋ง๋ค์ด์ ๊ทธ ์์์ ๋ต์ ์ฐพ๋๋ค.
์ํฉ
Test - set (Val)
TOP-5 30 (dense none in-batch) TOP-5 28 (dense in-batch) TOP-5 49.7 (sparse) (๋ฐฉ๊ธ)
์์ ์ฐ์ ์์ (์์์ผ)
- dense_retrieval.py ์ฝ๋์ ๋ฆฌ (์ค๋ ๊ฐ์ด) ์งํํ PR
- Inference (Spare , Dense)
- top-k inference Reader์ ์ ๋ ฅ์ ์ด๋ป๊ฒ ํ ๊น?
- Sparse Top-N -> ๋ฐ์ดํฐ ๋ก๋ ๊ตฌ์ฑ (๋ผ๋ฒจ, N๊ฐ์ ์ ์ฌ ๋ฌธ์, ๋๋ค) (์๋ฉ)
- ์คํ์ ๋ํ ๊ฒฐ๊ณผ๋ฅผ ๋ณผ ์ ์๋๊ฒ ์๋๊ฐ
- ์ถ๊ฐ ํ์ต์ ๋์์ด ๋ ๊ฒ ๊ฐ๋ค.
- ์ ์ฒ๋ฆฌ (์์)
- ์ฑ๋ฅ ๊ฐ์ ์์, ํน์ ๋ฌธ์๊ฐ ๋ฌธ์ ๋๋ ๋ฌธ์๋ ์์์ธ ๋ฏ
- ์ ํ ์คํ์(์ ๊ธฐ์ ๋ฑ)๋ค์ ๊ฒฐ๊ณผ๋ ์ด ์ ์ฒ๋ฆฌ๊ฐ ์ฑ๋ฅ์ ๋ถ์ ์ ์ด์๋ค๊ณ ํจ.
- BM25 (๋๊ฑด)
- rank_bm25๋ก ์ ๋ฐ์ ์ธ ๋ก์ง ์์ฑ ์๋ฃ
- query ๋ฐ์ดํฐ ๊ฐ์ ธ์ค๊ณ retrieve ํ๋ ๋ถ๋ถ ์์ฑ ๋ฐ ์ ๋ฆฌ ์์
- ์๋ผ์คํฑ (์์ง, ์ํ, ํ์น)
- ๊ฒฐ๊ณผ๋ฅผ ๋ฝ์๋ด๋ ๊ฒ ์ฑ๊ณต, ์ฅฌํผํฐ ๋ ธํธ๋ถ์์ .py ํ์ผ๋ก ์ฎ๊ธฐ๋ ์์
- index config ํ์ผ ์์ ? ์์
- ํ ๋ก ๊ฒ์ํ dense retrieval 48%(val set) ๋ฒค์น๋งํฌ (๋ง๋ฃจ์ฐฌ)
- p_encoder ์ ๋ ฅ ์ ์ dimension์ฐจ์ด (์ค์ต ์ฝ๋ ๊ฐ์ ์ฐจ์ด)๋ฅผ ํ์ธํด๋ณด๊ฒ์
- ๊ธฐ์กด์ batch dependency๋ matmul ์ฐจ์ ๋ณํ์์ ๋ฌธ์ ๋ก ์ธํจ
- ๋ฎ์ ์ฑ๋ฅ์ training epoch, optimizer ๋ฑ์ผ๋ก ๊ฐ์ ํ ์ ์์ ๊ฒ์ด๋ผ๊ณ ์๊ฐ ์ค
- hybrid (๋ฐฉ๋ฒ๋ก ์ด ๋ง์)
- ์ ์ํ ์์ ๊ฒ๋ค์ด ์ ํ๋ ํ์ ์๊ฐํด๋ณด๋๊ฒ ์ข์ ๊ฒ์ด๋ค.
- Parameter searching (๋ง๋ฃจ์ฐฌ)
์ฝ๋ ์์
- dense retrieval์์ wiki ์ฌ์ฉํ๊ฒ ์์
- get_item index 4 -> num_neg
- inference.py ์์