Nltk: ์ฐธ์กฐ ๊ตฌํ˜„์˜ ์ถœ๋ ฅ๊ณผ ์ผ์น˜ํ•˜์ง€ ์•Š๋Š” Porter ํ˜•ํƒœ์†Œ ๋ถ„์„๊ธฐ์˜ ์ถœ๋ ฅ

์— ๋งŒ๋“  2012๋…„ 01์›” 17์ผ  ยท  8์ฝ”๋ฉ˜ํŠธ  ยท  ์ถœ์ฒ˜: nltk/nltk

๋‚˜๋Š” ์ตœ๊ทผ์— NLTK์˜ Porter ํ˜•ํƒœ์†Œ ๋ถ„์„๊ธฐ๋ฅผ ์‚ฌ์šฉํ–ˆ๊ณ  ๊ทธ ์ถœ๋ ฅ๊ณผ ๋‚ด๊ฐ€ ์‚ฌ์šฉํ•œ ๋‹ค๋ฅธ ๋ฒ„์ „์˜ Porter ํ˜•ํƒœ์†Œ ๋ถ„์„๊ธฐ์˜ ์ถœ๋ ฅ ์‚ฌ์ด์— ์•ฝ๊ฐ„์˜ ๋ถˆ์ผ์น˜๋ฅผ ๋ฐœ๊ฒฌํ–ˆ์Šต๋‹ˆ๋‹ค. ์ด๋Ÿฌํ•œ ๋ถˆ์ผ์น˜์— ๋Œ€ํ•œ ํ›„์† ์กฐ์น˜๋กœ NLTK ๊ตฌํ˜„์— ๋ช‡ ๊ฐ€์ง€ ๋ฌธ์ œ๊ฐ€ ์žˆ์„ ์ˆ˜ ์žˆ์Œ์„ ๋ฐœ๊ฒฌํ–ˆ์Šต๋‹ˆ๋‹ค.

Martin Porter๊ฐ€ ์ง์ ‘ ์ˆ˜์ง‘ํ•œ Porter ํ˜•ํƒœ์†Œ ๋ถ„์„๊ธฐ์˜ ๋‹ค์–‘ํ•œ ์ฐธ์กฐ ๊ตฌํ˜„์ด ์žˆ์Šต๋‹ˆ๋‹ค.

http://tartarus.org/~martin/PorterStemmer/

Ruby๊ฐ€ NLTK๋ฅผ ์˜จ์ „ํ•œ ์ƒํƒœ๋กœ ํ™•์ธํ•˜๊ธฐ ์œ„ํ•ด ์‹œ๋„ํ–ˆ์Šต๋‹ˆ๋‹ค(ํ‘œ์ค€ ์ถœ๋ ฅ์—์„œ โ€‹โ€‹๋‹จ์–ด๋ฅผ ๊ฐ€์ ธ์˜ค๊ณ  ํ‘œ์ค€ ์ถœ๋ ฅ์—์„œ๋„ ์ฆ‰์‹œ ํ˜•ํƒœ์†Œ ํ˜•ํƒœ๋ฅผ ๋ฑ‰์–ด๋ƒ„).

์Šคํฌ๋ฆฝํŠธ $ ruby โ€‹โ€‹porter_stemmer.rb
๋น›๋‚˜๋Š”
์ƒค์ด๋‹ˆ

NLTK์— ๋Œ€ํ•ด ์ด๊ฒƒ์„ ํ™•์ธํ–ˆ์Šต๋‹ˆ๋‹ค.

์Šคํฌ๋ฆฝํŠธ $ ํŒŒ์ด์ฌ
ํŒŒ์ด์ฌ 2.6.1(r261:67515, 2010๋…„ 6์›” 24์ผ, 21:47:49)
[GCC 4.2.1(Apple Inc. ๋นŒ๋“œ 5646)] darwin
์ž์„ธํ•œ ๋‚ด์šฉ์„ ๋ณด๋ ค๋ฉด "๋„์›€๋ง", "์ €์ž‘๊ถŒ", "ํฌ๋ ˆ๋”ง" ๋˜๋Š” "๋ผ์ด์„ผ์Šค"๋ฅผ ์ž…๋ ฅํ•˜์‹ญ์‹œ์˜ค.

        import nltk
        nltk.stem.porter.PorterStemmer().stem_word('shiny')

