Machine Learning/Fundamentals

Unsupervised Learning

metamong 2022. 6. 3.

๐Ÿ“Œ ์‚ฌ์‹ค ML์—์„œ ์ง€๋„ํ•™์Šต(Supervised Learning)๋ณด๋‹ค ์ •๋‹ต์ด ์ฃผ์–ด์ ธ ์žˆ์ง€ ์•Š์€, ๋น„์ง€๋„ํ•™์Šต(Unsupervised Learning) ๊ธฐ๋ฒ•์ด ๋” ๊นŒ๋‹ค๋กญ๊ณ , ์ •๋‹ต์ด ์ฃผ์–ด์ ธ ์žˆ์ง€ ์•Š์•„์„œ ๋ถ„์„์— ํž˜์ด ๋“ค ๋•Œ๊ฐ€ ๋งŽ๋‹ค.

 

 

๐Ÿ“Œ ์•„๋ž˜์™€ ๊ฐ™์ด label์ด ์ฃผ์–ด์ ธ ์žˆ์ง€ ์•Š๊ณ  ์—ฌ๋Ÿฌ ๊ฐœ์˜ feature vector๋“ค์˜ ๋ชจ์ž„์„ ํ†ตํ•ด machine learning model์— ์ง‘์–ด๋„ฃ๋Š” ํ˜•ํƒœ์ด๋‹ค.

 

 

 

๐Ÿ“Œ ๋น„์ง€๋„ํ•™์Šต(Unsupervised Learning)์€ '์ •๋‹ต์ด ์ฃผ์–ด์ ธ ์žˆ์ง€ ์•Š์€ data ๊ทธ ์ž์ฒด๋ฅผ ๋จธ์‹ ๋Ÿฌ๋‹ ์•Œ๊ณ ๋ฆฌ์ฆ˜์œผ๋กœ ๋ถ„์„ํ•˜๊ฑฐ๋‚˜ ํด๋Ÿฌ์Šคํ„ฐ๋ง(clustering; ๊ตฐ์ง‘ํ™”)ํ•˜๋Š” ๊ณผ์ •'์ด๋‹ค.

 

 

intro. Machine Learning

1. ๊ฐœ๋ก  → ML์€ ๋น…๋ฐ์ดํ„ฐ๋ฅผ ๋ถ„์„ํ•  ์ˆ˜ ์žˆ๋Š” ๊ฐ•๋ ฅํ•œ tool์˜ ์ผ์ข…์ด๋‹ค. ๊ธฐ์กด ํ†ต๊ณ„ํ•™ ๋ฐ ์‹œ๊ฐํ™”๋กœ๋Š” ํ•ด๊ฒฐํ•  ์ˆ˜ ์—†๋Š” ํ•œ๊ณ„๋ฅผ ๋ณด์™„ํ•จ! ๐Ÿ‘ ๋ฐ์ดํ„ฐ๋ฅผ ๊ธฐ๋ฐ˜์œผ๋กœ ์•ž์œผ๋กœ์˜ ๋ฏธ๋ž˜๋ฅผ ์˜ˆ์ธกํ•˜๋Š” ๊ธฐ๋ฒ• ๐Ÿ‘‹ ์ฃผ์–ด์ง„

sh-avid-learner.tistory.com

 

๐Ÿ“Œ ํฌ๊ฒŒ ์•„๋ž˜์™€ ๊ฐ™์ด ๋‚˜๋ˆŒ ์ˆ˜ ์žˆ๋‹ค.

 

๐Ÿ” dimensionality reduction

์ฐจ์›์ถ•์†Œ๊ธฐ๋ฒ•์€ ๋น„์ง€๋„ํ•™์Šต์˜ ์ผ์ข…์ด๋‹ค. ์ผ์ข…์˜ ๋ฐ์ดํ„ฐ ์ „์ฒ˜๋ฆฌ ๋‹จ๊ณ„์—์„œ ์ •๋‹ต์ด ์ฃผ์–ด์ ธ ์žˆ๋Š” data๋ผ๋„ ์ฐจ์›์˜ ๋ณต์žก์„ฑ ๋ฌธ์ œ๋ฅผ ํ•ด๊ฒฐํ•˜๊ธฐ ์œ„ํ•ด ์ฐจ์›์ถ•์†Œ ๊ธฐ๋ฒ•์„ ์‚ฌ์šฉํ•˜๊ธฐ๋„ ํ•œ๋‹ค. ํ•˜์ง€๋งŒ, ๋Œ€๋ถ€๋ถ„ ์ •๋‹ต์ด ์ฃผ์–ด์ ธ ์žˆ์ง€ ์•Š์€ data์—์„œ ์—ฐ์‚ฐํ•˜๊ธฐ์— ์ฐจ์›์ด ๋„ˆ๋ฌด ๋งŽ๋‹ค๋ฉด ํ•ด๋‹น ์ฐจ์› ์ถ•์†Œ ๊ธฐ๋ฒ•์„ ์‚ฌ์šฉํ•ด data๋ฅผ ๋ถ„์„ํ•˜๊ณ , ์ธ์‚ฌ์ดํŠธ๋ฅผ ์–ป๊ธฐ ์ข‹๊ฒŒ ๋งŒ๋“ ๋‹ค.

 

