JiwonDev

์ •๋ณด๊ฒ€์ƒ‰ #2 TF-IDF ์ž์„ธํžˆ ์•Œ์•„๋ณด๊ธฐ

by JiwonDev

์ˆ˜๋งŽ์€ ๋ฌธ์„œ์ค‘์— ์–ด๋–ค ๋ฌธ์„œ๊ฐ€ ๊ฐ€์žฅ ์ ํ•ฉํ•œ์ง€ ์—ฌ๋ถ€๋Š” ์œ ์‚ฌ๋„ ์ ์ˆ˜๋กœ ๊ฒฐ์ •ํ•œ๋‹ค.

๊ทธ ์ค‘ ๊ฐ€์žฅ ํ”ํ•˜๊ฒŒ ์“ฐ์ด๊ณ  ํšจ์œจ๋„ ๊ดœ์ฐฎ์€ TF * IDF / Length ์œ ์‚ฌ๋„ ์ ์ˆ˜๊ณต์‹์„ ์•Œ์•„๋ณด์ž.

Length(D), N

์งˆ์˜๋ฌธ, ๋ฌธ์„œ์˜ ๊ธธ์ด๋‚˜ ๋ฌธ์„œ์˜ ๊ฐฏ์ˆ˜๋ฅผ ๋‚˜ํƒ€๋‚ผ ๋•Œ ์‚ฌ์šฉ.

๋‹น์—ฐํ•œ๊ฑฐ๊ธด ํ•œ๋ฐ ๊ฐ€์ค‘์น˜๋ฅผ ๊ตฌํ• ๋•Œ ์‚ฌ์šฉํ•ฉ๋‹ˆ๋‹ค. ํ˜น์‹œ๋‚˜ ์–ธ๊ธ‰์•ˆํ–ˆ๋‹ค๊ณ  ๋ชจ๋ฅผ๊นŒ๋ด ์ ์–ด๋ดค์Šต๋‹ˆ๋‹ค.

 

Term, TF

=> ๋‹จ์–ด, ๊ตฌ, ํ’ˆ์‚ฌ, ์˜๋ฏธ.. ๋ฌธ์„œ์˜ ํŠน์ง•์„ ๋‚˜ํƒ€๋‚ผ ์ˆ˜ ์žˆ๋Š” ๋‹จ์œ„

Term frequency (TF), [ํŠน์ •ํ•œ ๋ฌธ์„œ] ๋‚ด์— ์ถœํ˜„ํ•œ Term์˜ ๊ฐœ์ˆ˜.

๋”๋ณด๊ธฐ

Doucment 99 = [๋ฏธ๊ตญ, ํ•œ๊ตญ, ์ค‘๊ตญ, ํ•œ๊ตญ, ๋ฏธ๊ตญ, ํ•œ๊ตญ]

TF ( D99, ํ•œ๊ตญ ) = 3

TF ( D99, ๋ฏธ๊ตญ ) = 2

TF  (D99, ์ค‘๊ตญ ) = 1


 

Document, DF

=> ๋ฌธ์„œ, ๋ฌธ์„œ์ง‘ํ•ฉ(collection)

Doucment Frequency (DF), [์ „์ฒด ๋ฌธ์„œ ์ง‘ํ•ฉ]์—์„œ Term์ด ์ถœํ˜„ํ•œ [๋ฌธ์„œ์˜ ์ˆ˜]

- ํ•œ ๋ฌธ์„œ ๋‚ด์— ์—ฌ๋Ÿฌ๋ฒˆ ๋“ฑ์žฅํ•œ ๊ฑด ์ƒ๊ด€์—†๋‹ค. ํ•˜๋‚˜๋ผ๋„ ์žˆ๋‚˜ ์—†๋‚˜์— ๋Œ€ํ•œ ์—ฌ๋ถ€๋งŒ ๋”ฐ์ง.

 

IDF (Inverse DF)

๊ฒ€์ƒ‰์–ด์— ๋‹จ์–ด์˜ ์ถœํ˜„ ๋นˆ๋„๊ฐ€ ๋งŽ์„ ์ˆ˜๋ก(TF) ์ ์ˆ˜๊ฐ€ ๋†’์•„์ ธ์•ผํ•˜๊ณ 
ํ”ํ•œ ๋‹จ์–ด๋ผ์„œ, ์ „์ฒด ๋ฌธ์„œ์— ์ž์ฃผ ์“ฐ์ด๋Š” ๋‹จ์–ด์ผ์ˆ˜๋ก(DF) ์œ ์‚ฌ๋„ ์ ์ˆ˜๊ฐ€ ๋‚ฎ์•„์ ธ์•ผ ํ•ฉ๋‹ˆ๋‹ค.

