Watson Studio์™€ ์—ฐ๊ณ„๋œ Watson Natural Language Classifier์˜ ์ƒˆ๋กœ์šด ํ•™์Šต ๋„๊ตฌ๋ฅผ ์‚ฌ์šฉํ•˜์—ฌ ์ด๋ฉ”์ผ ๋ถ„๋ฅ˜๋ฅผ ํ•™์Šต์‹œํ‚ค๊ณ  ์ด๋ฅผ Node.js ์–ดํ”Œ๋ฆฌ์ผ€์ด์…˜์—์„œ ํ™œ์šฉํ•˜๋Š” Code๋ฅผ ์ง„ํ–‰ํ•ด ๋ณด๊ฒ ์Šต๋‹ˆ๋‹ค.

Flow

  • NLC(Natural Language Classifier) GUI๋ฅผ ์‚ฌ์šฉํ•˜์—ฌ ์ŠคํŒธ๋ฉ”์ผ ํ•™์Šต
  • ํ•™์Šต์šฉ EDRM ์ƒ˜ํ”Œ ์ด๋ฉ”์ผ ๋ฐ์ดํ„ฐ ์…‹์„ NLC ์„œ๋น„์Šค์— ์ ์žฌ
  • ์ด๋ฉ”์ผ ํ…์ŠคํŠธ๋ฅผ ํ•™์Šต๋œ NLC ์„œ๋น„์Šค๋ฅผ ํฌํ•จํ•œ ์–ดํ”Œ๋ฆฌ์ผ€์ด์…˜์— ์ ์šฉ
  • ์–ดํ”Œ๋ฆฌ์ผ€์ด์…˜์€ ํ•™์Šต๋œ NLC๋ฅผ ํ†ตํ•ด ์ด๋ฉ”์ผ ํ…์ŠคํŠธ๊ฐ€ Phishing์ธ์ง€ Spam์ธ์ง€ ํ˜น์€ ham์ธ์ง€ ๋ถ„๋ฅ˜ํ•œ ๊ฒฐ๊ณผ๋ฅผ ์ œ๊ณต

Step

  • Clone the repo
  • Watson NLC ์„œ๋น„์Šค ์ƒ์„ฑ
  • Watson NLC ํ•™์Šต
  • ์–ดํ”Œ๋ฆฌ์ผ€์ด์…˜ ์ˆ˜์ •
  • ์–ดํ”Œ๋ฆฌ์ผ€์ด์…˜ ์‹คํ–‰