'์‹œ๋‹ˆ'

์—ฌํƒœ๊นŒ์ง€๋Š” ๊ทธ๋Ÿฐ๋Œ€๋กœ ์ž˜๋๋‹ค. ๊ทธ๋ฆฌ๊ณ  ์ด ๊ฒฐ๊ณผ๋ฅผ ์ƒ˜ํ”Œ ์‚ฌ์šฉ์ž dict ํŒŒ์ผ(voc.txt)์— ๋Œ€ํ•ด ๋™์ผํ•œ ํŽ˜์ด์ง€์— ์ œ๊ณต๋œ ์˜ˆ์ƒ ๊ฒฐ๊ณผ(output.txt)์™€ ๋น„๊ตํ•˜๋ฉด ์˜ฌ๋ฐ”๋ฅด๊ฒŒ ๋ณด์ž…๋‹ˆ๋‹ค.

์Šคํฌ๋ฆฝํŠธ $ egrep -n '^shiny$' voc.txt
18333:๋น›๋‚˜๋‹ค
์Šคํฌ๋ฆฝํŠธ $ egrep -n '^shini$' output.txt
18333:์ƒค์ด๋‹ˆ

๊ทธ๋Ÿฌ๋‚˜ NLTK ๊ฒฐ๊ณผ๋ฅผ ์˜ˆ์ƒ ๊ฒฐ๊ณผ ํŒŒ์ผ์˜ ๊ฒฐ๊ณผ์™€ ์ฒด๊ณ„์ ์œผ๋กœ ๋น„๊ตํ•˜๋ฉด ๋ถˆ์ผ์น˜๊ฐ€ ๋งŽ์ด ๋‚˜ํƒ€๋‚ฉ๋‹ˆ๋‹ค(ํ˜•์‹: ๋‹จ์–ด, ์ ์ ˆํ•œ ์˜ˆ์ƒ ํ˜•ํƒœ์†Œ ๋ถ„์„, ๋ณ„ํ‘œ๋กœ ํ‘œ์‹œ๋œ ์ž˜๋ชป๋œ NLTK ํ˜•ํƒœ์†Œ ๋ถ„์„).

์Šคํฌ๋ฆฝํŠธ $ ./show_bad_stemming_in_nltk.py voc.txt output.txt
์ˆ˜๋„์› ์ˆ˜๋„์› * ์ˆ˜๋„์›
์ˆ˜๋„์› ์ˆ˜๋„์› * ์ˆ˜๋„์›
์•„๋ฒ  ab *์•„๋ฒ 
Absey Absei *absey
[...]
์—‰์—‰์—‰์—‰ *์—‰์—‰
์–ด์ œ ์–ด์ œ *์–ด์ œ
์–ด์ œ ์–ด์ œ๋‹ค์ด *์–ด์ œ
yongrey yongre * yongrey

Ruby ์ฐธ์กฐ ๊ตฌํ˜„์— ๋Œ€ํ•œ ์ŠคํŒŸ ๊ฒ€์‚ฌ๋Š” NLTK ๊ฒฐ๊ณผ๊ฐ€ ์‹ค์ œ๋กœ ๋ฌธ์ œ์ž„์„ ํ™•์ธํ•ฉ๋‹ˆ๋‹ค.

์Šคํฌ๋ฆฝํŠธ $ ruby โ€‹โ€‹porter_stemmer.rb
๋Œ€์‚ฌ์›
์•„๋ฒ ์ด
์ˆ˜๋„์›
์•„๋ฒ ์ด
์นจ๋Œ€
ab
์ˆ˜๋„์›
์•ฑ์„ธ์ด
์šธ๊ณ 
์ฐก๊ทธ๋ฆฐ
์–ด์ œ
์–ด์ œ
์–ด์ œ์˜
์–ด์ œ
์šฉ๋ฆฌ
์šฉ๋ ˆ์ด

NLTK์˜ Porter ํ˜•ํƒœ์†Œ ๋ถ„์„๊ธฐ๊ฐ€ ์˜ˆ์ƒ์น˜ ๋ชปํ•œ ๊ฒฐ๊ณผ๋ฅผ ์ œ๊ณตํ•˜๋Š” ์ „์ฒด ๋‹จ์–ด ๋ชฉ๋ก์„ ์ฒจ๋ถ€ํ–ˆ์Šต๋‹ˆ๋‹ค.