์ฆ‰ TF์—๋Š” ๋น„๋ก€ํ•˜๊ณ  DF๋Š” ๋ฐ˜๋น„๋ก€ ํ•ด์•ผ ํ•˜๊ธฐ ๋•Œ๋ฌธ์— DF์˜ ์—ญ์ˆ˜์ธ IDF์„ ์‚ฌ์šฉํ•ฉ๋‹ˆ๋‹ค.

๋ณดํ†ต log๋ฅผ ์”Œ์›Œ ์‚ฌ์šฉํ•ฉ๋‹ˆ๋‹ค.

IDF๊ฐ’์— ๋ฌธ์„œ์˜ ๊ฐฏ์ˆ˜(n)์„ ๊ณฑํ•œ ์ˆ˜์น˜๋ฅผ ์‚ฌ์šฉํ•˜๊ณ , ๋‹จ์ˆœ ์—ญ์ˆ˜๊ฐ€ ์•„๋‹ˆ๋ผ ๋ณดํ†ต Log(๋˜๋Š” ์ž์—ฐ๋กœ๊ทธ)๋ฅผ ๋งŽ์ด ์‚ฌ์šฉํ•ฉ๋‹ˆ๋‹ค.

๋ถ„๋ชจ๊ฐ€ 0์ด ๋˜๋ฉด ๊ฐ’์ด ๋ฌดํ•œ์ด ๋˜๊ธฐ ๋•Œ๋ฌธ์—  1 + df(t) ์œผ๋กœ ๋งŒ๋“ค์–ด ์ค๋‹ˆ๋‹ค. ์ฐธ๊ณ ๋กœ idf์˜ ๊ฒฐ๊ณผ๊ฐ’์ด 0~1 ์‚ฌ์ด๋ฉด, ๊ฐ€์ค‘์น˜๊ฐ€ ๊ณฑํ•ด์กŒ์„ ๋•Œ ์ˆซ์ž๊ฐ€ ์ž‘์•„์ง€๊ธฐ์— idf๊ฐ’์— 1์„ ๋”ํ•˜๊ธฐ๋„ ํ•ฉ๋‹ˆ๋‹ค.

๋ณดํ†ต 1+log( n / 1+df(t) ) ์œผ๋กœ ์‚ฌ์šฉํ•˜๊ณ  ์ž์—ฐ๋กœ๊ทธ(ln)๋ฅผ ์‚ฌ์šฉํ•ฉ๋‹ˆ๋‹ค.

 

* [๋”๋ณด๊ธฐ] ์™œ ๊ทธ๋ƒฅ ์—ญ์ˆ˜๊ฐ€ ์•„๋‹Œ log๋ฅผ ์”Œ์šฐ๋Š”๊ฑฐ์ฃ ?

๋”๋ณด๊ธฐ

๋กœ๊ทธ๋ฅผ ์‚ฌ์šฉํ•˜๋ฉด ๊ฐ€์ค‘์น˜๊ฐ€ ๋„ˆ๋ฌด ์ปค์ง€๋Š” ๊ฒƒ์„ ๋ฐฉ์ง€ํ•˜๊ณ , ๊ฐ ๋ฌธ์„œ ๋ณ„๋กœ ๊ณจ๊ณ ๋ฃจ ๋ถ€์—ฌํ•˜๋Š”๋ฐ ๋„์›€์ด ๋ฉ๋‹ˆ๋‹ค.

 

์˜ˆ๋ฅผ ๋“ค์–ด, ๊ธฐ๋ณธ์ ์ธ ๋‹จ์–ด๋“ค (a, the, ~์€, ~๊ฐ€)์€ ์ž์ฃผ ์“ฐ์ด์ง€ ์•Š๋Š” ๋‹จ์–ด์— ๋น„ํ•ด ์ตœ์†Œ ์ˆ˜์‹ญ, ์ˆ˜๋ฐฑ๋ฐฐ๋Š” ๋” ๋“ฑ์žฅํ•ฉ๋‹ˆ๋‹ค. TF-IDF ๊ณ„์‚ฐ์‹์€ ๋ชจ๋“  ๋ฌธ์„œ์—์„œ ์ž์ฃผ ๋“ฑ์žฅํ•˜๋Š” ๋‹จ์–ด์˜ ์ค‘์š”๋„๋ฅผ ๋‚ฎ๊ฒŒ ํŒ๋‹จํ•˜๊ฒŒ ๋˜๋Š”๋ฐ ๋‹จ์ˆœํ•œ ์—ญ์ˆ˜๋กœ ๊ณ„์‚ฐํ•ด๋ฒ„๋ฆฌ๋ฉด ์ด๋Ÿฐ ๋‹จ์–ด๋“ค ๋•Œ๋ฌธ์— ๋ณ„๋กœ ํฌ๊ท€ํ•˜์ง€๋„ ์•Š์€ ๋‹จ์–ด๋“ค์—๊ฒŒ ์ƒ๋Œ€์ ์œผ๋กœ ๋†’์€ ๊ฐ€์ค‘์น˜๊ฐ€ ๋ถ€์—ฌ๋˜๊ฒŒ ๋ฉ๋‹ˆ๋‹ค.

 

