๐Ÿ“Š ๋ฐ์ดํ„ฐ ๋ถ„์„๊ณผ Python: ๋ฐ์ดํ„ฐ ๋ถ„์„ ๋ฐฉ๋ฒ•๋ก  (CRISP-DM)

Geondong Kimยท3์ผ ์ „
post-thumbnail

๐Ÿ“Š ๋ฐ์ดํ„ฐ ๋ถ„์„ ๋ฐฉ๋ฒ•๋ก : CRISP-DM

1. ๋ฐ์ดํ„ฐ ๊ด€๋ จ ์ฃผ์š” ๊ฐœ๋…

๋ฐ์ดํ„ฐ๋ฅผ ๋‹ค๋ฃจ๋Š” ๋ถ„์•ผ๋Š” ํฌ๊ฒŒ ์„ธ ๊ฐ€์ง€๋กœ ๋‚˜๋ˆŒ ์ˆ˜ ์žˆ์œผ๋ฉฐ, ๊ฐ ์—ญํ• ๊ณผ ๋ชฉํ‘œ๊ฐ€ ๋‹ค๋ฆ…๋‹ˆ๋‹ค.

๋ถ„์•ผ์„ค๋ช…์ฃผ์š” ํ™œ๋™
Data Engineering๋ถ„์„ ๊ฐ€๋Šฅํ•œ ํ˜•ํƒœ์˜ ๋ฐ์ดํ„ฐ ์ธํ”„๋ผ๋ฅผ ๊ตฌ์ถ•ํ•˜๊ณ  ์šด์˜๋ฐ์ดํ„ฐ ์ˆ˜์ง‘ยท์ฒ˜๋ฆฌยท์ €์žฅ, ๋ณด์•ˆ, ํŒŒ์ดํ”„๋ผ์ธ ๊ตฌ์ถ•
Data Analytics๊ธฐ์กด ๋ฐ์ดํ„ฐ๋ฅผ ํ†ต๊ณ„์ ์œผ๋กœ ๋ถ„์„ํ•˜์—ฌ ์ธ์‚ฌ์ดํŠธ ๋„์ถœ๋ฐ์ดํ„ฐ ์ฒ˜๋ฆฌ, ๊ตฌ์„ฑ, ๊ฒฐ๊ณผ ๋‹จ์ˆœํ™” ๋ฐ ์‹œ๊ฐํ™”
Data Science๋ฐฉ๋Œ€ํ•œ ๋ฐ์ดํ„ฐ์—์„œ ํ†ต์ฐฐ๋ ฅ์„ ์ฐพ๊ณ  ๋ฏธ๋ž˜๋ฅผ ์˜ˆ์ธก๋จธ์‹ ๋Ÿฌ๋‹/๋”ฅ๋Ÿฌ๋‹ ๋ชจ๋ธ๋ง, ์˜ˆ์ธก, ์งˆ๋ฌธ(Question) ๋ฐœ๊ตด

Data Mining (๋ฐ์ดํ„ฐ ๋งˆ์ด๋‹)

  • ์ •์˜: ๋Œ€๊ทœ๋ชจ ๋ฐ์ดํ„ฐ์—์„œ ์ˆจ๊ฒจ์ง„ ํŒจํ„ด๊ณผ ๊ด€๊ณ„๋ฅผ ์ฐพ์•„๋‚ด์–ด ์‹ค์šฉ์ ์ธ ์ง€์‹์œผ๋กœ ๋ณ€ํ™˜ํ•˜๋Š” ๊ณผ์ •.
  • ์ค‘์š”์„ฑ: ๊ธฐ์—…์˜ ์ „๋žต์  ์˜์‚ฌ๊ฒฐ์ •, ์šด์˜ ํšจ์œจ์„ฑ ํ–ฅ์ƒ, ์ƒˆ๋กœ์šด ๋น„์ฆˆ๋‹ˆ์Šค ๊ธฐํšŒ ์ฐฝ์ถœ์— ๊ธฐ์—ฌ.

2. CRISP-DM ๊ฐœ์š”