(์ด ๋ฒ„๊ทธ๋Š” ๋ฒ„์ „ 2.0b9์— ํ•ด๋‹นํ•ฉ๋‹ˆ๋‹ค. ๋ชจ๋“  ์ด์ „ ๋ฒ„์ „์— ์กด์žฌํ•˜๋Š” ๊ฒƒ์œผ๋กœ ์˜์‹ฌ๋˜์ง€๋งŒ ํ™•์ธํ•˜์ง€๋Š” ์•Š์•˜์Šต๋‹ˆ๋‹ค.)

http://code.google.com/p/nltk/issues/detail?id=625์—์„œ ์ด์ „๋จ


์ด์ „ ๋Œ“๊ธ€

gregg.lind๋Š” 2011-02-09T20:22:57.000Z์—์„œ ๋‹ค์Œ๊ณผ ๊ฐ™์ด ๋งํ–ˆ์Šต๋‹ˆ๋‹ค.

์•„๋ฌด๋„ ์›ํ•˜์ง€ ์•Š๋Š”๋‹ค๋ฉด (๊ธˆ์š”์ผ๊นŒ์ง€) ์ด๊ฒƒ์„ ๊ฐ€์ ธ๊ฐˆ ์ˆ˜ ์žˆ์–ด ๊ธฐ์ฉ๋‹ˆ๋‹ค. ์ด ๋ชจ๋“ˆ์„ ๋งŽ์ด ์‚ฌ์šฉํ–ˆ์Šต๋‹ˆ๋‹ค. ๊ทธ๋ ‰ ๋ฆฐ๋“œ

StevenBird1์€ 2011-02-14T07:14:49.000Z์—์„œ ๋‹ค์Œ๊ณผ ๊ฐ™์ด ๋งํ–ˆ์Šต๋‹ˆ๋‹ค.

์ฒจ๋ถ€ ํŒŒ์ผ์€ nltk-dev๋กœ ์ „์†ก๋œ Stuart Robinson์˜ ์ˆ˜์ • ์‚ฌํ•ญ์ž…๋‹ˆ๋‹ค. ์ด๊ฒƒ์€ ์›๋ž˜ ๋…ผ์˜๋œ Ruby ๋ฒ„์ „์˜ ์ƒˆ๋กœ์šด ํฌํŠธ๊ฐ€ ์•„๋‹Œ ์ด์ „ ๋ฒ„์ „์— ๋Œ€ํ•œ ์ถ”๊ฐ€ ํŽธ์ง‘์œผ๋กœ ๋ณด์ž…๋‹ˆ๋‹ค. ์ด ์ƒˆ ๋ฒ„์ „์„ ํ†ตํ•ฉํ•˜๊ธฐ ์ „์— test/stem.doctest์— ์ถ”๊ฐ€๋œ ํ…Œ์ŠคํŠธ ์ผ€์ด์Šค ์„ธํŠธ๊ฐ€ ํ•„์š”ํ•ฉ๋‹ˆ๋‹ค.

goodfirstbug

๊ฐ€์žฅ ์œ ์šฉํ•œ ๋Œ“๊ธ€

@paulproteus โ€“ ๋งˆ์นจ๋‚ด ํ•ด๊ฒฐ

๋ชจ๋“  8 ๋Œ“๊ธ€

