Anomaly Detection in Network Traffic with K-means
Anomaly Detection
์ด์ ํ์ง๋ ์ง๊ธ๊น์ง ์๋ ค์ง์ง ์์ ์๋ก์ด ๋คํธ์ํฌ ๊ณต๊ฒฉ์ด๋ ์๋ฒ ์ฅ์ , ๊ณต์ฅ ์ค๋น ๋ฑ ์๋ก์ด ์ข ๋ฅ์ ์ด์์ ํ์งํ๋ ๊ฒ์ด๋ค. ์ด์ ํ์ง๋ ๋น์ง๋ ํ์ต ์๊ณ ๋ฆฌ์ฆ K-Means๋ฅผ ์ฌ์ฉํ์ฌ ํ์งํ ์ ์๋ค. ์ ์ ๋ฐ์ดํฐ๋ฅผ ํ์ตํ์ฌ ๋ฐ์ดํฐ๋ฅผ ์ฌ๋ฌ ๊ฐ์ ํด๋ฌ์คํฐ๋ก ํด๋ฌ์คํฐ๋งํ๊ณ ์๋ก์ด ๋ฐ์ดํฐ๊ฐ ํด๋ฌ์คํฐ์ ํฌํจ๋์ง ์์ผ๋ฉด ์ด์์ผ๋ก ํ์งํ ์ ์๋ค.
K-Means
K-Means ๋ ๋ฐ์ดํฐ๋ฅผ K๊ฐ๋ก ํด๋ฌ์คํฐ๋งํ๋ ML ๋ชจ๋ธ์ด๋ค. K ๊ฐ์ ์ฌ์ฉ์๊ฐ ์ ์ํ๋ ํ์ดํผํ๋ผ๋ฏธํฐ์ด๋ค. ํด๋ฌ์คํฐ ์ค์ฌ์ centroid๋ผ๊ณ ํ๋๋ฐ ํด๋ฌ์คํฐ์ ์ํ ๋ชจ๋ ๋ฐ์ดํฐ์ ์ฐ์ ํ๊ท ์ผ๋ก ๊ตฌํ๋ค. ๊ทธ๋์ K-Means๋ผ๊ณ ํ๋ค. K-Means ๋ชจ๋ธ์ ๊ฐ์ฅ ์ข์ K๊ฐ์ ์ฐพ๋ ๊ฒ์ด ํต์ฌ์ด๋ค.
Network Anomaly Detection
์์ง๊น์ง ๋คํธ์ํฌ ๊ณต๊ฒฉ์ผ๋ก ์๋ ค์ง์ง๋ ์์์ง๋ง, ๊ณผ๊ฑฐ ๋คํธ์ํฌ ์ฐ๊ฒฐ๊ณผ ๋ค๋ฅธ ์์์ ์ฐพ์ ๋ด๋ ๊ฒ์ด ๋คํธ์ํฌ ์ด์ ํ์ง์ด๋ค.
Anomaly Detection in Network Traffic with K-means
Spark ์ค์นํ๋ค.
Spark Session ์ค์ ํ๋ค.
๋ฐ์ดํฐ ๋ก๋ํ๋ค.
๋ฐ์ดํฐ ํ์ํ๋ค.
๊ฒฐ์ธก์น, ์์นํ, ๋ฒ์ฃผํ ๋ฐ์ดํฐ, ๋ ์ด๋ธ ๊ณ ์ ๊ฐ ์ ๊ฒํ๋ค.
๋ชจ๋ธ๋งํ๋ค.
StringIndexer์ OneHotEncoder๋ก ๋ฒ์ฃผํ ๋ฐ์ดํฐ๋ฅผ ์์นํ์ผ๋ก ๋ณํํ๋ค.
VectorAssembler๋ก feature vector๋ฅผ ์์ฑํ๋ค.
StandardScaler๋ก feature๋ฅผ Standard Score๋ก ๋ฐ๊พธ์ด ์ ๊ทํํ๋ค.
K-Means ๋ชจ๋ธ ์์ฑํ๋ค.
Pipeline์ผ๋ก ์ฐ๊ฒฐํ๋ค.
๋ค์ํ K ๊ฐ์ผ๋ก ๋ชจ๋ธ์ ํ์ตํ๋ค.
K ๊ฐ์ด ์ปค์ง ์๋ก ๊ฐ ํด๋ฌ์คํฐ ๋ฐ์ดํฐ๊ฐ Centroid์ ๊ฐ๊น์์ผ ํ๋ค.
K ๊ฐ์ด ํฐ๋ฐ ๊ฑฐ๋ฆฌ๊ฐ ๋ฉ ๊ฒฝ์ฐ Local Optimum์ ๋๋ฌํ๊ธฐ ์ ์ ํ์ต์ ์ข ๋ฃํ์ ์๋ ์์ผ๋ ๋ฐ๋ณต ํ์๋ฅผ ๋๋ ค์ ๋ชจ๋ธ ์ฑ๋ฅ์ ๊ฐ์ ํ๋ค.
K ๊ฐ์ด ์ฆ๊ฐํด๋ ํ๊ฐ ์ ์๊ฐ ํฌ๊ฒ ๋จ์ด์ง์ง ์๋ ์ง์ (Elbow)์ด ์ ๋นํ K ๊ฐ ์ผ ์ ์๋ค.
Anomaly Detection
์ด์ ํ์ง๋ ์๋ก์ด ๋ฐ์ดํฐ์์ ๊ฐ์ฅ ๊ฐ๊น์ด ๊ตฐ์ง ์ค์ฌ๊ณผ์ ๊ฑฐ๋ฆฌ๋ฅผ ์ธก์ ํ๋ ๋ฐฉ์์ผ๋ก ์งํํ๋ค. ๊ฑฐ๋ฆฌ๊ฐ ์ ์ํ Threshold ๊ฐ์ ๋์ด์๋ฉด ์ด์ํ ๋ฐ์ดํฐ๋ก ๊ฐ์ฃผํ๋ค.
์ฐธ๊ณ ์๋ฃ
9๊ฐ์ง ์ฌ๋ก๋ก ์ตํ๋ ๊ณ ๊ธ ์คํํฌ ๋ถ์(2ํ) ๋์ (ํ๋น๋ฏธ๋์ด)
Last updated
Was this helpful?