CRISP-DM (CRoss Industry Standard Process for Data Mining)์€ ๋ฐ์ดํ„ฐ ๋งˆ์ด๋‹ ๋ฐ ๋ฐ์ดํ„ฐ ๊ณผํ•™ ํ”„๋กœ์ ํŠธ๋ฅผ ์œ„ํ•ด ๊ฐ€์žฅ ๋„๋ฆฌ ์‚ฌ์šฉ๋˜๋Š” ํ‘œ์ค€ ํ”„๋กœ์„ธ์Šค ๋ชจ๋ธ์ž…๋‹ˆ๋‹ค.

  • ํŠน์ง•:
    • ์‚ฐ์—… ํ‘œ์ค€ ๋ฐฉ๋ฒ•๋ก  (๊ฐ€์žฅ ๋ณดํŽธ์ ์œผ๋กœ ์‚ฌ์šฉ๋จ).
    • 6๋‹จ๊ณ„์˜ ํ”„๋กœ์„ธ์Šค๋กœ ๊ตฌ์„ฑ๋˜๋ฉฐ, ๊ฐ ๋‹จ๊ณ„๋Š” ์œ ๊ธฐ์ ์ด๊ณ  ๋ฐ˜๋ณต์ (Iterative)์œผ๋กœ ์—ฐ๊ฒฐ๋ฉ๋‹ˆ๋‹ค.
    • ํญํฌ์ˆ˜(Waterfall) ๋ชจ๋ธ๊ณผ ์œ ์‚ฌํ•˜์ง€๋งŒ, ๋‹จ๊ณ„ ๊ฐ„์˜ ํ”ผ๋“œ๋ฐฑ ๋ฃจํ”„(Feedback Loop)๊ฐ€ ์žˆ์–ด ์ด์ „ ๋‹จ๊ณ„๋กœ ๋Œ์•„๊ฐ€ ์ˆ˜์ •ํ•˜๋Š” ๊ฒƒ์ด ์ž์œ ๋กญ์Šต๋‹ˆ๋‹ค.

image.png

๐Ÿ”„ ํ”„๋กœ์„ธ์Šค ๋ผ์ดํ”„์‚ฌ์ดํด (6 Phases)

  1. Business Understanding (๋น„์ฆˆ๋‹ˆ์Šค ์ดํ•ด)
  2. Data Understanding (๋ฐ์ดํ„ฐ ์ดํ•ด)
  3. Data Preparation (๋ฐ์ดํ„ฐ ์ค€๋น„)
  4. Modeling (๋ชจ๋ธ๋ง)
  5. Evaluation (ํ‰๊ฐ€)
  6. Deployment (๋ฐฐํฌ)

image.png


3. CRISP-DM ์„ธ๋ถ€ ๋‹จ๊ณ„

Phase 1: Business Understanding (๋น„์ฆˆ๋‹ˆ์Šค ์ดํ•ด)

ํ”„๋กœ์ ํŠธ์˜ ๊ธฐ์ดˆ๋ฅผ ๋‹ค์ง€๋Š” ๊ฐ€์žฅ ์ค‘์š”ํ•œ ๋‹จ๊ณ„๋กœ, ์‚ฌ์—… ๊ด€์ ์—์„œ ๋ชฉํ‘œ๋ฅผ ์„ค์ •ํ•ฉ๋‹ˆ๋‹ค.

  • ์ฃผ์š” ํƒœ์Šคํฌ:
    • ๋น„์ฆˆ๋‹ˆ์Šค ๋ชฉํ‘œ ์„ค์ •: ๊ณ ๊ฐ ์ดํƒˆ ๋ฐฉ์ง€, ๊ต์ฐจ ํŒ๋งค(Cross-selling) ์ฆ๋Œ€ ๋“ฑ.
    • ์ƒํ™ฉ ํ‰๊ฐ€: ์ž์›, ์š”๊ตฌ์‚ฌํ•ญ, ์œ„ํ—˜ ์š”์†Œ, ๋น„์šฉ/ํ˜œํƒ ๋ถ„์„.
    • ๋ฐ์ดํ„ฐ ๋งˆ์ด๋‹ ๋ชฉํ‘œ ์„ค์ •: ๋น„์ฆˆ๋‹ˆ์Šค ๋ชฉํ‘œ๋ฅผ ๊ธฐ์ˆ ์  ๋ชฉํ‘œ๋กœ ๋ณ€ํ™˜ (์˜ˆ: ์ดํƒˆ๋ฅ  10% ๊ฐ์†Œ โ†’ ์ดํƒˆ ์˜ˆ์ธก ๋ชจ๋ธ ์ •ํ™•๋„ 85% ๋‹ฌ์„ฑ).
    • ํ”„๋กœ์ ํŠธ ๊ณ„ํš ์ˆ˜๋ฆฝ: ๋‹จ๊ณ„๋ณ„ ์ผ์ • ๋ฐ ๋„๊ตฌ ์„ ์ •.
  • E-์†Œ๋งค์—… ์˜ˆ์‹œ: ๊ฒฝ์Ÿ ์‹ฌํ™”๋กœ ์ธํ•œ ์ˆ˜์ต์„ฑ ์œ ์ง€๋ฅผ ์œ„ํ•ด '๊ธฐ์กด ๊ณ ๊ฐ ๊ด€๊ณ„ ๊ฐ•ํ™”'๋ฅผ ๋น„์ฆˆ๋‹ˆ์Šค ๋ชฉํ‘œ๋กœ ์„ค์ •.