๋˜ํ•œ ๊ฐ€์ค‘์น˜์˜ ์ฆ๊ฐ€๋Ÿ‰์„ ์กฐ์ ˆํ•ด ์ง๊ด€์ ์œผ๋กœ ๋ฐ”๊ฟ”์ค๋‹ˆ๋‹ค.

์•„๋ž˜๋Š” ๋ฌธ์„œ๊ฐ€ 100๋งŒ๊ฐœ์ผ ๋•Œ ๋‹จ์ˆœ idf์™€ log(idf)์˜ ์ฐจ์ด์ž…๋‹ˆ๋‹ค.


* [๋”๋ณด๊ธฐ] CF(Collection Frequency) ๋Š” ๋ญ์—์š”?

๋”๋ณด๊ธฐ

DF์™€ ๋น„์Šทํ•˜๋‚˜, ๋ฌธ์„œ์˜ ๊ฐœ์ˆ˜, ๊ฒฝ๊ณ„๋ฅผ ๋”ฐ์ง€์ง€ ์•Š๊ณ  ํŠน์ • ์ง‘ํ•ฉ ์ „์ฒด๋ฅผ ํ•œ ๋ฌธ์„œ๋กœ ๋ณด๊ณ  Term์˜ ๊ฐœ์ˆ˜๋ฅผ ์…‰๋‹ˆ๋‹ค.

์–ธ์–ด ๊ธฐ๋ฐ˜ ๊ฒ€์ƒ‰๋ชจ๋ธ ๋“ฑ์—์„œ DF ๋Œ€์‹ ์— CF๋ฅผ ์‚ฌ์šฉ ํ•  ๋•Œ๊ฐ€ ์žˆ์Šต๋‹ˆ๋‹ค. ์ง€๊ธˆ์€ ๊ฐ„๋‹จํ•œ ๊ฐœ๋…๋งŒ ์•Œ๊ณ  ๋„˜์–ด๊ฐ‘์‹œ๋‹ค.


 

ํ€ด์ฆˆ

* ๋ฌธ์ œ์—์„œ๋Š” ๊ณ„์‚ฐ์˜ ํŽธ์˜์„ฑ์„ ์œ„ํ•ด idf(t)์— ๋กœ๊ทธ๋ฅผ ์”Œ์šฐ๊ฑฐ๋‚˜ 1์„ ๋”ํ•˜์ง€ ์•Š๊ณ  ์‚ฌ์šฉํ–ˆ์Šต๋‹ˆ๋‹ค.

1. ๋‹ค์Œ ์ „์ฒด๋ฌธ์„œ์ง‘ํ•ฉ {D1,D2,D3,D4}์— ๋Œ€ํ•ด ์•„๋ž˜ ๊ฐ’๋“ค์„ ์ฑ„์šฐ์‹œ์˜ค.
- ๋‹จ, ์šฉ์–ด t์˜ idf(t)๋Š” N์„ ์ „์ฒด๋ฌธ์„œ ์ง‘ํ•ฉํฌ๊ธฐ๋ผ๊ณ  ํ•  ๋•Œ idf(t)=N/df(t) ๋กœ ๊ณ„์‚ฐ

D1=[ํ•œ๊ตญ,ํ•œ๊ตญ,ํ•œ๊ตญ,๋ฏธ๊ตญ]  D2=[ํ•œ๊ตญ,๋ฏธ๊ตญ,๋ฏธ๊ตญ]  D3=[ํ•œ๊ตญ,์ค‘๊ตญ]  D4=[ํ•œ๊ตญ,์ผ๋ณธ]

tf(D1,ํ•œ๊ตญ)=    tf(D3,๋ฏธ๊ตญ)=    df(ํ•œ๊ตญ)=     df(๋ฏธ๊ตญ)=    cf(๋ฏธ๊ตญ)=     idf(๋ฏธ๊ตญ)=     idf(ํ•œ๊ตญ)=    

ํ’€์ด