→ ๋Œ€ํ‘œ์ ์ธ ์˜ˆ๋กœ PCA๋ฅผ ๋ฐฐ์›€

- PCA(concepts) https://sh-avid-learner.tistory.com/entry/feature-extraction1-PCAPrincipal-Component-Analysis-concepts

- PCA(w/code) https://sh-avid-learner.tistory.com/entry/feature-extraction1-PCAPrincipal-Component-Analysis-wcode

 

๐Ÿ” clustering

์ฃผ์–ด์ง„ ๊ทธ data ์ž์ฒด๋ฅผ ์œ ์‚ฌ์„ฑ์žˆ๋Š” data๋ผ๋ฆฌ ์„ ๋ณ„ํ•ด ์ผ์ข…์˜ ์—ฌ๋Ÿฌ group์œผ๋กœ ๋งŒ๋“œ๋Š” ๊ณผ์ •์ด๋‹ค.

→ ์ฃผ์–ด์ง„ dataset์„ ์š”์•ฝ/์ •๋ฆฌํ•ด์ฃผ๋Š” ์˜๋ฏธ๊ฐ€ ์žˆ์œผ๋ฉฐ, ์ฃผ๋กœ EDA ๊ณผ์ •์—์„œ ๋งŽ์ด ์‚ฌ์šฉํ•จ

→ clustering algorithm ์ข…๋ฅ˜๋Š” ๋˜๊ฒŒ ๋งŽ๋‹ค! ์•„๋ž˜ ๊ทธ๋ฆผ ์ค‘ ๋Œ€ํ‘œ์ ์ธ partition, hierarchy, distribution, density ๋„ค ๊ฐœ์— ๋Œ€ํ•ด์„œ ๊ฐ„๋žตํžˆ ์•Œ์•„๋ณด์ž.

 

> โ‘  hierarchical clustering

 

โ‰ซ ํฌ๊ฒŒ ๋‘ ๊ฐ€์ง€๋กœ, (1) agglomerative: ๊ฐœ๋ณ„ ํฌ์ธํŠธ์—์„œ ์‹œ์ž‘ํ•œ ํ›„  ํ•ฉ์ณ ๋‚˜๊ฐ€๋Š” ๋ฐฉ์‹;bottom-up approach & (2) divisive: ํ•œ ๊ฐœ์˜ ํฐ cluster์—์„œ ์‹œ์ž‘ ํ›„ ์ ์  ์ž‘์€ cluster๋กœ ๋‚˜๋‰˜์–ด ๊ฐ€๋Š” ๋ฐฉ์‹; top-down approach๋กœ ๋‚˜๋ˆŒ ์ˆ˜ ์žˆ๋‹ค.

โ‰ซ ์ผ์ข…์˜ hierarchy๊ฐ€ ์ƒ์„ฑ๋˜๋ฏ€๋กœ tree ๊ตฌ์กฐ์˜ ํ˜•ํƒœ์ธ dendrogram์ด ๋งŒ๋“ค์–ด์ง„๋‹ค. ์ผ๋ฐ˜์ ์œผ๋กœ hierarchical clustering์„ ์‹œ์ž‘ํ•˜๊ธฐ ์ „์— ์ด๋ฏธ ๋ช‡ ๊ฐœ์˜ cluster๋กœ ๋‚˜๋ˆŒ ์ง€ k๋ฅผ ์ •ํ•ด๋†“๊ณ , ์™„์„ฑ๋œ dendrogram์—์„œ depth๋ฅผ ๊ตฌ์ฒด์ ์œผ๋กœ ์ •ํ•ด ์ž˜๋ผ๋‚ด๋Š” ๋ฐฉ์‹์œผ๋กœ ์ง„ํ–‰๋œ๋‹ค. ์ฆ‰, ๋‹ค๋ฅธ ์ข…๋ฅ˜์˜ cluster method์™€ ๋‹ค๋ฅธ ์ข‹์€ ์ ์€, ๋ฏธ๋ฆฌ k๋ฅผ ์ •ํ–ˆ๋”๋ผ๋„, ์ƒํ™ฉ์— ๋”ฐ๋ผ ๋‚˜์ค‘์—๋ผ๋„ ๋‚ด๊ฐ€ ์›ํ•˜๋Š” cluster์˜ ๊ฐœ์ˆ˜(k)๋ฅผ ์ •ํ•˜๊ณ  ์ž˜๋ผ๋‚ผ ์ˆ˜ ์žˆ๋‹ค๋Š” ์ !