Phase 2: Data Understanding (๋ฐ์ดํ„ฐ ์ดํ•ด)

๋ฐ์ดํ„ฐ๋ฅผ ์ˆ˜์ง‘ํ•˜๊ณ  ์ดˆ๊ธฐ ํƒ์ƒ‰์„ ํ†ตํ•ด ๋ฐ์ดํ„ฐ์™€ ์นœ์ˆ™ํ•ด์ง€๋Š” ๋‹จ๊ณ„์ž…๋‹ˆ๋‹ค.

  • ์ฃผ์š” ํƒœ์Šคํฌ:
    • ์ดˆ๊ธฐ ๋ฐ์ดํ„ฐ ์ˆ˜์ง‘: ์‚ฌ๋‚ด ๋ฐ์ดํ„ฐ(๋กœ๊ทธ, ๊ฑฐ๋ž˜ ๋‚ด์—ญ) ๋ฐ ์™ธ๋ถ€ ๋ฐ์ดํ„ฐ ํ™•๋ณด.
    • ๋ฐ์ดํ„ฐ ๊ธฐ์ˆ (Describe): ๋ฐ์ดํ„ฐ์˜ ์–‘, ํ˜•์‹, ์†์„ฑ ํŒŒ์•….
    • ๋ฐ์ดํ„ฐ ํƒ์ƒ‰(Explore): ์‹œ๊ฐํ™”, ๊ธฐ์ดˆ ํ†ต๊ณ„๋Ÿ‰์„ ํ†ตํ•ด ๊ฐ€์„ค ์ˆ˜๋ฆฝ ๋ฐ ํŒจํ„ด ๋ฐœ๊ฒฌ.
    • ๋ฐ์ดํ„ฐ ํ’ˆ์งˆ ๊ฒ€์ฆ: ๊ฒฐ์ธก์น˜, ์˜ค๋ฅ˜, ๋ถˆ์ผ์น˜ ๋ฐ์ดํ„ฐ ํ™•์ธ.

Phase 3: Data Preparation (๋ฐ์ดํ„ฐ ์ค€๋น„)

