์ ๋ณด๊ฒ์ : ๋ง์ ๋ฌธ์ ์งํฉ์์ ์ํ๋ ์ ๋ณด๋ฅผ ์ป๊ธฐ ์ํด ๋น๊ตฌ์กฐํ๋ ๋ฌธ์๋ค์์ ํ์ํ ์๋ฃ๋ฅผ ์ฐพ๋ ๊ฒ
1996๋ ) TEXT์ ๊ฐ์ด ๋น๊ตฌ์กฐํ๋ ๋ฌธ์์ ๊ท๋ชจ๊ฐ ๊ตฌ์กฐํ๋ ๋ฌธ์๋ณด๋ค ์ปธ์. ๊ทผ๋ฐ ์์ฅ์์๋ ๋น๊ตฌ์กฐํ๋ ๋ฌธ์๋ฅผ ๋ค๋ฃจ๋ ๊ฑด ๋์ด ๋์ง ์์์
2006๋ ) ์ฌ์ ํ ๋น๊ตฌ์กฐํ๋ ๋ฌธ์์ ๊ท๋ชจ๊ฐ ํฌ์ง๋ง TEXT ๊ฒ์ ์๋น์ค ์์ฅ์ด ์ปค์ง๋ฉด์ ๋น๊ตฌ์กฐํ ๋ฌธ์๋ฅผ ๋ค๋ฃจ๋ ์์ฅ์ด ์ฑ์ฅํจ
์ ๋ณด๊ฒ์์์คํ ์ด ์๋ค๋ฉด, ์ ๋์ค์ grep๋ช ๋ น์ด, | ๋ก ์ฐพ์ ์ ์์. ํ์ง๋ง, ๋ฌธ์์ ์์ด ํฌ๋ค๋ฉด ์๋๊ฐ ๋๋ฆฌ๊ธฐ ๋๋ฌธ์ ์ ๋ณด ๊ฒ์ ๋ชฉ์ ์ผ๋ก๋ ์ ์ ํ์ง ์๋ค. ํน์ ๋ด์ฉ์ด ๋ค์ด๊ฐ ์๋ ๊ฑด ๋ค์ด๊ฐ ์์ผ๋ฉด ๋ ํ์ํ ํ์๊ฐ ์์ผ๋ ์ฌ์ด ํธ์ด์ง๋ง, ํน์ ๋ด์ฉ์ด ๋ค์ด๊ฐ ์์ง ์์ ๊ฑด ํ์ผ์ ๋๊น์ง ๋ค ํ์ํด ๋ด์ผ ํ๊ธฐ ๋๋ฌธ์ ์ด๋ ต๋ค. ๋จ์ด๊ฐ ์ธ์ ํด ์๋์ง ์ฌ๋ถ๋ grep ๋ช ๋ น์ผ๋ก ์ฐพ์ ์ ์๋ค.
Boolean ๋ชจ๋ธ์ ๋จ์ด ํฌํจ ์ฌ๋ถ๋ง ์ ์ ์๊ธฐ ๋๋ฌธ์ ๊ฒ์ ๊ฒฐ๊ณผ๋ก ์ถ์ถ๋ ๋ฌธ์๋ค์ ์์๋ฅผ ๋งค๊ธฐ๊ธด ํ๋ค๋ค. grep ๋ํ, Boolean ๋ชจ๋ธ์ ๋ฐ๋ฅด๊ธฐ ๋๋ฌธ์ ์์๋ฅผ ๋งค๊ธฐ๊ธด ํ๋ค๋ค.
Boolean ๋ชจ๋ธ๋ ์ ์๋ฅผ ๋งค๊ฒจ์ Sortํ ์ ์๊ธด ํ์ง๋ง, ๊ธฐ๋ณธ์ ์ผ๋ก ์์ ๋งค๊ธธ ์ ์๋ค.
$ grep -v <์ง์์ด> * : ๋ชจ๋ ๋ฌธ์ ํ์ผ(*)์์ ์ง์์ด๊ฐ ํฌํจ๋์ง ์์(-v) ๋ฌธ์๋ฅผ ํ์ํ๋ค.
Term-document (incidence) matrix
Term๊ณผ Document์ ๊ด๊ณ๋ฅผ ๋ํ๋ด๋ ํ๋ ฌ
๊ฒ์ ๋์์ด ๋๋ ๋ชจ๋ ๋ฌธ์์ ๋ํด, Term์ด Document์ ๋์ค๋ฉด 1, ๋์ค์ง ์์ผ๋ฉด 0
์ง์์ด์ ์ผ์นํ๋ Term์ ํ๋ค์ ์ฐพ์์ ์ฃผ์ด์ง ์ง์์ด์ ๋ฐ๋ผ ํ๋ผ๋ฆฌ AND, OR, NOT ์ฐ์ฐ ์ํ
์ด๋, NOT์ 1๊ณผ 0์ ๋ง๋ฐ๊ฟ.
bitwise : ๊ฐ์ ์์น์ bit๋ผ๋ฆฌ ์ฐ์ฐ
์) ์ง์์ด : Brutus AND Caesar but NOT Calpurnia
Brutus = 110100, Caesar = 110111, Calpurnia = 010000
์ฐ์ฐ : 110100 AND 110111 AND 101111 = 100100
→ 1, 4๋ฒ์งธ ๋ฌธ์๊ฐ ๊ฒ์ ๊ฒฐ๊ณผ์ ํฌํจ๋๊ณ ๋๋จธ์ง๋ ํฌํจ๋์ง ์์.
Term-document (incidence) matrix๊ฐ ์ฃผ์ด์ ธ ์๋ค๋ฉด, ์ง์์ด ํค์๋์ ํด๋นํ๋ Term์ ํ์ ์ฐพ์์ ์ฐ์ฐ์ ํตํด ๊ฒ์ ๊ฒฐ๊ณผ๋ฅผ ๋์ถํด๋ผ ์ ์์. (Boolean ๊ฒ์ฌ ๊ธฐ๋ณธ ๋ฐฉ๋ฒ๋ก )
Boolean Model ๊ธฐ๋ณธ ๊ฐ์ : ๋ฌธ์์ ์งํฉ์ ๊ณ ์ ๋์ด ์์.
๋ง๋ญ์น : Corpus, ๋ฌธ์์ ์งํฉ
Refine : ์ฌ๋์ด๋ ๊ฒ์ ์์คํ ์ด ์ง์์ด๋ฅผ ๋ ์ ๊ตํ๊ฒ ์์ ํด์ ์ฌ๊ฒ์์ ํ๋ ํ์
๊ฒ์๋ ์์คํ ํ๊ฐ ๊ธฐ์ค
Precision ์ ๋ฐ๋ : ๊ฒฐ๊ณผ๊ฐ ์ง์์ด์ ์ผ๋ง๋ ๋ถํฉํ๋์ง
๋ชจ๋ธ์ด True๋ผ๊ณ ๋ถ๋ฅํ ๊ฒ ์ค์์ ์ค์ True์ธ ๊ฒ์ ๋น์จ(=์ ๋ต๋ฅ )
์ค์ ๋ก ์ฌ์ฉ์๊ฐ ์ฐพ๊ณ ์ ํ๋ ๋ด์ฉ์ด ๋ด๊ธด ๋ฌธ์ / ๋ชจ๋ธ ๊ฒ์ ๊ฒฐ๊ณผ
์ ๋ต / ๋ด๊ฐ
Recall ์ฌํ์จ : ์ง์์ด์ ๋ถํฉํ๋ ๋ฌธ์๋ฅผ ์ผ๋ง๋ ์ฐพ์๋ด๋์ง
์ค์ True์ธ ๊ฒ ์ค์์ ๋ชจ๋ธ์ด True๋ผ๊ณ ์์ธกํ ๊ฒ์ ๋น์จ(=์ ๊ณต๋ฅ )
์ ๋ต / ์ค์
์ ํ๋(Accuracy)๋ ์ ๋ณด ๊ฒ์ ํ๊ฐ์ ์ฐ์ด์ง ์์
์ ๋ฐ๋๊ฐ ๋์ผ๋ฉด ์ฌํ์จ์ด ๋ฎ๊ณ , ์ ๋ฐ๋๊ฐ ๋ฎ์ผ๋ฉด ์ฌํ์จ์ด ๋์.
์ ๋ฐ๋๊ฐ 100์ธ ๊ฒฝ์ฐ : ์ฐพ๊ณ ์ ํ๋ ๋ด์ฉ์ด ๋ด๊ธด ๋ฌธ์ 100๊ฐ์์ 1๊ฐ ์ฐพ์. → ์ฌํ์จ์ 0.01
์ฌํ์จ์ด 100์ธ ๊ฒฝ์ฐ : ์ฐพ์ ๋ฌธ์ 100๊ฐ ์ค ์ฐพ๊ณ ์ ํ๋ ๋ด์ฉ์ด ๋ด๊ธด ๋ชจ๋ ๋ฌธ์๊ฐ 1๊ฐ์ → ์ ๋ฐ๋๋ 0.01
F-measure : ์ ๋ฐ๋์ ์ฌํ์จ์ ๊ฐ์ค์น๋ฅผ ์ฃผ๊ณ ๊ตฌํ ํ๊ท
→ ํํ ์ํ(๊ฐ์ค์น)๋ฅผ 0.5๋ก ์ฃผ์ด ์๋์ ๊ฐ์ด ๋ง๋ฆ
F-measure๋ก ๊ฒ์ ์์คํ ์ฑ๋ฅ ํ๊ฐ์ ์ฌ์ฉํจ.
์์)
Q1. ๊ฒ์ ๋์ ๋ฌธ์ 100๋ง ๊ฐ, ๊ฐ ๋ฌธ์๋ ํ๊ท ์ ์ผ๋ก 1000๊ฐ์ ๋จ์ด๊ฐ ์์. ํ ๋จ์ด๋ ํ๊ท ์ ์ผ๋ก ๋์ด์ฐ๊ธฐ, ๋ถํธ ํฌํจ 6bytes(6๊ธ์). ๋ฌธ์ ์ ์ฒด ํฌ๊ธฐ๋?
A1. ๋ฌธ์ ์ ์ฒด ํฌ๊ธฐ = 100๋ง * (1000 * 6bytes) = 6,000,000,000 = 60์ตbytes = 6GB
Q2. 10์ต(100๋ง * 1000 = 1,000,000,000)๊ฐ ์ ๋จ์ด ์ค, 500,000๊ฐ์ ๋ค๋ฅธ ๋จ์ด๊ฐ ์๋ค. Term-Document Matrix์ ํฌ๊ธฐ๋?
A2.
Term ๊ฐ์ = 50๋ง
Document ๊ฐ์ = 100๋ง
Term-Document Matrix ํฌ๊ธฐ = 50๋ง * 100๋ง = 5์ฒ ์ต
→ Boolean ๊ฒ์์ ์ํด Term-Document Matrix๋ฅผ ๋ฏธ๋ฆฌ ๋ง๋ค์ด์ผ ํ๋๋ฐ, ํฌ๊ธฐ๊ฐ ๋๋ฌด ํผ.
5์ฒ ์ต๊ฐ์ 0๊ณผ 1์ค 0์ ๋น์ค์ด ๋ณดํต 99.8%๋ฅผ ์ฐจ์งํ์ฌ 1์ 0.2%๋ฅผ ์ฐจ์งํ์ฌ 1000๊ฐ๋ก ๋ง์ง ์์.
๋ฐ๋ผ์, 1์ธ ๊ฒ๋ง ๋ฐ๋ก ํ์ํ๋๋ก ํจ. ⇒ Inverted Index (Inverted file)
0์ด ์ฐจ์งํ๋ ๋น์จ
term(ํ) = 50๋ง๊ฐ, document(์ด) = 100๋ง๊ฐ
ํ๋์ ๋ฌธ์์ term ์ ๋ณด = ํ ์ด(50๋ง๊ฐ์ term), ํ๋์ ๋ฌธ์๋ 1000๊ฐ์ ๋จ์ด๋ก ๊ตฌ์ฑ๋จ ⇒ ํ๋์ ๋ฌธ์์ term ์ค ํ๊ท ์ ์ผ๋ก 1000๊ฐ์ ๋จ์ด๋ง ๋์ค๋ฏ๋ก 50๋ง ๊ฐ์ ํ ์ด์์ 1์ ํ๊ท ์ ์ผ๋ก 1000๊ฐ์. 49๋ง9์ฒ๊ฐ๋ 0์. ⇒ 50๋ง ๊ฐ์์ 1000๊ฐ๊ฐ 1์ด์์ผ๋ 100๋ง๊ฐ์์๋ 2000๊ฐ๊ฐ 1์. ⇒ 2์ฒ/100๋ง = 0.002. 0.2%๊ฐ 1์ด๊ณ , 99.8%๊ฐ 0์.
Inverted index (inverted file)
Term-Document Matrix์ ๊ณต๊ฐ ์์ ๋ฌธ์ ํด๊ฒฐ์ ์ํด 1์ธ ๋ฌธ์๋ง ๋ชฉ๋กํํจ.
๊ฒ์ ๋์(๋ฌธ์, ์น, PC๊ฒฝ๋ก)์ ๋ฐ๋ผ ๊ฒ์ ๊ฒฐ๊ณผ๊ฐ ๋ค๋ฅด๊ธฐ ๋๋ฌธ์ Posting list์๋ ๋ ผ๋ฆฌ์ ์ผ๋ก ๋ฌธ์์ ๋ฒํธ ์๋ณ์๋ฅผ ๋ถ์ฌํจ.
Posting : ๋ฌธ์ ๋ฒํธ ์๋ณ์ ํ๋ํ๋
Posting list : Posting์ด ๋์ด๋ ํ๋์ ๋ฐฐ์ด(๋ฆฌ์คํธ)
Posting lists : Posting list์ ์งํฉ
์ง์์ด๋ฅผ ์ฐพ์ ๋ ๋ ๋นจ๋ฆฌ ์ฐพ์ ์ ์๋๋ก ๋ฌธ์๋ฅผ ์ ๋ ฌํด์ผ ํ๊ธฐ ๋๋ฌธ์, Posting list๋ ๋ฐฐ์ด๋ณด๋ค ์ฐ๊ฒฐ ๋ฆฌ์คํธ๋ฅผ ์ ํธํ๋ค. ํ์ง๋ง ํฌ์ธํฐ ๊ณต๊ฐ์ ๋ ์ฐจ์งํ๋ค.
Dictionary == Vocabulary (Term์ ์งํฉ)
Inverted Index ๋ง๋๋ ๊ณผ์
[๋จ๊ณ]
- Tokenization (ํ ํฐํ)
- → ๋ง์ฝ, ๋ฌธ์๊ฐ TXT๊ฐ ์๋ ์๋ํ๊ธ, html์ด๋ผ๋ฉด? → ๊ฒฝ์ฐ์ ๋ฐ๋ผ ํ ํฐํ ์ด๋ ค์ธ ์ ์์.
- Linguistic Modules๋ฅผ ํตํด ์ธ์ด์ ๋ฐ๋ผ ์ฒ๋ฆฌํจ. (์์ด : ๋ชจ๋ ์๋ฌธ์๋ก, ์ํ์ผ๋ก ๋ง๋ฆ)
- Indexer : ํ ํฐ์ ์ธ๋ฑ์ค๋ก ๋ง๋ฆ
- ์ด๋ ํ ํฐ์ด ์ด๋ ๋ฌธ์์์ ๋์๋์ง Postings list(ํด๋น ํ ํฐ์ ๋ฌธ์ ์์น๋ฅผ ๋ํ๋) ๊ตฌ์ถ
- Inverted Index๋ฅผ ๋ง๋ฆ.
- (Term, DocID) ์์ผ๋ก ๋ง๋ฆ
- Term์ ๊ธฐ์ค์ผ๋ก ์ ๋ ฌํจ.
- ํ์ ์, TF ์ ๋ณด ์ถ๊ฐ
- ํ ๋ฌธ์์ ์ค๋ณต Term์ ํ๋๋ก ํต์ผ
- Term Frequency(TF) : ํ ๋ฌธ์๋ฅผ ๊ธฐ์ค์ผ๋ก Term์ด ๋์จ ๊ฐ์ ์ถ๊ฐ
- ํ์ ์, DF ์ ๋ณด ์ถ๊ฐ
- Document Frequency(DF) : Term์ด ๋์จ ๋ฌธ์์ ๊ฐ์ ์ถ๊ฐ
- ์ด๋ Term Frequency๋ผ๋ฆฌ ํฉ์ ๊ตฌํจ
- DF๋ก ํฉ์ณ์ง ์ค๋ณต Term์ ๊ฐ๊ฐ ์ฐ๊ฒฐ ๋ฆฌ์คํธ ์์ผ๋ก ์์ ์ (DocID, TF)๋ฅผ ๊ฐ๋ฆฌํด → ๋์ค์ ์ฐ๊ฒฐ ๋ฆฌ์คํธ ํ์์ Inverted Index์ ๊ธฐํ์ด ๋จ.
์ฌ๋์ด ์ฐ๋ ๋จ์ด๋ ํ๊ณ๊ฐ ์์ผ๋ฏ๋ก Dictionary size๋ Postings list์ ๋นํด ๋ณํ๊ฐ ์ ์.
๋ฐ๋ผ์, Dictionary๋ ๊ฒ์ ์๋น์ค๋ฅผ ์ํด Main Memory๋ก load ๋จ.
Postings๋ ํฌ๊ธฐ๊ฐ ์ ์ ์ปค์ง๊ณ ๋ณํ๋ ์ฆ์ Disk์ ์ ์ฅ๋จ.
Postings list ์ ์ฅ ๋ฐฉ๋ฒ
- ์ฐ๊ฒฐ ๋ฆฌ์คํธ
- ๊ฐ๋ณ ๋ฐฐ์ด
- hybrid scheme : ์ฐ๊ฒฐ๋ฆฌ์คํธ + ๊ฐ๋ณ ๋ฐฐ์ด (๋ฐฐ์ด์ ์ฐ๊ฒฐ๋ฆฌ์คํธ๋ก ์ฐ๊ฒฐํจ.)
์ง์์ด
- Conjunctive : AND์๊ฐ๋ณต์ก๋ : ๋น๊ตํ๋ Posting List ๊ธธ์ด์ ํฉif not sorting ์๊ฐ๋ณต์ก๋ : ๋น๊ตํ๋ Posting List ๊ธธ์ด์ ๊ณฑ
- ์กฐ๊ฑด : Posting list๊ฐ ์ ๋ ฌ๋์ด ์์ด์ผ ํจ.
- Posting list๋ผ๋ฆฌ ์ฒซ ๋ฒ์งธ ์ธ๋ฑ์ค๋ถํฐ ๋น๊ตํด์ ๋ฌธ์ ๋ฒํธ๊ฐ ๊ฐ์ผ๋ฉด ๊ฒ์ ๊ฒฐ๊ณผ์ ํฌํจํ๊ณ , ๋ค๋ฅด๋ฉด ์์ ์ชฝ์ Posting์ด ์ค๋ฅธ์ชฝ์ผ๋ก ์ด๋ํ๊ณ ๋ค์ ๋น๊ต
- Disjunctive : OR์๊ฐ๋ณต์ก๋ : ๋น๊ตํ๋ Posting List ๊ธธ์ด์ ํฉ
- Posting list๋ผ๋ฆฌ ์ฒซ ๋ฒ์งธ ์ธ๋ฑ์ค๋ถํฐ ๋น๊ตํด์ ๋ฌธ์ ๋ฒํธ๊ฐ ๊ฐ์ผ๋ฉด ๊ฒ์ ๊ฒฐ๊ณผ์ ํฌํจํ๊ณ , ๋ฌ๋ผ๋ ๋ฌธ์ ๋ฒํธ๊ฐ ๋ ์์ ์ชฝ์ ๋จผ์ ๊ฒ์ ๊ฒฐ๊ณผ์ ํฌํจํ๊ณ ์์ ์ชฝ์ด ์ค๋ฅธ์ชฝ์ผ๋ก ์ด๋ํ๋ค.
- NOT → ์๊ฐ ์ค๋ ๊ฑธ๋ฆผNOT์ด ๋ถ์ Posting list๋ ์ค๋ฅธ์ชฝ์ผ๋ก ๋์ด๊ฐ๊ธฐ ์ ์, ์์ ์๊ฒ ์๋ Posting์ ๋ฌธ์ ๋ฒํธ์ ๋ค๋ฅธ Posting list์ ์ฐ์ฐํจ.NOT์ด ๋ถ์ Posting์ ๋ฌธ์ ๋ฒํธ๊ฐ NOT์ด ๋ถ์ง ์์ Posting์ ๋ฌธ์ ๋ฒํธ์ ๋ค๋ฅด๋ฉด, ์ถ๊ฐํ์ง ์๊ณ ์์ ์ชฝ์ด ์ค๋ฅธ์ชฝ์ผ๋ก ์ด๋ํ๋ค. ๊ฐ์ผ๋ฉด ์ถ๊ฐํ์ง ์๊ณ ๋ Posting ๋ชจ๋ ์ค๋ฅธ์ชฝ์ผ๋ก ์ด๋ํ๋ค.
- <AND>
- NOT์ด ๋ถ์ ๋จ์ด๊ฐ ๊ฒ์ ๊ฒฐ๊ณผ์ ํฌํจ๋๋ฉด ์ ๋จ.
WestLaw ์์คํ
์ง์์ด๋ฅผ ๋ง๋ค ๋, AND, OR, NOT + /์ซ์, ! ๊ฐ๋ฅํจ.
๋์ด์ฐ๊ธฐ : OR
/<์ซ์> : <์ซ์> ๋จ์ด ์ด๋ด์ ๋ ๋จ์ด๊ฐ ๋์ฌ ๋, AND
! : Wild-card ๋ฌธ์ *
/s : ํ ๋ฌธ์ฅ ์์ ๋ ๋จ์ด๊ฐ ๋ ๋ค ๋์์ผ ํจ. AND
/p : ํ ๋ฌธ๋จ ์์ ๋ ๋จ์ด๊ฐ ๋ ๋ค ๋์์ผ ํจ. AND
Proximity operators : ์ธ์ ์ฑ์ ํ์ํ ์ ์๋ ์ฐ์ฐ ๊ธฐํธ
์ฐ์ฐ ์์ ์ต์ ํ
- ์๋ถํฐ ์ฒ๋ฆฌ
- ์์ ๋ฐ๊ฟ์ ์ฒ๋ฆฌ → ์๊ฐ ์ ์ฝ ๊ฐ๋ฅOR ์๊ฐ ๋ณต์ก๋ : Posting list size์ ํฉ
- Doc Freq๊ฐ ์์ ๊ฒ๋ถํฐ ์ฒ๋ฆฌํจ.
- Posting list size == Doc Freq
- ์ฐ์ฐ ์ ์๊ฐ ๋ณต์ก๋๋ฅผ ์ต๋๋ก ๊ณ์ฐํด์ ์๊ฐ ๋ณต์ก๋๊ฐ ์์ ์์๋๋ก ์ฒ๋ฆฌํจ.
- AND ์๊ฐ ๋ณต์ก๋ : Posting list size์ ํฉ
์ธ์ ์กฐ๊ฑด
์ง์์ด์ ๋จ์ด๊ฐ ๋์ด์ฐ๊ธฐ ๋จ์๋ก ๋์ด์ง๋ฉด ์ ๋๊ณ ๋ถ์ด์์ด์ผ ํ ๋
Proximity ์ธ์ ์กฐ๊ฑด ๋ช ๋ น์ด : NEAR
๊ตฌ์กฐํ๋ TEXT๊น์ง ์๊ฐํด์ ๊ฒ์ํด๋ณด๋ ๋ฐฉ๋ฒ๋ ์๊ฐํด๋ณด๊ธฐ(์ ์์ ๋ด์ฉ ๊ตฌ์กฐ๊ฐ ๋ง๋ ๊ฒ์)
Inverted Index + Position Information
Position Information : Posting์ด ํด๋น ๋ฌธ์๊ฐ ๊ทธ ๋ฌธ์ ๋ด์์ ์ด๋์ ๋์๋์ง ์์น ์ ๋ณด๊ฐ ๋ด๊ธด list๋ฅผ ๊ฐ๋ฆฌํด
Position Information Size = Term Frequency
๋ ๋จ์ด๊ฐ ์ธ์ ํด ์๋์ง ์ฐพ๋ ๋ฒ : AND ์ฐ์ฐ์ผ๋ก ๊ฐ ๋ฌธ์์ ํด๋น Term ๋์๋์ง ๊ฒ์ฌ → ๋ ์์น ์ ๋ณด๋ฅผ ๋น๊ตํจ → ์ธ์ ์กฐ๊ฑด์ ๋ง์ ๊ฒฝ์ฐ ๊ฒฐ๊ณผ์ ํฌํจ
์ธ์ ์ฐจ์ด : 1์ด๋ฉด ๋ ๋จ์ด๊ฐ ๋ถ์ด์์์ ์๋ฏธํ๊ณ , 2๋ฉด ๋ ๋จ์ด ์ฌ์ด์ ํ ๋จ์ด๊ฐ ํฌํจ๋์ด ์์์ ์๋ฏธํจ.
Term Freq ํ์ฉ
Term Freq๊ฐ ํฐ ์์ผ๋ก ๊ฒฐ๊ณผ ์ ๊ณตํ๊ธฐ
์ด๋ค Term์ด ํ๋์ ๋ฌธ์์์ Document์์ ๋ช ๋ฒ ๋์๋์ง ๊ณ ๋ ค
์ด๋ค Posting์ Term Freq == ๊ทธ Posting์ Positional Information ๋ฆฌ์คํธ์ ๊ธธ์ด
๊ฒ์ ๊ฒฐ๊ณผ๋ก, ๊ฐ ๋ฌธ์์ Term Freq์ ํฉ์ด ํฐ ๋ฌธ์๋ถํฐ ์ ๊ณตํจ.
Ranking Search
Boolean ๋ชจ๋ธ์ ํด๋น ์ง์์ด๊ฐ ๋ฌธ์์ ํฌํจ ๋๋์ง ์ ๋๋์ง๋ง ํ๋จํ๊ธฐ ๋๋ฌธ์ Ranking์ ๋งค๊ธฐ๋ ๊ฑด ์์น์ ์ผ๋ก๋ ๋ถ๊ฐ๋ฅํ๋ค.
ํ์ง๋ง, ๊ธฐ์ค์ ์ ์ฉํด์ ์กฐ๊ธ ๋ ์ ์ฉํ ๋งํ ๊ฒ์ ๊ฒฐ๊ณผ๋ฅผ ์ ๊ณตํ ์๋ ์๋ค. Proximity ์ธ์ ์ฑ์ ์ด์ฉํด์ ์ธ์ ํ ์๋ก ์ฌ์ฉ์๊ฐ ๋ ์ํ๋ ์ ๋ณด์ ๋ ๊ฐ๊น์ธ ์ ์์ผ๋ฏ๋ก ๊ฐ๊น์ด ์์ผ๋ก ์ ๊ณตํ๊ฑฐ๋, ๋ฌธ์์ Term Freq๋ฅผ ์ด์ฉํด์ ํฐ ์์ผ๋ก ์ ๊ณตํ๊ฑฐ๋, ๋ฌธ์๊ฐ ๋ง๋ค์ด์ง ์๊ฐ์ ์ธ๋ฑ์ค์ ๋ถ์ฌํด์ ์ต๊ทผ ๋ฌธ์๋ถํฐ ์ ๊ณตํ ์ ์๊ธด ํ๋ค.
์ ๋ณด ๊ฒ์ VS DB ๊ฒ์
์ ๋ณด ๊ฒ์
๋น๊ตฌ์กฐํ ๋จ
๋ฒ์ ๊ฒ์ ๋ถ๊ฐ๋ฅ
๋จ, TEXT์ด๋๋ผ๊ณ ์ฝ๊ฐ์ ๊ตฌ์กฐ๊ฐ ์์ ์ ์์. Semi-Structured Data ์) PPT, XML
๊ธ์์ ํฌ๊ธฐ, ๊ธ์์ ๊ตต๊ธฐ์ ๊ฐ์ ์ ๋ณด๋ฅผ ์ด์ฉํด ์ฝ๊ฐ์ ๊ตฌ์กฐ๋ฅผ ์ถ๊ฐํ ์ ์์.
DB ๊ฒ์
๊ตฌ์กฐํ๋จ.
๋ฒ์ ๊ฒ์ ๊ฐ๋ฅ
๊ด๋ จ ์๋ Concept ๊ฒ์ : ์์ง ๋ถ๊ฐ๋ฅ
์ฉ์ด
Clustering : ๊ตฐ์ง(๋ชจ์ผ๊ธฐ)
Classfication : ๋ถ๋ฅ
์น ๊ฒ์
๋ค์ํ ๋ฌธ์, ๋ค์ํ ์ฌ๋, ์ง์์ด, ์ ๋ณด ์กด์ฌํจ.
๋งํฌ๋ ์ ๋ณด ํ์ฉํ๊ฑฐ๋ ํด๋ฆญํ ์ ๋ณด ํ์ฉ ๊ฐ๋ฅํจ.
Cross-language information retrieval : ๊ต์ฐจ ์ธ์ด, ๋ฒ์ญํด์ ๊ฒ์ ๊ฒฐ๊ณผ ์ ๊ณต
Question answering : ์ง์ ์๋ต ์์คํ ์ง๋ฌธ&๋ต๋ณ
Summarization : ๊ฒ์๊ฒฐ๊ณผ ์์ฝํด์ ์ ๊ณต
TEXT mining : TEXT์์ ํ์ํ ์ ๋ณด ๋ฝ์์ ์๋ ค์ค
1996๋ ) TEXT์ ๊ฐ์ด ๋น๊ตฌ์กฐํ๋ ๋ฌธ์์ ๊ท๋ชจ๊ฐ ๊ตฌ์กฐํ๋ ๋ฌธ์๋ณด๋ค ์ปธ์. ๊ทผ๋ฐ ์์ฅ์์๋ ๋น๊ตฌ์กฐํ๋ ๋ฌธ์๋ฅผ ๋ค๋ฃจ๋ ๊ฑด ๋์ด ๋์ง ์์์
2006๋ ) ์ฌ์ ํ ๋น๊ตฌ์กฐํ๋ ๋ฌธ์์ ๊ท๋ชจ๊ฐ ํฌ์ง๋ง TEXT ๊ฒ์ ์๋น์ค ์์ฅ์ด ์ปค์ง๋ฉด์ ๋น๊ตฌ์กฐํ ๋ฌธ์๋ฅผ ๋ค๋ฃจ๋ ์์ฅ์ด ์ฑ์ฅํจ
์ ๋ณด๊ฒ์์์คํ ์ด ์๋ค๋ฉด, ์ ๋์ค์ grep๋ช ๋ น์ด, | ๋ก ์ฐพ์ ์ ์์. ํ์ง๋ง, ๋ฌธ์์ ์์ด ํฌ๋ค๋ฉด ์๋๊ฐ ๋๋ฆฌ๊ธฐ ๋๋ฌธ์ ์ ๋ณด ๊ฒ์ ๋ชฉ์ ์ผ๋ก๋ ์ ์ ํ์ง ์๋ค. ํน์ ๋ด์ฉ์ด ๋ค์ด๊ฐ ์๋ ๊ฑด ๋ค์ด๊ฐ ์์ผ๋ฉด ๋ ํ์ํ ํ์๊ฐ ์์ผ๋ ์ฌ์ด ํธ์ด์ง๋ง, ํน์ ๋ด์ฉ์ด ๋ค์ด๊ฐ ์์ง ์์ ๊ฑด ํ์ผ์ ๋๊น์ง ๋ค ํ์ํด ๋ด์ผ ํ๊ธฐ ๋๋ฌธ์ ์ด๋ ต๋ค. ๋จ์ด๊ฐ ์ธ์ ํด ์๋์ง ์ฌ๋ถ๋ grep ๋ช ๋ น์ผ๋ก ์ฐพ์ ์ ์๋ค.
Boolean ๋ชจ๋ธ์ ๋จ์ด ํฌํจ ์ฌ๋ถ๋ง ์ ์ ์๊ธฐ ๋๋ฌธ์ ๊ฒ์ ๊ฒฐ๊ณผ๋ก ์ถ์ถ๋ ๋ฌธ์๋ค์ ์์๋ฅผ ๋งค๊ธฐ๊ธด ํ๋ค๋ค. grep ๋ํ, Boolean ๋ชจ๋ธ์ ๋ฐ๋ฅด๊ธฐ ๋๋ฌธ์ ์์๋ฅผ ๋งค๊ธฐ๊ธด ํ๋ค๋ค.
Boolean ๋ชจ๋ธ๋ ์ ์๋ฅผ ๋งค๊ฒจ์ Sortํ ์ ์๊ธด ํ์ง๋ง, ๊ธฐ๋ณธ์ ์ผ๋ก ์์ ๋งค๊ธธ ์ ์๋ค.
$ grep -v <์ง์์ด> * : ๋ชจ๋ ๋ฌธ์ ํ์ผ(*)์์ ์ง์์ด๊ฐ ํฌํจ๋์ง ์์(-v) ๋ฌธ์๋ฅผ ํ์ํ๋ค.
Term-document (incidence) matrix Term๊ณผ Document์ ๊ด๊ณ๋ฅผ ๋ํ๋ด๋ ํ๋ ฌ
๊ฒ์ ๋์์ด ๋๋ ๋ชจ๋ ๋ฌธ์์ ๋ํด, Term์ด Document์ ๋์ค๋ฉด 1, ๋์ค์ง ์์ผ๋ฉด 0
์ง์์ด์ ์ผ์นํ๋ Term์ ํ๋ค์ ์ฐพ์์ ์ฃผ์ด์ง ์ง์์ด์ ๋ฐ๋ผ ํ๋ผ๋ฆฌ AND, OR, NOT ์ฐ์ฐ ์ํ
์ด๋, NOT์ 1๊ณผ 0์ ๋ง๋ฐ๊ฟ.
bitwise : ๊ฐ์ ์์น์ bit๋ผ๋ฆฌ ์ฐ์ฐ
์) ์ง์์ด : Brutus AND Caesar but NOT Calpurnia
Brutus = 110100, Caesar = 110111, Calpurnia = 010000
์ฐ์ฐ : 110100 AND 110111 AND 101111 = 100100
→ 1, 4๋ฒ์งธ ๋ฌธ์๊ฐ ๊ฒ์ ๊ฒฐ๊ณผ์ ํฌํจ๋๊ณ ๋๋จธ์ง๋ ํฌํจ๋์ง ์์.
Term-document (incidence) matrix๊ฐ ์ฃผ์ด์ ธ ์๋ค๋ฉด, ์ง์์ด ํค์๋์ ํด๋นํ๋ Term์ ํ์ ์ฐพ์์ ์ฐ์ฐ์ ํตํด ๊ฒ์ ๊ฒฐ๊ณผ๋ฅผ ๋์ถํด๋ผ ์ ์์. (Boolean ๊ฒ์ฌ ๊ธฐ๋ณธ ๋ฐฉ๋ฒ๋ก )
Boolean Model ๊ธฐ๋ณธ ๊ฐ์ : ๋ฌธ์์ ์งํฉ์ ๊ณ ์ ๋์ด ์์.
๋ง๋ญ์น : Corpus, ๋ฌธ์์ ์งํฉ
Refine : ์ฌ๋์ด๋ ๊ฒ์ ์์คํ ์ด ์ง์์ด๋ฅผ ๋ ์ ๊ตํ๊ฒ ์์ ํด์ ์ฌ๊ฒ์์ ํ๋ ํ์
๊ฒ์๋ ์์คํ ํ๊ฐ ๊ธฐ์ค
Precision ์ ๋ฐ๋ : ๊ฒฐ๊ณผ๊ฐ ์ง์์ด์ ์ผ๋ง๋ ๋ถํฉํ๋์ง
๋ชจ๋ธ์ด True๋ผ๊ณ ๋ถ๋ฅํ ๊ฒ ์ค์์ ์ค์ True์ธ ๊ฒ์ ๋น์จ(=์ ๋ต๋ฅ )
์ค์ ๋ก ์ฌ์ฉ์๊ฐ ์ฐพ๊ณ ์ ํ๋ ๋ด์ฉ์ด ๋ด๊ธด ๋ฌธ์ / ๋ชจ๋ธ ๊ฒ์ ๊ฒฐ๊ณผ
์ ๋ต / ๋ด๊ฐ
Recall ์ฌํ์จ : ์ง์์ด์ ๋ถํฉํ๋ ๋ฌธ์๋ฅผ ์ผ๋ง๋ ์ฐพ์๋ด๋์ง
์ค์ True์ธ ๊ฒ ์ค์์ ๋ชจ๋ธ์ด True๋ผ๊ณ ์์ธกํ ๊ฒ์ ๋น์จ(=์ ๊ณต๋ฅ )
์ ๋ต / ์ค์
์ ํ๋(Accuracy)๋ ์ ๋ณด ๊ฒ์ ํ๊ฐ์ ์ฐ์ด์ง ์์
์ ๋ฐ๋๊ฐ ๋์ผ๋ฉด ์ฌํ์จ์ด ๋ฎ๊ณ , ์ ๋ฐ๋๊ฐ ๋ฎ์ผ๋ฉด ์ฌํ์จ์ด ๋์.
์ ๋ฐ๋๊ฐ 100์ธ ๊ฒฝ์ฐ : ์ฐพ๊ณ ์ ํ๋ ๋ด์ฉ์ด ๋ด๊ธด ๋ฌธ์ 100๊ฐ์์ 1๊ฐ ์ฐพ์. → ์ฌํ์จ์ 0.01
์ฌํ์จ์ด 100์ธ ๊ฒฝ์ฐ : ์ฐพ์ ๋ฌธ์ 100๊ฐ ์ค ์ฐพ๊ณ ์ ํ๋ ๋ด์ฉ์ด ๋ด๊ธด ๋ชจ๋ ๋ฌธ์๊ฐ 1๊ฐ์ → ์ ๋ฐ๋๋ 0.01
**F-measure : ์ ๋ฐ๋์ ์ฌํ์จ์ ๊ฐ์ค์น๋ฅผ ์ฃผ๊ณ ๊ตฌํ ํ๊ท **
→ ํํ ์ํ(๊ฐ์ค์น)๋ฅผ 0.5๋ก ์ฃผ์ด ์๋์ ๊ฐ์ด ๋ง๋ฆ
F-measure๋ก ๊ฒ์ ์์คํ ์ฑ๋ฅ ํ๊ฐ์ ์ฌ์ฉํจ.
์์)
Q1. ๊ฒ์ ๋์ ๋ฌธ์ 100๋ง ๊ฐ, ๊ฐ ๋ฌธ์๋ ํ๊ท ์ ์ผ๋ก 1000๊ฐ์ ๋จ์ด๊ฐ ์์. ํ ๋จ์ด๋ ํ๊ท ์ ์ผ๋ก ๋์ด์ฐ๊ธฐ, ๋ถํธ ํฌํจ 6bytes(6๊ธ์). ๋ฌธ์ ์ ์ฒด ํฌ๊ธฐ๋?
A1. ๋ฌธ์ ์ ์ฒด ํฌ๊ธฐ = 100๋ง * (1000 * 6bytes) = 6,000,000,000 = 60์ตbytes = 6GB
Q2. 10์ต(100๋ง * 1000 = 1,000,000,000)๊ฐ ์ ๋จ์ด ์ค, 500,000๊ฐ์ ๋ค๋ฅธ ๋จ์ด๊ฐ ์๋ค. Term-Document Matrix์ ํฌ๊ธฐ๋?
A2.
Term ๊ฐ์ = 50๋ง
Document ๊ฐ์ = 100๋ง
Term-Document Matrix ํฌ๊ธฐ = 50๋ง * 100๋ง = 5์ฒ ์ต
→ Boolean ๊ฒ์์ ์ํด Term-Document Matrix๋ฅผ ๋ฏธ๋ฆฌ ๋ง๋ค์ด์ผ ํ๋๋ฐ, ํฌ๊ธฐ๊ฐ ๋๋ฌด ํผ.
5์ฒ ์ต๊ฐ์ 0๊ณผ 1์ค 0์ ๋น์ค์ด ๋ณดํต 99.8%๋ฅผ ์ฐจ์งํ์ฌ 1์ 0.2%๋ฅผ ์ฐจ์งํ์ฌ 1000๊ฐ๋ก ๋ง์ง ์์.
๋ฐ๋ผ์, 1์ธ ๊ฒ๋ง ๋ฐ๋ก ํ์ํ๋๋ก ํจ. ⇒ Inverted Index (Inverted file)
0์ด ์ฐจ์งํ๋ ๋น์จ
term(ํ) = 50๋ง๊ฐ, document(์ด) = 100๋ง๊ฐ
ํ๋์ ๋ฌธ์์ term ์ ๋ณด = ํ ์ด(50๋ง๊ฐ์ term), ํ๋์ ๋ฌธ์๋ 1000๊ฐ์ ๋จ์ด๋ก ๊ตฌ์ฑ๋จ ⇒ ํ๋์ ๋ฌธ์์ term ์ค ํ๊ท ์ ์ผ๋ก 1000๊ฐ์ ๋จ์ด๋ง ๋์ค๋ฏ๋ก 50๋ง ๊ฐ์ ํ ์ด์์ 1์ ํ๊ท ์ ์ผ๋ก 1000๊ฐ์. 49๋ง9์ฒ๊ฐ๋ 0์. ⇒ 50๋ง ๊ฐ์์ 1000๊ฐ๊ฐ 1์ด์์ผ๋ 100๋ง๊ฐ์์๋ 2000๊ฐ๊ฐ 1์. ⇒ 2์ฒ/100๋ง = 0.002. 0.2%๊ฐ 1์ด๊ณ , 99.8%๊ฐ 0์.
Inverted index (inverted file)
Term-Document Matrix์ ๊ณต๊ฐ ์์ ๋ฌธ์ ํด๊ฒฐ์ ์ํด 1์ธ ๋ฌธ์๋ง ๋ชฉ๋กํํจ.
๊ฒ์ ๋์(๋ฌธ์, ์น, PC๊ฒฝ๋ก)์ ๋ฐ๋ผ ๊ฒ์ ๊ฒฐ๊ณผ๊ฐ ๋ค๋ฅด๊ธฐ ๋๋ฌธ์ Posting list์๋ ๋ ผ๋ฆฌ์ ์ผ๋ก ๋ฌธ์์ ๋ฒํธ ์๋ณ์๋ฅผ ๋ถ์ฌํจ.
Posting : ๋ฌธ์ ๋ฒํธ ์๋ณ์ ํ๋ํ๋
Posting list : Posting์ด ๋์ด๋ ํ๋์ ๋ฐฐ์ด(๋ฆฌ์คํธ)
Posting lists : Posting list์ ์งํฉ
์ง์์ด๋ฅผ ์ฐพ์ ๋ ๋ ๋นจ๋ฆฌ ์ฐพ์ ์ ์๋๋ก ๋ฌธ์๋ฅผ ์ ๋ ฌํด์ผ ํ๊ธฐ ๋๋ฌธ์, Posting list๋ ๋ฐฐ์ด๋ณด๋ค ์ฐ๊ฒฐ ๋ฆฌ์คํธ๋ฅผ ์ ํธํ๋ค. ํ์ง๋ง ํฌ์ธํฐ ๊ณต๊ฐ์ ๋ ์ฐจ์งํ๋ค.
Dictionary == Vocabulary (Term์ ์งํฉ)
Inverted Index ๋ง๋๋ ๊ณผ์
[๋จ๊ณ]
- Tokenization (ํ ํฐํ)→ ๋ง์ฝ, ๋ฌธ์๊ฐ TXT๊ฐ ์๋ ์๋ํ๊ธ, html์ด๋ผ๋ฉด? → ๊ฒฝ์ฐ์ ๋ฐ๋ผ ํ ํฐํ ์ด๋ ค์ธ ์ ์์.1-2. Linguistic Modules๋ฅผ ํตํด ์ธ์ด์ ๋ฐ๋ผ ์ฒ๋ฆฌํจ. (์์ด : ๋ชจ๋ ์๋ฌธ์๋ก, ์ํ์ผ๋ก ๋ง๋ฆ)์ด๋ ํ ํฐ์ด ์ด๋ ๋ฌธ์์์ ๋์๋์ง Postings list(ํด๋น ํ ํฐ์ ๋ฌธ์ ์์น๋ฅผ ๋ํ๋) ๊ตฌ์ถ1-3-1. (Term, DocID) ์์ผ๋ก ๋ง๋ฆ.1-3-3. ํ์ ์, TF ์ ๋ณด ์ถ๊ฐTerm Frequency(TF) : ํ ๋ฌธ์๋ฅผ ๊ธฐ์ค์ผ๋ก Term์ด ๋์จ ๊ฐ์ ์ถ๊ฐ
DF๋ก ํฉ์ณ์ง ์ค๋ณต Term์ ๊ฐ๊ฐ ์ฐ๊ฒฐ ๋ฆฌ์คํธ ์์ผ๋ก ์์ ์ (DocID, TF)๋ฅผ ๊ฐ๋ฆฌํดDocument Frequency(DF) : Term์ด ๋์จ ๋ฌธ์์ ๊ฐ์ ์ถ๊ฐ ์ด๋ Term Frequency๋ผ๋ฆฌ ํฉ์ ๊ตฌํจ.
- → ๋์ค์ ์ฐ๊ฒฐ ๋ฆฌ์คํธ ํ์์ Inverted Index์ ๊ธฐํ์ด ๋จ.
- 1-3-5. ํ์ ์, DF ์ ๋ณด ์ถ๊ฐ
- ํ ๋ฌธ์์ ์ค๋ณต Term์ ํ๋๋ก ํต์ผ.
- 1-3-2. Term์ ๊ธฐ์ค์ผ๋ก ์ ๋ ฌํจ.
- Inverted Index๋ฅผ ๋ง๋ฆ.
- 1-3. Indexer : ํ ํฐ์ ์ธ๋ฑ์ค๋ก ๋ง๋ฆ.
- Tokenizer ๋ชจ๋์ ํตํด ํ ํฐํ ํจ.
- 1-1. ํ ํฐํ : ๋ฌธ์๋ค์ ๋ฌธ์ฅ์ ๊ณต๋ฐฑ์ ๊ธฐ์ค์ผ๋ก ์๋ฆ
์ฌ๋์ด ์ฐ๋ ๋จ์ด๋ ํ๊ณ๊ฐ ์์ผ๋ฏ๋ก Dictionary size๋ Postings list์ ๋นํด ๋ณํ๊ฐ ์ ์.
๋ฐ๋ผ์, Dictionary๋ ๊ฒ์ ์๋น์ค๋ฅผ ์ํด Main Memory๋ก load ๋จ.
Postings๋ ํฌ๊ธฐ๊ฐ ์ ์ ์ปค์ง๊ณ ๋ณํ๋ ์ฆ์ Disk์ ์ ์ฅ๋จ.
Postings list ์ ์ฅ ๋ฐฉ๋ฒ
- ์ฐ๊ฒฐ ๋ฆฌ์คํธ
- ๊ฐ๋ณ ๋ฐฐ์ด
- hybrid scheme : ์ฐ๊ฒฐ๋ฆฌ์คํธ + ๊ฐ๋ณ ๋ฐฐ์ด (๋ฐฐ์ด์ ์ฐ๊ฒฐ๋ฆฌ์คํธ๋ก ์ฐ๊ฒฐํจ.)
์ง์์ด
- Conjunctive : AND์๊ฐ๋ณต์ก๋ : ๋น๊ตํ๋ Posting List ๊ธธ์ด์ ํฉif not sorting ์๊ฐ๋ณต์ก๋ : ๋น๊ตํ๋ Posting List ๊ธธ์ด์ ๊ณฑ
- ์กฐ๊ฑด : Posting list๊ฐ ์ ๋ ฌ๋์ด ์์ด์ผ ํจ.
- Posting list๋ผ๋ฆฌ ์ฒซ ๋ฒ์งธ ์ธ๋ฑ์ค๋ถํฐ ๋น๊ตํด์ ๋ฌธ์ ๋ฒํธ๊ฐ ๊ฐ์ผ๋ฉด ๊ฒ์ ๊ฒฐ๊ณผ์ ํฌํจํ๊ณ , ๋ค๋ฅด๋ฉด ์์ ์ชฝ์ Posting์ด ์ค๋ฅธ์ชฝ์ผ๋ก ์ด๋ํ๊ณ ๋ค์ ๋น๊ต
- Disjunctive : OR์๊ฐ๋ณต์ก๋ : ๋น๊ตํ๋ Posting List ๊ธธ์ด์ ํฉ
- Posting list๋ผ๋ฆฌ ์ฒซ ๋ฒ์งธ ์ธ๋ฑ์ค๋ถํฐ ๋น๊ตํด์ ๋ฌธ์ ๋ฒํธ๊ฐ ๊ฐ์ผ๋ฉด ๊ฒ์ ๊ฒฐ๊ณผ์ ํฌํจํ๊ณ , ๋ฌ๋ผ๋ ๋ฌธ์ ๋ฒํธ๊ฐ ๋ ์์ ์ชฝ์ ๋จผ์ ๊ฒ์ ๊ฒฐ๊ณผ์ ํฌํจํ๊ณ ์์ ์ชฝ์ด ์ค๋ฅธ์ชฝ์ผ๋ก ์ด๋ํ๋ค.
- NOT → ์๊ฐ ์ค๋ ๊ฑธ๋ฆผNOT์ด ๋ถ์ Posting list๋ ์ค๋ฅธ์ชฝ์ผ๋ก ๋์ด๊ฐ๊ธฐ ์ ์, ์์ ์๊ฒ ์๋ Posting์ ๋ฌธ์ ๋ฒํธ์ ๋ค๋ฅธ Posting list์ ์ฐ์ฐํจ.NOT์ด ๋ถ์ Posting์ ๋ฌธ์ ๋ฒํธ๊ฐ NOT์ด ๋ถ์ง ์์ Posting์ ๋ฌธ์ ๋ฒํธ์ ๋ค๋ฅด๋ฉด, ์ถ๊ฐํ์ง ์๊ณ ์์ ์ชฝ์ด ์ค๋ฅธ์ชฝ์ผ๋ก ์ด๋ํ๋ค. ๊ฐ์ผ๋ฉด ์ถ๊ฐํ์ง ์๊ณ ๋ Posting ๋ชจ๋ ์ค๋ฅธ์ชฝ์ผ๋ก ์ด๋ํ๋ค.
- <AND>
- NOT์ด ๋ถ์ ๋จ์ด๊ฐ ๊ฒ์ ๊ฒฐ๊ณผ์ ํฌํจ๋๋ฉด ์ ๋จ.
WestLaw ์์คํ
์ง์์ด๋ฅผ ๋ง๋ค ๋, AND, OR, NOT + /์ซ์, ! ๊ฐ๋ฅํจ.
๋์ด์ฐ๊ธฐ : OR
/<์ซ์> : <์ซ์> ๋จ์ด ์ด๋ด์ ๋ ๋จ์ด๊ฐ ๋์ฌ ๋, AND
! : Wild-card ๋ฌธ์ *
/s : ํ ๋ฌธ์ฅ ์์ ๋ ๋จ์ด๊ฐ ๋ ๋ค ๋์์ผ ํจ. AND
/p : ํ ๋ฌธ๋จ ์์ ๋ ๋จ์ด๊ฐ ๋ ๋ค ๋์์ผ ํจ. AND
Proximity operators : ์ธ์ ์ฑ์ ํ์ํ ์ ์๋ ์ฐ์ฐ ๊ธฐํธ
์ฐ์ฐ ์์ ์ต์ ํ
- ์๋ถํฐ ์ฒ๋ฆฌ
- ์์ ๋ฐ๊ฟ์ ์ฒ๋ฆฌ → ์๊ฐ ์ ์ฝ ๊ฐ๋ฅOR ์๊ฐ ๋ณต์ก๋ : Posting list size์ ํฉ
- Doc Freq๊ฐ ์์ ๊ฒ๋ถํฐ ์ฒ๋ฆฌํจ.
- Posting list size == Doc Freq
- ์ฐ์ฐ ์ ์๊ฐ ๋ณต์ก๋๋ฅผ ์ต๋๋ก ๊ณ์ฐํด์ ์๊ฐ ๋ณต์ก๋๊ฐ ์์ ์์๋๋ก ์ฒ๋ฆฌํจ.
- AND ์๊ฐ ๋ณต์ก๋ : Posting list size์ ํฉ
์ธ์ ์กฐ๊ฑด
์ง์์ด์ ๋จ์ด๊ฐ ๋์ด์ฐ๊ธฐ ๋จ์๋ก ๋์ด์ง๋ฉด ์ ๋๊ณ ๋ถ์ด์์ด์ผ ํ ๋
Proximity ์ธ์ ์กฐ๊ฑด ๋ช ๋ น์ด : NEAR
๊ตฌ์กฐํ๋ TEXT๊น์ง ์๊ฐํด์ ๊ฒ์ํด๋ณด๋ ๋ฐฉ๋ฒ๋ ์๊ฐํด๋ณด๊ธฐ(์ ์์ ๋ด์ฉ ๊ตฌ์กฐ๊ฐ ๋ง๋ ๊ฒ์)
Inverted Index + Position Information
Position Information : Posting์ด ํด๋น ๋ฌธ์๊ฐ ๊ทธ ๋ฌธ์ ๋ด์์ ์ด๋์ ๋์๋์ง ์์น ์ ๋ณด๊ฐ ๋ด๊ธด list๋ฅผ ๊ฐ๋ฆฌํด
Position Information Size = Term Frequency
๋ ๋จ์ด๊ฐ ์ธ์ ํด ์๋์ง ์ฐพ๋ ๋ฒ : AND ์ฐ์ฐ์ผ๋ก ๊ฐ ๋ฌธ์์ ํด๋น Term ๋์๋์ง ๊ฒ์ฌ → ๋ ์์น ์ ๋ณด๋ฅผ ๋น๊ตํจ → ์ธ์ ์กฐ๊ฑด์ ๋ง์ ๊ฒฝ์ฐ ๊ฒฐ๊ณผ์ ํฌํจ
์ธ์ ์ฐจ์ด : 1์ด๋ฉด ๋ ๋จ์ด๊ฐ ๋ถ์ด์์์ ์๋ฏธํ๊ณ , 2๋ฉด ๋ ๋จ์ด ์ฌ์ด์ ํ ๋จ์ด๊ฐ ํฌํจ๋์ด ์์์ ์๋ฏธํจ.
Term Freq ํ์ฉ
Term Freq๊ฐ ํฐ ์์ผ๋ก ๊ฒฐ๊ณผ ์ ๊ณตํ๊ธฐ
์ด๋ค Term์ด ํ๋์ ๋ฌธ์์์ Document์์ ๋ช ๋ฒ ๋์๋์ง ๊ณ ๋ ค
์ด๋ค Posting์ Term Freq == ๊ทธ Posting์ Positional Information ๋ฆฌ์คํธ์ ๊ธธ์ด
๊ฒ์ ๊ฒฐ๊ณผ๋ก, ๊ฐ ๋ฌธ์์ Term Freq์ ํฉ์ด ํฐ ๋ฌธ์๋ถํฐ ์ ๊ณตํจ.
Ranking Search
Boolean ๋ชจ๋ธ์ ํด๋น ์ง์์ด๊ฐ ๋ฌธ์์ ํฌํจ ๋๋์ง ์ ๋๋์ง๋ง ํ๋จํ๊ธฐ ๋๋ฌธ์ Ranking์ ๋งค๊ธฐ๋ ๊ฑด ์์น์ ์ผ๋ก๋ ๋ถ๊ฐ๋ฅํ๋ค.
ํ์ง๋ง, ๊ธฐ์ค์ ์ ์ฉํด์ ์กฐ๊ธ ๋ ์ ์ฉํ ๋งํ ๊ฒ์ ๊ฒฐ๊ณผ๋ฅผ ์ ๊ณตํ ์๋ ์๋ค. Proximity ์ธ์ ์ฑ์ ์ด์ฉํด์ ์ธ์ ํ ์๋ก ์ฌ์ฉ์๊ฐ ๋ ์ํ๋ ์ ๋ณด์ ๋ ๊ฐ๊น์ธ ์ ์์ผ๋ฏ๋ก ๊ฐ๊น์ด ์์ผ๋ก ์ ๊ณตํ๊ฑฐ๋, ๋ฌธ์์ Term Freq๋ฅผ ์ด์ฉํด์ ํฐ ์์ผ๋ก ์ ๊ณตํ๊ฑฐ๋, ๋ฌธ์๊ฐ ๋ง๋ค์ด์ง ์๊ฐ์ ์ธ๋ฑ์ค์ ๋ถ์ฌํด์ ์ต๊ทผ ๋ฌธ์๋ถํฐ ์ ๊ณตํ ์ ์๊ธด ํ๋ค.
์ ๋ณด ๊ฒ์ VS DB ๊ฒ์
์ ๋ณด ๊ฒ์
๋น๊ตฌ์กฐํ ๋จ
๋ฒ์ ๊ฒ์ ๋ถ๊ฐ๋ฅ
๋จ, TEXT์ด๋๋ผ๊ณ ์ฝ๊ฐ์ ๊ตฌ์กฐ๊ฐ ์์ ์ ์์. Semi-Structured Data ์) PPT, XML
๊ธ์์ ํฌ๊ธฐ, ๊ธ์์ ๊ตต๊ธฐ์ ๊ฐ์ ์ ๋ณด๋ฅผ ์ด์ฉํด ์ฝ๊ฐ์ ๊ตฌ์กฐ๋ฅผ ์ถ๊ฐํ ์ ์์.
DB ๊ฒ์
๊ตฌ์กฐํ๋จ.
๋ฒ์ ๊ฒ์ ๊ฐ๋ฅ
๊ด๋ จ ์๋ Concept ๊ฒ์ : ์์ง ๋ถ๊ฐ๋ฅ
์ฉ์ด
Clustering : ๊ตฐ์ง(๋ชจ์ผ๊ธฐ)
Classfication : ๋ถ๋ฅ
์น ๊ฒ์
๋ค์ํ ๋ฌธ์, ๋ค์ํ ์ฌ๋, ์ง์์ด, ์ ๋ณด ์กด์ฌํจ.
๋งํฌ๋ ์ ๋ณด ํ์ฉํ๊ฑฐ๋ ํด๋ฆญํ ์ ๋ณด ํ์ฉ ๊ฐ๋ฅํจ.
Cross-language information retrieval : ๊ต์ฐจ ์ธ์ด, ๋ฒ์ญํด์ ๊ฒ์ ๊ฒฐ๊ณผ ์ ๊ณต
Question answering : ์ง์ ์๋ต ์์คํ ์ง๋ฌธ&๋ต๋ณ
Summarization : ๊ฒ์๊ฒฐ๊ณผ ์์ฝํด์ ์ ๊ณต
TEXT mining : TEXT์์ ํ์ํ ์ ๋ณด ๋ฝ์์ ์๋ ค์ค
1996๋ ) TEXT์ ๊ฐ์ด ๋น๊ตฌ์กฐํ๋ ๋ฌธ์์ ๊ท๋ชจ๊ฐ ๊ตฌ์กฐํ๋ ๋ฌธ์๋ณด๋ค ์ปธ์. ๊ทผ๋ฐ ์์ฅ์์๋ ๋น๊ตฌ์กฐํ๋ ๋ฌธ์๋ฅผ ๋ค๋ฃจ๋ ๊ฑด ๋์ด ๋์ง ์์์
2006๋ ) ์ฌ์ ํ ๋น๊ตฌ์กฐํ๋ ๋ฌธ์์ ๊ท๋ชจ๊ฐ ํฌ์ง๋ง TEXT ๊ฒ์ ์๋น์ค ์์ฅ์ด ์ปค์ง๋ฉด์ ๋น๊ตฌ์กฐํ ๋ฌธ์๋ฅผ ๋ค๋ฃจ๋ ์์ฅ์ด ์ฑ์ฅํจ
์ ๋ณด๊ฒ์์์คํ ์ด ์๋ค๋ฉด, ์ ๋์ค์ grep๋ช ๋ น์ด, | ๋ก ์ฐพ์ ์ ์์. ํ์ง๋ง, ๋ฌธ์์ ์์ด ํฌ๋ค๋ฉด ์๋๊ฐ ๋๋ฆฌ๊ธฐ ๋๋ฌธ์ ์ ๋ณด ๊ฒ์ ๋ชฉ์ ์ผ๋ก๋ ์ ์ ํ์ง ์๋ค. ํน์ ๋ด์ฉ์ด ๋ค์ด๊ฐ ์๋ ๊ฑด ๋ค์ด๊ฐ ์์ผ๋ฉด ๋ ํ์ํ ํ์๊ฐ ์์ผ๋ ์ฌ์ด ํธ์ด์ง๋ง, ํน์ ๋ด์ฉ์ด ๋ค์ด๊ฐ ์์ง ์์ ๊ฑด ํ์ผ์ ๋๊น์ง ๋ค ํ์ํด ๋ด์ผ ํ๊ธฐ ๋๋ฌธ์ ์ด๋ ต๋ค. ๋จ์ด๊ฐ ์ธ์ ํด ์๋์ง ์ฌ๋ถ๋ grep ๋ช ๋ น์ผ๋ก ์ฐพ์ ์ ์๋ค.
Boolean ๋ชจ๋ธ์ ๋จ์ด ํฌํจ ์ฌ๋ถ๋ง ์ ์ ์๊ธฐ ๋๋ฌธ์ ๊ฒ์ ๊ฒฐ๊ณผ๋ก ์ถ์ถ๋ ๋ฌธ์๋ค์ ์์๋ฅผ ๋งค๊ธฐ๊ธด ํ๋ค๋ค. grep ๋ํ, Boolean ๋ชจ๋ธ์ ๋ฐ๋ฅด๊ธฐ ๋๋ฌธ์ ์์๋ฅผ ๋งค๊ธฐ๊ธด ํ๋ค๋ค.
Boolean ๋ชจ๋ธ๋ ์ ์๋ฅผ ๋งค๊ฒจ์ Sortํ ์ ์๊ธด ํ์ง๋ง, ๊ธฐ๋ณธ์ ์ผ๋ก ์์ ๋งค๊ธธ ์ ์๋ค.
$ grep -v <์ง์์ด> * : ๋ชจ๋ ๋ฌธ์ ํ์ผ(*)์์ ์ง์์ด๊ฐ ํฌํจ๋์ง ์์(-v) ๋ฌธ์๋ฅผ ํ์ํ๋ค.
Term-document (incidence) matrix Term๊ณผ Document์ ๊ด๊ณ๋ฅผ ๋ํ๋ด๋ ํ๋ ฌ
๊ฒ์ ๋์์ด ๋๋ ๋ชจ๋ ๋ฌธ์์ ๋ํด, Term์ด Document์ ๋์ค๋ฉด 1, ๋์ค์ง ์์ผ๋ฉด 0
์ง์์ด์ ์ผ์นํ๋ Term์ ํ๋ค์ ์ฐพ์์ ์ฃผ์ด์ง ์ง์์ด์ ๋ฐ๋ผ ํ๋ผ๋ฆฌ AND, OR, NOT ์ฐ์ฐ ์ํ
์ด๋, NOT์ 1๊ณผ 0์ ๋ง๋ฐ๊ฟ.
bitwise : ๊ฐ์ ์์น์ bit๋ผ๋ฆฌ ์ฐ์ฐ
์) ์ง์์ด : Brutus AND Caesar but NOT Calpurnia
Brutus = 110100, Caesar = 110111, Calpurnia = 010000
์ฐ์ฐ : 110100 AND 110111 AND 101111 = 100100
→ 1, 4๋ฒ์งธ ๋ฌธ์๊ฐ ๊ฒ์ ๊ฒฐ๊ณผ์ ํฌํจ๋๊ณ ๋๋จธ์ง๋ ํฌํจ๋์ง ์์.
Term-document (incidence) matrix๊ฐ ์ฃผ์ด์ ธ ์๋ค๋ฉด, ์ง์์ด ํค์๋์ ํด๋นํ๋ Term์ ํ์ ์ฐพ์์ ์ฐ์ฐ์ ํตํด ๊ฒ์ ๊ฒฐ๊ณผ๋ฅผ ๋์ถํด๋ผ ์ ์์. (Boolean ๊ฒ์ฌ ๊ธฐ๋ณธ ๋ฐฉ๋ฒ๋ก )
Boolean Model ๊ธฐ๋ณธ ๊ฐ์ : ๋ฌธ์์ ์งํฉ์ ๊ณ ์ ๋์ด ์์.
๋ง๋ญ์น : Corpus, ๋ฌธ์์ ์งํฉ
Refine : ์ฌ๋์ด๋ ๊ฒ์ ์์คํ ์ด ์ง์์ด๋ฅผ ๋ ์ ๊ตํ๊ฒ ์์ ํด์ ์ฌ๊ฒ์์ ํ๋ ํ์
๊ฒ์๋ ์์คํ ํ๊ฐ ๊ธฐ์ค
Precision ์ ๋ฐ๋ : ๊ฒฐ๊ณผ๊ฐ ์ง์์ด์ ์ผ๋ง๋ ๋ถํฉํ๋์ง
๋ชจ๋ธ์ด True๋ผ๊ณ ๋ถ๋ฅํ ๊ฒ ์ค์์ ์ค์ True์ธ ๊ฒ์ ๋น์จ(=์ ๋ต๋ฅ )
์ค์ ๋ก ์ฌ์ฉ์๊ฐ ์ฐพ๊ณ ์ ํ๋ ๋ด์ฉ์ด ๋ด๊ธด ๋ฌธ์ / ๋ชจ๋ธ ๊ฒ์ ๊ฒฐ๊ณผ
์ ๋ต / ๋ด๊ฐ
Recall ์ฌํ์จ : ์ง์์ด์ ๋ถํฉํ๋ ๋ฌธ์๋ฅผ ์ผ๋ง๋ ์ฐพ์๋ด๋์ง
์ค์ True์ธ ๊ฒ ์ค์์ ๋ชจ๋ธ์ด True๋ผ๊ณ ์์ธกํ ๊ฒ์ ๋น์จ(=์ ๊ณต๋ฅ )
์ ๋ต / ์ค์
์ ํ๋(Accuracy)๋ ์ ๋ณด ๊ฒ์ ํ๊ฐ์ ์ฐ์ด์ง ์์
์ ๋ฐ๋๊ฐ ๋์ผ๋ฉด ์ฌํ์จ์ด ๋ฎ๊ณ , ์ ๋ฐ๋๊ฐ ๋ฎ์ผ๋ฉด ์ฌํ์จ์ด ๋์.
์ ๋ฐ๋๊ฐ 100์ธ ๊ฒฝ์ฐ : ์ฐพ๊ณ ์ ํ๋ ๋ด์ฉ์ด ๋ด๊ธด ๋ฌธ์ 100๊ฐ์์ 1๊ฐ ์ฐพ์. → ์ฌํ์จ์ 0.01
์ฌํ์จ์ด 100์ธ ๊ฒฝ์ฐ : ์ฐพ์ ๋ฌธ์ 100๊ฐ ์ค ์ฐพ๊ณ ์ ํ๋ ๋ด์ฉ์ด ๋ด๊ธด ๋ชจ๋ ๋ฌธ์๊ฐ 1๊ฐ์ → ์ ๋ฐ๋๋ 0.01
**F-measure : ์ ๋ฐ๋์ ์ฌํ์จ์ ๊ฐ์ค์น๋ฅผ ์ฃผ๊ณ ๊ตฌํ ํ๊ท **
→ ํํ ์ํ(๊ฐ์ค์น)๋ฅผ 0.5๋ก ์ฃผ์ด ์๋์ ๊ฐ์ด ๋ง๋ฆ
F-measure๋ก ๊ฒ์ ์์คํ ์ฑ๋ฅ ํ๊ฐ์ ์ฌ์ฉํจ.
์์)
Q1. ๊ฒ์ ๋์ ๋ฌธ์ 100๋ง ๊ฐ, ๊ฐ ๋ฌธ์๋ ํ๊ท ์ ์ผ๋ก 1000๊ฐ์ ๋จ์ด๊ฐ ์์. ํ ๋จ์ด๋ ํ๊ท ์ ์ผ๋ก ๋์ด์ฐ๊ธฐ, ๋ถํธ ํฌํจ 6bytes(6๊ธ์). ๋ฌธ์ ์ ์ฒด ํฌ๊ธฐ๋?
A1. ๋ฌธ์ ์ ์ฒด ํฌ๊ธฐ = 100๋ง * (1000 * 6bytes) = 6,000,000,000 = 60์ตbytes = 6GB
Q2. 10์ต(100๋ง * 1000 = 1,000,000,000)๊ฐ ์ ๋จ์ด ์ค, 500,000๊ฐ์ ๋ค๋ฅธ ๋จ์ด๊ฐ ์๋ค. Term-Document Matrix์ ํฌ๊ธฐ๋?
A2.
Term ๊ฐ์ = 50๋ง
Document ๊ฐ์ = 100๋ง
Term-Document Matrix ํฌ๊ธฐ = 50๋ง * 100๋ง = 5์ฒ ์ต
→ Boolean ๊ฒ์์ ์ํด Term-Document Matrix๋ฅผ ๋ฏธ๋ฆฌ ๋ง๋ค์ด์ผ ํ๋๋ฐ, ํฌ๊ธฐ๊ฐ ๋๋ฌด ํผ.
5์ฒ ์ต๊ฐ์ 0๊ณผ 1์ค 0์ ๋น์ค์ด ๋ณดํต 99.8%๋ฅผ ์ฐจ์งํ์ฌ 1์ 0.2%๋ฅผ ์ฐจ์งํ์ฌ 1000๊ฐ๋ก ๋ง์ง ์์.
๋ฐ๋ผ์, 1์ธ ๊ฒ๋ง ๋ฐ๋ก ํ์ํ๋๋ก ํจ. ⇒ Inverted Index (Inverted file)
0์ด ์ฐจ์งํ๋ ๋น์จ
term(ํ) = 50๋ง๊ฐ, document(์ด) = 100๋ง๊ฐ
ํ๋์ ๋ฌธ์์ term ์ ๋ณด = ํ ์ด(50๋ง๊ฐ์ term), ํ๋์ ๋ฌธ์๋ 1000๊ฐ์ ๋จ์ด๋ก ๊ตฌ์ฑ๋จ ⇒ ํ๋์ ๋ฌธ์์ term ์ค ํ๊ท ์ ์ผ๋ก 1000๊ฐ์ ๋จ์ด๋ง ๋์ค๋ฏ๋ก 50๋ง ๊ฐ์ ํ ์ด์์ 1์ ํ๊ท ์ ์ผ๋ก 1000๊ฐ์. 49๋ง9์ฒ๊ฐ๋ 0์. ⇒ 50๋ง ๊ฐ์์ 1000๊ฐ๊ฐ 1์ด์์ผ๋ 100๋ง๊ฐ์์๋ 2000๊ฐ๊ฐ 1์. ⇒ 2์ฒ/100๋ง = 0.002. 0.2%๊ฐ 1์ด๊ณ , 99.8%๊ฐ 0์.
Inverted index (inverted file)
Term-Document Matrix์ ๊ณต๊ฐ ์์ ๋ฌธ์ ํด๊ฒฐ์ ์ํด 1์ธ ๋ฌธ์๋ง ๋ชฉ๋กํํจ.
๊ฒ์ ๋์(๋ฌธ์, ์น, PC๊ฒฝ๋ก)์ ๋ฐ๋ผ ๊ฒ์ ๊ฒฐ๊ณผ๊ฐ ๋ค๋ฅด๊ธฐ ๋๋ฌธ์ Posting list์๋ ๋ ผ๋ฆฌ์ ์ผ๋ก ๋ฌธ์์ ๋ฒํธ ์๋ณ์๋ฅผ ๋ถ์ฌํจ.
Posting : ๋ฌธ์ ๋ฒํธ ์๋ณ์ ํ๋ํ๋
Posting list : Posting์ด ๋์ด๋ ํ๋์ ๋ฐฐ์ด(๋ฆฌ์คํธ)
Posting lists : Posting list์ ์งํฉ
์ง์์ด๋ฅผ ์ฐพ์ ๋ ๋ ๋นจ๋ฆฌ ์ฐพ์ ์ ์๋๋ก ๋ฌธ์๋ฅผ ์ ๋ ฌํด์ผ ํ๊ธฐ ๋๋ฌธ์, Posting list๋ ๋ฐฐ์ด๋ณด๋ค ์ฐ๊ฒฐ ๋ฆฌ์คํธ๋ฅผ ์ ํธํ๋ค. ํ์ง๋ง ํฌ์ธํฐ ๊ณต๊ฐ์ ๋ ์ฐจ์งํ๋ค.
Dictionary == Vocabulary (Term์ ์งํฉ)
Inverted Index ๋ง๋๋ ๊ณผ์
[๋จ๊ณ]
- Tokenization (ํ ํฐํ)→ ๋ง์ฝ, ๋ฌธ์๊ฐ TXT๊ฐ ์๋ ์๋ํ๊ธ, html์ด๋ผ๋ฉด? → ๊ฒฝ์ฐ์ ๋ฐ๋ผ ํ ํฐํ ์ด๋ ค์ธ ์ ์์.1-2. Linguistic Modules๋ฅผ ํตํด ์ธ์ด์ ๋ฐ๋ผ ์ฒ๋ฆฌํจ. (์์ด : ๋ชจ๋ ์๋ฌธ์๋ก, ์ํ์ผ๋ก ๋ง๋ฆ)์ด๋ ํ ํฐ์ด ์ด๋ ๋ฌธ์์์ ๋์๋์ง Postings list(ํด๋น ํ ํฐ์ ๋ฌธ์ ์์น๋ฅผ ๋ํ๋) ๊ตฌ์ถ1-3-1. (Term, DocID) ์์ผ๋ก ๋ง๋ฆ.1-3-3. ํ์ ์, TF ์ ๋ณด ์ถ๊ฐTerm Frequency(TF) : ํ ๋ฌธ์๋ฅผ ๊ธฐ์ค์ผ๋ก Term์ด ๋์จ ๊ฐ์ ์ถ๊ฐ
DF๋ก ํฉ์ณ์ง ์ค๋ณต Term์ ๊ฐ๊ฐ ์ฐ๊ฒฐ ๋ฆฌ์คํธ ์์ผ๋ก ์์ ์ (DocID, TF)๋ฅผ ๊ฐ๋ฆฌํดDocument Frequency(DF) : Term์ด ๋์จ ๋ฌธ์์ ๊ฐ์ ์ถ๊ฐ ์ด๋ Term Frequency๋ผ๋ฆฌ ํฉ์ ๊ตฌํจ.
- → ๋์ค์ ์ฐ๊ฒฐ ๋ฆฌ์คํธ ํ์์ Inverted Index์ ๊ธฐํ์ด ๋จ.
- 1-3-5. ํ์ ์, DF ์ ๋ณด ์ถ๊ฐ
- ํ ๋ฌธ์์ ์ค๋ณต Term์ ํ๋๋ก ํต์ผ.
- 1-3-2. Term์ ๊ธฐ์ค์ผ๋ก ์ ๋ ฌํจ.
- Inverted Index๋ฅผ ๋ง๋ฆ.
- 1-3. Indexer : ํ ํฐ์ ์ธ๋ฑ์ค๋ก ๋ง๋ฆ.
- Tokenizer ๋ชจ๋์ ํตํด ํ ํฐํ ํจ.
- 1-1. ํ ํฐํ : ๋ฌธ์๋ค์ ๋ฌธ์ฅ์ ๊ณต๋ฐฑ์ ๊ธฐ์ค์ผ๋ก ์๋ฆ
์ฌ๋์ด ์ฐ๋ ๋จ์ด๋ ํ๊ณ๊ฐ ์์ผ๋ฏ๋ก Dictionary size๋ Postings list์ ๋นํด ๋ณํ๊ฐ ์ ์.
๋ฐ๋ผ์, Dictionary๋ ๊ฒ์ ์๋น์ค๋ฅผ ์ํด Main Memory๋ก load ๋จ.
Postings๋ ํฌ๊ธฐ๊ฐ ์ ์ ์ปค์ง๊ณ ๋ณํ๋ ์ฆ์ Disk์ ์ ์ฅ๋จ.
Postings list ์ ์ฅ ๋ฐฉ๋ฒ
- ์ฐ๊ฒฐ ๋ฆฌ์คํธ
- ๊ฐ๋ณ ๋ฐฐ์ด
- hybrid scheme : ์ฐ๊ฒฐ๋ฆฌ์คํธ + ๊ฐ๋ณ ๋ฐฐ์ด (๋ฐฐ์ด์ ์ฐ๊ฒฐ๋ฆฌ์คํธ๋ก ์ฐ๊ฒฐํจ.)
์ง์์ด
- Conjunctive : AND์๊ฐ๋ณต์ก๋ : ๋น๊ตํ๋ Posting List ๊ธธ์ด์ ํฉif not sorting ์๊ฐ๋ณต์ก๋ : ๋น๊ตํ๋ Posting List ๊ธธ์ด์ ๊ณฑ
- ์กฐ๊ฑด : Posting list๊ฐ ์ ๋ ฌ๋์ด ์์ด์ผ ํจ.
- Posting list๋ผ๋ฆฌ ์ฒซ ๋ฒ์งธ ์ธ๋ฑ์ค๋ถํฐ ๋น๊ตํด์ ๋ฌธ์ ๋ฒํธ๊ฐ ๊ฐ์ผ๋ฉด ๊ฒ์ ๊ฒฐ๊ณผ์ ํฌํจํ๊ณ , ๋ค๋ฅด๋ฉด ์์ ์ชฝ์ Posting์ด ์ค๋ฅธ์ชฝ์ผ๋ก ์ด๋ํ๊ณ ๋ค์ ๋น๊ต
- Disjunctive : OR์๊ฐ๋ณต์ก๋ : ๋น๊ตํ๋ Posting List ๊ธธ์ด์ ํฉ
- Posting list๋ผ๋ฆฌ ์ฒซ ๋ฒ์งธ ์ธ๋ฑ์ค๋ถํฐ ๋น๊ตํด์ ๋ฌธ์ ๋ฒํธ๊ฐ ๊ฐ์ผ๋ฉด ๊ฒ์ ๊ฒฐ๊ณผ์ ํฌํจํ๊ณ , ๋ฌ๋ผ๋ ๋ฌธ์ ๋ฒํธ๊ฐ ๋ ์์ ์ชฝ์ ๋จผ์ ๊ฒ์ ๊ฒฐ๊ณผ์ ํฌํจํ๊ณ ์์ ์ชฝ์ด ์ค๋ฅธ์ชฝ์ผ๋ก ์ด๋ํ๋ค.
- NOT → ์๊ฐ ์ค๋ ๊ฑธ๋ฆผNOT์ด ๋ถ์ Posting list๋ ์ค๋ฅธ์ชฝ์ผ๋ก ๋์ด๊ฐ๊ธฐ ์ ์, ์์ ์๊ฒ ์๋ Posting์ ๋ฌธ์ ๋ฒํธ์ ๋ค๋ฅธ Posting list์ ์ฐ์ฐํจ.NOT์ด ๋ถ์ Posting์ ๋ฌธ์ ๋ฒํธ๊ฐ NOT์ด ๋ถ์ง ์์ Posting์ ๋ฌธ์ ๋ฒํธ์ ๋ค๋ฅด๋ฉด, ์ถ๊ฐํ์ง ์๊ณ ์์ ์ชฝ์ด ์ค๋ฅธ์ชฝ์ผ๋ก ์ด๋ํ๋ค. ๊ฐ์ผ๋ฉด ์ถ๊ฐํ์ง ์๊ณ ๋ Posting ๋ชจ๋ ์ค๋ฅธ์ชฝ์ผ๋ก ์ด๋ํ๋ค.
- <AND>
- NOT์ด ๋ถ์ ๋จ์ด๊ฐ ๊ฒ์ ๊ฒฐ๊ณผ์ ํฌํจ๋๋ฉด ์ ๋จ.
WestLaw ์์คํ
์ง์์ด๋ฅผ ๋ง๋ค ๋, AND, OR, NOT + /์ซ์, ! ๊ฐ๋ฅํจ.
๋์ด์ฐ๊ธฐ : OR
/<์ซ์> : <์ซ์> ๋จ์ด ์ด๋ด์ ๋ ๋จ์ด๊ฐ ๋์ฌ ๋, AND
! : Wild-card ๋ฌธ์ *
/s : ํ ๋ฌธ์ฅ ์์ ๋ ๋จ์ด๊ฐ ๋ ๋ค ๋์์ผ ํจ. AND
/p : ํ ๋ฌธ๋จ ์์ ๋ ๋จ์ด๊ฐ ๋ ๋ค ๋์์ผ ํจ. AND
Proximity operators : ์ธ์ ์ฑ์ ํ์ํ ์ ์๋ ์ฐ์ฐ ๊ธฐํธ
์ฐ์ฐ ์์ ์ต์ ํ
- ์๋ถํฐ ์ฒ๋ฆฌ
- ์์ ๋ฐ๊ฟ์ ์ฒ๋ฆฌ → ์๊ฐ ์ ์ฝ ๊ฐ๋ฅOR ์๊ฐ ๋ณต์ก๋ : Posting list size์ ํฉ
- Doc Freq๊ฐ ์์ ๊ฒ๋ถํฐ ์ฒ๋ฆฌํจ.
- Posting list size == Doc Freq
- ์ฐ์ฐ ์ ์๊ฐ ๋ณต์ก๋๋ฅผ ์ต๋๋ก ๊ณ์ฐํด์ ์๊ฐ ๋ณต์ก๋๊ฐ ์์ ์์๋๋ก ์ฒ๋ฆฌํจ.
- AND ์๊ฐ ๋ณต์ก๋ : Posting list size์ ํฉ
์ธ์ ์กฐ๊ฑด
์ง์์ด์ ๋จ์ด๊ฐ ๋์ด์ฐ๊ธฐ ๋จ์๋ก ๋์ด์ง๋ฉด ์ ๋๊ณ ๋ถ์ด์์ด์ผ ํ ๋
Proximity ์ธ์ ์กฐ๊ฑด ๋ช ๋ น์ด : NEAR
๊ตฌ์กฐํ๋ TEXT๊น์ง ์๊ฐํด์ ๊ฒ์ํด๋ณด๋ ๋ฐฉ๋ฒ๋ ์๊ฐํด๋ณด๊ธฐ(์ ์์ ๋ด์ฉ ๊ตฌ์กฐ๊ฐ ๋ง๋ ๊ฒ์)
Inverted Index + Position Information
Position Information : Posting์ด ํด๋น ๋ฌธ์๊ฐ ๊ทธ ๋ฌธ์ ๋ด์์ ์ด๋์ ๋์๋์ง ์์น ์ ๋ณด๊ฐ ๋ด๊ธด list๋ฅผ ๊ฐ๋ฆฌํด
Position Information Size = Term Frequency
๋ ๋จ์ด๊ฐ ์ธ์ ํด ์๋์ง ์ฐพ๋ ๋ฒ : AND ์ฐ์ฐ์ผ๋ก ๊ฐ ๋ฌธ์์ ํด๋น Term ๋์๋์ง ๊ฒ์ฌ → ๋ ์์น ์ ๋ณด๋ฅผ ๋น๊ตํจ → ์ธ์ ์กฐ๊ฑด์ ๋ง์ ๊ฒฝ์ฐ ๊ฒฐ๊ณผ์ ํฌํจ
์ธ์ ์ฐจ์ด : 1์ด๋ฉด ๋ ๋จ์ด๊ฐ ๋ถ์ด์์์ ์๋ฏธํ๊ณ , 2๋ฉด ๋ ๋จ์ด ์ฌ์ด์ ํ ๋จ์ด๊ฐ ํฌํจ๋์ด ์์์ ์๋ฏธํจ.
Term Freq ํ์ฉ
Term Freq๊ฐ ํฐ ์์ผ๋ก ๊ฒฐ๊ณผ ์ ๊ณตํ๊ธฐ
์ด๋ค Term์ด ํ๋์ ๋ฌธ์์์ Document์์ ๋ช ๋ฒ ๋์๋์ง ๊ณ ๋ ค
์ด๋ค Posting์ Term Freq == ๊ทธ Posting์ Positional Information ๋ฆฌ์คํธ์ ๊ธธ์ด
๊ฒ์ ๊ฒฐ๊ณผ๋ก, ๊ฐ ๋ฌธ์์ Term Freq์ ํฉ์ด ํฐ ๋ฌธ์๋ถํฐ ์ ๊ณตํจ.
Ranking Search
Boolean ๋ชจ๋ธ์ ํด๋น ์ง์์ด๊ฐ ๋ฌธ์์ ํฌํจ ๋๋์ง ์ ๋๋์ง๋ง ํ๋จํ๊ธฐ ๋๋ฌธ์ Ranking์ ๋งค๊ธฐ๋ ๊ฑด ์์น์ ์ผ๋ก๋ ๋ถ๊ฐ๋ฅํ๋ค.
ํ์ง๋ง, ๊ธฐ์ค์ ์ ์ฉํด์ ์กฐ๊ธ ๋ ์ ์ฉํ ๋งํ ๊ฒ์ ๊ฒฐ๊ณผ๋ฅผ ์ ๊ณตํ ์๋ ์๋ค. Proximity ์ธ์ ์ฑ์ ์ด์ฉํด์ ์ธ์ ํ ์๋ก ์ฌ์ฉ์๊ฐ ๋ ์ํ๋ ์ ๋ณด์ ๋ ๊ฐ๊น์ธ ์ ์์ผ๋ฏ๋ก ๊ฐ๊น์ด ์์ผ๋ก ์ ๊ณตํ๊ฑฐ๋, ๋ฌธ์์ Term Freq๋ฅผ ์ด์ฉํด์ ํฐ ์์ผ๋ก ์ ๊ณตํ๊ฑฐ๋, ๋ฌธ์๊ฐ ๋ง๋ค์ด์ง ์๊ฐ์ ์ธ๋ฑ์ค์ ๋ถ์ฌํด์ ์ต๊ทผ ๋ฌธ์๋ถํฐ ์ ๊ณตํ ์ ์๊ธด ํ๋ค.
์ ๋ณด ๊ฒ์ VS DB ๊ฒ์
์ ๋ณด ๊ฒ์
๋น๊ตฌ์กฐํ ๋จ
๋ฒ์ ๊ฒ์ ๋ถ๊ฐ๋ฅ
๋จ, TEXT์ด๋๋ผ๊ณ ์ฝ๊ฐ์ ๊ตฌ์กฐ๊ฐ ์์ ์ ์์. Semi-Structured Data ์) PPT, XML
๊ธ์์ ํฌ๊ธฐ, ๊ธ์์ ๊ตต๊ธฐ์ ๊ฐ์ ์ ๋ณด๋ฅผ ์ด์ฉํด ์ฝ๊ฐ์ ๊ตฌ์กฐ๋ฅผ ์ถ๊ฐํ ์ ์์.
DB ๊ฒ์
๊ตฌ์กฐํ๋จ.
๋ฒ์ ๊ฒ์ ๊ฐ๋ฅ
๊ด๋ จ ์๋ Concept ๊ฒ์ : ์์ง ๋ถ๊ฐ๋ฅ
์ฉ์ด
Clustering : ๊ตฐ์ง(๋ชจ์ผ๊ธฐ)
Classfication : ๋ถ๋ฅ
์น ๊ฒ์
๋ค์ํ ๋ฌธ์, ๋ค์ํ ์ฌ๋, ์ง์์ด, ์ ๋ณด ์กด์ฌํจ.
๋งํฌ๋ ์ ๋ณด ํ์ฉํ๊ฑฐ๋ ํด๋ฆญํ ์ ๋ณด ํ์ฉ ๊ฐ๋ฅํจ.
Cross-language information retrieval : ๊ต์ฐจ ์ธ์ด, ๋ฒ์ญํด์ ๊ฒ์ ๊ฒฐ๊ณผ ์ ๊ณต
Question answering : ์ง์ ์๋ต ์์คํ ์ง๋ฌธ&๋ต๋ณ
Summarization : ๊ฒ์๊ฒฐ๊ณผ ์์ฝํด์ ์ ๊ณต
TEXT mining : TEXT์์ ํ์ํ ์ ๋ณด ๋ฝ์์ ์๋ ค์ค
1996๋ ) TEXT์ ๊ฐ์ด ๋น๊ตฌ์กฐํ๋ ๋ฌธ์์ ๊ท๋ชจ๊ฐ ๊ตฌ์กฐํ๋ ๋ฌธ์๋ณด๋ค ์ปธ์. ๊ทผ๋ฐ ์์ฅ์์๋ ๋น๊ตฌ์กฐํ๋ ๋ฌธ์๋ฅผ ๋ค๋ฃจ๋ ๊ฑด ๋์ด ๋์ง ์์์
2006๋ ) ์ฌ์ ํ ๋น๊ตฌ์กฐํ๋ ๋ฌธ์์ ๊ท๋ชจ๊ฐ ํฌ์ง๋ง TEXT ๊ฒ์ ์๋น์ค ์์ฅ์ด ์ปค์ง๋ฉด์ ๋น๊ตฌ์กฐํ ๋ฌธ์๋ฅผ ๋ค๋ฃจ๋ ์์ฅ์ด ์ฑ์ฅํจ
์ ๋ณด๊ฒ์์์คํ ์ด ์๋ค๋ฉด, ์ ๋์ค์ grep๋ช ๋ น์ด, | ๋ก ์ฐพ์ ์ ์์. ํ์ง๋ง, ๋ฌธ์์ ์์ด ํฌ๋ค๋ฉด ์๋๊ฐ ๋๋ฆฌ๊ธฐ ๋๋ฌธ์ ์ ๋ณด ๊ฒ์ ๋ชฉ์ ์ผ๋ก๋ ์ ์ ํ์ง ์๋ค. ํน์ ๋ด์ฉ์ด ๋ค์ด๊ฐ ์๋ ๊ฑด ๋ค์ด๊ฐ ์์ผ๋ฉด ๋ ํ์ํ ํ์๊ฐ ์์ผ๋ ์ฌ์ด ํธ์ด์ง๋ง, ํน์ ๋ด์ฉ์ด ๋ค์ด๊ฐ ์์ง ์์ ๊ฑด ํ์ผ์ ๋๊น์ง ๋ค ํ์ํด ๋ด์ผ ํ๊ธฐ ๋๋ฌธ์ ์ด๋ ต๋ค. ๋จ์ด๊ฐ ์ธ์ ํด ์๋์ง ์ฌ๋ถ๋ grep ๋ช ๋ น์ผ๋ก ์ฐพ์ ์ ์๋ค.
Boolean ๋ชจ๋ธ์ ๋จ์ด ํฌํจ ์ฌ๋ถ๋ง ์ ์ ์๊ธฐ ๋๋ฌธ์ ๊ฒ์ ๊ฒฐ๊ณผ๋ก ์ถ์ถ๋ ๋ฌธ์๋ค์ ์์๋ฅผ ๋งค๊ธฐ๊ธด ํ๋ค๋ค. grep ๋ํ, Boolean ๋ชจ๋ธ์ ๋ฐ๋ฅด๊ธฐ ๋๋ฌธ์ ์์๋ฅผ ๋งค๊ธฐ๊ธด ํ๋ค๋ค.
Boolean ๋ชจ๋ธ๋ ์ ์๋ฅผ ๋งค๊ฒจ์ Sortํ ์ ์๊ธด ํ์ง๋ง, ๊ธฐ๋ณธ์ ์ผ๋ก ์์ ๋งค๊ธธ ์ ์๋ค.
$ grep -v <์ง์์ด> * : ๋ชจ๋ ๋ฌธ์ ํ์ผ(*)์์ ์ง์์ด๊ฐ ํฌํจ๋์ง ์์(-v) ๋ฌธ์๋ฅผ ํ์ํ๋ค.
Term-document (incidence) matrix Term๊ณผ Document์ ๊ด๊ณ๋ฅผ ๋ํ๋ด๋ ํ๋ ฌ
๊ฒ์ ๋์์ด ๋๋ ๋ชจ๋ ๋ฌธ์์ ๋ํด, Term์ด Document์ ๋์ค๋ฉด 1, ๋์ค์ง ์์ผ๋ฉด 0
์ง์์ด์ ์ผ์นํ๋ Term์ ํ๋ค์ ์ฐพ์์ ์ฃผ์ด์ง ์ง์์ด์ ๋ฐ๋ผ ํ๋ผ๋ฆฌ AND, OR, NOT ์ฐ์ฐ ์ํ
์ด๋, NOT์ 1๊ณผ 0์ ๋ง๋ฐ๊ฟ.
bitwise : ๊ฐ์ ์์น์ bit๋ผ๋ฆฌ ์ฐ์ฐ
์) ์ง์์ด : Brutus AND Caesar but NOT Calpurnia
Brutus = 110100, Caesar = 110111, Calpurnia = 010000
์ฐ์ฐ : 110100 AND 110111 AND 101111 = 100100
→ 1, 4๋ฒ์งธ ๋ฌธ์๊ฐ ๊ฒ์ ๊ฒฐ๊ณผ์ ํฌํจ๋๊ณ ๋๋จธ์ง๋ ํฌํจ๋์ง ์์.
Term-document (incidence) matrix๊ฐ ์ฃผ์ด์ ธ ์๋ค๋ฉด, ์ง์์ด ํค์๋์ ํด๋นํ๋ Term์ ํ์ ์ฐพ์์ ์ฐ์ฐ์ ํตํด ๊ฒ์ ๊ฒฐ๊ณผ๋ฅผ ๋์ถํด๋ผ ์ ์์. (Boolean ๊ฒ์ฌ ๊ธฐ๋ณธ ๋ฐฉ๋ฒ๋ก )
Boolean Model ๊ธฐ๋ณธ ๊ฐ์ : ๋ฌธ์์ ์งํฉ์ ๊ณ ์ ๋์ด ์์.
๋ง๋ญ์น : Corpus, ๋ฌธ์์ ์งํฉ
Refine : ์ฌ๋์ด๋ ๊ฒ์ ์์คํ ์ด ์ง์์ด๋ฅผ ๋ ์ ๊ตํ๊ฒ ์์ ํด์ ์ฌ๊ฒ์์ ํ๋ ํ์
๊ฒ์๋ ์์คํ ํ๊ฐ ๊ธฐ์ค
Precision ์ ๋ฐ๋ : ๊ฒฐ๊ณผ๊ฐ ์ง์์ด์ ์ผ๋ง๋ ๋ถํฉํ๋์ง
๋ชจ๋ธ์ด True๋ผ๊ณ ๋ถ๋ฅํ ๊ฒ ์ค์์ ์ค์ True์ธ ๊ฒ์ ๋น์จ(=์ ๋ต๋ฅ )
์ค์ ๋ก ์ฌ์ฉ์๊ฐ ์ฐพ๊ณ ์ ํ๋ ๋ด์ฉ์ด ๋ด๊ธด ๋ฌธ์ / ๋ชจ๋ธ ๊ฒ์ ๊ฒฐ๊ณผ
์ ๋ต / ๋ด๊ฐ
Recall ์ฌํ์จ : ์ง์์ด์ ๋ถํฉํ๋ ๋ฌธ์๋ฅผ ์ผ๋ง๋ ์ฐพ์๋ด๋์ง
์ค์ True์ธ ๊ฒ ์ค์์ ๋ชจ๋ธ์ด True๋ผ๊ณ ์์ธกํ ๊ฒ์ ๋น์จ(=์ ๊ณต๋ฅ )
์ ๋ต / ์ค์
์ ํ๋(Accuracy)๋ ์ ๋ณด ๊ฒ์ ํ๊ฐ์ ์ฐ์ด์ง ์์
์ ๋ฐ๋๊ฐ ๋์ผ๋ฉด ์ฌํ์จ์ด ๋ฎ๊ณ , ์ ๋ฐ๋๊ฐ ๋ฎ์ผ๋ฉด ์ฌํ์จ์ด ๋์.
์ ๋ฐ๋๊ฐ 100์ธ ๊ฒฝ์ฐ : ์ฐพ๊ณ ์ ํ๋ ๋ด์ฉ์ด ๋ด๊ธด ๋ฌธ์ 100๊ฐ์์ 1๊ฐ ์ฐพ์. → ์ฌํ์จ์ 0.01
์ฌํ์จ์ด 100์ธ ๊ฒฝ์ฐ : ์ฐพ์ ๋ฌธ์ 100๊ฐ ์ค ์ฐพ๊ณ ์ ํ๋ ๋ด์ฉ์ด ๋ด๊ธด ๋ชจ๋ ๋ฌธ์๊ฐ 1๊ฐ์ → ์ ๋ฐ๋๋ 0.01
**F-measure : ์ ๋ฐ๋์ ์ฌํ์จ์ ๊ฐ์ค์น๋ฅผ ์ฃผ๊ณ ๊ตฌํ ํ๊ท **
→ ํํ ์ํ(๊ฐ์ค์น)๋ฅผ 0.5๋ก ์ฃผ์ด ์๋์ ๊ฐ์ด ๋ง๋ฆ
F-measure๋ก ๊ฒ์ ์์คํ ์ฑ๋ฅ ํ๊ฐ์ ์ฌ์ฉํจ.
์์)
Q1. ๊ฒ์ ๋์ ๋ฌธ์ 100๋ง ๊ฐ, ๊ฐ ๋ฌธ์๋ ํ๊ท ์ ์ผ๋ก 1000๊ฐ์ ๋จ์ด๊ฐ ์์. ํ ๋จ์ด๋ ํ๊ท ์ ์ผ๋ก ๋์ด์ฐ๊ธฐ, ๋ถํธ ํฌํจ 6bytes(6๊ธ์). ๋ฌธ์ ์ ์ฒด ํฌ๊ธฐ๋?
A1. ๋ฌธ์ ์ ์ฒด ํฌ๊ธฐ = 100๋ง * (1000 * 6bytes) = 6,000,000,000 = 60์ตbytes = 6GB
Q2. 10์ต(100๋ง * 1000 = 1,000,000,000)๊ฐ ์ ๋จ์ด ์ค, 500,000๊ฐ์ ๋ค๋ฅธ ๋จ์ด๊ฐ ์๋ค. Term-Document Matrix์ ํฌ๊ธฐ๋?
A2.
Term ๊ฐ์ = 50๋ง
Document ๊ฐ์ = 100๋ง
Term-Document Matrix ํฌ๊ธฐ = 50๋ง * 100๋ง = 5์ฒ ์ต
→ Boolean ๊ฒ์์ ์ํด Term-Document Matrix๋ฅผ ๋ฏธ๋ฆฌ ๋ง๋ค์ด์ผ ํ๋๋ฐ, ํฌ๊ธฐ๊ฐ ๋๋ฌด ํผ.
5์ฒ ์ต๊ฐ์ 0๊ณผ 1์ค 0์ ๋น์ค์ด ๋ณดํต 99.8%๋ฅผ ์ฐจ์งํ์ฌ 1์ 0.2%๋ฅผ ์ฐจ์งํ์ฌ 1000๊ฐ๋ก ๋ง์ง ์์.
๋ฐ๋ผ์, 1์ธ ๊ฒ๋ง ๋ฐ๋ก ํ์ํ๋๋ก ํจ. ⇒ Inverted Index (Inverted file)
0์ด ์ฐจ์งํ๋ ๋น์จ
term(ํ) = 50๋ง๊ฐ, document(์ด) = 100๋ง๊ฐ
ํ๋์ ๋ฌธ์์ term ์ ๋ณด = ํ ์ด(50๋ง๊ฐ์ term), ํ๋์ ๋ฌธ์๋ 1000๊ฐ์ ๋จ์ด๋ก ๊ตฌ์ฑ๋จ ⇒ ํ๋์ ๋ฌธ์์ term ์ค ํ๊ท ์ ์ผ๋ก 1000๊ฐ์ ๋จ์ด๋ง ๋์ค๋ฏ๋ก 50๋ง ๊ฐ์ ํ ์ด์์ 1์ ํ๊ท ์ ์ผ๋ก 1000๊ฐ์. 49๋ง9์ฒ๊ฐ๋ 0์. ⇒ 50๋ง ๊ฐ์์ 1000๊ฐ๊ฐ 1์ด์์ผ๋ 100๋ง๊ฐ์์๋ 2000๊ฐ๊ฐ 1์. ⇒ 2์ฒ/100๋ง = 0.002. 0.2%๊ฐ 1์ด๊ณ , 99.8%๊ฐ 0์.
Inverted index (inverted file)
Term-Document Matrix์ ๊ณต๊ฐ ์์ ๋ฌธ์ ํด๊ฒฐ์ ์ํด 1์ธ ๋ฌธ์๋ง ๋ชฉ๋กํํจ.
๊ฒ์ ๋์(๋ฌธ์, ์น, PC๊ฒฝ๋ก)์ ๋ฐ๋ผ ๊ฒ์ ๊ฒฐ๊ณผ๊ฐ ๋ค๋ฅด๊ธฐ ๋๋ฌธ์ Posting list์๋ ๋ ผ๋ฆฌ์ ์ผ๋ก ๋ฌธ์์ ๋ฒํธ ์๋ณ์๋ฅผ ๋ถ์ฌํจ.
Posting : ๋ฌธ์ ๋ฒํธ ์๋ณ์ ํ๋ํ๋
Posting list : Posting์ด ๋์ด๋ ํ๋์ ๋ฐฐ์ด(๋ฆฌ์คํธ)
Posting lists : Posting list์ ์งํฉ
์ง์์ด๋ฅผ ์ฐพ์ ๋ ๋ ๋นจ๋ฆฌ ์ฐพ์ ์ ์๋๋ก ๋ฌธ์๋ฅผ ์ ๋ ฌํด์ผ ํ๊ธฐ ๋๋ฌธ์, Posting list๋ ๋ฐฐ์ด๋ณด๋ค ์ฐ๊ฒฐ ๋ฆฌ์คํธ๋ฅผ ์ ํธํ๋ค. ํ์ง๋ง ํฌ์ธํฐ ๊ณต๊ฐ์ ๋ ์ฐจ์งํ๋ค.
Dictionary == Vocabulary (Term์ ์งํฉ)
Inverted Index ๋ง๋๋ ๊ณผ์
[๋จ๊ณ]
- Tokenization (ํ ํฐํ)→ ๋ง์ฝ, ๋ฌธ์๊ฐ TXT๊ฐ ์๋ ์๋ํ๊ธ, html์ด๋ผ๋ฉด? → ๊ฒฝ์ฐ์ ๋ฐ๋ผ ํ ํฐํ ์ด๋ ค์ธ ์ ์์.1-2. Linguistic Modules๋ฅผ ํตํด ์ธ์ด์ ๋ฐ๋ผ ์ฒ๋ฆฌํจ. (์์ด : ๋ชจ๋ ์๋ฌธ์๋ก, ์ํ์ผ๋ก ๋ง๋ฆ)์ด๋ ํ ํฐ์ด ์ด๋ ๋ฌธ์์์ ๋์๋์ง Postings list(ํด๋น ํ ํฐ์ ๋ฌธ์ ์์น๋ฅผ ๋ํ๋) ๊ตฌ์ถ1-3-1. (Term, DocID) ์์ผ๋ก ๋ง๋ฆ.1-3-3. ํ์ ์, TF ์ ๋ณด ์ถ๊ฐTerm Frequency(TF) : ํ ๋ฌธ์๋ฅผ ๊ธฐ์ค์ผ๋ก Term์ด ๋์จ ๊ฐ์ ์ถ๊ฐ
DF๋ก ํฉ์ณ์ง ์ค๋ณต Term์ ๊ฐ๊ฐ ์ฐ๊ฒฐ ๋ฆฌ์คํธ ์์ผ๋ก ์์ ์ (DocID, TF)๋ฅผ ๊ฐ๋ฆฌํดDocument Frequency(DF) : Term์ด ๋์จ ๋ฌธ์์ ๊ฐ์ ์ถ๊ฐ ์ด๋ Term Frequency๋ผ๋ฆฌ ํฉ์ ๊ตฌํจ.
- → ๋์ค์ ์ฐ๊ฒฐ ๋ฆฌ์คํธ ํ์์ Inverted Index์ ๊ธฐํ์ด ๋จ.
- 1-3-5. ํ์ ์, DF ์ ๋ณด ์ถ๊ฐ
- ํ ๋ฌธ์์ ์ค๋ณต Term์ ํ๋๋ก ํต์ผ.
- 1-3-2. Term์ ๊ธฐ์ค์ผ๋ก ์ ๋ ฌํจ.
- Inverted Index๋ฅผ ๋ง๋ฆ.
- 1-3. Indexer : ํ ํฐ์ ์ธ๋ฑ์ค๋ก ๋ง๋ฆ.
- Tokenizer ๋ชจ๋์ ํตํด ํ ํฐํ ํจ.
- 1-1. ํ ํฐํ : ๋ฌธ์๋ค์ ๋ฌธ์ฅ์ ๊ณต๋ฐฑ์ ๊ธฐ์ค์ผ๋ก ์๋ฆ
์ฌ๋์ด ์ฐ๋ ๋จ์ด๋ ํ๊ณ๊ฐ ์์ผ๋ฏ๋ก Dictionary size๋ Postings list์ ๋นํด ๋ณํ๊ฐ ์ ์.
๋ฐ๋ผ์, Dictionary๋ ๊ฒ์ ์๋น์ค๋ฅผ ์ํด Main Memory๋ก load ๋จ.
Postings๋ ํฌ๊ธฐ๊ฐ ์ ์ ์ปค์ง๊ณ ๋ณํ๋ ์ฆ์ Disk์ ์ ์ฅ๋จ.
Postings list ์ ์ฅ ๋ฐฉ๋ฒ
- ์ฐ๊ฒฐ ๋ฆฌ์คํธ
- ๊ฐ๋ณ ๋ฐฐ์ด
- hybrid scheme : ์ฐ๊ฒฐ๋ฆฌ์คํธ + ๊ฐ๋ณ ๋ฐฐ์ด (๋ฐฐ์ด์ ์ฐ๊ฒฐ๋ฆฌ์คํธ๋ก ์ฐ๊ฒฐํจ.)
์ง์์ด
- Conjunctive : AND์๊ฐ๋ณต์ก๋ : ๋น๊ตํ๋ Posting List ๊ธธ์ด์ ํฉif not sorting ์๊ฐ๋ณต์ก๋ : ๋น๊ตํ๋ Posting List ๊ธธ์ด์ ๊ณฑ
- ์กฐ๊ฑด : Posting list๊ฐ ์ ๋ ฌ๋์ด ์์ด์ผ ํจ.
- Posting list๋ผ๋ฆฌ ์ฒซ ๋ฒ์งธ ์ธ๋ฑ์ค๋ถํฐ ๋น๊ตํด์ ๋ฌธ์ ๋ฒํธ๊ฐ ๊ฐ์ผ๋ฉด ๊ฒ์ ๊ฒฐ๊ณผ์ ํฌํจํ๊ณ , ๋ค๋ฅด๋ฉด ์์ ์ชฝ์ Posting์ด ์ค๋ฅธ์ชฝ์ผ๋ก ์ด๋ํ๊ณ ๋ค์ ๋น๊ต
- Disjunctive : OR์๊ฐ๋ณต์ก๋ : ๋น๊ตํ๋ Posting List ๊ธธ์ด์ ํฉ
- Posting list๋ผ๋ฆฌ ์ฒซ ๋ฒ์งธ ์ธ๋ฑ์ค๋ถํฐ ๋น๊ตํด์ ๋ฌธ์ ๋ฒํธ๊ฐ ๊ฐ์ผ๋ฉด ๊ฒ์ ๊ฒฐ๊ณผ์ ํฌํจํ๊ณ , ๋ฌ๋ผ๋ ๋ฌธ์ ๋ฒํธ๊ฐ ๋ ์์ ์ชฝ์ ๋จผ์ ๊ฒ์ ๊ฒฐ๊ณผ์ ํฌํจํ๊ณ ์์ ์ชฝ์ด ์ค๋ฅธ์ชฝ์ผ๋ก ์ด๋ํ๋ค.
- NOT → ์๊ฐ ์ค๋ ๊ฑธ๋ฆผNOT์ด ๋ถ์ Posting list๋ ์ค๋ฅธ์ชฝ์ผ๋ก ๋์ด๊ฐ๊ธฐ ์ ์, ์์ ์๊ฒ ์๋ Posting์ ๋ฌธ์ ๋ฒํธ์ ๋ค๋ฅธ Posting list์ ์ฐ์ฐํจ.NOT์ด ๋ถ์ Posting์ ๋ฌธ์ ๋ฒํธ๊ฐ NOT์ด ๋ถ์ง ์์ Posting์ ๋ฌธ์ ๋ฒํธ์ ๋ค๋ฅด๋ฉด, ์ถ๊ฐํ์ง ์๊ณ ์์ ์ชฝ์ด ์ค๋ฅธ์ชฝ์ผ๋ก ์ด๋ํ๋ค. ๊ฐ์ผ๋ฉด ์ถ๊ฐํ์ง ์๊ณ ๋ Posting ๋ชจ๋ ์ค๋ฅธ์ชฝ์ผ๋ก ์ด๋ํ๋ค.
- <AND>
- NOT์ด ๋ถ์ ๋จ์ด๊ฐ ๊ฒ์ ๊ฒฐ๊ณผ์ ํฌํจ๋๋ฉด ์ ๋จ.
WestLaw ์์คํ
์ง์์ด๋ฅผ ๋ง๋ค ๋, AND, OR, NOT + /์ซ์, ! ๊ฐ๋ฅํจ.
๋์ด์ฐ๊ธฐ : OR
/<์ซ์> : <์ซ์> ๋จ์ด ์ด๋ด์ ๋ ๋จ์ด๊ฐ ๋์ฌ ๋, AND
! : Wild-card ๋ฌธ์ *
/s : ํ ๋ฌธ์ฅ ์์ ๋ ๋จ์ด๊ฐ ๋ ๋ค ๋์์ผ ํจ. AND
/p : ํ ๋ฌธ๋จ ์์ ๋ ๋จ์ด๊ฐ ๋ ๋ค ๋์์ผ ํจ. AND
Proximity operators : ์ธ์ ์ฑ์ ํ์ํ ์ ์๋ ์ฐ์ฐ ๊ธฐํธ
์ฐ์ฐ ์์ ์ต์ ํ
- ์๋ถํฐ ์ฒ๋ฆฌ
- ์์ ๋ฐ๊ฟ์ ์ฒ๋ฆฌ → ์๊ฐ ์ ์ฝ ๊ฐ๋ฅOR ์๊ฐ ๋ณต์ก๋ : Posting list size์ ํฉ
- Doc Freq๊ฐ ์์ ๊ฒ๋ถํฐ ์ฒ๋ฆฌํจ.
- Posting list size == Doc Freq
- ์ฐ์ฐ ์ ์๊ฐ ๋ณต์ก๋๋ฅผ ์ต๋๋ก ๊ณ์ฐํด์ ์๊ฐ ๋ณต์ก๋๊ฐ ์์ ์์๋๋ก ์ฒ๋ฆฌํจ.
- AND ์๊ฐ ๋ณต์ก๋ : Posting list size์ ํฉ
์ธ์ ์กฐ๊ฑด
์ง์์ด์ ๋จ์ด๊ฐ ๋์ด์ฐ๊ธฐ ๋จ์๋ก ๋์ด์ง๋ฉด ์ ๋๊ณ ๋ถ์ด์์ด์ผ ํ ๋
Proximity ์ธ์ ์กฐ๊ฑด ๋ช ๋ น์ด : NEAR
๊ตฌ์กฐํ๋ TEXT๊น์ง ์๊ฐํด์ ๊ฒ์ํด๋ณด๋ ๋ฐฉ๋ฒ๋ ์๊ฐํด๋ณด๊ธฐ(์ ์์ ๋ด์ฉ ๊ตฌ์กฐ๊ฐ ๋ง๋ ๊ฒ์)
Inverted Index + Position Information
Position Information : Posting์ด ํด๋น ๋ฌธ์๊ฐ ๊ทธ ๋ฌธ์ ๋ด์์ ์ด๋์ ๋์๋์ง ์์น ์ ๋ณด๊ฐ ๋ด๊ธด list๋ฅผ ๊ฐ๋ฆฌํด
Position Information Size = Term Frequency
๋ ๋จ์ด๊ฐ ์ธ์ ํด ์๋์ง ์ฐพ๋ ๋ฒ : AND ์ฐ์ฐ์ผ๋ก ๊ฐ ๋ฌธ์์ ํด๋น Term ๋์๋์ง ๊ฒ์ฌ → ๋ ์์น ์ ๋ณด๋ฅผ ๋น๊ตํจ → ์ธ์ ์กฐ๊ฑด์ ๋ง์ ๊ฒฝ์ฐ ๊ฒฐ๊ณผ์ ํฌํจ
์ธ์ ์ฐจ์ด : 1์ด๋ฉด ๋ ๋จ์ด๊ฐ ๋ถ์ด์์์ ์๋ฏธํ๊ณ , 2๋ฉด ๋ ๋จ์ด ์ฌ์ด์ ํ ๋จ์ด๊ฐ ํฌํจ๋์ด ์์์ ์๋ฏธํจ.
Term Freq ํ์ฉ
Term Freq๊ฐ ํฐ ์์ผ๋ก ๊ฒฐ๊ณผ ์ ๊ณตํ๊ธฐ
์ด๋ค Term์ด ํ๋์ ๋ฌธ์์์ Document์์ ๋ช ๋ฒ ๋์๋์ง ๊ณ ๋ ค
์ด๋ค Posting์ Term Freq == ๊ทธ Posting์ Positional Information ๋ฆฌ์คํธ์ ๊ธธ์ด
๊ฒ์ ๊ฒฐ๊ณผ๋ก, ๊ฐ ๋ฌธ์์ Term Freq์ ํฉ์ด ํฐ ๋ฌธ์๋ถํฐ ์ ๊ณตํจ.
Ranking Search
Boolean ๋ชจ๋ธ์ ํด๋น ์ง์์ด๊ฐ ๋ฌธ์์ ํฌํจ ๋๋์ง ์ ๋๋์ง๋ง ํ๋จํ๊ธฐ ๋๋ฌธ์ Ranking์ ๋งค๊ธฐ๋ ๊ฑด ์์น์ ์ผ๋ก๋ ๋ถ๊ฐ๋ฅํ๋ค.
ํ์ง๋ง, ๊ธฐ์ค์ ์ ์ฉํด์ ์กฐ๊ธ ๋ ์ ์ฉํ ๋งํ ๊ฒ์ ๊ฒฐ๊ณผ๋ฅผ ์ ๊ณตํ ์๋ ์๋ค. Proximity ์ธ์ ์ฑ์ ์ด์ฉํด์ ์ธ์ ํ ์๋ก ์ฌ์ฉ์๊ฐ ๋ ์ํ๋ ์ ๋ณด์ ๋ ๊ฐ๊น์ธ ์ ์์ผ๋ฏ๋ก ๊ฐ๊น์ด ์์ผ๋ก ์ ๊ณตํ๊ฑฐ๋, ๋ฌธ์์ Term Freq๋ฅผ ์ด์ฉํด์ ํฐ ์์ผ๋ก ์ ๊ณตํ๊ฑฐ๋, ๋ฌธ์๊ฐ ๋ง๋ค์ด์ง ์๊ฐ์ ์ธ๋ฑ์ค์ ๋ถ์ฌํด์ ์ต๊ทผ ๋ฌธ์๋ถํฐ ์ ๊ณตํ ์ ์๊ธด ํ๋ค.
์ ๋ณด ๊ฒ์ VS DB ๊ฒ์
์ ๋ณด ๊ฒ์
๋น๊ตฌ์กฐํ ๋จ
๋ฒ์ ๊ฒ์ ๋ถ๊ฐ๋ฅ
๋จ, TEXT์ด๋๋ผ๊ณ ์ฝ๊ฐ์ ๊ตฌ์กฐ๊ฐ ์์ ์ ์์. Semi-Structured Data ์) PPT, XML
๊ธ์์ ํฌ๊ธฐ, ๊ธ์์ ๊ตต๊ธฐ์ ๊ฐ์ ์ ๋ณด๋ฅผ ์ด์ฉํด ์ฝ๊ฐ์ ๊ตฌ์กฐ๋ฅผ ์ถ๊ฐํ ์ ์์.
DB ๊ฒ์
๊ตฌ์กฐํ๋จ.
๋ฒ์ ๊ฒ์ ๊ฐ๋ฅ
๊ด๋ จ ์๋ Concept ๊ฒ์ : ์์ง ๋ถ๊ฐ๋ฅ
์ฉ์ด
Clustering : ๊ตฐ์ง(๋ชจ์ผ๊ธฐ)
Classfication : ๋ถ๋ฅ
์น ๊ฒ์
๋ค์ํ ๋ฌธ์, ๋ค์ํ ์ฌ๋, ์ง์์ด, ์ ๋ณด ์กด์ฌํจ.
๋งํฌ๋ ์ ๋ณด ํ์ฉํ๊ฑฐ๋ ํด๋ฆญํ ์ ๋ณด ํ์ฉ ๊ฐ๋ฅํจ.
Cross-language information retrieval : ๊ต์ฐจ ์ธ์ด, ๋ฒ์ญํด์ ๊ฒ์ ๊ฒฐ๊ณผ ์ ๊ณต
Question answering : ์ง์ ์๋ต ์์คํ ์ง๋ฌธ&๋ต๋ณ
Summarization : ๊ฒ์๊ฒฐ๊ณผ ์์ฝํด์ ์ ๊ณต
TEXT mining : TEXT์์ ํ์ํ ์ ๋ณด ๋ฝ์์ ์๋ ค์ค
1996๋ ) TEXT์ ๊ฐ์ด ๋น๊ตฌ์กฐํ๋ ๋ฌธ์์ ๊ท๋ชจ๊ฐ ๊ตฌ์กฐํ๋ ๋ฌธ์๋ณด๋ค ์ปธ์. ๊ทผ๋ฐ ์์ฅ์์๋ ๋น๊ตฌ์กฐํ๋ ๋ฌธ์๋ฅผ ๋ค๋ฃจ๋ ๊ฑด ๋์ด ๋์ง ์์์
2006๋ ) ์ฌ์ ํ ๋น๊ตฌ์กฐํ๋ ๋ฌธ์์ ๊ท๋ชจ๊ฐ ํฌ์ง๋ง TEXT ๊ฒ์ ์๋น์ค ์์ฅ์ด ์ปค์ง๋ฉด์ ๋น๊ตฌ์กฐํ ๋ฌธ์๋ฅผ ๋ค๋ฃจ๋ ์์ฅ์ด ์ฑ์ฅํจ
์ ๋ณด๊ฒ์์์คํ ์ด ์๋ค๋ฉด, ์ ๋์ค์ grep๋ช ๋ น์ด, | ๋ก ์ฐพ์ ์ ์์. ํ์ง๋ง, ๋ฌธ์์ ์์ด ํฌ๋ค๋ฉด ์๋๊ฐ ๋๋ฆฌ๊ธฐ ๋๋ฌธ์ ์ ๋ณด ๊ฒ์ ๋ชฉ์ ์ผ๋ก๋ ์ ์ ํ์ง ์๋ค. ํน์ ๋ด์ฉ์ด ๋ค์ด๊ฐ ์๋ ๊ฑด ๋ค์ด๊ฐ ์์ผ๋ฉด ๋ ํ์ํ ํ์๊ฐ ์์ผ๋ ์ฌ์ด ํธ์ด์ง๋ง, ํน์ ๋ด์ฉ์ด ๋ค์ด๊ฐ ์์ง ์์ ๊ฑด ํ์ผ์ ๋๊น์ง ๋ค ํ์ํด ๋ด์ผ ํ๊ธฐ ๋๋ฌธ์ ์ด๋ ต๋ค. ๋จ์ด๊ฐ ์ธ์ ํด ์๋์ง ์ฌ๋ถ๋ grep ๋ช ๋ น์ผ๋ก ์ฐพ์ ์ ์๋ค.
Boolean ๋ชจ๋ธ์ ๋จ์ด ํฌํจ ์ฌ๋ถ๋ง ์ ์ ์๊ธฐ ๋๋ฌธ์ ๊ฒ์ ๊ฒฐ๊ณผ๋ก ์ถ์ถ๋ ๋ฌธ์๋ค์ ์์๋ฅผ ๋งค๊ธฐ๊ธด ํ๋ค๋ค. grep ๋ํ, Boolean ๋ชจ๋ธ์ ๋ฐ๋ฅด๊ธฐ ๋๋ฌธ์ ์์๋ฅผ ๋งค๊ธฐ๊ธด ํ๋ค๋ค.
Boolean ๋ชจ๋ธ๋ ์ ์๋ฅผ ๋งค๊ฒจ์ Sortํ ์ ์๊ธด ํ์ง๋ง, ๊ธฐ๋ณธ์ ์ผ๋ก ์์ ๋งค๊ธธ ์ ์๋ค.
$ grep -v <์ง์์ด> * : ๋ชจ๋ ๋ฌธ์ ํ์ผ(*)์์ ์ง์์ด๊ฐ ํฌํจ๋์ง ์์(-v) ๋ฌธ์๋ฅผ ํ์ํ๋ค.
Term-document (incidence) matrix Term๊ณผ Document์ ๊ด๊ณ๋ฅผ ๋ํ๋ด๋ ํ๋ ฌ
๊ฒ์ ๋์์ด ๋๋ ๋ชจ๋ ๋ฌธ์์ ๋ํด, Term์ด Document์ ๋์ค๋ฉด 1, ๋์ค์ง ์์ผ๋ฉด 0
์ง์์ด์ ์ผ์นํ๋ Term์ ํ๋ค์ ์ฐพ์์ ์ฃผ์ด์ง ์ง์์ด์ ๋ฐ๋ผ ํ๋ผ๋ฆฌ AND, OR, NOT ์ฐ์ฐ ์ํ
์ด๋, NOT์ 1๊ณผ 0์ ๋ง๋ฐ๊ฟ.
bitwise : ๊ฐ์ ์์น์ bit๋ผ๋ฆฌ ์ฐ์ฐ
์) ์ง์์ด : Brutus AND Caesar but NOT Calpurnia
Brutus = 110100, Caesar = 110111, Calpurnia = 010000
์ฐ์ฐ : 110100 AND 110111 AND 101111 = 100100
→ 1, 4๋ฒ์งธ ๋ฌธ์๊ฐ ๊ฒ์ ๊ฒฐ๊ณผ์ ํฌํจ๋๊ณ ๋๋จธ์ง๋ ํฌํจ๋์ง ์์.
Term-document (incidence) matrix๊ฐ ์ฃผ์ด์ ธ ์๋ค๋ฉด, ์ง์์ด ํค์๋์ ํด๋นํ๋ Term์ ํ์ ์ฐพ์์ ์ฐ์ฐ์ ํตํด ๊ฒ์ ๊ฒฐ๊ณผ๋ฅผ ๋์ถํด๋ผ ์ ์์. (Boolean ๊ฒ์ฌ ๊ธฐ๋ณธ ๋ฐฉ๋ฒ๋ก )
Boolean Model ๊ธฐ๋ณธ ๊ฐ์ : ๋ฌธ์์ ์งํฉ์ ๊ณ ์ ๋์ด ์์.
๋ง๋ญ์น : Corpus, ๋ฌธ์์ ์งํฉ
Refine : ์ฌ๋์ด๋ ๊ฒ์ ์์คํ ์ด ์ง์์ด๋ฅผ ๋ ์ ๊ตํ๊ฒ ์์ ํด์ ์ฌ๊ฒ์์ ํ๋ ํ์
๊ฒ์๋ ์์คํ ํ๊ฐ ๊ธฐ์ค
Precision ์ ๋ฐ๋ : ๊ฒฐ๊ณผ๊ฐ ์ง์์ด์ ์ผ๋ง๋ ๋ถํฉํ๋์ง
๋ชจ๋ธ์ด True๋ผ๊ณ ๋ถ๋ฅํ ๊ฒ ์ค์์ ์ค์ True์ธ ๊ฒ์ ๋น์จ(=์ ๋ต๋ฅ )
์ค์ ๋ก ์ฌ์ฉ์๊ฐ ์ฐพ๊ณ ์ ํ๋ ๋ด์ฉ์ด ๋ด๊ธด ๋ฌธ์ / ๋ชจ๋ธ ๊ฒ์ ๊ฒฐ๊ณผ
์ ๋ต / ๋ด๊ฐ
Recall ์ฌํ์จ : ์ง์์ด์ ๋ถํฉํ๋ ๋ฌธ์๋ฅผ ์ผ๋ง๋ ์ฐพ์๋ด๋์ง
์ค์ True์ธ ๊ฒ ์ค์์ ๋ชจ๋ธ์ด True๋ผ๊ณ ์์ธกํ ๊ฒ์ ๋น์จ(=์ ๊ณต๋ฅ )
์ ๋ต / ์ค์
์ ํ๋(Accuracy)๋ ์ ๋ณด ๊ฒ์ ํ๊ฐ์ ์ฐ์ด์ง ์์
์ ๋ฐ๋๊ฐ ๋์ผ๋ฉด ์ฌํ์จ์ด ๋ฎ๊ณ , ์ ๋ฐ๋๊ฐ ๋ฎ์ผ๋ฉด ์ฌํ์จ์ด ๋์.
์ ๋ฐ๋๊ฐ 100์ธ ๊ฒฝ์ฐ : ์ฐพ๊ณ ์ ํ๋ ๋ด์ฉ์ด ๋ด๊ธด ๋ฌธ์ 100๊ฐ์์ 1๊ฐ ์ฐพ์. → ์ฌํ์จ์ 0.01
์ฌํ์จ์ด 100์ธ ๊ฒฝ์ฐ : ์ฐพ์ ๋ฌธ์ 100๊ฐ ์ค ์ฐพ๊ณ ์ ํ๋ ๋ด์ฉ์ด ๋ด๊ธด ๋ชจ๋ ๋ฌธ์๊ฐ 1๊ฐ์ → ์ ๋ฐ๋๋ 0.01
**F-measure : ์ ๋ฐ๋์ ์ฌํ์จ์ ๊ฐ์ค์น๋ฅผ ์ฃผ๊ณ ๊ตฌํ ํ๊ท **
→ ํํ ์ํ(๊ฐ์ค์น)๋ฅผ 0.5๋ก ์ฃผ์ด ์๋์ ๊ฐ์ด ๋ง๋ฆ
F-measure๋ก ๊ฒ์ ์์คํ ์ฑ๋ฅ ํ๊ฐ์ ์ฌ์ฉํจ.
์์)
Q1. ๊ฒ์ ๋์ ๋ฌธ์ 100๋ง ๊ฐ, ๊ฐ ๋ฌธ์๋ ํ๊ท ์ ์ผ๋ก 1000๊ฐ์ ๋จ์ด๊ฐ ์์. ํ ๋จ์ด๋ ํ๊ท ์ ์ผ๋ก ๋์ด์ฐ๊ธฐ, ๋ถํธ ํฌํจ 6bytes(6๊ธ์). ๋ฌธ์ ์ ์ฒด ํฌ๊ธฐ๋?
A1. ๋ฌธ์ ์ ์ฒด ํฌ๊ธฐ = 100๋ง * (1000 * 6bytes) = 6,000,000,000 = 60์ตbytes = 6GB
Q2. 10์ต(100๋ง * 1000 = 1,000,000,000)๊ฐ ์ ๋จ์ด ์ค, 500,000๊ฐ์ ๋ค๋ฅธ ๋จ์ด๊ฐ ์๋ค. Term-Document Matrix์ ํฌ๊ธฐ๋?
A2.
Term ๊ฐ์ = 50๋ง
Document ๊ฐ์ = 100๋ง
Term-Document Matrix ํฌ๊ธฐ = 50๋ง * 100๋ง = 5์ฒ ์ต
→ Boolean ๊ฒ์์ ์ํด Term-Document Matrix๋ฅผ ๋ฏธ๋ฆฌ ๋ง๋ค์ด์ผ ํ๋๋ฐ, ํฌ๊ธฐ๊ฐ ๋๋ฌด ํผ.
5์ฒ ์ต๊ฐ์ 0๊ณผ 1์ค 0์ ๋น์ค์ด ๋ณดํต 99.8%๋ฅผ ์ฐจ์งํ์ฌ 1์ 0.2%๋ฅผ ์ฐจ์งํ์ฌ 1000๊ฐ๋ก ๋ง์ง ์์.
๋ฐ๋ผ์, 1์ธ ๊ฒ๋ง ๋ฐ๋ก ํ์ํ๋๋ก ํจ. ⇒ Inverted Index (Inverted file)
0์ด ์ฐจ์งํ๋ ๋น์จ
term(ํ) = 50๋ง๊ฐ, document(์ด) = 100๋ง๊ฐ
ํ๋์ ๋ฌธ์์ term ์ ๋ณด = ํ ์ด(50๋ง๊ฐ์ term), ํ๋์ ๋ฌธ์๋ 1000๊ฐ์ ๋จ์ด๋ก ๊ตฌ์ฑ๋จ ⇒ ํ๋์ ๋ฌธ์์ term ์ค ํ๊ท ์ ์ผ๋ก 1000๊ฐ์ ๋จ์ด๋ง ๋์ค๋ฏ๋ก 50๋ง ๊ฐ์ ํ ์ด์์ 1์ ํ๊ท ์ ์ผ๋ก 1000๊ฐ์. 49๋ง9์ฒ๊ฐ๋ 0์. ⇒ 50๋ง ๊ฐ์์ 1000๊ฐ๊ฐ 1์ด์์ผ๋ 100๋ง๊ฐ์์๋ 2000๊ฐ๊ฐ 1์. ⇒ 2์ฒ/100๋ง = 0.002. 0.2%๊ฐ 1์ด๊ณ , 99.8%๊ฐ 0์.
Inverted index (inverted file)
Term-Document Matrix์ ๊ณต๊ฐ ์์ ๋ฌธ์ ํด๊ฒฐ์ ์ํด 1์ธ ๋ฌธ์๋ง ๋ชฉ๋กํํจ.
๊ฒ์ ๋์(๋ฌธ์, ์น, PC๊ฒฝ๋ก)์ ๋ฐ๋ผ ๊ฒ์ ๊ฒฐ๊ณผ๊ฐ ๋ค๋ฅด๊ธฐ ๋๋ฌธ์ Posting list์๋ ๋ ผ๋ฆฌ์ ์ผ๋ก ๋ฌธ์์ ๋ฒํธ ์๋ณ์๋ฅผ ๋ถ์ฌํจ.
Posting : ๋ฌธ์ ๋ฒํธ ์๋ณ์ ํ๋ํ๋
Posting list : Posting์ด ๋์ด๋ ํ๋์ ๋ฐฐ์ด(๋ฆฌ์คํธ)
Posting lists : Posting list์ ์งํฉ
์ง์์ด๋ฅผ ์ฐพ์ ๋ ๋ ๋นจ๋ฆฌ ์ฐพ์ ์ ์๋๋ก ๋ฌธ์๋ฅผ ์ ๋ ฌํด์ผ ํ๊ธฐ ๋๋ฌธ์, Posting list๋ ๋ฐฐ์ด๋ณด๋ค ์ฐ๊ฒฐ ๋ฆฌ์คํธ๋ฅผ ์ ํธํ๋ค. ํ์ง๋ง ํฌ์ธํฐ ๊ณต๊ฐ์ ๋ ์ฐจ์งํ๋ค.
Dictionary == Vocabulary (Term์ ์งํฉ)
Inverted Index ๋ง๋๋ ๊ณผ์
[๋จ๊ณ]
- Tokenization (ํ ํฐํ)→ ๋ง์ฝ, ๋ฌธ์๊ฐ TXT๊ฐ ์๋ ์๋ํ๊ธ, html์ด๋ผ๋ฉด? → ๊ฒฝ์ฐ์ ๋ฐ๋ผ ํ ํฐํ ์ด๋ ค์ธ ์ ์์.1-2. Linguistic Modules๋ฅผ ํตํด ์ธ์ด์ ๋ฐ๋ผ ์ฒ๋ฆฌํจ. (์์ด : ๋ชจ๋ ์๋ฌธ์๋ก, ์ํ์ผ๋ก ๋ง๋ฆ)์ด๋ ํ ํฐ์ด ์ด๋ ๋ฌธ์์์ ๋์๋์ง Postings list(ํด๋น ํ ํฐ์ ๋ฌธ์ ์์น๋ฅผ ๋ํ๋) ๊ตฌ์ถ1-3-1. (Term, DocID) ์์ผ๋ก ๋ง๋ฆ.1-3-3. ํ์ ์, TF ์ ๋ณด ์ถ๊ฐTerm Frequency(TF) : ํ ๋ฌธ์๋ฅผ ๊ธฐ์ค์ผ๋ก Term์ด ๋์จ ๊ฐ์ ์ถ๊ฐ
DF๋ก ํฉ์ณ์ง ์ค๋ณต Term์ ๊ฐ๊ฐ ์ฐ๊ฒฐ ๋ฆฌ์คํธ ์์ผ๋ก ์์ ์ (DocID, TF)๋ฅผ ๊ฐ๋ฆฌํดDocument Frequency(DF) : Term์ด ๋์จ ๋ฌธ์์ ๊ฐ์ ์ถ๊ฐ ์ด๋ Term Frequency๋ผ๋ฆฌ ํฉ์ ๊ตฌํจ.
- → ๋์ค์ ์ฐ๊ฒฐ ๋ฆฌ์คํธ ํ์์ Inverted Index์ ๊ธฐํ์ด ๋จ.
- 1-3-5. ํ์ ์, DF ์ ๋ณด ์ถ๊ฐ
- ํ ๋ฌธ์์ ์ค๋ณต Term์ ํ๋๋ก ํต์ผ.
- 1-3-2. Term์ ๊ธฐ์ค์ผ๋ก ์ ๋ ฌํจ.
- Inverted Index๋ฅผ ๋ง๋ฆ.
- 1-3. Indexer : ํ ํฐ์ ์ธ๋ฑ์ค๋ก ๋ง๋ฆ.
- Tokenizer ๋ชจ๋์ ํตํด ํ ํฐํ ํจ.
- 1-1. ํ ํฐํ : ๋ฌธ์๋ค์ ๋ฌธ์ฅ์ ๊ณต๋ฐฑ์ ๊ธฐ์ค์ผ๋ก ์๋ฆ
์ฌ๋์ด ์ฐ๋ ๋จ์ด๋ ํ๊ณ๊ฐ ์์ผ๋ฏ๋ก Dictionary size๋ Postings list์ ๋นํด ๋ณํ๊ฐ ์ ์.
๋ฐ๋ผ์, Dictionary๋ ๊ฒ์ ์๋น์ค๋ฅผ ์ํด Main Memory๋ก load ๋จ.
Postings๋ ํฌ๊ธฐ๊ฐ ์ ์ ์ปค์ง๊ณ ๋ณํ๋ ์ฆ์ Disk์ ์ ์ฅ๋จ.
Postings list ์ ์ฅ ๋ฐฉ๋ฒ
- ์ฐ๊ฒฐ ๋ฆฌ์คํธ
- ๊ฐ๋ณ ๋ฐฐ์ด
- hybrid scheme : ์ฐ๊ฒฐ๋ฆฌ์คํธ + ๊ฐ๋ณ ๋ฐฐ์ด (๋ฐฐ์ด์ ์ฐ๊ฒฐ๋ฆฌ์คํธ๋ก ์ฐ๊ฒฐํจ.)
์ง์์ด
- Conjunctive : AND์๊ฐ๋ณต์ก๋ : ๋น๊ตํ๋ Posting List ๊ธธ์ด์ ํฉif not sorting ์๊ฐ๋ณต์ก๋ : ๋น๊ตํ๋ Posting List ๊ธธ์ด์ ๊ณฑ
- ์กฐ๊ฑด : Posting list๊ฐ ์ ๋ ฌ๋์ด ์์ด์ผ ํจ.
- Posting list๋ผ๋ฆฌ ์ฒซ ๋ฒ์งธ ์ธ๋ฑ์ค๋ถํฐ ๋น๊ตํด์ ๋ฌธ์ ๋ฒํธ๊ฐ ๊ฐ์ผ๋ฉด ๊ฒ์ ๊ฒฐ๊ณผ์ ํฌํจํ๊ณ , ๋ค๋ฅด๋ฉด ์์ ์ชฝ์ Posting์ด ์ค๋ฅธ์ชฝ์ผ๋ก ์ด๋ํ๊ณ ๋ค์ ๋น๊ต
- Disjunctive : OR์๊ฐ๋ณต์ก๋ : ๋น๊ตํ๋ Posting List ๊ธธ์ด์ ํฉ
- Posting list๋ผ๋ฆฌ ์ฒซ ๋ฒ์งธ ์ธ๋ฑ์ค๋ถํฐ ๋น๊ตํด์ ๋ฌธ์ ๋ฒํธ๊ฐ ๊ฐ์ผ๋ฉด ๊ฒ์ ๊ฒฐ๊ณผ์ ํฌํจํ๊ณ , ๋ฌ๋ผ๋ ๋ฌธ์ ๋ฒํธ๊ฐ ๋ ์์ ์ชฝ์ ๋จผ์ ๊ฒ์ ๊ฒฐ๊ณผ์ ํฌํจํ๊ณ ์์ ์ชฝ์ด ์ค๋ฅธ์ชฝ์ผ๋ก ์ด๋ํ๋ค.
- NOT → ์๊ฐ ์ค๋ ๊ฑธ๋ฆผNOT์ด ๋ถ์ Posting list๋ ์ค๋ฅธ์ชฝ์ผ๋ก ๋์ด๊ฐ๊ธฐ ์ ์, ์์ ์๊ฒ ์๋ Posting์ ๋ฌธ์ ๋ฒํธ์ ๋ค๋ฅธ Posting list์ ์ฐ์ฐํจ.NOT์ด ๋ถ์ Posting์ ๋ฌธ์ ๋ฒํธ๊ฐ NOT์ด ๋ถ์ง ์์ Posting์ ๋ฌธ์ ๋ฒํธ์ ๋ค๋ฅด๋ฉด, ์ถ๊ฐํ์ง ์๊ณ ์์ ์ชฝ์ด ์ค๋ฅธ์ชฝ์ผ๋ก ์ด๋ํ๋ค. ๊ฐ์ผ๋ฉด ์ถ๊ฐํ์ง ์๊ณ ๋ Posting ๋ชจ๋ ์ค๋ฅธ์ชฝ์ผ๋ก ์ด๋ํ๋ค.
- <AND>
- NOT์ด ๋ถ์ ๋จ์ด๊ฐ ๊ฒ์ ๊ฒฐ๊ณผ์ ํฌํจ๋๋ฉด ์ ๋จ.
WestLaw ์์คํ
์ง์์ด๋ฅผ ๋ง๋ค ๋, AND, OR, NOT + /์ซ์, ! ๊ฐ๋ฅํจ.
๋์ด์ฐ๊ธฐ : OR
/<์ซ์> : <์ซ์> ๋จ์ด ์ด๋ด์ ๋ ๋จ์ด๊ฐ ๋์ฌ ๋, AND
! : Wild-card ๋ฌธ์ *
/s : ํ ๋ฌธ์ฅ ์์ ๋ ๋จ์ด๊ฐ ๋ ๋ค ๋์์ผ ํจ. AND
/p : ํ ๋ฌธ๋จ ์์ ๋ ๋จ์ด๊ฐ ๋ ๋ค ๋์์ผ ํจ. AND
Proximity operators : ์ธ์ ์ฑ์ ํ์ํ ์ ์๋ ์ฐ์ฐ ๊ธฐํธ
์ฐ์ฐ ์์ ์ต์ ํ
- ์๋ถํฐ ์ฒ๋ฆฌ
- ์์ ๋ฐ๊ฟ์ ์ฒ๋ฆฌ → ์๊ฐ ์ ์ฝ ๊ฐ๋ฅOR ์๊ฐ ๋ณต์ก๋ : Posting list size์ ํฉ
- Doc Freq๊ฐ ์์ ๊ฒ๋ถํฐ ์ฒ๋ฆฌํจ.
- Posting list size == Doc Freq
- ์ฐ์ฐ ์ ์๊ฐ ๋ณต์ก๋๋ฅผ ์ต๋๋ก ๊ณ์ฐํด์ ์๊ฐ ๋ณต์ก๋๊ฐ ์์ ์์๋๋ก ์ฒ๋ฆฌํจ.
- AND ์๊ฐ ๋ณต์ก๋ : Posting list size์ ํฉ
์ธ์ ์กฐ๊ฑด
์ง์์ด์ ๋จ์ด๊ฐ ๋์ด์ฐ๊ธฐ ๋จ์๋ก ๋์ด์ง๋ฉด ์ ๋๊ณ ๋ถ์ด์์ด์ผ ํ ๋
Proximity ์ธ์ ์กฐ๊ฑด ๋ช ๋ น์ด : NEAR
๊ตฌ์กฐํ๋ TEXT๊น์ง ์๊ฐํด์ ๊ฒ์ํด๋ณด๋ ๋ฐฉ๋ฒ๋ ์๊ฐํด๋ณด๊ธฐ(์ ์์ ๋ด์ฉ ๊ตฌ์กฐ๊ฐ ๋ง๋ ๊ฒ์)
Inverted Index + Position Information
Position Information : Posting์ด ํด๋น ๋ฌธ์๊ฐ ๊ทธ ๋ฌธ์ ๋ด์์ ์ด๋์ ๋์๋์ง ์์น ์ ๋ณด๊ฐ ๋ด๊ธด list๋ฅผ ๊ฐ๋ฆฌํด
Position Information Size = Term Frequency
๋ ๋จ์ด๊ฐ ์ธ์ ํด ์๋์ง ์ฐพ๋ ๋ฒ : AND ์ฐ์ฐ์ผ๋ก ๊ฐ ๋ฌธ์์ ํด๋น Term ๋์๋์ง ๊ฒ์ฌ → ๋ ์์น ์ ๋ณด๋ฅผ ๋น๊ตํจ → ์ธ์ ์กฐ๊ฑด์ ๋ง์ ๊ฒฝ์ฐ ๊ฒฐ๊ณผ์ ํฌํจ
์ธ์ ์ฐจ์ด : 1์ด๋ฉด ๋ ๋จ์ด๊ฐ ๋ถ์ด์์์ ์๋ฏธํ๊ณ , 2๋ฉด ๋ ๋จ์ด ์ฌ์ด์ ํ ๋จ์ด๊ฐ ํฌํจ๋์ด ์์์ ์๋ฏธํจ.
Term Freq ํ์ฉ
Term Freq๊ฐ ํฐ ์์ผ๋ก ๊ฒฐ๊ณผ ์ ๊ณตํ๊ธฐ
์ด๋ค Term์ด ํ๋์ ๋ฌธ์์์ Document์์ ๋ช ๋ฒ ๋์๋์ง ๊ณ ๋ ค
์ด๋ค Posting์ Term Freq == ๊ทธ Posting์ Positional Information ๋ฆฌ์คํธ์ ๊ธธ์ด
๊ฒ์ ๊ฒฐ๊ณผ๋ก, ๊ฐ ๋ฌธ์์ Term Freq์ ํฉ์ด ํฐ ๋ฌธ์๋ถํฐ ์ ๊ณตํจ.
Ranking Search
Boolean ๋ชจ๋ธ์ ํด๋น ์ง์์ด๊ฐ ๋ฌธ์์ ํฌํจ ๋๋์ง ์ ๋๋์ง๋ง ํ๋จํ๊ธฐ ๋๋ฌธ์ Ranking์ ๋งค๊ธฐ๋ ๊ฑด ์์น์ ์ผ๋ก๋ ๋ถ๊ฐ๋ฅํ๋ค.
ํ์ง๋ง, ๊ธฐ์ค์ ์ ์ฉํด์ ์กฐ๊ธ ๋ ์ ์ฉํ ๋งํ ๊ฒ์ ๊ฒฐ๊ณผ๋ฅผ ์ ๊ณตํ ์๋ ์๋ค. Proximity ์ธ์ ์ฑ์ ์ด์ฉํด์ ์ธ์ ํ ์๋ก ์ฌ์ฉ์๊ฐ ๋ ์ํ๋ ์ ๋ณด์ ๋ ๊ฐ๊น์ธ ์ ์์ผ๋ฏ๋ก ๊ฐ๊น์ด ์์ผ๋ก ์ ๊ณตํ๊ฑฐ๋, ๋ฌธ์์ Term Freq๋ฅผ ์ด์ฉํด์ ํฐ ์์ผ๋ก ์ ๊ณตํ๊ฑฐ๋, ๋ฌธ์๊ฐ ๋ง๋ค์ด์ง ์๊ฐ์ ์ธ๋ฑ์ค์ ๋ถ์ฌํด์ ์ต๊ทผ ๋ฌธ์๋ถํฐ ์ ๊ณตํ ์ ์๊ธด ํ๋ค.
์ ๋ณด ๊ฒ์ VS DB ๊ฒ์
์ ๋ณด ๊ฒ์
๋น๊ตฌ์กฐํ ๋จ
๋ฒ์ ๊ฒ์ ๋ถ๊ฐ๋ฅ
๋จ, TEXT์ด๋๋ผ๊ณ ์ฝ๊ฐ์ ๊ตฌ์กฐ๊ฐ ์์ ์ ์์. Semi-Structured Data ์) PPT, XML
๊ธ์์ ํฌ๊ธฐ, ๊ธ์์ ๊ตต๊ธฐ์ ๊ฐ์ ์ ๋ณด๋ฅผ ์ด์ฉํด ์ฝ๊ฐ์ ๊ตฌ์กฐ๋ฅผ ์ถ๊ฐํ ์ ์์.
DB ๊ฒ์
๊ตฌ์กฐํ๋จ.
๋ฒ์ ๊ฒ์ ๊ฐ๋ฅ
๊ด๋ จ ์๋ Concept ๊ฒ์ : ์์ง ๋ถ๊ฐ๋ฅ
์ฉ์ด
Clustering : ๊ตฐ์ง(๋ชจ์ผ๊ธฐ)
Classfication : ๋ถ๋ฅ
์น ๊ฒ์
๋ค์ํ ๋ฌธ์, ๋ค์ํ ์ฌ๋, ์ง์์ด, ์ ๋ณด ์กด์ฌํจ.
๋งํฌ๋ ์ ๋ณด ํ์ฉํ๊ฑฐ๋ ํด๋ฆญํ ์ ๋ณด ํ์ฉ ๊ฐ๋ฅํจ.
Cross-language information retrieval : ๊ต์ฐจ ์ธ์ด, ๋ฒ์ญํด์ ๊ฒ์ ๊ฒฐ๊ณผ ์ ๊ณต
Question answering : ์ง์ ์๋ต ์์คํ ์ง๋ฌธ&๋ต๋ณ
Summarization : ๊ฒ์๊ฒฐ๊ณผ ์์ฝํด์ ์ ๊ณต
TEXT mining : TEXT์์ ํ์ํ ์ ๋ณด ๋ฝ์์ ์๋ ค์ค
1996๋ ) TEXT์ ๊ฐ์ด ๋น๊ตฌ์กฐํ๋ ๋ฌธ์์ ๊ท๋ชจ๊ฐ ๊ตฌ์กฐํ๋ ๋ฌธ์๋ณด๋ค ์ปธ์. ๊ทผ๋ฐ ์์ฅ์์๋ ๋น๊ตฌ์กฐํ๋ ๋ฌธ์๋ฅผ ๋ค๋ฃจ๋ ๊ฑด ๋์ด ๋์ง ์์์
2006๋ ) ์ฌ์ ํ ๋น๊ตฌ์กฐํ๋ ๋ฌธ์์ ๊ท๋ชจ๊ฐ ํฌ์ง๋ง TEXT ๊ฒ์ ์๋น์ค ์์ฅ์ด ์ปค์ง๋ฉด์ ๋น๊ตฌ์กฐํ ๋ฌธ์๋ฅผ ๋ค๋ฃจ๋ ์์ฅ์ด ์ฑ์ฅํจ
์ ๋ณด๊ฒ์์์คํ ์ด ์๋ค๋ฉด, ์ ๋์ค์ grep๋ช ๋ น์ด, | ๋ก ์ฐพ์ ์ ์์. ํ์ง๋ง, ๋ฌธ์์ ์์ด ํฌ๋ค๋ฉด ์๋๊ฐ ๋๋ฆฌ๊ธฐ ๋๋ฌธ์ ์ ๋ณด ๊ฒ์ ๋ชฉ์ ์ผ๋ก๋ ์ ์ ํ์ง ์๋ค. ํน์ ๋ด์ฉ์ด ๋ค์ด๊ฐ ์๋ ๊ฑด ๋ค์ด๊ฐ ์์ผ๋ฉด ๋ ํ์ํ ํ์๊ฐ ์์ผ๋ ์ฌ์ด ํธ์ด์ง๋ง, ํน์ ๋ด์ฉ์ด ๋ค์ด๊ฐ ์์ง ์์ ๊ฑด ํ์ผ์ ๋๊น์ง ๋ค ํ์ํด ๋ด์ผ ํ๊ธฐ ๋๋ฌธ์ ์ด๋ ต๋ค. ๋จ์ด๊ฐ ์ธ์ ํด ์๋์ง ์ฌ๋ถ๋ grep ๋ช ๋ น์ผ๋ก ์ฐพ์ ์ ์๋ค.
Boolean ๋ชจ๋ธ์ ๋จ์ด ํฌํจ ์ฌ๋ถ๋ง ์ ์ ์๊ธฐ ๋๋ฌธ์ ๊ฒ์ ๊ฒฐ๊ณผ๋ก ์ถ์ถ๋ ๋ฌธ์๋ค์ ์์๋ฅผ ๋งค๊ธฐ๊ธด ํ๋ค๋ค. grep ๋ํ, Boolean ๋ชจ๋ธ์ ๋ฐ๋ฅด๊ธฐ ๋๋ฌธ์ ์์๋ฅผ ๋งค๊ธฐ๊ธด ํ๋ค๋ค.
Boolean ๋ชจ๋ธ๋ ์ ์๋ฅผ ๋งค๊ฒจ์ Sortํ ์ ์๊ธด ํ์ง๋ง, ๊ธฐ๋ณธ์ ์ผ๋ก ์์ ๋งค๊ธธ ์ ์๋ค.
$ grep -v <์ง์์ด> * : ๋ชจ๋ ๋ฌธ์ ํ์ผ(*)์์ ์ง์์ด๊ฐ ํฌํจ๋์ง ์์(-v) ๋ฌธ์๋ฅผ ํ์ํ๋ค.
Term-document (incidence) matrix Term๊ณผ Document์ ๊ด๊ณ๋ฅผ ๋ํ๋ด๋ ํ๋ ฌ
๊ฒ์ ๋์์ด ๋๋ ๋ชจ๋ ๋ฌธ์์ ๋ํด, Term์ด Document์ ๋์ค๋ฉด 1, ๋์ค์ง ์์ผ๋ฉด 0
์ง์์ด์ ์ผ์นํ๋ Term์ ํ๋ค์ ์ฐพ์์ ์ฃผ์ด์ง ์ง์์ด์ ๋ฐ๋ผ ํ๋ผ๋ฆฌ AND, OR, NOT ์ฐ์ฐ ์ํ
์ด๋, NOT์ 1๊ณผ 0์ ๋ง๋ฐ๊ฟ.
bitwise : ๊ฐ์ ์์น์ bit๋ผ๋ฆฌ ์ฐ์ฐ
์) ์ง์์ด : Brutus AND Caesar but NOT Calpurnia
Brutus = 110100, Caesar = 110111, Calpurnia = 010000
์ฐ์ฐ : 110100 AND 110111 AND 101111 = 100100
→ 1, 4๋ฒ์งธ ๋ฌธ์๊ฐ ๊ฒ์ ๊ฒฐ๊ณผ์ ํฌํจ๋๊ณ ๋๋จธ์ง๋ ํฌํจ๋์ง ์์.
Term-document (incidence) matrix๊ฐ ์ฃผ์ด์ ธ ์๋ค๋ฉด, ์ง์์ด ํค์๋์ ํด๋นํ๋ Term์ ํ์ ์ฐพ์์ ์ฐ์ฐ์ ํตํด ๊ฒ์ ๊ฒฐ๊ณผ๋ฅผ ๋์ถํด๋ผ ์ ์์. (Boolean ๊ฒ์ฌ ๊ธฐ๋ณธ ๋ฐฉ๋ฒ๋ก )
Boolean Model ๊ธฐ๋ณธ ๊ฐ์ : ๋ฌธ์์ ์งํฉ์ ๊ณ ์ ๋์ด ์์.
๋ง๋ญ์น : Corpus, ๋ฌธ์์ ์งํฉ
Refine : ์ฌ๋์ด๋ ๊ฒ์ ์์คํ ์ด ์ง์์ด๋ฅผ ๋ ์ ๊ตํ๊ฒ ์์ ํด์ ์ฌ๊ฒ์์ ํ๋ ํ์
๊ฒ์๋ ์์คํ ํ๊ฐ ๊ธฐ์ค
Precision ์ ๋ฐ๋ : ๊ฒฐ๊ณผ๊ฐ ์ง์์ด์ ์ผ๋ง๋ ๋ถํฉํ๋์ง
๋ชจ๋ธ์ด True๋ผ๊ณ ๋ถ๋ฅํ ๊ฒ ์ค์์ ์ค์ True์ธ ๊ฒ์ ๋น์จ(=์ ๋ต๋ฅ )
์ค์ ๋ก ์ฌ์ฉ์๊ฐ ์ฐพ๊ณ ์ ํ๋ ๋ด์ฉ์ด ๋ด๊ธด ๋ฌธ์ / ๋ชจ๋ธ ๊ฒ์ ๊ฒฐ๊ณผ
์ ๋ต / ๋ด๊ฐ
Recall ์ฌํ์จ : ์ง์์ด์ ๋ถํฉํ๋ ๋ฌธ์๋ฅผ ์ผ๋ง๋ ์ฐพ์๋ด๋์ง
์ค์ True์ธ ๊ฒ ์ค์์ ๋ชจ๋ธ์ด True๋ผ๊ณ ์์ธกํ ๊ฒ์ ๋น์จ(=์ ๊ณต๋ฅ )
์ ๋ต / ์ค์
์ ํ๋(Accuracy)๋ ์ ๋ณด ๊ฒ์ ํ๊ฐ์ ์ฐ์ด์ง ์์
์ ๋ฐ๋๊ฐ ๋์ผ๋ฉด ์ฌํ์จ์ด ๋ฎ๊ณ , ์ ๋ฐ๋๊ฐ ๋ฎ์ผ๋ฉด ์ฌํ์จ์ด ๋์.
์ ๋ฐ๋๊ฐ 100์ธ ๊ฒฝ์ฐ : ์ฐพ๊ณ ์ ํ๋ ๋ด์ฉ์ด ๋ด๊ธด ๋ฌธ์ 100๊ฐ์์ 1๊ฐ ์ฐพ์. → ์ฌํ์จ์ 0.01
์ฌํ์จ์ด 100์ธ ๊ฒฝ์ฐ : ์ฐพ์ ๋ฌธ์ 100๊ฐ ์ค ์ฐพ๊ณ ์ ํ๋ ๋ด์ฉ์ด ๋ด๊ธด ๋ชจ๋ ๋ฌธ์๊ฐ 1๊ฐ์ → ์ ๋ฐ๋๋ 0.01
**F-measure : ์ ๋ฐ๋์ ์ฌํ์จ์ ๊ฐ์ค์น๋ฅผ ์ฃผ๊ณ ๊ตฌํ ํ๊ท **
→ ํํ ์ํ(๊ฐ์ค์น)๋ฅผ 0.5๋ก ์ฃผ์ด ์๋์ ๊ฐ์ด ๋ง๋ฆ
F-measure๋ก ๊ฒ์ ์์คํ ์ฑ๋ฅ ํ๊ฐ์ ์ฌ์ฉํจ.
์์)
Q1. ๊ฒ์ ๋์ ๋ฌธ์ 100๋ง ๊ฐ, ๊ฐ ๋ฌธ์๋ ํ๊ท ์ ์ผ๋ก 1000๊ฐ์ ๋จ์ด๊ฐ ์์. ํ ๋จ์ด๋ ํ๊ท ์ ์ผ๋ก ๋์ด์ฐ๊ธฐ, ๋ถํธ ํฌํจ 6bytes(6๊ธ์). ๋ฌธ์ ์ ์ฒด ํฌ๊ธฐ๋?
A1. ๋ฌธ์ ์ ์ฒด ํฌ๊ธฐ = 100๋ง * (1000 * 6bytes) = 6,000,000,000 = 60์ตbytes = 6GB
Q2. 10์ต(100๋ง * 1000 = 1,000,000,000)๊ฐ ์ ๋จ์ด ์ค, 500,000๊ฐ์ ๋ค๋ฅธ ๋จ์ด๊ฐ ์๋ค. Term-Document Matrix์ ํฌ๊ธฐ๋?
A2.
Term ๊ฐ์ = 50๋ง
Document ๊ฐ์ = 100๋ง
Term-Document Matrix ํฌ๊ธฐ = 50๋ง * 100๋ง = 5์ฒ ์ต
→ Boolean ๊ฒ์์ ์ํด Term-Document Matrix๋ฅผ ๋ฏธ๋ฆฌ ๋ง๋ค์ด์ผ ํ๋๋ฐ, ํฌ๊ธฐ๊ฐ ๋๋ฌด ํผ.
5์ฒ ์ต๊ฐ์ 0๊ณผ 1์ค 0์ ๋น์ค์ด ๋ณดํต 99.8%๋ฅผ ์ฐจ์งํ์ฌ 1์ 0.2%๋ฅผ ์ฐจ์งํ์ฌ 1000๊ฐ๋ก ๋ง์ง ์์.
๋ฐ๋ผ์, 1์ธ ๊ฒ๋ง ๋ฐ๋ก ํ์ํ๋๋ก ํจ. ⇒ Inverted Index (Inverted file)
0์ด ์ฐจ์งํ๋ ๋น์จ
term(ํ) = 50๋ง๊ฐ, document(์ด) = 100๋ง๊ฐ
ํ๋์ ๋ฌธ์์ term ์ ๋ณด = ํ ์ด(50๋ง๊ฐ์ term), ํ๋์ ๋ฌธ์๋ 1000๊ฐ์ ๋จ์ด๋ก ๊ตฌ์ฑ๋จ ⇒ ํ๋์ ๋ฌธ์์ term ์ค ํ๊ท ์ ์ผ๋ก 1000๊ฐ์ ๋จ์ด๋ง ๋์ค๋ฏ๋ก 50๋ง ๊ฐ์ ํ ์ด์์ 1์ ํ๊ท ์ ์ผ๋ก 1000๊ฐ์. 49๋ง9์ฒ๊ฐ๋ 0์. ⇒ 50๋ง ๊ฐ์์ 1000๊ฐ๊ฐ 1์ด์์ผ๋ 100๋ง๊ฐ์์๋ 2000๊ฐ๊ฐ 1์. ⇒ 2์ฒ/100๋ง = 0.002. 0.2%๊ฐ 1์ด๊ณ , 99.8%๊ฐ 0์.
Inverted index (inverted file)
Term-Document Matrix์ ๊ณต๊ฐ ์์ ๋ฌธ์ ํด๊ฒฐ์ ์ํด 1์ธ ๋ฌธ์๋ง ๋ชฉ๋กํํจ.
๊ฒ์ ๋์(๋ฌธ์, ์น, PC๊ฒฝ๋ก)์ ๋ฐ๋ผ ๊ฒ์ ๊ฒฐ๊ณผ๊ฐ ๋ค๋ฅด๊ธฐ ๋๋ฌธ์ Posting list์๋ ๋ ผ๋ฆฌ์ ์ผ๋ก ๋ฌธ์์ ๋ฒํธ ์๋ณ์๋ฅผ ๋ถ์ฌํจ.
Posting : ๋ฌธ์ ๋ฒํธ ์๋ณ์ ํ๋ํ๋
Posting list : Posting์ด ๋์ด๋ ํ๋์ ๋ฐฐ์ด(๋ฆฌ์คํธ)
Posting lists : Posting list์ ์งํฉ
์ง์์ด๋ฅผ ์ฐพ์ ๋ ๋ ๋นจ๋ฆฌ ์ฐพ์ ์ ์๋๋ก ๋ฌธ์๋ฅผ ์ ๋ ฌํด์ผ ํ๊ธฐ ๋๋ฌธ์, Posting list๋ ๋ฐฐ์ด๋ณด๋ค ์ฐ๊ฒฐ ๋ฆฌ์คํธ๋ฅผ ์ ํธํ๋ค. ํ์ง๋ง ํฌ์ธํฐ ๊ณต๊ฐ์ ๋ ์ฐจ์งํ๋ค.
Dictionary == Vocabulary (Term์ ์งํฉ)
Inverted Index ๋ง๋๋ ๊ณผ์
[๋จ๊ณ]
- Tokenization (ํ ํฐํ)→ ๋ง์ฝ, ๋ฌธ์๊ฐ TXT๊ฐ ์๋ ์๋ํ๊ธ, html์ด๋ผ๋ฉด? → ๊ฒฝ์ฐ์ ๋ฐ๋ผ ํ ํฐํ ์ด๋ ค์ธ ์ ์์.1-2. Linguistic Modules๋ฅผ ํตํด ์ธ์ด์ ๋ฐ๋ผ ์ฒ๋ฆฌํจ. (์์ด : ๋ชจ๋ ์๋ฌธ์๋ก, ์ํ์ผ๋ก ๋ง๋ฆ)์ด๋ ํ ํฐ์ด ์ด๋ ๋ฌธ์์์ ๋์๋์ง Postings list(ํด๋น ํ ํฐ์ ๋ฌธ์ ์์น๋ฅผ ๋ํ๋) ๊ตฌ์ถ1-3-1. (Term, DocID) ์์ผ๋ก ๋ง๋ฆ.1-3-3. ํ์ ์, TF ์ ๋ณด ์ถ๊ฐTerm Frequency(TF) : ํ ๋ฌธ์๋ฅผ ๊ธฐ์ค์ผ๋ก Term์ด ๋์จ ๊ฐ์ ์ถ๊ฐ
DF๋ก ํฉ์ณ์ง ์ค๋ณต Term์ ๊ฐ๊ฐ ์ฐ๊ฒฐ ๋ฆฌ์คํธ ์์ผ๋ก ์์ ์ (DocID, TF)๋ฅผ ๊ฐ๋ฆฌํดDocument Frequency(DF) : Term์ด ๋์จ ๋ฌธ์์ ๊ฐ์ ์ถ๊ฐ ์ด๋ Term Frequency๋ผ๋ฆฌ ํฉ์ ๊ตฌํจ.
- → ๋์ค์ ์ฐ๊ฒฐ ๋ฆฌ์คํธ ํ์์ Inverted Index์ ๊ธฐํ์ด ๋จ.
- 1-3-5. ํ์ ์, DF ์ ๋ณด ์ถ๊ฐ
- ํ ๋ฌธ์์ ์ค๋ณต Term์ ํ๋๋ก ํต์ผ.
- 1-3-2. Term์ ๊ธฐ์ค์ผ๋ก ์ ๋ ฌํจ.
- Inverted Index๋ฅผ ๋ง๋ฆ.
- 1-3. Indexer : ํ ํฐ์ ์ธ๋ฑ์ค๋ก ๋ง๋ฆ.
- Tokenizer ๋ชจ๋์ ํตํด ํ ํฐํ ํจ.
- 1-1. ํ ํฐํ : ๋ฌธ์๋ค์ ๋ฌธ์ฅ์ ๊ณต๋ฐฑ์ ๊ธฐ์ค์ผ๋ก ์๋ฆ
์ฌ๋์ด ์ฐ๋ ๋จ์ด๋ ํ๊ณ๊ฐ ์์ผ๋ฏ๋ก Dictionary size๋ Postings list์ ๋นํด ๋ณํ๊ฐ ์ ์.
๋ฐ๋ผ์, Dictionary๋ ๊ฒ์ ์๋น์ค๋ฅผ ์ํด Main Memory๋ก load ๋จ.
Postings๋ ํฌ๊ธฐ๊ฐ ์ ์ ์ปค์ง๊ณ ๋ณํ๋ ์ฆ์ Disk์ ์ ์ฅ๋จ.
Postings list ์ ์ฅ ๋ฐฉ๋ฒ
- ์ฐ๊ฒฐ ๋ฆฌ์คํธ
- ๊ฐ๋ณ ๋ฐฐ์ด
- hybrid scheme : ์ฐ๊ฒฐ๋ฆฌ์คํธ + ๊ฐ๋ณ ๋ฐฐ์ด (๋ฐฐ์ด์ ์ฐ๊ฒฐ๋ฆฌ์คํธ๋ก ์ฐ๊ฒฐํจ.)
์ง์์ด
- Conjunctive : AND์๊ฐ๋ณต์ก๋ : ๋น๊ตํ๋ Posting List ๊ธธ์ด์ ํฉif not sorting ์๊ฐ๋ณต์ก๋ : ๋น๊ตํ๋ Posting List ๊ธธ์ด์ ๊ณฑ
- ์กฐ๊ฑด : Posting list๊ฐ ์ ๋ ฌ๋์ด ์์ด์ผ ํจ.
- Posting list๋ผ๋ฆฌ ์ฒซ ๋ฒ์งธ ์ธ๋ฑ์ค๋ถํฐ ๋น๊ตํด์ ๋ฌธ์ ๋ฒํธ๊ฐ ๊ฐ์ผ๋ฉด ๊ฒ์ ๊ฒฐ๊ณผ์ ํฌํจํ๊ณ , ๋ค๋ฅด๋ฉด ์์ ์ชฝ์ Posting์ด ์ค๋ฅธ์ชฝ์ผ๋ก ์ด๋ํ๊ณ ๋ค์ ๋น๊ต
- Disjunctive : OR์๊ฐ๋ณต์ก๋ : ๋น๊ตํ๋ Posting List ๊ธธ์ด์ ํฉ
- Posting list๋ผ๋ฆฌ ์ฒซ ๋ฒ์งธ ์ธ๋ฑ์ค๋ถํฐ ๋น๊ตํด์ ๋ฌธ์ ๋ฒํธ๊ฐ ๊ฐ์ผ๋ฉด ๊ฒ์ ๊ฒฐ๊ณผ์ ํฌํจํ๊ณ , ๋ฌ๋ผ๋ ๋ฌธ์ ๋ฒํธ๊ฐ ๋ ์์ ์ชฝ์ ๋จผ์ ๊ฒ์ ๊ฒฐ๊ณผ์ ํฌํจํ๊ณ ์์ ์ชฝ์ด ์ค๋ฅธ์ชฝ์ผ๋ก ์ด๋ํ๋ค.
- NOT → ์๊ฐ ์ค๋ ๊ฑธ๋ฆผNOT์ด ๋ถ์ Posting list๋ ์ค๋ฅธ์ชฝ์ผ๋ก ๋์ด๊ฐ๊ธฐ ์ ์, ์์ ์๊ฒ ์๋ Posting์ ๋ฌธ์ ๋ฒํธ์ ๋ค๋ฅธ Posting list์ ์ฐ์ฐํจ.NOT์ด ๋ถ์ Posting์ ๋ฌธ์ ๋ฒํธ๊ฐ NOT์ด ๋ถ์ง ์์ Posting์ ๋ฌธ์ ๋ฒํธ์ ๋ค๋ฅด๋ฉด, ์ถ๊ฐํ์ง ์๊ณ ์์ ์ชฝ์ด ์ค๋ฅธ์ชฝ์ผ๋ก ์ด๋ํ๋ค. ๊ฐ์ผ๋ฉด ์ถ๊ฐํ์ง ์๊ณ ๋ Posting ๋ชจ๋ ์ค๋ฅธ์ชฝ์ผ๋ก ์ด๋ํ๋ค.
- <AND>
- NOT์ด ๋ถ์ ๋จ์ด๊ฐ ๊ฒ์ ๊ฒฐ๊ณผ์ ํฌํจ๋๋ฉด ์ ๋จ.
WestLaw ์์คํ
์ง์์ด๋ฅผ ๋ง๋ค ๋, AND, OR, NOT + /์ซ์, ! ๊ฐ๋ฅํจ.
๋์ด์ฐ๊ธฐ : OR
/<์ซ์> : <์ซ์> ๋จ์ด ์ด๋ด์ ๋ ๋จ์ด๊ฐ ๋์ฌ ๋, AND
! : Wild-card ๋ฌธ์ *
/s : ํ ๋ฌธ์ฅ ์์ ๋ ๋จ์ด๊ฐ ๋ ๋ค ๋์์ผ ํจ. AND
/p : ํ ๋ฌธ๋จ ์์ ๋ ๋จ์ด๊ฐ ๋ ๋ค ๋์์ผ ํจ. AND
Proximity operators : ์ธ์ ์ฑ์ ํ์ํ ์ ์๋ ์ฐ์ฐ ๊ธฐํธ
์ฐ์ฐ ์์ ์ต์ ํ
- ์๋ถํฐ ์ฒ๋ฆฌ
- ์์ ๋ฐ๊ฟ์ ์ฒ๋ฆฌ → ์๊ฐ ์ ์ฝ ๊ฐ๋ฅOR ์๊ฐ ๋ณต์ก๋ : Posting list size์ ํฉ
- Doc Freq๊ฐ ์์ ๊ฒ๋ถํฐ ์ฒ๋ฆฌํจ.
- Posting list size == Doc Freq
- ์ฐ์ฐ ์ ์๊ฐ ๋ณต์ก๋๋ฅผ ์ต๋๋ก ๊ณ์ฐํด์ ์๊ฐ ๋ณต์ก๋๊ฐ ์์ ์์๋๋ก ์ฒ๋ฆฌํจ.
- AND ์๊ฐ ๋ณต์ก๋ : Posting list size์ ํฉ
์ธ์ ์กฐ๊ฑด
์ง์์ด์ ๋จ์ด๊ฐ ๋์ด์ฐ๊ธฐ ๋จ์๋ก ๋์ด์ง๋ฉด ์ ๋๊ณ ๋ถ์ด์์ด์ผ ํ ๋
Proximity ์ธ์ ์กฐ๊ฑด ๋ช ๋ น์ด : NEAR
๊ตฌ์กฐํ๋ TEXT๊น์ง ์๊ฐํด์ ๊ฒ์ํด๋ณด๋ ๋ฐฉ๋ฒ๋ ์๊ฐํด๋ณด๊ธฐ(์ ์์ ๋ด์ฉ ๊ตฌ์กฐ๊ฐ ๋ง๋ ๊ฒ์)
Inverted Index + Position Information
Position Information : Posting์ด ํด๋น ๋ฌธ์๊ฐ ๊ทธ ๋ฌธ์ ๋ด์์ ์ด๋์ ๋์๋์ง ์์น ์ ๋ณด๊ฐ ๋ด๊ธด list๋ฅผ ๊ฐ๋ฆฌํด
Position Information Size = Term Frequency
๋ ๋จ์ด๊ฐ ์ธ์ ํด ์๋์ง ์ฐพ๋ ๋ฒ : AND ์ฐ์ฐ์ผ๋ก ๊ฐ ๋ฌธ์์ ํด๋น Term ๋์๋์ง ๊ฒ์ฌ → ๋ ์์น ์ ๋ณด๋ฅผ ๋น๊ตํจ → ์ธ์ ์กฐ๊ฑด์ ๋ง์ ๊ฒฝ์ฐ ๊ฒฐ๊ณผ์ ํฌํจ
์ธ์ ์ฐจ์ด : 1์ด๋ฉด ๋ ๋จ์ด๊ฐ ๋ถ์ด์์์ ์๋ฏธํ๊ณ , 2๋ฉด ๋ ๋จ์ด ์ฌ์ด์ ํ ๋จ์ด๊ฐ ํฌํจ๋์ด ์์์ ์๋ฏธํจ.
Term Freq ํ์ฉ
Term Freq๊ฐ ํฐ ์์ผ๋ก ๊ฒฐ๊ณผ ์ ๊ณตํ๊ธฐ
์ด๋ค Term์ด ํ๋์ ๋ฌธ์์์ Document์์ ๋ช ๋ฒ ๋์๋์ง ๊ณ ๋ ค
์ด๋ค Posting์ Term Freq == ๊ทธ Posting์ Positional Information ๋ฆฌ์คํธ์ ๊ธธ์ด
๊ฒ์ ๊ฒฐ๊ณผ๋ก, ๊ฐ ๋ฌธ์์ Term Freq์ ํฉ์ด ํฐ ๋ฌธ์๋ถํฐ ์ ๊ณตํจ.
Ranking Search
Boolean ๋ชจ๋ธ์ ํด๋น ์ง์์ด๊ฐ ๋ฌธ์์ ํฌํจ ๋๋์ง ์ ๋๋์ง๋ง ํ๋จํ๊ธฐ ๋๋ฌธ์ Ranking์ ๋งค๊ธฐ๋ ๊ฑด ์์น์ ์ผ๋ก๋ ๋ถ๊ฐ๋ฅํ๋ค.
ํ์ง๋ง, ๊ธฐ์ค์ ์ ์ฉํด์ ์กฐ๊ธ ๋ ์ ์ฉํ ๋งํ ๊ฒ์ ๊ฒฐ๊ณผ๋ฅผ ์ ๊ณตํ ์๋ ์๋ค. Proximity ์ธ์ ์ฑ์ ์ด์ฉํด์ ์ธ์ ํ ์๋ก ์ฌ์ฉ์๊ฐ ๋ ์ํ๋ ์ ๋ณด์ ๋ ๊ฐ๊น์ธ ์ ์์ผ๋ฏ๋ก ๊ฐ๊น์ด ์์ผ๋ก ์ ๊ณตํ๊ฑฐ๋, ๋ฌธ์์ Term Freq๋ฅผ ์ด์ฉํด์ ํฐ ์์ผ๋ก ์ ๊ณตํ๊ฑฐ๋, ๋ฌธ์๊ฐ ๋ง๋ค์ด์ง ์๊ฐ์ ์ธ๋ฑ์ค์ ๋ถ์ฌํด์ ์ต๊ทผ ๋ฌธ์๋ถํฐ ์ ๊ณตํ ์ ์๊ธด ํ๋ค.
์ ๋ณด ๊ฒ์ VS DB ๊ฒ์
์ ๋ณด ๊ฒ์
๋น๊ตฌ์กฐํ ๋จ
๋ฒ์ ๊ฒ์ ๋ถ๊ฐ๋ฅ
๋จ, TEXT์ด๋๋ผ๊ณ ์ฝ๊ฐ์ ๊ตฌ์กฐ๊ฐ ์์ ์ ์์. Semi-Structured Data ์) PPT, XML
๊ธ์์ ํฌ๊ธฐ, ๊ธ์์ ๊ตต๊ธฐ์ ๊ฐ์ ์ ๋ณด๋ฅผ ์ด์ฉํด ์ฝ๊ฐ์ ๊ตฌ์กฐ๋ฅผ ์ถ๊ฐํ ์ ์์.
DB ๊ฒ์
๊ตฌ์กฐํ๋จ.
๋ฒ์ ๊ฒ์ ๊ฐ๋ฅ
๊ด๋ จ ์๋ Concept ๊ฒ์ : ์์ง ๋ถ๊ฐ๋ฅ
์ฉ์ด
Clustering : ๊ตฐ์ง(๋ชจ์ผ๊ธฐ)
Classfication : ๋ถ๋ฅ
์น ๊ฒ์
๋ค์ํ ๋ฌธ์, ๋ค์ํ ์ฌ๋, ์ง์์ด, ์ ๋ณด ์กด์ฌํจ.
๋งํฌ๋ ์ ๋ณด ํ์ฉํ๊ฑฐ๋ ํด๋ฆญํ ์ ๋ณด ํ์ฉ ๊ฐ๋ฅํจ.
Cross-language information retrieval : ๊ต์ฐจ ์ธ์ด, ๋ฒ์ญํด์ ๊ฒ์ ๊ฒฐ๊ณผ ์ ๊ณต
Question answering : ์ง์ ์๋ต ์์คํ ์ง๋ฌธ&๋ต๋ณ
Summarization : ๊ฒ์๊ฒฐ๊ณผ ์์ฝํด์ ์ ๊ณต
TEXT mining : TEXT์์ ํ์ํ ์ ๋ณด ๋ฝ์์ ์๋ ค์ค