๐ŸŽฎ GAME & DEV/AI

SVM(Support Vector Machines)

Blue Sky! 2017. 5. 23. 15:06


SVM์˜ ์ •์˜

SVM(Support Vecotr Machines) ๋Š” Linear Classifier ์ค‘์— ํ•˜๋‚˜์ž…๋‹ˆ๋‹ค.

Linear Classifier์ด๋ž€, ๋งŒ์•ฝ ์–ด๋– ํ•œ ๋ฐ์ดํ„ฐ๊ฐ€ Positiveํ•œ ๋ฐ์ดํ„ฐ์™€ Negative ๋ฐ์ดํ„ฐ๋ฅผ ๊ฐ€์ง€๊ณ  ์žˆ์„๋•Œ

์ด๋Ÿฌํ•œ ๊ตฌ๋ถ„์„ ๋งŒ๋“ค์–ด ์ฃผ๋Š” ์„ ์„ ๊ธ‹๋Š”๊ฑธ Boundary ๋ผ ํ•œ๋‹ค๋ฉด

Linear Classifier๋Š” ๊ทธ Boundary๊ฐ€  Linear ํ•จ์„ ๋œปํ•ฉ๋‹ˆ๋‹ค.

์ด๊ฒƒ์„ ๋งŒ์•ฝ 2์ฐจ์›์ ์œผ๋กœ ํ‘œํ˜„ํ•œ๋‹ค๋ฉด Line์œผ๋กœ ํ‘œํ˜„ํ• ์ˆ˜ ์žˆ์„๊ฒƒ์ด๊ณ  ๋งŒ์•ฝ ์ข€๋” ๊ณ ์ฐจ์›์ด๋ผ๊ณ  ํ•œ๋‹ค๋ฉด HyperPlane์ด๋ผ ๋ถ€๋ฆ…๋‹ˆ๋‹ค.


์šฉ์–ด ์„ค๋ช…

VC Dimension ์ด๋ผ๋Š”๊ฒƒ์€ Shattering ํ• ์ˆ˜ ์žˆ๋Š” Maximum Number of data Points ์ž…๋‹ˆ๋‹ค.

Dichotomy๋ผ๋Š”๊ฒƒ์€ ํ•˜๋‚˜์˜ Set์„ ๋‘๊ฐœ๋กœ ๋‚˜๋ˆ„๋Š” ๊ฒƒ

Shattering ์ด๋ผ๋Š”๊ฒƒ์€ ๋ฐ์ดํ„ฐ๋ฅผ ์—ฌ๋Ÿฌ๊ฐœ์˜ SubSet์œผ๋กœ ๋‚˜๋ˆด์„๋•Œ ์ด๊ฒƒ์„ ์šฐ๋ฆฌ๊ฐ€ dichotomy๋ผ๊ณ  ํ•˜๊ณ  Shattering ์ด๋ผ๋Š”๊ฒƒ์€ ์ด Classifier๊ฐ€ ์—ฌ๋Ÿฌ๊ฐœ์˜ subset์„ ๋‹ค ํ‘œํ˜„ํ• ์ˆ˜ ์žˆ๋Š”๊ฐ€์— ๋Œ€ํ•œ ์„ค๋ช…์ž…๋‹ˆ๋‹ค.


SVM์—์„œ๋Š” ์ค‘์š”ํ•œ 3๊ฐ€์ง€๊ฐ€ ์กด์žฌํ•ฉ๋‹ˆ๋‹ค.


1. Margin

SVM์—์„œ Margin์„ Maximizeํ•œ๋‹ค๋Š”๊ฒƒ์€ ๊ฒฐ๊ตญ์—” Shattering์„ ํ•  ์ˆ˜ ์žˆ๋Š” ๊ฐ€๋Šฅ์„ฑ์„ ๋‚ฎ์ถ˜๋‹ค๋Š” ์ด์•ผ๊ธฐ์ด๊ณ  ์ด๋ง์€ Shattering์„ ํ• ์ˆ˜ ์žˆ๋Š” Potential data Set์„ ์ค„์ธ๋‹ค๋Š” ์ด์•ผ๊ธฐ์™€ ๊ฐ™๋‹ค.

์ฆ‰, Margin์ด ์ปค์ง€๋ฉด ๊ทธ๋งŒํผ VC Dimension์ด ์ค„์–ด๋“ ๋‹ค. ๊ทธ๋Ÿฌ๋ฏ€๋กœ ์ „์ฒด Data Set์— ๋Œ€ํ•ด Error๊ฐ€ ์ค„์–ด๋“ ๋‹ค๋Š” ๊ฒƒ์ด ์ด๋ก ์ด๋‹ค. ์‹ค์ œ๋กœ SVM์„ Training ์‹œ์ผœ์„œ data set์— ์ ์šฉํ•ด๋ณด๋ฉด Margin์ด ํด์ˆ˜๋ก ์ •ํ™•๋„๊ฐ€ ๋†’์•„์ง„๋‹ค.


2. Support Vector

3. Kernels