๋ชจ๋ธ๋ง์„ ์œ„ํ•ด ๋ฐ์ดํ„ฐ๋ฅผ ๊ฐ€๊ณตํ•˜๋Š” ๋‹จ๊ณ„๋กœ, ์ „์ฒด ํ”„๋กœ์ ํŠธ ์‹œ๊ฐ„์˜ 50~80%๊ฐ€ ์†Œ์š”๋˜๋Š” ๊ฐ€์žฅ ๊ณ ๋œ ์ž‘์—…์ž…๋‹ˆ๋‹ค.

  • ์ฃผ์š” ํƒœ์Šคํฌ:
    • ๋ฐ์ดํ„ฐ ์„ ํƒ: ๋ถ„์„์— ํ•„์š”ํ•œ ๋ฐ์ดํ„ฐ(ํ–‰/์—ด)๋งŒ ์„ ๋ณ„.
    • ๋ฐ์ดํ„ฐ ์ •์ œ(Cleaning): ๊ฒฐ์ธก์น˜ ์ฒ˜๋ฆฌ, ๋…ธ์ด์ฆˆ ์ œ๊ฑฐ, ์˜ค๋ฅ˜ ์ˆ˜์ •.
    • ๋ฐ์ดํ„ฐ ๊ตฌ์ถ•(Construct): ํŒŒ์ƒ ๋ณ€์ˆ˜ ์ƒ์„ฑ (์˜ˆ: ํ‚ค, ๋ชธ๋ฌด๊ฒŒ โ†’ BMI).
    • ๋ฐ์ดํ„ฐ ํ†ตํ•ฉ(Integrate): ์—ฌ๋Ÿฌ ๋ฐ์ดํ„ฐ ์†Œ์Šค(ํ…Œ์ด๋ธ”) ๋ณ‘ํ•ฉ.
    • ๋ฐ์ดํ„ฐ ํฌ๋งทํŒ…: ๋ชจ๋ธ๋ง ๋„๊ตฌ์— ๋งž๋Š” ํ˜•์‹์œผ๋กœ ๋ณ€ํ™˜.

Phase 4: Modeling (๋ชจ๋ธ๋ง)

๋‹ค์–‘ํ•œ ๊ธฐ๋ฒ•์„ ์ ์šฉํ•˜์—ฌ ๋ชจ๋ธ์„ ๊ตฌ์ถ•ํ•˜๊ณ  ์ตœ์ ํ™”ํ•˜๋Š” ๋‹จ๊ณ„์ž…๋‹ˆ๋‹ค. ๋ฐ์ดํ„ฐ ์ค€๋น„ ๋‹จ๊ณ„์™€ ๋นˆ๋ฒˆํ•˜๊ฒŒ ์ƒํ˜ธ์ž‘์šฉํ•ฉ๋‹ˆ๋‹ค.

  • ์ฃผ์š” ํƒœ์Šคํฌ:
    • ๊ธฐ๋ฒ• ์„ ํƒ: ๋ฌธ์ œ ์œ ํ˜•(๋ถ„๋ฅ˜, ํšŒ๊ท€, ๊ตฐ์ง‘ ๋“ฑ)์— ๋งž๋Š” ์•Œ๊ณ ๋ฆฌ์ฆ˜ ์„ ํƒ.
    • ํ…Œ์ŠคํŠธ ์„ค๊ณ„: ํ•™์Šต(Train) ๋ฐ์ดํ„ฐ์™€ ๊ฒ€์ฆ(Test) ๋ฐ์ดํ„ฐ ๋ถ„ํ• .
    • ๋ชจ๋ธ ์ž‘์„ฑ: ํŒŒ๋ผ๋ฏธํ„ฐ ํŠœ๋‹ ๋ฐ ๋ชจ๋ธ ์ƒ์„ฑ.
    • ๋ชจ๋ธ ํ‰๊ฐ€(๊ธฐ์ˆ ์ ): ๋ชจ๋ธ์˜ ์ •ํ™•๋„, ์˜ค์ฐจ์œจ ๋“ฑ์„ ๊ธฐ์ˆ ์ ์œผ๋กœ ๊ฒ€์ฆ.

Phase 5: Evaluation (ํ‰๊ฐ€)

๋ชจ๋ธ์ด ๊ธฐ์ˆ ์ ์œผ๋กœ ์šฐ์ˆ˜ํ•˜๋”๋ผ๋„ ๋น„์ฆˆ๋‹ˆ์Šค ๋ชฉ์ ์„ ๋‹ฌ์„ฑํ•  ์ˆ˜ ์žˆ๋Š”์ง€ ์ตœ์ข… ํ™•์ธํ•˜๋Š” ๋‹จ๊ณ„์ž…๋‹ˆ๋‹ค.

  • ์ฃผ์š” ํƒœ์Šคํฌ:
    • ๊ฒฐ๊ณผ ํ‰๊ฐ€: ๋ชจ๋ธ์ด ๋น„์ฆˆ๋‹ˆ์Šค ์„ฑ๊ณต ๊ธฐ์ค€(์˜ˆ: ROI, ๋น„์šฉ ์ ˆ๊ฐ)์„ ์ถฉ์กฑํ•˜๋Š”์ง€ ํ™•์ธ.
    • ํ”„๋กœ์„ธ์Šค ๊ฒ€ํ† : ๋ˆ„๋ฝ๋œ ์š”์†Œ๋‚˜ ์‹ค์ˆ˜๊ฐ€ ์—†๋Š”์ง€ ์ „์ฒด ๊ณผ์ • ์žฌ์ ๊ฒ€.
    • ๋‹ค์Œ ๋‹จ๊ณ„ ๊ฒฐ์ •: ๋ฐฐํฌํ•  ๊ฒƒ์ธ์ง€, ํ”„๋กœ์ ํŠธ๋ฅผ ๋ฐ˜๋ณต(์ˆ˜์ •)ํ•  ๊ฒƒ์ธ์ง€ ๊ฒฐ์ •.