โ‰ซ hierarchical clustering์„ ํ†ตํ•ด ๋ถ„๋ฅ˜๋˜๋Š” data objects๊ฐ„์˜ ๊ด€๊ณ„์™€ ๊ด€๋ จ๋œ ์ž์„ธํ•œ ๋””ํ…Œ์ผ์„ ์•Œ ์ˆ˜ ์žˆ๊ณ , dendrgram์ด ์ œ๊ณต๋œ๋‹ค

โ‰ซ ๋‹จ์ ์€, ์—ฐ์‚ฐ ์ƒ ๋น„์‹ธ๋ฉฐ(high cost), ์žก์Œ๊ณผ ์ด์ƒ์น˜์— ๋ฏผ๊ฐํ•˜๋‹ค.

โ‰ซ deterministic process๋กœ ์•Œ๊ณ ๋ฆฌ์ฆ˜์„ ๋ช‡ ๋ฒˆ์„ ๋Œ๋ ค๋„ ์ด๋ฏธ ์ •ํ•ด์ง„ cluster๊ฐ€ ๋‹ค์‹œ๋Š” ๋ณ€ํ•˜์ง€ ์•Š์Œ!

 

> โ‘ก partitional(centroid-based) clustering

 

โ‰ซ  cluster๋ณ„ centroid ์ค‘์‹ฌ์  ๊ธฐ์ค€์œผ๋กœ clustering๋˜๋ฉฐ, ์ฆ‰ ๋ชจ๋“  data๋Š” ๊ฐ๊ฐ ํ•œ ๊ฐœ์˜ cluster์—๋งŒ ๋“ค์–ด๊ฐˆ ์ˆ˜ ์žˆ๋Š” hard clustering ๊ธฐ๋ฒ•

โ‰ซ ์ฆ‰ clustering method ์ ์šฉ ์ „ cluster ๊ฐœ์ˆ˜ k๋ฅผ ๋จผ์ € ์ •ํ•ด์•ผ ํ•œ๋‹ค.

โ‰ซ ์ฃผ๋กœ iteration์„ ๊ฑฐ์น˜๋ฉฐ ๊ณ„์†ํ•ด์„œ clustering ๊ณผ์ •์„ ๊ฑฐ์ณ ์—ฌ๋Ÿฌ ๋ฌถ์Œ์„ ํ˜•์„ฑํ•œ๋‹ค.

โ‰ซ ๋Œ€ํ‘œ์ ์ธ ์˜ˆ๋กœ k-means & k-medoids๊ฐ€ ์žˆ์Œ!

โ‰ซ ์—ฌ๋Ÿฌ ๋ฒˆ ๋Œ๋ฆด ๋•Œ ๋งˆ๋‹ค ๋‹ค๋ฅธ ๊ฒฐ๊ณผ๊ฐ€ ๋‚˜์˜ฌ ์ˆ˜ ์žˆ์œผ๋ฏ€๋กœ nondeterministic process

โ‰ซ cluster๋“ค์ด ์›ํ˜•์˜ ํ˜•ํƒœ๋ฅผ ๋ณด์ผ ๋•Œ ์‰ฝ๊ฒŒ clustering์ด ๊ฐ€๋Šฅํ•œ ์žฅ์ ์ด ์žˆ๊ณ , ๊ทธ ๋ฐ˜๋Œ€๋กœ ๋ณต์žกํ•œ ํ˜•ํƒœ๋ฅผ ๋ณด์ด๋ฉด clustering๋˜๊ธฐ ์–ด๋ ต๋‹ค.

โ‰ซ ์•Œ๊ณ ๋ฆฌ์ฆ˜ ๋ณต์žก์„ฑ์— ๊ธฐ์ธํ•ด ์‹œ๊ฐ„ ๋ณต์žก๋„ ์ธก์ •์ด ๊ฐ€๋Šฅํ•˜์ง€๋งŒ, ๋‹ค์–‘ํ•œ density๋ฅผ ๊ฐ€์ง„ cluster์˜ ๊ฒฝ์šฐ ์ ํ•ฉํ•˜์ง€ ์•Š์€ method์ด๋‹ค!

 

> โ‘ข density-based clustering

 

โ‰ซ ์•„๋ž˜ ๊ทธ๋ฆผ๊ณผ ๊ฐ™์ด ํšŒ์ƒ‰์ ๊ณผ ๊ฐ™์€ outlier๋Š” clustering์—์„œ ์ œ์™ธ