๋‚˜๋Š” ์ด๊ฒƒ์— "goodfirstbug"๋ผ๋ฒจ์„ ๋ถ™์˜€๋‹ค. "์ข‹์€ ์ฒซ ๋ฒˆ์งธ ๋ฒ„๊ทธ"๋Š” stem.doctest (https://github.com/nltk/nltk/blob/master/nltk/test/stem.doctest)์— ๋งŽ์€ ํ…Œ์ŠคํŠธ ์ผ€์ด์Šค๋ฅผ ์ถ”๊ฐ€ํ•˜๋Š” ๊ฒƒ์ž…๋‹ˆ๋‹ค -- ๋ณ‘ํ•ฉํ•˜๊ณ  ์‹ถ๋‹ค๋ฉด ์ŠคํŠœ์–ดํŠธ์˜ ์ˆ˜์ •์—์„œ๋„ ํ›Œ๋ฅญํ•  ๊ฒƒ์ž…๋‹ˆ๋‹ค!

์•ˆ๋…•ํ•˜์„ธ์š” ์—ฌ๋Ÿฌ๋ถ„, ํŠนํžˆ @alexrudnick , ์ง€๊ธˆ ํ•ด๊ฒฐ๋œ ๊ฒƒ์œผ๋กœ ํ‘œ์‹œ๋˜์–ด์•ผ ํ•ฉ๋‹ˆ๊นŒ?

๋Œ€์ถฉ ๋ณด๋ฉด ์•„๋‹ˆ์˜ค, ์•„์ง ํ•ด๊ฒฐ๋˜์ง€ ์•Š์€ ๊ฒƒ ๊ฐ™์Šต๋‹ˆ๋‹ค. ๊ทธ๋Ÿฌ๋‚˜ ์œ ์ง€ ๋ณด์ˆ˜์˜ ๋ง์„ ๋“ฃ๊ณ  ์‹ถ์Šต๋‹ˆ๋‹ค.

@paulproteus โ€“ ๋งˆ์นจ๋‚ด ํ•ด๊ฒฐ

Steven์ด ๋ฐฉ๊ธˆ ๋ณ‘ํ•ฉํ•œ ๋‚ด PR์˜ _default_ ํ˜•ํƒœ์†Œ ๋ถ„์„๊ธฐ ๋™์ž‘์€ ๋ณ€๊ฒฝ๋˜์ง€ ์•Š์•˜์Šต๋‹ˆ๋‹ค. Martin์˜ ์ฐธ์กฐ ๊ตฌํ˜„๊ณผ ์ผ์น˜ํ•˜๋Š” ๋™์ž‘์„ ์–ป์œผ๋ ค๋ฉด mode=PorterStemmer.MARTIN_EXTENSIONS ๋ฅผ PorterStemmer ์ƒ์„ฑ์ž์— ๋ช…์‹œ์ ์œผ๋กœ ์ „๋‹ฌํ•ด์•ผ ํ•ฉ๋‹ˆ๋‹ค(์ด ์ž์ฒด๊ฐ€ Martin์˜ ์›๋ž˜ ์•Œ๊ณ ๋ฆฌ์ฆ˜๊ณผ ์ผ์น˜ํ•˜์ง€ ์•Š์Œ).

ํ‹€๋ฆผ์—†์ด MARTIN_EXTENSIONS ๋ฅผ ๊ธฐ๋ณธ ๋ชจ๋“œ๋กœ ์‚ฌ์šฉํ•˜๋Š” ๊ฒƒ์ด (์ฐธ์กฐ ๊ตฌํ˜„๊ณผ์˜ ์ผ๊ด€์„ฑ์„ ์œ„ํ•ด) ๋” ์ข‹์„ ๊ฒƒ์ž…๋‹ˆ๋‹ค. ์™œ๋ƒํ•˜๋ฉด ์‚ฌ์šฉ์ž๋Š” PorterStemmer ๋ผ๋Š” ๊ฒƒ์ด Martin์˜ ์ฐธ์กฐ ๊ตฌํ˜„์ฒ˜๋Ÿผ ์ฆ‰์‹œ ์ž‘๋™ํ•  ๊ฒƒ์œผ๋กœ ๊ธฐ๋Œ€ํ•˜๊ธฐ ๋•Œ๋ฌธ์ž…๋‹ˆ๋‹ค. ๋ฌธ์ œ๋Š” ๊ทธ๊ฒƒ์ด ์ด์ „ ๋ฒ„์ „๊ณผ์˜ ํ˜ธํ™˜์„ฑ์ด ๊นจ์งˆ ๊ฒƒ์ด๋ผ๋Š” ์ ์ž…๋‹ˆ๋‹ค. NLTK๋ฅผ ์—…๊ทธ๋ ˆ์ด๋“œํ•˜๋Š” NLTK์˜ ์ด์ „ ๊ตฌํ˜„์„ ์‚ฌ์šฉํ•˜๋Š” ์‚ฌ๋žŒ์€ ์ค„๊ธฐ์˜ ์ผ๋ถ€๋งŒ ๋ณ€๊ฒฝ๋˜์–ด ์‚ฌ์šฉ ์‚ฌ๋ก€์— ๋”ฐ๋ผ ๋ฏธ๋ฌ˜ํ•œ ๋ฒ„๊ทธ๊ฐ€ ๋ฐœ์ƒํ•  ์ˆ˜ ์žˆ์Œ์„ ์˜ค๋žซ๋™์•ˆ ์•Œ์•„์ฐจ๋ฆฌ์ง€ ๋ชปํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค. ๋˜ ๋‹ค๋ฅธ ์˜ต์…˜์€ ๊ธฐ๋ณธ๊ฐ’์„ ์ „ํ˜€ ์‚ฌ์šฉํ•˜์ง€ ์•Š๊ณ  ๋ชจ๋“  ์‚ฌ์šฉ์ž๊ฐ€ ๋‹ค๋ฅธ ๋ชจ๋“œ์—์„œ ๋ฌธ์„œ๋ฅผ ์ฝ๊ณ  ์‚ฌ์šฉํ•  ๊ฒƒ์„ ๋ช…์‹œ์ ์œผ๋กœ ์„ ํƒํ•˜๋„๋ก ์š”๊ตฌํ•˜๋Š” ๊ฒƒ์ž…๋‹ˆ๋‹ค. ์ด๊ฒƒ์€ ์ด์ „ ๋ฒ„์ „๊ณผ์˜ ํ˜ธํ™˜์„ฑ๋„ ๊นจ๋œจ๋ฆด ์ˆ˜ ์žˆ์ง€๋งŒ _๋ช…๋ฐฑํ•œ_ ๋ฐฉ์‹์œผ๋กœ ๊ทธ๋ ‡๊ฒŒ ํ•  ๊ฒƒ์ด๋ฏ€๋กœ(๊ทธ๋ƒฅ ํ˜•ํƒœ์†Œ ๋ถ„์„๊ธฐ๋ฅผ ์ธ์Šคํ„ด์Šคํ™”ํ•˜๋ ค๊ณ  ํ•˜๋ฉด ์ด์ „ ๋ฐฉ์‹์ด ํญ๋ฐœํ•  ๊ฒƒ์ž…๋‹ˆ๋‹ค) ๋ฆด๋ฆฌ์Šค ๋…ธํŠธ๋ฅผ ์ฝ์ง€ ์•Š๊ณ  ์—…๊ทธ๋ ˆ์ด๋“œ๋ฅผ ์ˆ˜ํ–‰ํ•˜๋Š” ์‚ฌ๋žŒ๋“ค์ด ์žกํžˆ์ง€ ์•Š์„ ๊ฒƒ์ž…๋‹ˆ๋‹ค. ๊ทธ ์ ‘๊ทผ ๋ฐฉ์‹์€ ์œ„์˜ ๋‚˜์œ ์‹œ๋‚˜๋ฆฌ์˜ค ์ค‘ ํ•˜๋‚˜๋ฅผ ํ”ผํ•  ์ˆ˜ ์žˆ์ง€๋งŒ ๋ชจ๋“  ์ƒˆ๋กœ์šด ํ˜•ํƒœ์†Œ ๋ถ„์„๊ธฐ ์‚ฌ์šฉ์ž์—๊ฒŒ ๋” ๋งŽ์€ ์„ ํ–‰ ์ž‘์—…์„ ์š”๊ตฌํ•˜๋Š” ๋Œ€๊ฐ€๋ฅผ ์น˜๋ฅด๊ฒŒ ๋ฉ๋‹ˆ๋‹ค.

์–ด๋–ค ์˜ต์…˜๋„ ์™„๋ฒฝํ•˜์ง€ ์•Š์Šต๋‹ˆ๋‹ค. NLTK_EXTENSIONS ๋ฅผ ๊ธฐ๋ณธ๊ฐ’์œผ๋กœ ์„ ํƒํ–ˆ์ง€๋งŒ ๋™์˜ํ•˜์ง€ ์•Š์„ ์—ฌ์ง€๊ฐ€ ์žˆ์Šต๋‹ˆ๋‹ค. ์˜๊ฒฌ์ด ์žˆ์œผ์‹ ๊ฐ€์š”?

@ExplodingCabbage : ๊ธฐ๋ณธ๊ฐ’์ด ์•„๋‹Œ ๋งˆ์ง€๋ง‰ ์˜ต์…˜์„ ์„ ํ˜ธํ•˜๋ฉฐ ๋ฆด๋ฆฌ์Šค ์ •๋ณด์— ์ ์ ˆํ•œ ๊ฒฝ๊ณ ์™€ ํ•จ๊ป˜ ๋‹ค์Œ ์ฃผ์š” ๋ฆด๋ฆฌ์Šค(์ž‘์—…์ด ์ฒ˜์Œ ํ‘œ์‹œ๋˜๋Š” ๋งˆ์ด๋„ˆ ๋ฆด๋ฆฌ์Šค๊ฐ€ ์•„๋‹˜)์—์„œ ๊ทธ๋ ‡๊ฒŒ ํ•˜๋Š” ๊ฒƒ์ด ์ข‹์Šต๋‹ˆ๋‹ค. ์‚ฌ๋žŒ๋“ค์ด ๊ฐ•์ œ๋กœ ๋ฌธ์„œ๋ฅผ ์ฝ๊ณ  ๋‹น์‹ ์˜ ์ž‘์—…์—์„œ ์ด์ต์„ ์–ป๋Š” ๊ฒƒ์ด ์ข‹์„ ๊ฒƒ์ด๋ผ๊ณ  ์ƒ๊ฐํ•ฉ๋‹ˆ๋‹ค. ๋‹ค๋ฅธ ๋ถ„๋“ค์€ ์–ด๋–ป๊ฒŒ ์ƒ๊ฐํ•˜์‹œ๋Š”์ง€ ๊ถ๊ธˆํ•ฉ๋‹ˆ๋‹ค.

์•ˆ๋…•ํ•˜์„ธ์š” ์—ฌ๋Ÿฌ๋ถ„,

๋‚˜๋Š” nltk์˜ ๊ธฐ๋ณธ PorterStemmer๋ฅผ ์‚ฌ์šฉํ•˜์—ฌ ๊ฒ€์ƒ‰ ์—”์ง„ ๋ฐฑ์—”๋“œ๋ฅผ ์ž‘์„ฑํ•ด ์™”์œผ๋ฉฐ, ๋‹ค๋ฅธ ๋งŽ์€ Porter ํ˜•ํƒœ์†Œ ๋ถ„์„๊ธฐ ๊ตฌํ˜„๊ณผ ๋™์ผํ•œ ๋ฐฉ์‹์œผ๋กœ ์ž‘๋™ํ•˜์ง€ ์•Š๋Š”๋‹ค๋Š” ๊ฒƒ์„ ์•Œ์ง€ ๋ชปํ–ˆ์Šต๋‹ˆ๋‹ค. ์ด์ œ Javascript๋ฅผ ์‚ฌ์šฉํ•˜์—ฌ ํ”„๋ก ํŠธ์—”๋“œ์—์„œ ์ž‘์—…ํ•˜๊ณ  ์žˆ์œผ๋ฏ€๋กœ ํ”„๋ก ํŠธ์—”๋“œ์™€ ๋ฐฑ์—”๋“œ๊ฐ€ ๋‹จ์–ด์˜ ์–ด๊ฐ„์„ ๋‹ค๋ฅด๊ฒŒ ๋งŒ๋“œ๋Š” ๋ฒ„๊ทธ์— ์ง๋ฉดํ•˜๊ณ  ์žˆ์Šต๋‹ˆ๋‹ค. ๋ธŒ๋ผ์šฐ์ €์—์„œ ์‹คํ–‰ํ•  ์ˆ˜ ์žˆ๋„๋ก Javascript์—์„œ nltk์˜ ๊ธฐ๋ณธ PorterStemmer ๋™์ž‘์„ ๋‹ค์‹œ ๋งŒ๋“ค์–ด์•ผ ํ•˜๋Š” ๊ฒฝ์šฐ ๋ฌด์—‡์„ ์‚ดํŽด๋ด์•ผ ํ•˜๋Š”์ง€ ๊ถ๊ธˆํ•ฉ๋‹ˆ๋‹ค. ๋‚˜๋Š” ๋ˆ„๊ตฐ๊ฐ€(์–ด์ฉŒ๋ฉด @ExplodingCabbage ?)๊ฐ€ ๋‚˜๋ฅผ ์˜ฌ๋ฐ”๋ฅธ ๋ฐฉํ–ฅ์œผ๋กœ ๊ฐ€๋ฆฌํ‚ฌ ์ˆ˜ ์žˆ๊ธฐ๋ฅผ ๋ฐ”๋ž๋‹ค.

MARTIN_EXTENSIONS ๋ชจ๋“œ๋กœ ๋ชจ๋“  ๊ฒƒ์„ ๋‹ค์‹œ ์ธ๋ฑ์‹ฑํ•  ์‹œ๊ฐ„์ด ์—†์Šต๋‹ˆ๋‹ค. ํ•˜๋Š” ๋ฐ ๋ช‡ ์ฃผ๊ฐ€ ๊ฑธ๋ฆฌ๊ธฐ ๋•Œ๋ฌธ์ž…๋‹ˆ๋‹ค...

@josephcc porter.py ๋Š” ๊ธฐ๋ณธ์ ์œผ๋กœ ์ข…์†์„ฑ์ด ์—†์œผ๋ฉฐ ์‹ฌ์˜คํ•˜๊ฑฐ๋‚˜ ๋งˆ๋ฒ• ๊ฐ™์€ ์ž‘์—…์„ ์ˆ˜ํ–‰ํ•˜์ง€ ์•Š์œผ๋ฉฐ ์ผ๋ จ์˜ ๋ฌธ์ž์—ด ์กฐ์ž‘๋งŒ ์ˆ˜ํ–‰ํ•ฉ๋‹ˆ๋‹ค. PorterStemmer ํด๋ž˜์Šค๋ฅผ JavaScript๋กœ ์ด์‹ํ•˜๊ณ  if self.mode == self.NLTK_EXTENSIONS ๋ถ„๊ธฐ๋งŒ ์œ ์ง€ํ•˜๊ณ  ๋‹ค๋ฅธ ๋ถ„๊ธฐ์˜ ๋…ผ๋ฆฌ๋Š” ๋ฒ„๋ฆฌ๊ณ  ์‹ถ์„ ๊ฒƒ์ž…๋‹ˆ๋‹ค.

๋ฌผ๋ก  5๋ถ„์งœ๋ฆฌ ์ž‘์—…์ด๋‚˜ ์™„๋ฒฝํ•œ ์ž‘์—…์€ ์•„๋‹ˆ์ง€๋งŒ ์‹คํ–‰ ๊ฐ€๋Šฅํ•œ ์ž‘์—…์ž…๋‹ˆ๋‹ค. ๋˜ํ•œ https://github.com/nltk/nltk/blob/develop/nltk/test/unit/test_stem.py ์—์„œ PorterTest ๋ฅผ ํ™•์ธํ•˜๊ณ  ์ •ํ™•์„ฑ์„ ํ™•์ธํ•˜๊ธฐ ์œ„ํ•ด JavaScript ๊ตฌํ˜„์— ๋Œ€ํ•ด ํ…Œ์ŠคํŠธ ์ผ€์ด์Šค๋ฅผ ์‹คํ–‰ํ•˜๋Š” ๊ฒƒ์„ ๊ณ ๋ คํ•˜์‹ญ์‹œ์˜ค. ๋‹น์‹ ์˜ ์ผ์˜.

์ด ํŽ˜์ด์ง€๊ฐ€ ๋„์›€์ด ๋˜์—ˆ๋‚˜์š”?
0 / 5 - 0 ๋“ฑ๊ธ‰

๊ด€๋ จ ๋ฌธ์ œ

alvations picture alvations  ยท  4์ฝ”๋ฉ˜ํŠธ

stevenbird picture stevenbird  ยท  3์ฝ”๋ฉ˜ํŠธ

libingnan54321 picture libingnan54321  ยท  3์ฝ”๋ฉ˜ํŠธ

jeryini picture jeryini  ยท  5์ฝ”๋ฉ˜ํŠธ

ndvbd picture ndvbd  ยท  4์ฝ”๋ฉ˜ํŠธ