1.Clone the repo

  • clone์„ ์ˆ˜ํ–‰ํ•  ๋””๋ ‰ํ† ๋ฆฌ ์ƒ์„ฑ ํ˜น์€ ์ด๋™ํ•˜์—ฌ git clone ์ˆ˜ํ–‰

    $ git clone https://github.com/IBM/nlc-email-phishing
  • clone ๊ฒฐ๊ณผ ํ™•์ธ

  • clone ๋œ ๋‚ด์šฉ ํ™•์ธ

  • 2.Watson NLC ์„œ๋น„์Šค ์ƒ์„ฑ

    • IBM Cloud ์— ๋กœ๊ทธ์ธ

    • ์นดํƒˆ๋กœ๊ทธ์—์„œ Watson Natural Language Classifier ์„ ํƒ ๋‹จ, NLC์˜ ๊ฒฝ์šฐ ๋ฌด๋ฃŒ ๊ฐ€๊ฒฉ์ •์ฑ…์ด ์—†์–ด ํ‘œ์ค€์œผ๋กœ ๊ตฌ๋งคํ•ด์•ผ ํ•จ

    • ์ƒ์„ฑ๋œ NLC ์„œ๋น„์Šค ํ™•์ธ

    • ํ•™์Šต์„ ์œ„ํ•ด ‘์‹คํ–‰๋„๊ตฌ’๋ฅผ ์„ ํƒํ•˜๋ฉด ์—ฐ๊ณ„๋œ Watson Studio ์„œ๋น„์Šค๋กœ ์ด๋™

    • Project name๊ณผ IBM Cloud object storage ๋ฅผ ์„ ํƒ ํ˜น์€ ์ƒ์„ฑํ›„ ์„ ํƒ

    • Classifier ์ด๋ฆ„์„ ์ž…๋ ฅํ›„ (์˜ˆ:Detect_email_phishing) ์ƒ์„ฑ

    • NLC ํ•™์Šต๋ฐ์ดํ„ฐ๋ฅผ ์ƒ์„ฑํ•œ ํ”„๋กœ์ ํŠธ์— ์—…๋กœ๋“œํ›„ ์—…๋กœ๋“œํ•œ ๋ฐ์ดํ„ฐ๋ฅผ ์ƒ์„ฑํ•œ Classifier ์— ํ• ๋‹น ๋‹จ,๋ฐ์ดํ„ฐ๋Š” Cloneํ•œ data ํด๋”๋‚ด ์กด์žฌ

    • ์ƒ์„ฑํ•œ Classifier์— ํ•™์Šต์šฉ์œผ๋กœ ๋ถ„๋ฅ˜ํ•œ ์ด๋ฉ”์ผ์ด Class ํ˜•ํƒœ๋กœ ์ ์žฌ๋œ ๊ฒƒ์„ ํ™•์ธ

    • ํ•™์Šต๋ฐ์ดํ„ฐ ํ™•์ธ

    • ์˜ค๋ฅธ์ชฝ ์ƒ๋‹จ์˜ Train ๋ฒ„ํŠผ์™€ ์–ธ์–ด=English๋ฅผ ์„ ํƒ

    • 3.์–ดํ”Œ๋ฆฌ์ผ€์ด์…˜ ์ˆ˜์ •

    • ์–ดํ”Œ๋ฆฌ์ผ€์ด์…˜์—์„œ NLCํ˜ธ์ถœ์„ ์œ„ํ•ด ํ•„์š”ํ•œ ์„œ๋น„์Šค์‹ ์ž„์ •๋ณด๋ฅผ ํ™•์ธ

    • ์–ดํ”Œ๋ฆฌ์ผ€์ด์…˜์˜ ํ™˜๊ฒฝ๋ณ€์ˆ˜ ์ˆ˜์ •. ๊ธฐ์กด API๋Š” ID/PW ๋ฐฉ์‹์ด์—ˆ์œผ๋‚˜ ํ˜„์žฌ API๋Š” API Key๋ฐฉ์‹์ด์–ด์„œ ๋ฒ„์ „์— ๋งž์ถฐ ๋ณ€๊ฒฝํ•˜๊ณ  ์•ž๋‹จ๊ณ„์—์„œ ์ƒ์„ฑํ•œ Classifier ID๋ฅผ ์—…๋ฐ์ดํŠธ

    • ์–ดํ”Œ๋ฆฌ์ผ€์ด์…˜์—์„œ NLC๋ฅผ ID/PW ํ˜ธ์ถœ๋ฐฉ์‹์˜ SDK๋ฅผ API Key๋ฐฉ์‹์œผ๋กœ ํ˜ธ์ถœํ•˜๋„๋ก ์ˆ˜์ •

    • 4.์–ดํ”Œ๋ฆฌ์ผ€์ด์…˜ ์‹คํ–‰

    • cloneํ•œ ๋กœ์ปฌ ์œ„์น˜์—์„œ npm install

    • cloneํ•œ ๋กœ์ปฌ ์œ„์น˜์—์„œ npm start

    • localhost์—์„œ ์–ดํ”Œ๋ฆฌ์ผ€์ด์…˜ ์‹คํ–‰

    • ์ด๋ฉ”์ผ ๋ถ„๋ฅ˜ํ•ด๋ณด๊ธฐ. ์ด๋ฉ”์ผ ๋ถ„๋ฅ˜๊ฒฐ๊ณผ๋Š” Class์™€ ํ•ด๋‹น Class๋กœ ๋ถ„๋ฅ˜๋œ ์‹ ๋ขฐ๋„๋ฅผ ์ œ๊ณต

    • **์›๋ณธ Code Pattern – Detect email phishing with Watson Natural Language Classifier