๋”๋ณด๊ธฐ
tf(D1,ํ•œ๊ตญ)= 3  Document1์—๋Š” ํ•œ๊ตญ์ด๋ผ๋Š” Term์ด 3๊ฐœ๊ฐ€ ์žˆ๋‹ค.
tf(D3,๋ฏธ๊ตญ) = 0  Document3์—๋Š” ๋ฏธ๊ตญ์ด๋ผ๋Š” Term์ด 0๊ฐœ๊ฐ€ ์žˆ๋‹ค.
df(ํ•œ๊ตญ) = 4  ์ „์ฒด ๋ฌธ์„œ์ง‘ํ•ฉ(D1,2,3,4)์—์„œ ํ•œ๊ตญ์ด ๋‚˜์˜จ ๋ฌธ์„œ๋Š” ์ด 4๊ฐœ์ด๋‹ค
df(๋ฏธ๊ตญ) = 2  ์ „์ฒด ๋ฌธ์„œ์ง‘ํ•ฉ(D1,2,3,4)์—์„œ ๋ฏธ๊ตญ์ด ๋‚˜์˜จ ๋ฌธ์„œ๋Š” ์ด 2๊ฐœ์ด๋‹ค
cf(๋ฏธ๊ตญ) = 3  ์ „์ฒด ๋ฌธ์„œ์ง‘ํ•ฉ Collection์—์„œ '๋ฏธ๊ตญ'์ด ๋‚˜์˜จ ํšŸ์ˆ˜๋Š” 3๋ฒˆ์ด๋‹ค.
idf(๋ฏธ๊ตญ) = 4/2  ๋ฌธ์„œ์˜ ๊ฐฏ์ˆ˜(4) / df(๋ฏธ๊ตญ)
idf(ํ•œ๊ตญ) = 4/4  ๋ฌธ์„œ์˜ ๊ฐฏ์ˆ˜(4) / df(ํ•œ๊ตญ)

 


2. ๋‹ค์Œ์€ ์งˆ์˜ Q์™€ ์ „์ฒด๋ฌธ์„œ์ง‘ํ•ฉ {D1,D2}๋ฅผ ๋ณด์ธ ๊ฒƒ์ด๋‹ค.
- tf๋งŒ์„ ์‚ฌ์šฉํ•˜์—ฌ ์งˆ์˜์™€ ๊ฐ ๋ฌธ์„œ์˜ ์œ ์‚ฌ๋„๋ฅผ ์ ์œผ์‹œ์˜ค.

Q=[์‚ฌ๊ณผ] D1=[์ˆ˜๋ฐ•,์‚ฌ๊ณผ] D2=[์‚ฌ๊ณผ,์‚ฌ๊ณผ]

sim(Q,D1) =    sim(Q,D2) =

ํ’€์ด

๋”๋ณด๊ธฐ
sim(Q,D1) = 1  tf(Q, D1)์˜ ๊ฐ’์€ 1์ด๋‹ค. 
sim(Q,D2) = 2  tf(Q,D2)์˜ ๊ฐ’์€ 2์ด๋‹ค.

3. ๋‹ค์Œ์€ ์งˆ์˜ Q์™€ ์ „์ฒด๋ฌธ์„œ์ง‘ํ•ฉ {D1,D2}๋ฅผ ๋ณด์ธ ๊ฒƒ์ด๋‹ค.
๋ฌธ์„œ๊ธธ์ด๋งŒ์„ ์‚ฌ์šฉํ•˜์—ฌ ์งˆ์˜์™€ ๊ฐ ๋ฌธ์„œ์˜ ์œ ์‚ฌ๋„๋ฅผ ์ ์œผ์‹œ์˜ค.
- ๋ฌธ์„œ๊ธธ์ด๋Š” ๋ฌธ์„œ ๋‚ด ์ถœํ˜„ ์šฉ์–ด๋“ค์˜ ์ด ๊ฐœ์ˆ˜๋กœ ๊ณ„์‚ฐํ•˜์‹œ์˜ค.

Q=[์‚ฌ๊ณผ] D1=[์‚ฌ๊ณผ] D2=[์‚ฌ๊ณผ,์‚ฌ๊ณผ]

sim(Q,D1) =    sim(Q,D2) =    

ํ’€์ด

๋”๋ณด๊ธฐ
sim(Q,D1) = 1/1 ๊ธธ์ด๋งŒ ๋น„๊ตํ•จ. length(Q) / length(D1)
sim(Q,D2) = 1/2 ๊ธธ์ด๋งŒ ๋น„๊ตํ•จ. length(Q) / length(D1), ๊ธธ์ด๋งŒ ์‚ฌ์šฉํ•ด์„œ๋Š” ์ •ํ™•ํ•œ ์œ ์‚ฌ๋„๋ฅผ ๊ตฌํ•˜์ง€ ๋ชปํ•œ๋‹ค.