โ‰ซ ๋ฐ€์ง‘๋œ data๋ผ๋ฆฌ ์–ด๋–ค ๋„ํ˜•์œผ๋กœ๋ผ๋„ ๋ฌถ๋Š” clustering (distance-based)

โ‰ซ ๋‹ค์–‘ํ•œ density๋‚˜ ๋†’์€ ์ฐจ์›์˜ ๊ฒฝ์šฐ clusteringํ•  ๋•Œ ์–ด๋ ค์›€์ด ์žˆ์Œ

โ‰ซ ๋‹ค๋ฅธ clustering๊ณผ ๋‹ค๋ฅด๊ฒŒ density-based๋Š” clustering ๊ฐœ์ˆ˜ k๋ฅผ ๋ฏธ๋ฆฌ ์ •ํ•  ํ•„์š”๊ฐ€ ์—†๋‹ค.

โ‰ซ DBSCAN, OPTICS์™€ ๊ฐ™์€ ์•Œ๊ณ ๋ฆฌ์ฆ˜ ์กด์žฌ

 

> โ‘ฃ distribution-based clustering

โ‰ซ ์ผ๋‹จ data๊ฐ€ ํŠน์ • ๋ถ„ํฌ๋ฅผ ๋”ฐ๋ฅธ๋‹ค๋Š” ๊ฐ€์ •๋ถ€ํ„ฐ ์ถœ๋ฐœํ•œ๋‹ค.

โ‰ซ ์ฆ‰ ๋ถ„ํฌ๋ฅผ ๋ชจ๋ฅธ๋‹ค๋ฉด ๋‹ค๋ฅธ clustering๋ฐฉ๋ฒ•์„ ์จ์•ผ ํ•จ

โ‰ซ data๊ฐ€ ์ฃผ์–ด์ง„ ๋ถ„ํฌ์—์„œ ๋งŽ์ด ๋ฒ—์–ด๋‚ ์ˆ˜๋ก ์ƒ๋Œ€์ ์œผ๋กœ ์˜…์€ ์ƒ‰์— ์†ํ•œ๋‹ค. (์•„๋ž˜ ๊ทธ๋ฆผ ์ฐธ์กฐ)

 

- (ํ•˜๋‹จ) ๊ทธ๋ฆผ ์ฐธ์กฐ -

<์ƒ๋‹จ ์ขŒ - ์šฐ - ํ•˜๋‹จ ์ขŒ - ์šฐ ์ฐจ๋ก€๋กœ โ‘ -โ‘ก-โ‘ข-โ‘ฃ>

 

 

๐Ÿ” ์—ฐ๊ด€๊ทœ์น™ํ•™์Šต (association rule learning)

→ ๋ฐ์ดํ„ฐ์…‹์˜ feature๋“ค๊ฐ„์˜ ๊ด€๊ณ„๋ฅผ ๋ฐœ๊ฒฌํ•˜๋Š” ๋ฐฉ๋ฒ•์ด๋‹ค.


* ์ธ๋„ค์ผ ์ถœ์ฒ˜) https://mark-youngson5.medium.com/artificial-intelligence-the-beginning-of-a-new-era-3e3838807887

* ์ถœ์ฒ˜1) clustering ๊ฐœ๋… https://realpython.com/k-means-clustering-python/

* ์ถœ์ฒ˜2) clustering ์ข…๋ฅ˜ ๊ด€๋ จ ๋…ผ๋ฌธ https://link.springer.com/article/10.1007/s40745-015-0040-1

* ์ถœ์ฒ˜3) clustering ์ข…๋ฅ˜๋ณ„ ์„ค๋ช… https://developers.google.com/machine-learning/clustering/clustering-algorithms

* ์ถœ์ฒ˜4) unsupervised learning ๊ณผ์ • https://ogrisel.github.io/scikit-learn.org/sklearn-tutorial/tutorial/text_analytics/general_concepts.html#machine-learning-101-general-concepts

* ์ถœ์ฒ˜5) hard vs. soft clustering) https://medium.com/fintechexplained/machine-learning-hard-vs-soft-clustering-dc92710936af

'Machine Learning > Fundamentals' ์นดํ…Œ๊ณ ๋ฆฌ์˜ ๋‹ค๋ฅธ ๊ธ€

Adjusted R-Squared vs. R-Squared  (0) 2022.06.19
All About Evaluation Metrics (2/2) โ†’ MAPE, MPE  (0) 2022.06.11
PCA(w/code)  (0) 2022.05.31
PCA(concepts)  (0) 2022.05.30
Feature Selection vs. Feature Extraction  (0) 2022.05.18

๋Œ“๊ธ€