๊ฐ์
๋ฐ์ง ๋ฒกํฐ(Dense Vector)๋ ๋๋ถ๋ถ์ ์ฐจ์์ 0์ด ์๋ ์๋ฏธ ์๋ ๊ฐ์ด ๋ค์ด์๋ ์ ์ฐจ์ ๋ฒกํฐ๋ค. ์ ๊ฒฝ๋ง์ ํตํด ํ์ต๋๋ฉฐ, ์๋ฏธ์ ์ ์ฌ์ฑ์ ๋ฒกํฐ ๊ณต๊ฐ์์ ๊ฑฐ๋ฆฌ๋ก ํํํ๋ค.
์ผ๋ฐ์ ์ผ๋ก 100~1000 ์ฐจ์ ์ ๋์ ์๋์ ์ผ๋ก ๋ฎ์ ์ฐจ์์ ๊ฐ์ง๋ฉฐ, ์ ์ฌํ ์๋ฏธ๋ฅผ ๊ฐ์ง ๋ฐ์ดํฐ๋ ๋ฒกํฐ ๊ณต๊ฐ์์ ๊ฐ๊น์ด ์์นํ๋ค. ํ๋ ๋ฅ๋ฌ๋ ๊ธฐ๋ฐ ์์ฐ์ด ์ฒ๋ฆฌ์ ์ถ์ฒ ์์คํ ์์ ํต์ฌ์ ์ธ ํํ ๋ฐฉ์์ผ๋ก ์๋ฆฌ ์ก์๋ค.
ํน์ฑ
- ์ ์ฐจ์: ๋ณดํต 100~1000 ์ฐจ์
- ๋ฐ์ง์ฑ: ๊ฑฐ์ ๋ชจ๋ ์ฐจ์์ด 0์ด ์๋ ๊ฐ
- ํ์ต ๊ธฐ๋ฐ: ์ ๊ฒฝ๋ง์ด ๋ฐ์ดํฐ์์ ์๋์ผ๋ก ํํ์ ํ์ต
- ์๋ฏธ ํํ: ์ ์ฌํ ์๋ฏธ๋ ๋ฒกํฐ ๊ณต๊ฐ์์ ๊ฐ๊น์ด ์์น์ ๋ฐฐ์น
- ์ฐ์์ : ์ค์ ๊ฐ์ผ๋ก ๊ตฌ์ฑ๋์ด ๋ฏธ๋ถ ๊ฐ๋ฅ
์์ฑ ๋ฐฉ๋ฒ
Word2Vec
๋จ์ด๋ฅผ ์ ์ฐจ์ ๋ฒกํฐ๋ก ๋งคํํ๋ ์ด๊ธฐ ์๋ฒ ๋ฉ ๊ธฐ๋ฒ์ด๋ค. Skip-gram ๋๋ CBOW(Continuous Bag of Words) ๋ฐฉ์์ ์ฌ์ฉํ์ฌ ๋จ์ด์ ๋ฌธ๋งฅ์ ๊ธฐ๋ฐ์ผ๋ก ๋ฒกํฐ๋ฅผ ํ์ตํ๋ค.
์ ๋ช ํ ์์๋ก โking - man + woman โ queenโ ๊ฐ์ ์๋ฏธ์ ์ฐ์ฐ์ด ๊ฐ๋ฅํ๋ค. 2013๋ Google์ด ๋ฐํํ์ฌ ๋จ์ด ์๋ฒ ๋ฉ์ ๋์คํ๋ฅผ ์ด๋์๋ค.
์ฃผ์ ํน์ง:
- Skip-gram: ์ค์ฌ ๋จ์ด๋ก ์ฃผ๋ณ ๋จ์ด๋ฅผ ์์ธก
- CBOW: ์ฃผ๋ณ ๋จ์ด๋ก ์ค์ฌ ๋จ์ด๋ฅผ ์์ธก
- ์ผ๋ฐ์ ์ผ๋ก 300์ฐจ์ ์ ๋ ์ฌ์ฉ
GloVe
Global Vectors์ ์ฝ์๋ก, ๋จ์ด ๋์ ์ถํ(co-occurrence) ํต๊ณ๋ฅผ ํ์ฉํ์ฌ ๋ฒกํฐ๋ฅผ ํ์ตํ๋ค. Word2Vec๊ณผ ์ ์ฌํ์ง๋ง ์ ์ญ ํต๊ณ ์ ๋ณด๋ฅผ ๋ ์ ํ์ฉํ๋ค.
Stanford NLP ๊ทธ๋ฃน์ด 2014๋ ๋ฐํํ์ผ๋ฉฐ, ๋จ์ด ๊ฐ ์ ์ฌ๋์ ์ ์ถ ๋ฌธ์ ์์ ์ฐ์ํ ์ฑ๋ฅ์ ๋ณด์ธ๋ค.
์ฃผ์ ํน์ง:
- ์ ์ญ ๋จ์ด ๋์ ์ถํ ํ๋ ฌ ๊ธฐ๋ฐ
- ๋ก๊ทธ ์ด์ค์ ํ ํ๊ท ๋ชจ๋ธ
- ์ฌ์ ํ์ต๋ ๋ชจ๋ธ ๊ณต๊ฐ (Wikipedia, Common Crawl)
Transformer ๊ธฐ๋ฐ ๋ชจ๋ธ
BERT, GPT, Sentence-BERT ๋ฑ Transformer ์ํคํ ์ฒ๋ฅผ ์ฌ์ฉํ ๋ชจ๋ธ์ ๋ฌธ๋งฅ์ ๊ณ ๋ คํ ํ๋ถํ ์๋ฒ ๋ฉ์ ์์ฑํ๋ค.
BERT (Bidirectional Encoder Representations from Transformers)
BERT๋ ์๋ฐฉํฅ ๋ฌธ๋งฅ์ ์ดํดํ์ฌ ๊ฐ์ ๋จ์ด๋ ๋ฌธ๋งฅ์ ๋ฐ๋ผ ๋ค๋ฅธ ๋ฒกํฐ๋ฅผ ์์ฑํ๋ค. ์๋ฅผ ๋ค์ด, โ์ํ์ ๊ฐ๋คโ์ โ๊ฐ์ ์ํโ์์ โ์ํโ์ ์๋ก ๋ค๋ฅธ ๋ฒกํฐ๋ฅผ ๊ฐ์ง๋ค.
์ฃผ์ ํน์ง:
- ์ฌ์ ํ์ต + ๋ฏธ์ธ ์กฐ์ (fine-tuning) ๋ฐฉ์
- ๋ง์คํน๋ ์ธ์ด ๋ชจ๋ธ๋ง(MLM)
- ์ผ๋ฐ์ ์ผ๋ก 768์ฐจ์ (BERT-base) ๋๋ 1024์ฐจ์ (BERT-large)
Sentence-BERT
๋ฌธ์ฅ ์ ์ฒด์ ์๋ฏธ๋ฅผ ๋จ์ผ ๋ฒกํฐ๋ก ํํํ๋ค. BERT๋ฅผ ๊ฐ์ ํ์ฌ ๋ฌธ์ฅ ๊ฐ ์ ์ฌ๋ ๊ณ์ฐ์ ํจ์จ์ ์ผ๋ก ์ํํ ์ ์๋ค.
ํ์ฉ:
- ์๋งจํฑ ๊ฒ์
- ๋ฌธ์ฅ ์ ์ฌ๋ ์ธก์
- ํ ์คํธ ํด๋ฌ์คํฐ๋ง
CLIP (Contrastive Language-Image Pre-training)
ํ ์คํธ์ ์ด๋ฏธ์ง๋ฅผ ๊ฐ์ ๋ฒกํฐ ๊ณต๊ฐ์ ๋งคํํ์ฌ ํฌ๋ก์ค๋ชจ๋ฌ ๊ฒ์์ ๊ฐ๋ฅํ๊ฒ ํ๋ค. OpenAI๊ฐ 2021๋ ๋ฐํํ๋ค.
์ฃผ์ ํน์ง:
- ํ ์คํธ์ ์ด๋ฏธ์ง์ ๊ณตํต ์๋ฒ ๋ฉ ๊ณต๊ฐ
- ์ ๋ก์ท ์ด๋ฏธ์ง ๋ถ๋ฅ ๊ฐ๋ฅ
- ๋ฉํฐ๋ชจ๋ฌ ๊ฒ์ ์ง์
Dense Passage Retriever (DPR)
์ง๋ฌธ-์๋ต ์์คํ ์ ์ํด ์ค๊ณ๋ ๋ชจ๋ธ๋ก, ์ง์์ ๋ฌธ์๋ฅผ ๊ฐ์ ๋ฐ์ง ๋ฒกํฐ ๊ณต๊ฐ์ ์ธ์ฝ๋ฉํ๋ค. Facebook AI Research(FAIR)๊ฐ ๊ฐ๋ฐํ๋ค.
์ฃผ์ ํน์ง:
- ์ง์ ์ธ์ฝ๋์ ๋ฌธ์ ์ธ์ฝ๋ ๋ถ๋ฆฌ
- ๋๊ท๋ชจ ๋ฌธ์ ๊ฒ์์ ํจ๊ณผ์
- HNSW ๊ฐ์ ๊ทผ์ฌ ์ต๊ทผ์ ์ด์ ๊ฒ์๊ณผ ๊ฒฐํฉ
์ฅ์
- ์๋ฏธ์ ์ดํด: ๋์์ด, ์ ์ฌ ๊ฐ๋ ์ ๋ฒกํฐ ๊ณต๊ฐ์์ ๊ฐ๊น์ด ์์น์ ๋ฐฐ์นํ๋ค
- ๋ฌธ๋งฅ ๊ณ ๋ ค: Transformer ๊ธฐ๋ฐ ๋ชจ๋ธ์ ๋จ์ด์ ๋ฌธ๋งฅ์ ์๋ฏธ๋ฅผ ๋ฐ์ํ๋ค
- ํจ์จ์ ํํ: ๋ฎ์ ์ฐจ์์ผ๋ก ํ๋ถํ ์ ๋ณด๋ฅผ ์์ถํ๋ค
- ์ผ๋ฐํ ๋ฅ๋ ฅ: ํ์ต ๋ฐ์ดํฐ์ ์๋ ์๋ก์ด ํํ๋ ์ฒ๋ฆฌ ๊ฐ๋ฅํ๋ค
- ์ ์ด ํ์ต: ์ฌ์ ํ์ต๋ ๋ชจ๋ธ์ ๋ค์ํ ํ์คํฌ์ ์ฌ์ฌ์ฉ ๊ฐ๋ฅํ๋ค
- ์์น ์ฐ์ฐ: ๋ฒกํฐ ์ฐ์ ์ฐ์ฐ์ผ๋ก ์๋ฏธ์ ๊ด๊ณ๋ฅผ ํํํ ์ ์๋ค
๋จ์
- ํด์ ์ด๋ ค์: ๊ฐ ์ฐจ์์ด ๋ฌด์์ ์๋ฏธํ๋์ง ๋ช ํํ์ง ์๋ค
- ํ์ต ๋น์ฉ: ๋๊ท๋ชจ ๋ฐ์ดํฐ์ ์ปดํจํ ์์์ด ํ์ํ๋ค
- ๋ธ๋๋ฐ์ค: ์ ํน์ ๊ฒฐ๊ณผ๊ฐ ๋์๋์ง ์ค๋ช ํ๊ธฐ ์ด๋ ต๋ค
- ์ ํํ ๋งค์นญ ์ฝ์ : ํค์๋์ ์ ํํ ์ผ์น๊ฐ ์ค์ํ ๊ฒฝ์ฐ ํฌ์ ๋ฒกํฐ๋ณด๋ค ์ฝํ ์ ์๋ค
- ํธํฅ ์ํ: ํ์ต ๋ฐ์ดํฐ์ ํธํฅ์ด ์๋ฒ ๋ฉ์ ๋ฐ์๋ ์ ์๋ค
์ฌ์ฉ ์ฌ๋ก
์๋งจํฑ ๊ฒ์
์ง์์ ์๋ฏธ๋ฅผ ์ดํดํ์ฌ ๊ด๋ จ ๋ฌธ์๋ฅผ ์ฐพ๋๋ค. ์ฌ์ฉ์๊ฐ โํ์ด์ฌ์ผ๋ก ์น ํฌ๋กค๋ง ํ๋ ๋ฐฉ๋ฒโ์ ๊ฒ์ํ๋ฉด, โPython web scraping tutorialโ ๊ฐ์ ๋ฌธ์๋ ๋์ ์์๋ก ๋ฐํํ๋ค.
์ ์ฉ ๋ถ์ผ:
- ๋ฌธ์ ๊ฒ์ ์์ง
- ์ฝ๋ ๊ฒ์
- ๋ฒ๋ฅ /์๋ฃ ๋ฌธ์ ๊ฒ์
์ถ์ฒ ์์คํ
์์ดํ ๊ณผ ์ฌ์ฉ์๋ฅผ ๋ฐ์ง ๋ฒกํฐ๋ก ํํํ์ฌ ์ ์ฌ๋ ๊ธฐ๋ฐ ์ถ์ฒ์ ์ํํ๋ค.
์์:
- YouTube: ๋์์๊ณผ ์ฌ์ฉ์ ์๋ฒ ๋ฉ
- Spotify: ์์ ๊ณผ ์ฌ์ฉ์ ์ทจํฅ ์๋ฒ ๋ฉ
- Netflix: ์ํ/๋๋ผ๋ง์ ์์ฒญ ํจํด ์๋ฒ ๋ฉ
๋ฌธ์ ๋ถ๋ฅ
ํ ์คํธ์ ์๋ฏธ๋ฅผ ๊ธฐ๋ฐ์ผ๋ก ์นดํ ๊ณ ๋ฆฌ๋ฅผ ๋ถ๋ฅํ๋ค. ๊ฐ์ฑ ๋ถ์, ์ฃผ์ ๋ถ๋ฅ, ์คํธ ํํฐ๋ง ๋ฑ์ ํ์ฉ๋๋ค.
์ด๋ฏธ์ง-ํ ์คํธ ๋งค์นญ
CLIP ๊ฐ์ ๋ชจ๋ธ์ ์ฌ์ฉํ์ฌ ํ ์คํธ ์ค๋ช ์ผ๋ก ์ด๋ฏธ์ง๋ฅผ ๊ฒ์ํ๊ฑฐ๋, ์ด๋ฏธ์ง๋ก ๊ด๋ จ ํ ์คํธ๋ฅผ ์ฐพ๋๋ค.
ํ์ฉ:
- ์ด๋ฏธ์ง ๊ฒ์ ์์ง
- ์๋ ์ด๋ฏธ์ง ์บก์ ๋
- ์๊ฐ์ ์ง๋ฌธ ์๋ต
์ง๋ฌธ-์๋ต ์์คํ
์ง์์ ๊ด๋ จ ๋ฌธ์๋ฅผ ๋ฐ์ง ๋ฒกํฐ๋ก ์ธ์ฝ๋ฉํ์ฌ ๋งค์นญํ๋ค. DPR, ColBERT ๊ฐ์ ๋ชจ๋ธ์ด ๋ํ์ ์ด๋ค.
์์:
- ๊ณ ๊ฐ ์๋น์ค ์ฑ๋ด
- ์ง์ ๋ฒ ์ด์ค ๊ฒ์
- ๋ฌธ์ ๊ธฐ๋ฐ QA
๋ค๊ตญ์ด NLP
๋ค๊ตญ์ด BERT(mBERT), XLM-RoBERTa ๊ฐ์ ๋ชจ๋ธ์ ์ฌ๋ฌ ์ธ์ด๋ฅผ ๊ฐ์ ๋ฒกํฐ ๊ณต๊ฐ์ ๋งคํํ์ฌ ์ธ์ด ๊ฐ ์ ์ด ํ์ต์ ๊ฐ๋ฅํ๊ฒ ํ๋ค.
ํฌ์ ๋ฒกํฐ์์ ๋น๊ต
๋ฐ์ง ๋ฒกํฐ๋ ์๋ฏธ์ ์ดํด์ ์ผ๋ฐํ ๋ฅ๋ ฅ์์ ๊ฐ์ ์ ๊ฐ์ง์ง๋ง, ํด์ ๊ฐ๋ฅ์ฑ์ด ๋ฎ๊ณ ํ์ต ๋น์ฉ์ด ํฌ๋ค. ํค์๋์ ์ ํํ ๋งค์นญ์ด ์ค์ํ ๊ฒฝ์ฐ ํฌ์ ๋ฒกํฐ๊ฐ ๋ ์ ํฉํ ์ ์์ผ๋ฉฐ, ์ต๊ทผ์๋ ๋ ๋ฐฉ์์ ๊ฒฐํฉํ ํ์ด๋ธ๋ฆฌ๋ ์ ๊ทผ์ด ์ฃผ๋ชฉ๋ฐ๊ณ ์๋ค.
์ฐธ๊ณ ์๋ฃ
- Mikolov, T., et al. (2013). โEfficient Estimation of Word Representations in Vector Spaceโ - Word2Vec ๋ ผ๋ฌธ
- Pennington, J., et al. (2014). โGloVe: Global Vectors for Word Representationโ
- Devlin, J., et al. (2018). โBERT: Pre-training of Deep Bidirectional Transformers for Language Understandingโ
- Reimers, N., & Gurevych, I. (2019). โSentence-BERT: Sentence Embeddings using Siamese BERT-Networksโ
- Radford, A., et al. (2021). โLearning Transferable Visual Models From Natural Language Supervisionโ - CLIP ๋ ผ๋ฌธ
- Pinecone: Dense Vector Embeddings for NLP