4. ๋‹ค์Œ์€ ์งˆ์˜ Q์™€ ์ „์ฒด๋ฌธ์„œ์ง‘ํ•ฉ {D1,D2}๋ฅผ ๋ณด์ธ ๊ฒƒ์ด๋‹ค.
idf๋งŒ์„ ์‚ฌ์šฉํ•˜์—ฌ ์งˆ์˜์™€ ๊ฐ ๋ฌธ์„œ์˜ ์œ ์‚ฌ๋„๋ฅผ ์ ์œผ์‹œ์˜ค.
- ์šฉ์–ด t์˜ idf(t)๋Š” N์„ ์ „์ฒด๋ฌธ์„œ ์ง‘ํ•ฉํฌ๊ธฐ๋ผ๊ณ  ํ•  ๋•Œ idf(t)=N/df(t)๋กœ ๊ณ„์‚ฐ

Q=[์‚ฌ๊ณผ] D1=[์ˆ˜๋ฐ•,์‚ฌ๊ณผ] D2=[์‚ฌ๊ณผ,์‚ฌ๊ณผ]

sim(Q,D1) =    sim(Q,D2) =    

ํ’€์ด

๋”๋ณด๊ธฐ
sim(Q,D1) = 2/2 ์ „์ฒด๋ฌธ์„œ๊ฐฏ์ˆ˜(2) / df(์‚ฌ๊ณผ), ํ—ท๊ฐˆ๋ฆฌ์ง€๋ง์ž df๋Š” ๋‹จ์–ด๊ฐ€ 1๊ฐœ์ด์ƒ ์‚ฌ์šฉ๋œ ๋ฌธ์„œ์˜ ์ˆ˜์ด๋‹ค.
sim(Q,D2) = 2/2 ์ „์ฒด๋ฌธ์„œ๊ฐฏ์ˆ˜(2) / df(์‚ฌ๊ณผ), ์ด ๋ฌธ์ œ์ฒ˜๋Ÿผ idf๋งŒ ์‚ฌ์šฉํ•ด์„œ๋Š” ์ •ํ™•ํ•œ ์œ ์‚ฌ๋„๋ฅผ ๊ตฌํ•˜์ง€ ๋ชปํ•œ๋‹ค.

5. ๋‹ค์Œ์€ ์งˆ์˜ Q์™€ ์ „์ฒด๋ฌธ์„œ์ง‘ํ•ฉ {D1,D2,D3}๋ฅผ ๋ณด์ธ ๊ฒƒ์ด๋‹ค. 
์•„๋ž˜ ์œ ์‚ฌ๋„ ์ˆ˜์‹ sim(Q,D)๋ฅผ ์‚ฌ์šฉํ•˜์—ฌ ์œ„ ์งˆ์˜ Q์™€ ๋ฌธ์„œ D1์˜ ์œ ์‚ฌ๋„ ์ˆ˜์‹์„ ์ ์œผ์‹œ์˜ค.

- ์•„๋ž˜ ์ˆ˜์‹์—์„œ qi๋Š” ์งˆ์˜ Q์˜ i๋ฒˆ์งธ ์ถœํ˜„ ์šฉ์–ด์ด๋‹ค.
- ๋ฌธ์„œ๊ธธ์ด Length(D)๋Š” ๋ฌธ์„œ ๋‚ด ์ถœํ˜„ ์šฉ์–ด๋“ค์˜ ์ด ๊ฐœ์ˆ˜๋กœ ๊ณ„์‚ฐ
- ์šฉ์–ด t์˜ idf(t)๋Š” N์„ ์ „์ฒด๋ฌธ์„œ ์ง‘ํ•ฉํฌ๊ธฐ๋ผ๊ณ  ํ•  ๋•Œ idf(t)=N/df(t)๋กœ ๊ณ„์‚ฐ

Q=[๋ถ€์‚ฐ ๊ด€๊ด‘] D1=[๋ถ€์‚ฐ ๋ถ€์‚ฐ ๊ด€๊ด‘] D2=[์„œ์šธ ๋ถ€์‚ฐ ๊ด€๊ด‘] D3=[ํ•ด์™ธ ๊ด€๊ด‘]

ํ’€์ด

๋”๋ณด๊ธฐ
๊ทธ๋ฆผ์„ค๋ช…

 

 

๋ธ”๋กœ๊ทธ์˜ ์ •๋ณด

JiwonDev

JiwonDev

ํ™œ๋™ํ•˜๊ธฐ