๋ณธ๋ฌธ ๋ฐ”๋กœ๊ฐ€๊ธฐ
๋จธ์‹ ๋Ÿฌ๋‹, ๋”ฅ๋Ÿฌ๋‹/Paper Classification

Kaggle ํƒ€์ดํƒ€๋‹‰ ์˜ˆ์ œ

by ํ–‰๋ฑ 2020. 2. 25.

Kaggle

- ๋ฐ์ดํ„ฐ ์‚ฌ์ด์–ธ์Šค ๊ฒฝ์ง„๋Œ€ํšŒ ์›น์‚ฌ์ดํŠธ

- Datasets ํ™œ์šฉ ๊ฐ€๋Šฅ

- ์˜จ๋ผ์ธ IDE ("Kernel") ์„ ๋ฌด๋ฃŒ๋กœ ์ œ๊ณตํ•˜๊ณ , ๋ฐ์ดํ„ฐ ์‚ฌ์ด์–ธ์Šค ํŒจํ‚ค์ง€๊ฐ€ ์ด๋ฏธ ์„ค์น˜๋˜์–ด ์žˆ์Œ

- ์˜ˆ์ธก ๋ชจ๋ธ๋ง์„ ํ•˜์—ฌ ์ œ์ถœํ•˜๋ฉด ๋ฆฌ๋”๋ณด๋“œ์—์„œ ์ˆœ์œ„ ํ™•์ธ ๊ฐ€๋Šฅ

 

 

ํƒ€์ดํƒ€๋‹‰ ์˜ˆ์ œ ์˜์ƒ [1/3]

- ๋ฌธ์ œ ๋ถ„์„ + ๋ฐ์ดํ„ฐ ๋ถ„์„

- ๊ฐ„๋‹จํ•œ ๋ฌธ์ œ ๋ถ„์„: ํƒ€์ดํƒ€๋‹‰ ํƒ‘์Šน์ž ์ค‘ ์–ด๋–ค ์‚ฌ๋žŒ์ด ์‚ด์•˜๊ณ  ์–ด๋–ค ์‚ฌ๋žŒ์ด ์ฃฝ์—ˆ๋Š”์ง€ ์˜ˆ์ธกํ•˜๋Š” ๊ฒƒ

- ๊ฐ Feature๊ฐ€ Target(= Survived/Dead)์™€ ์–ด๋–ค ๊ด€๊ณ„๊ฐ€ ์žˆ๋Š”์ง€ ๊ทธ๋ž˜ํ”„๋กœ ํ™•์ธ

- Feature engineering ๋‹จ๊ณ„์˜ ๋ฐฉํ–ฅ์„ฑ์„ ์žก์Œ

 

 

ํƒ€์ดํƒ€๋‹‰ ์˜ˆ์ œ ์˜์ƒ [2/3]

- Feature engineering

- ํ…์ŠคํŠธ ๊ฐ’์„ ์ˆซ์ž๋กœ ๋ฐ”๊พธ๊ณ , ๋น ์ง„ ๊ฐ’๋“ค์„ ์ฑ„์›Œ ๋„ฃ์–ด์ฃผ๋ฉด์„œ ๋ฒกํ„ฐํ™” ํ•˜๋Š” ๊ฒƒ

- ๊ฐ€๋ น Title์ด 'Mr'์ธ ์‚ฌ๋žŒ์˜ Age๊ฐ€ ๋น ์ ธ์žˆ๋‹ค๋ฉด, 'Mr'์˜ ์ค‘๊ฐ„๊ฐ’์œผ๋กœ ๋„ฃ์–ด์ค„ ์ˆ˜ ์žˆ์Œ (์ „์ฒด ์ธ์›์˜ ์ค‘๊ฐ„๊ฐ’๋ณด๋‹ค ๋‚˜์Œ)

- Binning: ์˜๋ฏธ์—†๋Š” Sequential data๋ฅผ ๋ช‡ ๊ฐœ์˜ ์นดํ…Œ๊ณ ๋ฆฌ๋กœ Groupingํ•˜๋Š” ๊ฒƒ

- ๊ฐ€๋ น Age๋Š” Sequential data์ง€๋งŒ ๋‚˜์ด ํ•˜๋‚˜ํ•˜๋‚˜๊ฐ€ ์˜๋ฏธ๋ฅผ ๊ฐ–๋Š”๋‹ค๊ธฐ ๋ณด๋‹ค ๋‚˜์ด๋Œ€๊ฐ€ ์˜๋ฏธ๋ฅผ ๊ฐ€์ง€๋ฏ€๋กœ ๋‚˜์ด๋Œ€๋ณ„๋กœ ์–ด๋ฆฐ์ด/์ฒญ๋…„/์ค‘๋…„/์žฅ๋…„์œผ๋กœ ๋‚˜๋ˆŒ ์ˆ˜ ์žˆ์Œ

