๋ณธ๋ฌธ ๋ฐ”๋กœ๊ฐ€๊ธฐ

ํŠธ๋Ÿฌ๋ธ”์ŠˆํŒ…5

[ํŠธ๋Ÿฌ๋ธ”์ŠˆํŒ…] N-gram๊ณผ Edge-Ngram์„ ํ•จ๊ป˜ ์ผ๋”๋‹ˆ? ๊ฒ€์ƒ‰ ์ •ํ™•๋„ ๋ฌธ์ œ์™€ ํ•ด๊ฒฐ ๊ณผ์ • ๐Ÿ’ฅ ์˜ˆ์ƒ์น˜ ๋ชปํ•œ ๊ฒ€์ƒ‰ ๊ฒฐ๊ณผ? N-gram + Edge-Ngram์ด ๋งŒ๋“  ๋ฌธ์ œ  ๐Ÿ” ๋ฐœ์ƒํ•œ ๋ฌธ์ œ์ฒ˜์Œ์—๋Š” ๊ฒ€์ƒ‰ ๊ธฐ๋Šฅ์„ ๊ฐ•ํ™”ํ•˜๊ธฐ ์œ„ํ•ด ๋ถ€๋ถ„ ๊ฒ€์ƒ‰(N-gram)๊ณผ ์ž๋™ ์™„์„ฑ(Edge-Ngram) ๋‘ ๊ธฐ๋Šฅ์„ ๋™์‹œ์— Elasticsearch์— ์ ์šฉํ–ˆ๋‹ค.๊ฒ€์ƒ‰์–ด๊ฐ€ ์ค‘๊ฐ„์— ํฌํ•จ๋œ ๋‹จ์–ด๋„ ์ฐพ๊ณ , ๋™์‹œ์— ์ž…๋ ฅํ•œ ๊ธ€์ž์˜ ์•ž๋ถ€๋ถ„์œผ๋กœ ์ž๋™ ์™„์„ฑ๊นŒ์ง€ ๋˜๋„๋ก ํ•œ ๊ฒƒ์ด์—ˆ๋‹ค.ํ•˜์ง€๋งŒ... ์‹ค์ œ ๊ฒ€์ƒ‰์—์„œ ์˜ˆ์ƒํ•˜์ง€ ๋ชปํ•œ ๊ฒฐ๊ณผ๊ฐ€ ๋“ฑ์žฅํ•˜๊ธฐ ์‹œ์ž‘ํ–ˆ๋‹ค. ๐Ÿ“Œ ์˜ˆ์‹œ 1) ๊ฒ€์ƒ‰์–ด: ๋ฏธ๋…ธ ๋ฏธ๋…ธ๊ฐ€ ํฌํ•จ๋œ ์ •ํ™•ํ•œ ๋‹จ์–ด๋ฅผ ์ฐพ๊ณ  ์‹ถ์—ˆ์ง€๋งŒ,N-gram๊ณผ Edge-Ngram์ด ํ•จ๊ป˜ ์ ์šฉ๋œ ํ•„๋“œ๊ฐ€ ์กฐํšŒ ๊ฒฐ๊ณผ๋ฅผ ๋งŒ๋“ค์–ด๋ƒˆ๋‹ค.๊ฒฐ๊ณผ์ ์œผ๋กœ ๊ด€๋ จ ์—†๋Š” ํ‚ค์›Œ๋“œ๊นŒ์ง€ ํฌํ•จ๋œ ๊ฒฐ๊ณผ๊ฐ€ ๋…ธ์ถœ๋˜์—ˆ๋‹ค. ๐Ÿ“Œ ์˜ˆ์‹œ 2) ๊ฒ€์ƒ‰์–ด: ์นด๋“œ์นด๋“œ๋ฅผ ๊ฒ€์ƒ‰ํ–ˆ์„ ๋•Œ, ์นด๋“œ์™€ ๋ฌด๊ด€ํ•œ ์นด๋กœ ์‹œ์ž‘ํ•˜๋Š” ๋‹จ์–ด.. 2025. 4. 3.
[ํŠธ๋Ÿฌ๋ธ”์ŠˆํŒ…] @Setting์„ ์ผ๋Š”๋ฐ ์™œ ์ธ๋ฑ์Šค๊ฐ€ ์•ˆ ๋ ๊นŒ? ๐Ÿงจ Elasticsearch ์ธ๋ฑ์Šค ์„ค์ •์ด ์•ˆ ๋œ๋‹ค?! @Setting ์‹คํŒจ ๊ธฐ๋ก  ๐Ÿ’ฅ๋ฌธ์ œ ์ƒํ™ฉSpring Boot + Spring Data Elasticsearch ํ™˜๊ฒฝ์—์„œElasticsearch์—์„œ ๊ฒ€์ƒ‰ ์„ฑ๋Šฅ ๊ฐœ์„ ์„ ์œ„ํ•ด n-gram, edge-ngram ๊ธฐ๋ฐ˜ ์ธ๋ฑ์Šค ์„ค์ •์„ ์ ์šฉํ•˜๋ ค๊ณ  ํ–ˆ๋‹ค.์•„๋ž˜์™€ ๊ฐ™์ด job-opening-settings.json์„ ์ž‘์„ฑํ•˜๊ณ ,Spring Data Elasticsearch์˜ @Setting ์–ด๋…ธํ…Œ์ด์…˜์„ ํ†ตํ•ด ์ž๋™์œผ๋กœ ์ธ๋ฑ์Šค๋ฅผ ์ƒ์„ฑํ•˜๋ ค๊ณ  ํ–ˆ๋‹ค.๋”๋ณด๊ธฐ  job-opening-settings.json { "settings": { "analysis": { "filter": { "ngram_filter": { "type": "ng.. 2025. 4. 2.
[ ํŠธ๋Ÿฌ๋ธ” ์ŠˆํŒ… ]์ผ์ • ๊ด€๋ฆฌ ์•ฑ ๊ณผ์ œ_ํŠธ๋Ÿฌ๋ธ” ์ŠˆํŒ… ๊ณผ์ œ ํŠธ๋Ÿฌ๋ธ” ์ŠˆํŒ… ๋ฌธ์ œ ์ƒํ™ฉIntelliJ์—์„œ ์ฝ”๋“œ๋ฅผ ์ž‘์„ฑํ•˜๋Š” ์ค‘, import๋ฅผ ์ˆ˜ํ–‰ํ•  ๋•Œ ์ฝ”๋“œ์˜ ๋งจ ์œ„๋กœ ์ถ”๊ฐ€๋˜์ง€ ์•Š๊ณ  ์ž‘์„ฑ ์ค‘์ธ ํ•ด๋‹น ์ค„์— import๋ฌธ์ด ์ถ”๊ฐ€๋˜๋Š” ๋ฌธ์ œ๊ฐ€ ๋ฐœ์ƒํ–ˆ๋‹ค.๋ฌธ์ œ ์›์ธ๋ฌธ์ œ์˜ ์ •ํ™•ํ•œ ์›์ธ์€ ํŒŒ์•…ํ•˜์ง€ ๋ชปํ–ˆ๋‹ค.ํ•˜์ง€๋งŒ import ์‹œ๋„ ์‹œ IntelliJ ์šฐ์ธก ํ•˜๋‹จ์— IDE Error ๋ฉ”์‹œ์ง€๊ฐ€ ์ง€์†์ ์œผ๋กœ ๋‚˜ํƒ€๋‚œ ๊ฒƒ์„ ๋ณด์•„ IntelliJ ์ž์ฒด์˜ ๋ฌธ์ œ๋กœ ํŒ๋‹จํ–ˆ๋‹ค.์—ฌ๋Ÿฌ ํ”Œ๋Ÿฌ๊ทธ์ธ์„ ์„ค์น˜ํ•˜๋Š” ๊ณผ์ •์—์„œ ์„ค์ •์ด ๊ผฌ์˜€๊ฑฐ๋‚˜ ์ž˜๋ชป๋œ ๋ณ€๊ฒฝ์ด ์ด๋ฃจ์–ด์ง„ ๊ฒƒ์œผ๋กœ ์ƒ๊ฐํ•˜๊ณ  ์žˆ๋‹ค.ํ•ด๊ฒฐ ๋ฐฉ๋ฒ•ํŠœํ„ฐ๋‹˜๊ณผ ํ•จ๊ป˜ ๋‹ค์–‘ํ•œ ์‹œ๋„IntelliJ ์„ค์ • ๋ณ€๊ฒฝ์บ์‹œ ์‚ญ์ œ๊ทธ๋Ÿฌ๋‚˜ ์—ฌ๋Ÿฌ ๋ฐฉ๋ฒ•์„ ์‹œ๋„ํ•ด๋„ ์—ฌ์ „์น˜ IDE Error ๋ฉ”์‹œ์ง€๊ฐ€ ๋ฐœ์ƒํ•˜์—ฌ ๋ฌธ์ œ๋ฅผ ํ•ด๊ฒฐํ•˜์ง€ ๋ชปํ–ˆ๋‹ค.์ตœ์ข… ํ•ด๊ฒฐIntelliJ๋ฅผ ์™„์ „ํžˆ ์‚ญ์ œํ•œ ํ›„ ์žฌ์„ค์น˜ ์ง„ํ–‰์žฌ์„ค์น˜ ํ›„ ๊ธฐ๋ณธ.. 2024. 12. 10.
ํ‚ค์˜ค์Šคํฌ ๊ณผ์ œ_ํŠธ๋Ÿฌ๋ธ” ์ŠˆํŒ… ๊ณผ์ œ ํŠธ๋Ÿฌ๋ธ” ์ŠˆํŒ… ๋ฌธ์ œ ์ƒํ™ฉํ‚ค์˜ค์Šคํฌ ๊ณผ์ œ๋ฅผ ์ง„ํ–‰ํ•˜๋ ค๊ณ  ์บ ํ”„์—์„œ ์ง€์›๋ฐ›์€ ๋งฅ๋ถ์œผ๋กœ ์ž‘์—…์„ ์‹œ์ž‘ํ–ˆ๋Š”๋ฐ, GitHub์™€ ์—ฐ๋™ํ•˜๋Š” ๊ณผ์ •์—์„œ ํ„ฐ๋ฏธ๋„์„ ์‚ฌ์šฉํ•˜๋ ค๋‹ค ๋ฌธ์ œ๊ฐ€ ๋ฐœ์ƒํ–ˆ๋‹ค. ์œˆ๋„์šฐ์™€ ๋งฅ๋ถ์˜ ํ„ฐ๋ฏธ๋„ ์‚ฌ์šฉ ๋ฐฉ์‹์ด ๋‹ฌ๋ผ ์ต์ˆ™ํ•˜์ง€ ์•Š์•„์„œ ํ—ค๋งค๊ฒŒ ๋˜์—ˆ๋‹ค.๋ฌธ์ œ ์›์ธ๋งฅ๋ถ์˜ ํ„ฐ๋ฏธ๋„ ํ™˜๊ฒฝ๊ณผ ๋ช…๋ น์–ด ๊ตฌ์กฐ๊ฐ€ ์œˆ๋„์šฐ์™€ ๋‹ค๋ฅด๊ณ , ๊ธฐ๋ณธ์ ์ธ Git ์„ค์ •์ด๋‚˜ ๋ช…๋ น์–ด ์ž…๋ ฅ ๋ฐฉ๋ฒ•์„ ์ž˜ ์ˆ™์ง€ํ•˜์ง€ ๋ชปํ–ˆ๋‹ค.IntelliJ์™€ ๊ฐ™์€ IDE์—์„œ ์ œ๊ณตํ•˜๋Š” Git ๊ธฐ๋Šฅ์— ๋Œ€ํ•œ ์‚ฌ์ „ ์ง€์‹์ด ๋ถ€์กฑํ–ˆ๋‹ค.ํ•ด๊ฒฐ ๋ฐฉ๋ฒ•๊ตฌ๊ธ€๋ง์„ ํ†ตํ•ด IntelliJ IDEA์—์„œ GitHub ์—ฐ๋™ ์„ค์ • ๋ฐฉ๋ฒ•์„ ์ฐพ์•„ ํ•™์Šตํ–ˆ๋‹ค.File โ†’ Settings โ†’ Version Control โ†’ Git ๊ฒฝ๋กœ๋ฅผ ํ†ตํ•ด Git ์‹คํ–‰ ํŒŒ์ผ์„ ์„ค์ •.File โ†’ Settings โ†’ Version Cont.. 2024. 11. 28.
๊ณ„์‚ฐ๊ธฐ ๊ณผ์ œ_ํŠธ๋Ÿฌ๋ธ” ์ŠˆํŒ… Lv1 ํŠธ๋Ÿฌ๋ธ” ์ŠˆํŒ…๋ฌธ์ œ ์ƒํ™ฉScanner๋ฅผ ์‚ฌ์šฉํ•˜์—ฌ ์‚ฌ์šฉ์ž ์ž…๋ ฅ์„ ์ฒ˜๋ฆฌํ•˜๋˜ ์ค‘, nextInt( ) ๋’ค์— nextLine( )์„ ํ˜ธ์ถœํ•˜๊ฒŒ ๋˜๋ฉด ์˜๋„์น˜ ์•Š๊ฒŒ ๋นˆ ์ž…๋ ฅ์ด ์ฒ˜๋ฆฌ๋˜๋Š” ๋ฌธ์ œ๊ฐ€ ๋ฐœ์ƒํ–ˆ๋‹ค.nextInt( )๊ฐ€ ์ˆซ์ž ์ž…๋ ฅ ๋’ค ๋‚จ์•„ ์žˆ๋Š” ์ค„ ๋ฐ”๊ฟˆ ๋ฌธ์ž(\n)๋ฅผ ์†Œ๋น„ํ•˜์ง€ ์•Š์•„์„œ ์ƒ๊ธฐ๋Š” ๋ฌธ์ œ์˜€๋‹ค.๋ฌธ์ œ ์›์ธnextInt( )๋Š” ์ˆซ์ž๋งŒ ์ฝ๊ณ , ์ค„ ๋ฐ”๊ฟˆ ๋ฌธ์ž(\n)๋Š” ์ž…๋ ฅ ๋ฒ„ํผ์— ๋‚จ๊ฒจ๋‘”๋‹ค.์ดํ›„ nextLine( )์ด ํ˜ธ์ถœ๋˜๋ฉด ์ž…๋ ฅ ๋ฒ„ํผ์— ๋‚จ์•„ ์žˆ๋˜ ์ค„ ๋ฐ”๊ฟˆ ๋ฌธ์ž๋งŒ ์ฝ์–ด์„œ ๋นˆ ๋ฌธ์ž์—ด์„ ๋ฐ˜ํ™˜ํ•˜๊ฒŒ ๋œ๋‹ค.๋ฌธ์ œ ์ƒํ™ฉ ์ฝ”๋“œ// ์ฒซ ๋ฒˆ์งธ ์ •์ˆ˜ ์ž…๋ ฅ ๋ฐ›๊ธฐ ์ „ ์•ˆ๋‚ด ๋ฌธ๊ตฌ ์ถœ๋ ฅSystem.out.print("์ฒซ ๋ฒˆ์งธ ์ •์ˆ˜ ์ž…๋ ฅ(0 ํฌํ•จ) : ");// ์‚ฌ์šฉ์ž๋กœ๋ถ€ํ„ฐ ์ž…๋ ฅ ๋ฐ›์€ ์–‘์˜ ์ •์ˆ˜๋ฅผ firstNumber ๋ณ€์ˆ˜์— ํ• ๋‹นint fi.. 2024. 11. 20.