Phase 6: Deployment (๋ฐฐํฌ)

์™„์„ฑ๋œ ๋ชจ๋ธ์„ ์‹ค์ œ ํ˜„์—…(๊ณ ๊ฐ)์ด ์‚ฌ์šฉํ•  ์ˆ˜ ์žˆ๋„๋ก ์ ์šฉํ•˜๋Š” ๋‹จ๊ณ„์ž…๋‹ˆ๋‹ค.

  • ์ฃผ์š” ํƒœ์Šคํฌ:
    • ๋ฐฐํฌ ๊ณ„ํš: ๋ชจ๋ธ์„ ์‹œ์Šคํ…œ์— ํ†ตํ•ฉํ•˜๊ฑฐ๋‚˜ ๋ฆฌํฌํŠธ ํ˜•ํƒœ๋กœ ์ „๋‹ฌ.
    • ๋ชจ๋‹ˆํ„ฐ๋ง ๋ฐ ์œ ์ง€๋ณด์ˆ˜ ๊ณ„ํš: ๋ชจ๋ธ ์„ฑ๋Šฅ ์ €ํ•˜ ๊ฐ์ง€ ๋ฐ ์žฌํ•™์Šต ๊ณ„ํš ์ˆ˜๋ฆฝ.
    • ์ตœ์ข… ๋ณด๊ณ ์„œ ์ž‘์„ฑ: ํ”„๋กœ์ ํŠธ ์„ฑ๊ณผ ๋ฐ ๋ฌธ์„œํ™”.
    • ํ”„๋กœ์ ํŠธ ํšŒ๊ณ : ๊ตํ›ˆ ๋ฐ ๊ฐœ์„ ์  ๋„์ถœ.

4. CRISP-DM์˜ ํ‰๊ฐ€ (์žฅ๋‹จ์ )

โœ… ์žฅ์  (Strengths)

  • ์ƒ์‹์ ์ด๊ณ  ์ง๊ด€์ : ๋ฐ์ดํ„ฐ ๊ณผํ•™์ž๊ฐ€ ์ž์—ฐ์Šค๋Ÿฝ๊ฒŒ ์ˆ˜ํ–‰ํ•˜๋Š” ์ž‘์—… ํ๋ฆ„๊ณผ ์ผ์น˜ํ•จ.
  • ์œ ์—ฐ์„ฑ: ๋ฐ˜๋ณต์ ์ธ(Iterative) ํŠน์„ฑ์„ ์ง€์›ํ•˜์—ฌ, ๊ฒฝํ—˜์  ์ง€์‹์„ ๋‹ค์Œ ์‚ฌ์ดํด์— ๋ฐ˜์˜ ๊ฐ€๋Šฅ.
  • ๋น„์ฆˆ๋‹ˆ์Šค ์ค‘์‹ฌ: ์ดˆ๊ธฐ ๋‹จ๊ณ„๋ถ€ํ„ฐ ๋น„์ฆˆ๋‹ˆ์Šค ๋ชฉํ‘œ๋ฅผ ๊ฐ•์กฐํ•˜์—ฌ ๊ธฐ์ˆ ์  ํ•จ์ •์— ๋น ์ง€๋Š” ๊ฒƒ์„ ๋ฐฉ์ง€.
  • ๋ฒ”์šฉ์„ฑ: ํŠน์ • ์‚ฐ์—…์ด๋‚˜ ๋„๊ตฌ์— ์ข…์†๋˜์ง€ ์•Š์Œ.