- Feature scaling: Classifier๋Š” Euclidean distance๋ฅผ ์“ฐ๊ธฐ ๋•Œ๋ฌธ์— ์ˆซ์ž์˜ ๋ฒ”์œ„๊ฐ€ ํฌ๋ฉด ์ค‘์š”๋„๋ฅผ ๋†’๊ฒŒ ๊ฐ€์ ธ๊ฐˆ ์ˆ˜๋„ ์žˆ์Œ. ๊ทธ๋ž˜์„œ ๊ฐ’์„ ์กฐ์ •ํ•ด์ฃผ๋Š” ๊ฒƒ์ด Feature scaling.

- ๊ฐ€๋ น ์–ด๋–ค Feature๊ฐ€ 6๊ฐœ ์ข…๋ฅ˜๋ฅผ ๊ฐ€์ง„๋‹ค๋ฉด, 0~5๋ฅผ ์‚ฌ์šฉํ•˜์ง€ ์•Š๊ณ  0~2๋กœ ์กฐ์ •ํ•  ์ˆ˜ ์žˆ์Œ

- ์˜๋ฏธ์—†๋Š” Feature๋Š” Drop ํ•ด์คŒ

 

 

ํƒ€์ดํƒ€๋‹‰ ์˜ˆ์ œ ์˜์ƒ [3/3]

Classifiers

1) kNN

- k๊ฐ’์— ๋”ฐ๋ผ ๊ฒฐ๊ณผ๊ฐ€ ๋‹ฌ๋ผ์ง€๋ฏ€๋กœ k๊ฐ’์„ ๋ฐ”๊ฟ”๊ฐ€๋ฉฐ Accuracy ๋ณ€ํ™” ๊ด€์ฐฐ ํ•„์š”

2) Decision tree

- ๊ฐ–๊ณ  ์žˆ๋Š” Feature๋กœ Tree๋ฅผ ๋นŒ๋“œ์‹œํ‚ค๊ณ , ๊ฐ๊ฐ์˜ ๋ฐ์ดํ„ฐ์— ๋Œ€ํ•ด ํŠธ๋ฆฌ๋ฅผ ๋”ฐ๋ผ๊ฐ€๋Š” ๊ฒƒ

3) Random forest

- ์—ฌ๋Ÿฌ ๊ฐœ์˜ ์ž‘์€ Decision tree๋กœ ๊ตฌ์„ฑ

- ์˜ˆ์ปจ๋Œ€ Feature๊ฐ€ 9๊ฐœ๊ณ  Tree๊ฐ€ 3๊ฐœ๋ฉด Feature๋ฅผ 3๊ฐœ/3๊ฐœ/3๊ฐœ๋กœ ๋‚˜๋ˆ”

- ๊ทธ ์—ฌ๋Ÿฌ Tree์˜ ๊ฒฐ๊ณผ ์ค‘ ๋งŽ์€ ์ชฝ์œผ๋กœ ๊ฒฐ์ •

4) Naive Bayes

5) SVM

- ๊ฐ€์žฅ ๋งˆ์ง€๋ง‰์˜ ์‚ฐ ๋ฐ์ดํ„ฐ์™€ ์ฃฝ์€ ๋ฐ์ดํ„ฐ ์‚ฌ์ด์˜ ๊ฐ€์žฅ ๊ธด ๊ฑฐ๋ฆฌ๋ฅผ ๋งŒ๋“œ๋Š” ์ง์„ ์„ ๋งŒ๋“ฆ

- ๊ทธ ์ง์„ ์„ Decision boundary ๋ผ๊ณ  ํ•จ

- Decision boundary์˜ ์œ„์ชฝ์— ์žˆ๋Š”์ง€, ์•„๋ž˜์ชฝ์— ์žˆ๋Š”์ง€์— ๋”ฐ๋ผ ๊ฒฐ๊ณผ ๊ฒฐ์ •

 

Validation

1) Train data์—์„œ ์ผ๋ถ€๋ฅผ ๋–ผ์–ด Valid data๋กœ ์‚ฌ์šฉํ•˜๋Š” ๋ฐฉ๋ฒ•

- ์–ด๋–ค ๋ฐ์ดํ„ฐ๊ฐ€ Valid data๋กœ ๋ฝ‘ํžˆ๋Š๋ƒ์— ๋”ฐ๋ผ Accuracy๊ฐ€ ๋‹ฌ๋ผ์ง

- Biased validation์ด ๋  ์ˆ˜๋„ ์žˆ์Œ

2) k-fold cross validation

- ์˜ˆ์ปจ๋Œ€ k=10์ด๋ฉด Train data(1000)๋ฅผ 100 * 10๋กœ ๋‚˜๋ˆ”

- ์ด k๋ฒˆ Train๊ณผ Valid๋ฅผ ์ˆ˜ํ–‰ํ•˜๋Š” Round๋ฅผ ์ง„ํ–‰ํ•˜๋ฉฐ, ๊ฐ Round๋งˆ๋‹ค ์‚ฌ์šฉํ•˜๋Š” Valid๋ฅผ ๋‹ค๋ฅด๊ฒŒ ํ•จ

- Unbiased validation์ด ๋จ

- ์ˆ˜ํ–‰ํ•œ Round๋“ค์˜ Accuracy์˜ ํ‰๊ท ์„ ๋ƒ„

 

 

References

https://youtu.be/9GWb9yNcsvc

 

๋Œ“๊ธ€