๋ฐ์ดํฐ (10) ์ธ๋ค์ผํ ๋ฆฌ์คํธํ ์ 24์ฅ๐ML_LightGBM๐ lightGBM(Gradient Boosting Model)์ ๋ฌด์์ด๋? ๋จธ์ ๋ฌ๋์ ์์๋ธ ๊ธฐ๋ฒ์๋ ๋ฐฐ๊น (bagging)๊ณผ ๋ถ์คํ (boosting)์ด ์์ต๋๋ค ๋ถ์คํ ๊ธฐ๋ฒ์ ํด๋นํ๋ ๊ฒ์ด XGBoost์ธ๋ฐ ๋์ ์ฑ๋ฅ์ ๊ฐ์ง์ง๋ง ๊ทธ๋ฆฌ๋ ์์น๋ฅผ ์ด์ฉํ์ฌ ํ์ดํผ ํ๋ผ๋ฏธํฐ ํ๋์ ํ๋๋ฐ ๋ง์ ์๊ฐ๊ณผ ๋ฉ๋ชจ๋ฆฌ๋ฅผ ์๋ชจํ๊ฒ ๋ฉ๋๋ค. ๊ทธ ์ ์ ๋ณด์ํ ๊ฒ์ด lightGBM์ด๋ผ๊ณ ์๊ฐํ๋ฉด ๋ฉ๋๋ค ๋น ๋ฅธ ์๊ฐ๊ณผ ์ ์ ๋ฉ๋ชจ๋ฆฌ๋ฅผ ์๋ชจํ๊ฒ ๋ฉ๋๋ค. ์๋ฆฌ๋ ๋ฐ์ ์ฌ์ง์ ํตํด ์ค๋ช ๋๋ฆด๊ฒ์ lightGBM์ ๊ธฐ์กด์ boosting ์๊ณ ๋ฆฌ์ฆ๊ณผ๋ ๋ค๋ฅด๊ฒ ์๋ํฉ๋๋ค ๊ธฐ์กด boosting ๋ชจ๋ธ๋ค์ Level-wise ํ๊ฒ ๋์ด๋๋ ๋ฐฉ๋ฒ์ ์ฌ์ฉํ๋ ๋ฐฉ๋ฉด์ lightGBM ๊ฐ์ ๊ฒฝ์ฐ์๋ Leaf-wiseํํ๋ก ๋์ด๋ฉ๋๋ค. level wise = ํธ.. ์ 21์ฅ๐ML_RandomForest๐ ๐ฒ ์ ์ (RandomForest) ๊ฒฐ์ ํธ๋ฆฌ์ ๋จ์ ์(์ค๋ฒํผํ ) ๋ณด์์์ผ์ค ์์ ๋ชจ๋ธ ๋๋ค์ผ๋ก ์์ฑํ ๋ง์ ๋๋ฌด๋ก ์ด๋ฃจ์ด์ ธ ์์ธก์ ํ๊ธฐ ๋๋ฌธ์ ๋ง์น ์ฒ์ฒ๋ผ ๋ณด์ด๊ธฐ ๋๋ฌธ์ ์ด๋ฆ์ด Random Forest๋ผ๊ณ ๋ถ๋ฆฐ๋ค. ๐ฏ ํต์ฌ โป ์์๋ธ ๊ธฐ๋ฒ ๊ฐ๋ ฅํ ํ๋์ ๋ชจ๋ธ์ ์ฌ์ฉํ๋ ๋์ ๋ณด๋ค ์ฝํ ๋ชจ๋ธ ์ฌ๋ฌ ๊ฐ๋ฅผ ์กฐํฉํ์ฌ ๋ ์ ํํ ์์ธก์ ๋์์ ์ฃผ๋ ๋ฐฉ์ ๋๋ค ํฌ๋ ์คํธ๋ ์์๋ธ ๊ธฐ๋ฒ์ ์ฌ์ฉํ ํธ๋ฆฌ ๋ชจ๋ธ ์ค ํ๋์ด๋ฉฐ ๊ฐ์ฅ ๋ง์ ๋น์ค์ ์ฐจ์งํ๋ค ๋ถ์คํ ๋ชจ๋ธ๋ณด๋ค๋ ์๋, ์์ธก๋ ฅ ๋ฉด์์๋ ๋ชป ๋ฏธ์น์ง๋ง ์๊ฐํ๊ฐ ๋งค์ฐ ๋ฐ์ด๋ ๋จผ์ ์ดํด๋๋ฅผ ํค์์ผ ํ๋ค. ์ข ์๋ณ์๊ฐ ์ฐ์ํ/๋ฒ์ฃผํ ๋ฐ์ดํฐ์ธ ๊ฒฝ์ฐ์๋ ๋ชจ๋ ์ฌ์ฉ ๊ฐ๋ฅํ๋ค. ์์๋ผ์ด์ด(์ด์์น)๊ฐ ๋ฌธ์ ๋ ์ ์ข์ ๋์์ด ๋๋ ๋ชจ๋ธ์ด๋ค. ๊ฒฐ์ ํธ๋ฆฌ๋ก ์ค๋ฒ ํผํ ์ด ์ผ์ด ๋ ์จ ์ฌ์ฉํ๋ฉด .. ์ 14์ฅ ๐๋ฐ์ดํฐ ์๊ฐํ_matplotlib๐ ๐งท Matplotlib ํ์ด์ฌ ๊ธฐ๋ฐ ๋ฐ์ดํฐ ๋ถ์ ํ๊ฒฝ์์ ๊ฐ์ฅ ์ผ๋ฐ์ ์ผ๋ก ์ฌ์ฉ๋๋ ์๊ฐํ ๋ผ์ด๋ธ๋ฌ๋ฆฌ ํ์ ๋ผ์ด๋ธ๋ฌ๋ฆฌ์ธ 'pyplot'์ ํตํด ์ฃผ์ ๊ธฐ๋ฅ์ ์ฌ์ฉ plotly, seaborn ๋ฑ๊ณผ ๊ฐ์ ๋ผ์ด๋ธ๋ฌ๋ฆฌ๊ฐ ์ต๊ทผ ๊ฒฝ์๋ ฅ์ ๊ฐ์ถ๊ณ ์์ pandas ๊ฐ์ฒด์ ๊ธฐ๋ณธ์ ์ธ ์๊ฐํ ๋๊ตฌ plot() ๋ฉ์๋๋ฅผ ํตํด ๋ฐ์ดํฐ๋ฅผ ์๊ฐํ ์ข ๋ฅ ๋ผ์ธ ํ๋กฏ(line plot) ๋ฐ ์ฐจํธ(bar chart) ํ์คํ ๊ทธ๋จ(histogram) ๋ฐ์ค ํ๋กฏ(box plot) ์ค์บํฐ ํ๋กฏ(scatter plot) - ๋ผ์ด๋ธ๋ฌ๋ฆฌ ๊ฐ์ ธ์ค๊ธฐ โ import matplotlib.pyplot as plt โ cmd: pip install matplotlib plt.plot(y) ๊ธฐ๋ณธ : ๋ผ์ธ ํ๋กฏ(line plot) ๋ฐ์ดํฐ๊ฐ ์๊ฐ, ์์ ๋ฑ์ ๋ฐ๋ผ.. ์ 13์ฅ ๐๋ฐ์ดํฐ ๋ถ์_pandas(Data_Frame)๐ DataFrame ์์ฑ 2์ฐจ์ ๋ฐฐ์ด๊ณผ ์ ์ฌํ ์๋ฃํ ๋ค์ฐจ์ ๋ฆฌ์คํธ, ๋์ ๋๋ฆฌ ์๋ฃํ์ผ๋ก ๋ฐ์ดํฐ ๊ตฌ์ฑ ๊ฐ๋ฅ ๊ด๊ณํ ๋ฐ์ดํฐ๋ฒ ์ด์ค์ ํ ์ด๋ธ ๊ตฌ์กฐ, excel/csv ๋ฐ์ดํฐ ๊ตฌ์กฐ์ ์ ์ฌ ํ๋์ ์ปฌ๋ผ์ ํ๋์ Series๋ก์ ํ๋์ Dataframe์ ์ฌ๋ฌ ๊ฐ์ Series ๋ฌถ์์ผ๋ก ๊ตฌ์ฑ๋จ index ํน์ง row index(ํ ์ธ๋ฑ์ค) : ๊ธฐ๋ณธ ์ซ์ํ ์ธ๋ฑ์ค๊ฐ ์๋ ์๋กญ๊ฒ ์ง์ ํ ๋ก์ฐ๋ช (๋ผ๋ฒจ) ์ธ๋ฑ์ค๋ฅผ ์ฌ์ฉํด๋ ๊ธฐ๋ณธ ์ซ์ํ ์ธ๋ฑ์ค๋ฅผ ํจ๊ป ์ฌ์ฉํ ์ ์์ column index(์ด ์ธ๋ฑ์ค) : ์๋กญ๊ฒ ์ปฌ๋ผ๋ช (๋ผ๋ฒจ) ์ธ๋ฑ์ค๋ฅผ ์ฌ์ฉํ๋ฉด ๊ธฐ๋ณธ ์ซ์ํ ์ธ๋ฑ์ค๋ ์ฌ์ฉํ ์ ์์ - ์ธ๋ฑ์ค๋ฅผ ์ง์ ํ์ฌ ๊ฐ์ฒด ์์ฑ : DataFrame ํจ์์์ ํ๋ผ๋ฏธํฐ๋ก ์ง์ - columns ํ๋ผ๋ฏธํฐ : ์ปฌ๋ผ๋ช (์ด ๊ฐ์์ ๋์ผํ ๊ธธ์ด๋ฅผ ๊ฐ์ง .. ์ 12์ฅ ๐๋ฐ์ดํฐ ๋ถ์_pandas(Series ์๋ฃํ)๐ Numpy๋ฅผ ๋ฐฐ์ด๊ฒ์ Pandas ๋ฅผ ์ฐ๊ธฐ ์ํด ๋๋ฌด ์ค์ํ๊ธฐ ๋๋ฌธ์ด๋ผ๊ณ ๋ ๋งํ ์ ์์ต๋๋ค๐ฒ ๋๋์ด ๋ฐ์ดํฐ ์๊ฐํ์ ์ค๋ฌด์๋ ๋ง์ด ์ฐ์ด๋ pandas๐ผ์ ๋ํด ๋ฐฐ์ฐ๋ ์๊ฐ์ ๋๋ค. Pandas ๋ฐ์ดํฐ ์ฒ๋ฆฌ ๋ฐ ๋ถ์์ ์ํ ๋ผ์ด๋ธ๋ฌ๋ฆฌ ๋์ฉ๋ ๋ฐ์ดํฐ๋ฅผ ์์ ์ ์ด๋ฉด์๋ ๊ฐํธํ๊ฒ ์ฒ๋ฆฌ ์๋ก ๋ค๋ฅธ ๋ฐ์ดํฐํ์ ์ผ๋ก ์ด์ ๊ตฌ์ฑํ ์ ์์ (์ฐธ๊ณ ) Numpy : ์ ์ฒด ๋ฐฐ์ด ์์๋ฅผ ๋์ผํ ํ์ ์ผ๋ก ์ ํ ์ฃผ์ ๊ธฐ๋ฅ ๋ฐ์ดํฐ ์ ์ถ๋ ฅ : csv, excel, RDB, JSON ๋ฑ ๋ค์ํ ํฌ๋งท์ ๋ฐ์ดํฐ๋ฅผ ํจ์จ์ ์ผ๋ก ์ฒ๋ฆฌํ ์ ์๋ ํ์์ ์ฌ์ฉ ๋ฐ์ดํฐ ๊ฐ๊ณต : ๋ถ๋ฆฌ, ๊ฒฐํฉ, ๊ณ์ธต, ํผ๋ด ๋ฑ ํต๊ณ ๋ถ์ ์ฒ๋ฆฌ ์๋ฃํ Series 1์ฐจ์ ๋ฐฐ์ด๊ณผ ์ ์ฌํ ์๋ฃํ ์์ธ(index) : ํ ๋ฒํธ ๊ฐ๊ฐ์ ๋ฐ์ดํฐ์ ๋ถ์ฌํ๋ ์์ฑ์ผ๋ก ๊ธฐ๋ณธ๊ฐ์ 0๋ถํฐ .. ์ 10์ฅ ๐๋ฐ์ดํฐ ๋ถ์_Numpy-1๐ Numpy Numeriacal Python ํ์ด์ฌ ๋จธ์ ๋ฌ๋ ํจํค์ง์ธ scikit-learn์์ ๊ธฐ๋ณธ ๋ฐ์ดํฐ ๊ตฌ์กฐ๋ก ์ฌ์ฉ๋์ด Numpy ๋ฐฐ์ด ํํ์ ๋ฐ์ดํฐ๋ฅผ ์ฌ์ฉ ํ์ด์ฌ ๊ธฐ๋ฐ ๋ฐ์ดํฐ ๋ถ์ ํ๊ฒฝ์์ ํ๋ ฌ ๋ฐ ๋ฒกํฐ ์ฐ์ฐ์ ํ์ํ ๋ค์ํ ํจ์๋ฅผ ์ ๊ณต ๋ฉ๋ชจ๋ฆฌ ์๋ชจ๊ฐ ๋ง์ ๋ฐ๋ณต๋ฌธ ์์ด ์ ์ฒด ๋ฐ์ดํฐ ๋ฐฐ์ด์ ๋น ๋ฅธ ์ฐ์ฐ์ ์ฒ๋ฆฌํ ์ ์๋ ํ์ค ์ํ ํจ์ ๋ฐฐ์ด : ๋์ผํ ํน์ฑ(๋ฐ์ดํฐ ํ์ ) ๋ฐ ์ผ์ ํ ๊ท์น์ ๊ฐ์ง๋ ์ฌ๋ฌ ๊ฐ์ ์์๊ฐ ๋์ด๋์ด ์๋ ๋ฐ์ดํฐ ์งํฉ ํ์ด์ฌ list ๊ฐ์ฒด๋ฅผ ์ฌ์ฉํ ๋ ๋ณด๋ค Numpy์ ndarray ๊ฐ์ฒด๋ฅผ ์ฌ์ฉํ๋ฉด ์ฐ์ฐ ์๋๊ฐ ๊ฐ์ ๋์ด ๋ ๋ง์ ๋ฐ์ดํฐ๋ฅผ ๋ ๋น ๋ฅด๊ฒ ์ฒ๋ฆฌ ๐ ๋ผ์ด๋ธ๋ฌ๋ฆฌ ๊ฐ์ ธ์ค๊ธฐ : numpy as ๋ณ์นญ ์ ์ธ ์ดํ์๋ ๋ณ์นญ์ผ๋ก ํด๋น ๋ผ์ด๋ธ๋ฌ๋ฆฌ์ ๊ธฐ๋ฅ์ ํธ์ถํ ์ ์๋ค. import ๋ผ.. ์ 8์ฅ ๐ํฌ๋กค๋ง(crawling) ๊ณผ ๋คํธ์ํฌ์ ๊ธฐ๋ณธ ์๋ฆฌ๐ 1. ๋ด๊ฐ ๋ธ๋ผ์ฐ์ ๋ก ํน์ ์๋ฒ ์ฃผ์๋ฅผ ์ณ์ ์ ์์๋๋ฅผ ํฉ๋๋ค. 2. ์๋ฒ์ ๋ด๊ฐ ์ ์ํ๋ค๋ ์์ฒญ์ด ๋ค์ด๊ฐ๋๋ค. 3. ์๋ฒ๊ฐ ์์ฒญ์ ์๋ต ํ๋ฉด์ response๋ฐ์ดํฐ๋ฅผ ํจ๊ป ์ ์กํฉ๋๋ค. 4. ๋ธ๋ผ์ฐ์ ๊ฐ ๋ฐ์ ๋ฐ์ดํฐ๋ฅผ ํด์ํด์ ๋ด PC์ ๋ฐ์ํฉ๋๋ค. 4-1 -> ์น์ฌ์ดํธ ์ ์์ด์์ผ๋ฉด ์์ค์ฝ๋๋ฅผ ๋ฐ์์์ ์ฌ๋์ด ๋ณผ ์ ์๋๋ก ์๋์ผ๋ก ๊ทธ๋ ค์ค๋๋ค.(๋ ๋๋ง ํด์ค๋๋ค.) 4-2 -> ๊ฒ์์ด๋ฉด ํด๋น ๋ช ๋ น์ด๊ฐ ๋ค์ด๊ฐ์ ๊ฒ์ ์ํฉ์ ๋ฐ์๋ฉ๋๋ค. ๐จํฌ๋กค๋ง(crawling)์ ์ฃผ๋ก ์ฌ์ฉ๋๋ ๋ผ์ด๋ธ๋ฌ๋ฆฌ๐จ • Requests ํ์ด์ฌ์์ ๋์ํ๋ ์๊ณ ๋น ๋ฅธ ๋ธ๋ผ์ฐ์ ์น์๋ฒ๋ก๋ถํฐ ์ด๊ธฐ HTML๋ง ๋ฐ์ ๋ฟ, ์ถ๊ฐ CSS/JavaScript ์ฒ๋ฆฌ ํ์ง ๋ชปํ๋ค. ๊ฑฐ์ ๋ชจ๋ ํ๋ซํผ์์ ๊ตฌ๋ ๊ฐ๋ฅ request๋ ๋ธ๋ผ์ฐ์ ์์ด ํ์ด์ฌ์์.. ์ 7์ฅ ๐ํฌ๋กค๋ง_ํฌ๋กค๋ง๊ธฐ์ด, ์คํ๋ฐฉ๋ฒ๐ ๋ฐ์ดํฐ ๋ถ์์ ๊ฝ๐ป ํฌ๋กค๋ง(crawling)โญ ์น์์ ์ํ๋ ์๋ฃ๋ฅผ ์ปดํจํฐ์๊ฒ ์์งํด์ค๋๋ก ํ๋ ๊ธฐ์ requests ๋ผ์ด๋ธ๋ฌ๋ฆฌ๋ฅผ ํ์ฉํ ๋ธ๋ผ์ฐ์ ์๋ ํฌ๋กค๋ง selenium ๋ผ์ด๋ธ๋ฌ๋ฆฌ๋ฅผ ํ์ฉํ ๋ฌผ๋ฆฌ ๋๋ผ์ด๋ฒ ํฌ๋กค๋ง urllib ๋ผ์ด๋ธ๋ฌ๋ฆฌ๋ฅผ ํ์ฉํ api ํฌ๋กค๋ง ๋ฑ์ด ์๋ค. ํฌ๋กค๋ฌ์ ์ญํ ์ ์ํ๋ ์ ๋ณด๋ฅผ ํฌํจํ ์๋ฃ๋ฅผ ์์งํด์ค๋ ๊ฒ๊น์ง์ด๋ฉฐ ์ค์ ๋ก ์ํ๋ ๋ฐ์ดํฐ๋ฅผ ์ฉ๋์ ๋ง๊ฒ ์ฒ๋ฆฌํ๋ ๊ฒ์ beautifulsoup๊ฐ ๋ด๋นํ๋ค. ๋จผ์ ์คํํ๊ธฐ ์ํด์ ๋ช ๊ฐ์ง ๋จ๊ณ๋ฅผ ์งํํด์ฃผ์ด์ผ ํ๋ค. ํด๋ฐ๋ค๋ ๊ณง ์๋ก์ด ๋ ธํธ๋ถ์ ์ฅ๋งํ๊ธฐ ๋๋ฌธ์ chapter1. selenium ์ค์น๐จ๐ป anaconda navigator์์ ์ข์ธก envionments๋ฅผ ์ ํํฉ๋๋ค. ์ค๊ฐ์ base(root) ์ฐ์ธก์ ๋ถ์ด์๋ ์ฌ์ ๋ฒํผ ํด๋ฆญ.. ์ด์ 1 2 ๋ค์