โš ๏ธ ๋‹จ์  ๋ฐ ํ•œ๊ณ„ (Weaknesses)

  • ํŒ€ ํ˜‘์—… ๋„๊ตฌ ๋ถ€์žฌ: ํ”„๋กœ์ ํŠธ ๊ด€๋ฆฌ(PM) ๋ฐฉ๋ฒ•๋ก ์ด๋ผ๊ธฐ๋ณด๋‹ค ๊ฐœ์ธ์ด๋‚˜ ์†Œ๊ทœ๋ชจ ํŒ€์˜ ์ž‘์—… ํ๋ฆ„์— ๊ฐ€๊นŒ์›€ (ํ˜‘์—…, ์˜์‚ฌ์†Œํ†ต ๊ธฐ๋Šฅ ๋ถ€์กฑ).
  • ๋ฌธ์„œํ™” ๋ถ€๋‹ด: ๊ฐ ๋‹จ๊ณ„๋งˆ๋‹ค ๋ฐฉ๋Œ€ํ•œ ๋ฌธ์„œํ™”๋ฅผ ์š”๊ตฌํ•˜์—ฌ ์• ์ž์ผ(Agile) ํ™˜๊ฒฝ์—์„œ ์†๋„๋ฅผ ์ €ํ•˜์‹œํ‚ฌ ์ˆ˜ ์žˆ์Œ.
  • ์šด์˜ ๋‹จ๊ณ„ ๋ฏธํก: 1999๋…„์— ๋งŒ๋“ค์–ด์ ธ ํ˜„๋Œ€์˜ MLOps(์ง€์†์  ์šด์˜ ๋ฐ ๋ฐฐํฌ) ๊ฐœ๋…์ด ๋ถ€์กฑํ•จ.
  • ๋А๋ฆฐ ์‹œ์ž‘: ์›Œํ„ฐํด ๋ฐฉ์‹๊ณผ ์œ ์‚ฌํ•˜๊ฒŒ ์ดˆ๊ธฐ ๋‹จ๊ณ„(๋น„์ฆˆ๋‹ˆ์Šค/๋ฐ์ดํ„ฐ ์ดํ•ด)์— ์‹œ๊ฐ„์„ ๋งŽ์ด ์จ์„œ ๊ฒฐ๊ณผ๋ฌผ ํ™•์ธ์ด ๋Šฆ์–ด์งˆ ์ˆ˜ ์žˆ์Œ.

๐Ÿ’ก ๊ฐœ์„  ๋ฐฉํ–ฅ (Action Item)

  • Agile/Scrum๊ณผ ๊ฒฐํ•ฉ: CRISP-DM์˜ ๋‹จ๊ณ„๋ฅผ ์œ ์ง€ํ•˜๋˜, ์Šคํฌ๋Ÿผ(Scrum)์ด๋‚˜ ์นธ๋ฐ˜(Kanban)์„ ๋„์ž…ํ•˜์—ฌ ํŒ€ ํ˜‘์—…๊ณผ ์šฐ์„ ์ˆœ์œ„ ๊ด€๋ฆฌ๋ฅผ ๋ณด์™„.
  • ์—ญํ•  ์ •์˜: ์ดํ•ด๊ด€๊ณ„์ž, PO(Product Owner), ๋ฐ์ดํ„ฐ ๊ณผํ•™์ž ๋“ฑ ํŒ€ ์—ญํ• ์„ ๋ช…ํ™•ํžˆ ์ •์˜.
  • ๋น ๋ฅธ ๋ฐ˜๋ณต: ์™„๋ฒฝํ•œ ๋ชจ๋ธ์„ ๋งŒ๋“ค๊ธฐ๋ณด๋‹ค, ๋น ๋ฅด๊ฒŒ ๋ฐ˜๋ณต(Iteration)ํ•˜์—ฌ ์ž‘์€ ๊ฐ€์น˜๋ฅผ ์ง€์†์ ์œผ๋กœ ์ „๋‹ฌ.

0๊ฐœ์˜ ๋Œ“๊ธ€