- Today
- Total
์ผ | ์ | ํ | ์ | ๋ชฉ | ๊ธ | ํ |
---|---|---|---|---|---|---|
1 | 2 | 3 | 4 | 5 | 6 | 7 |
8 | 9 | 10 | 11 | 12 | 13 | 14 |
15 | 16 | 17 | 18 | 19 | 20 | 21 |
22 | 23 | 24 | 25 | 26 | 27 | 28 |
29 | 30 |
- ๋ฉ์์ด์ฌ์์ฒ๋ผ๋ถํธ์บ ํ
- ์ฌ์กฐ์ฌ2๊ธ ์ค๊ธฐ๊ธฐ์ถ
- ์ฃผํผํฐ๋ ธํธ๋ถ๋จ์ถํค
- ๊นํ๋ธ ์ด๊ธฐ์ค์
- ๋ฐ์ดํฐ๋ถ์๋ถํธ์บ ํ
- ํ๋ก์ ํธ ํ๊ณ ๋ก
- ๋ฉ์ฌ๋ถํธ์บ ํ
- ๋ฉ์ฌ ๋ฐ์ดํฐ๋ถ์
- ํ์ด์ฌ์์
- ๋ฉ์์ด์ฌ์์ฒ๋ผ
- ๋งฅ๋ถ ์ํฌ๋ฒค์น์ค๋ฅ
- ๋ฉ์์ด์ฌ์์ฒ๋ผ ํ๊ธฐ
- ์ํฌ๋ฒค์น ์ค๋ฅ
- EDA
- ๋ฉ์์ด์ฌ์์ฒ๋ผ ๋ฐ์ดํฐ๋ถ์
- ๋ฉ์ฌํ๊ธฐ
- ์ฌ์กฐ์ฌ2๊ธ ์์ ํ
- ์ฌ์กฐ์ฌ2๊ธ ๊ธฐ์ถ๋ฌธ์
- ํ์ด์ฌ๊ธฐ์ด
- ๋ฉ์์ด์ฌ์์ฒ๋ผํ๊ธฐ
- ์นํฌ๋กค๋ง
- ์กฐ์ธ์ฐ์ฐ์
- ๋ฐ์ดํฐ๋ถ์
- ํ์ด์ฌ
- ๋ฐ์ดํฐ๋ถ์ ๋ ํ
- ๋งฅ๋ถ ์ํฌ๋ฒค์น ๋๊ตฌ ์๋ณด์
- ๋ฉ์์ด์ฌ์์ฒ๋ผ๋ฐ์ดํฐ๋ถ์
- ์ฌ์กฐ์ฌ๊ธฐ์ถ
- SQL
- ๋ฉ์์ด์ฌ์์ฒ๋ผ ๋ถํธ์บ ํ
๊ฐ์์ Data Lab ๐
[๋ฉ์์ด์ฌ์์ฒ๋ผ ๋ฐ์ดํฐ๋ถ์ ๋ถํธ์บ ํ 5๊ธฐ] ๋จธ์ ๋ฌ๋ ๊ฐ๊ด ๋ฐ ๋ณต์ต ๋ณธ๋ฌธ
[๋ฉ์์ด์ฌ์์ฒ๋ผ ๋ฐ์ดํฐ๋ถ์ ๋ถํธ์บ ํ 5๊ธฐ] ๋จธ์ ๋ฌ๋ ๊ฐ๊ด ๋ฐ ๋ณต์ต
๊ฐ์์๋ 2025. 6. 10. 17:470. ํ์ต๋ชฉํ
๋จธ์ ๋ฌ๋์ ํต์ฌ์ ํ์ด๋ณด์
1. ๋จธ์ ๋ฌ๋ ์ด๋?
- ์ ์:
๋จธ์ ๋ฌ๋์ ๋ช ์์ ์ธ ํ๋ก๊ทธ๋๋ฐ ์์ด ๋ฐ์ดํฐ๋ฅผ ํตํด ์ค์ค๋ก ํ์ตํ๊ณ ์์ธกํ๋ ์ธ๊ณต์ง๋ฅ ๊ธฐ์ ์ด๋ค. - ๋ฐฐ๊ฒฝ/๋ฑ์ฅ ์ด์ :
์ ํต์ ์ธ ๊ท์น ๊ธฐ๋ฐ ํ๋ก๊ทธ๋จ์ด ํด๊ฒฐํ ์ ์๋ **๋ณต์กํ ๋ฌธ์ (์: ์ผ๊ตด ์ธ์, ์ถ์ฒ ์์คํ )**๋ฅผ ํด๊ฒฐํ๊ธฐ ์ํด ๋ฑ์ฅ. - ์ฌ์ฉ ์ฌ๋ก:
- ์ ํ๋ธ ์ถ์ฒ
- ์์จ์ฃผํ ์๋์ฐจ
- ์ง๋ณ ์์ธก
- ์ฑ์ฉ ์๋ํ ๋ฑ
2. ํ์ด์ฌ์ผ๋ก ๋จธ์ ๋ฌ๋ ์ค์ต
1) ํ์ํ ๋ผ์ด๋ธ๋ฌ๋ฆฌ ๋ถ๋ฌ์ค๊ธฐ
# ๊ธฐ๋ณธ
import numpy as np
import pandas as pd
import matplotlib.pyplot as plt
import seaborn as sns
# ๋ฐ์ดํฐ ์ ์ฒ๋ฆฌ
from sklearn.preprocessing import LabelEncoder
from sklearn.preprocessing import StandardScaler
from sklearn.model_selection import train_test_split
# ๋ชจ๋ธ ํ๊ฐ
from sklearn.metrics import accuracy_score
# ์ฌ์ฉํ ์๊ณ ๋ฆฌ์ฆ
from sklearn.linear_model import LogisticRegression
2) ํ์ต ๋ฐ ์์ธก ํ ๋ฐ์ดํฐ๋ฅผ ๊ฐ์ ธ์ค๊ธฐ
iris_df = pd.read_csv('data/iris.csv')
iris_df
์ค๋์ ๋ถ๊ฝ ๋ฐ์ดํฐ๋ฅผ ์ด์ฉํด๋ณด์ ~
3) EDA (ํ์์ ๋ถ์)
EDA๋ฅผ ํตํด ๋ฐ์ดํฐ์ ํ์ , ์ข ๋ฅ, ํํ ์ ๋๋ฅผ ํ์ ํด์ผ ํ๋ค.
# ๊ฐ๋จํ๊ฒ info๋ง ์ฐ์ด๋ด
iris_df.info()
๋ด๊ฐ ์์ํด์ผํ๋ ์ปฌ๋ผ์ธ target์ด object๋ก ๋ฌธ์ํ ๋ฐ์ดํฐ์ด๋ค.
๊ทผ๋ฐ ๋๋ถ๋ถ์ ๋จธ์ ๋ฌ๋ ๋ชจ๋ธ์ ์ซ์ํ ์ปฌ๋ผ์ผ๋ก ํ์ต์ ํ๊ธฐ ๋๋ฌธ์
์ฐ๋ฆฌ๋ ์ซ์ํ ๋ฐ์ดํฐ๋ก ๋ณํํด์ผ ํ๋ค.
4) ๋ฐ์ดํฐ ์ ์ฒ๋ฆฌ
์ธ์ฝ๋ฉ๊ณผ ํ์คํ ...
1๏ธโฃ Label Encoding (๋ผ๋ฒจ ์ธ์ฝ๋ฉ)
๊ฐ ๋ฒ์ฃผ์ ์ซ์๋ฅผ 1๊ฐ์ฉ ๋ถ์ฌํ๋ ๋ฐฉ์
ex)
Red | 0 |
Blue | 1 |
Green | 2 |
2๏ธโฃ One-Hot Encoding (์-ํซ ์ธ์ฝ๋ฉ)
๊ฐ ๋ฒ์ฃผ๋ฅผ ์ปฌ๋ผ์ผ๋ก ๋ง๋ค๊ณ , ํด๋นํ๋ ๊ฐ์๋ง 1, ๋๋จธ์ง๋ 0
ex)
์๋ ๊ฐ | Red | Blue | Green |
Red | 1 | 0 | 0 |
Blue | 0 | 1 | 0 |
Green | 0 | 0 | 1 |
iris_df์์ target์ LabelEncoder๋ก ์ธ์ฝ๋ฉํด๋ณด์ !
# label Encoder
encoder1 = LabelEncoder()
# ๋ฐ์ดํฐ๋ฅผ ํ์ตํ๋ค.
encoder1.fit(iris_df['target'])
# ํ์ตํ ๊ฒ์ ํ ๋๋ก ๋ณํํ๋ค.
df_enc1 = encoder1.transform(iris_df['target'])
df_enc1
โก๏ธ ๊ธฐ์กด์ target์ ์๋ ๊ฐ๋ค์ 0, 1, 2๋ก ๋ผ๋ฒจ๋ง ํ ๊ฒฐ๊ณผ๋ฅผ ํ์ธํ ์ ์๋ค.
๋ง์ฝ ์ธ์ฝ๋ฉ ํ ๊ฒ์ ๋ค์ ๋ณต์ํ๊ณ ์ถ๋ค๋ฉด ?
# ๋ณต์
df_enc2 = encoder1.inverse_transform(df_enc1)
df_enc2
3๏ธโฃ ํ์คํ
ํ์คํ๋ ํน์ฑ ๊ฐ์ ๋จ์ ์ฐจ์ด๋ฅผ ์์ ๊ธฐ ์ํจ์ด๋ค.
์ด๋ค ํน์ฑ์ 0~1, ์ด๋ค ๊ฑด 0~10,000 ๋ฒ์์ผ ์๋ ์๊ธฐ ๋๋ฌธ์ ๋ชจ๋ ํน์ฑ์ ๋น์ทํ ์์ค์์ ๋น๊ตํ๊ธฐ ์ํด์๋
ํ์คํ๊ฐ ํ์ํ๋ค !
target์ ๋บ ๋๋จธ์ง 4๊ฐ์ ์นผ๋ผ์ ํ์คํ ํ์
# ํ์คํ ์์
์ ์ํด ๊ฒฐ๊ณผ ๋ฐ์ดํฐ๋ฅผ ์ ์ธํ๋ค.
X = iris_df.drop('target', axis = 1)
X
# ํ์คํ
scaler1 = StandardScaler()
# ํ์ตํ๋ค
scaler1.fit(X)
# ๋ณํํ๋ค
scaler_df = scaler1.transform(X)
scaler_df
๋ง์ฝ ํ์คํ ํ ๊ฒ์ ๋ณต๊ตฌํ๊ณ ์ถ๋ค๋ฉด ?
# ๋ณต์
scaler_df2 = scaler1.inverse_transform(scaler_df)
scaler_df2
5) ๋ชจ๋ธ๋ง - ๋ชจ๋ธ ํ์ต / ์์ธก
# ํ์ต์ฉ/ํ๊ฐ์ฉ ๋ฐ์ดํฐ ๋๋๊ธฐ
x = scaler_df
y = df_enc1
train_x, test_x, train_y, test_y = train_test_split(x, y, test_size = 0.2, random_state = 0)
# ๋ถ๋ฅ ๋ชจ๋ธ ํ์ต
md = LogisticRegression()
md.fit(train_x, train_y)
# ์์ธก
pred = md.predict(test_x)
pred
# ํ๊ฐ
accuracy_point = accuracy_score(test_y, pred)
accuracy_point
๋ชจ๋ธ๋ง ๊ณผ์ ์ ํค์๋๋ง ์จ๋ณด์๋ฉด
ํ์ต์ฉ/ํ๊ฐ์ฉ ๋ฐ์ดํฐ ๋๋๊ธฐ - ๋ชจ๋ธ ์์ฑํ๊ธฐ - ๋ชจ๋ธ์ ํ์ต์ฉ ๋ฐ์ดํฐ ํ์ต์ํค๊ธฐ - ์์ธก์ฉ ๋ฐ์ดํฐ๋ก ์์ธกํ๊ธฐ - ํ๊ฐํ๊ธฐ
์์ผ๋ก ๊ฐ๋ฉด ๋๊ฒ ๋ค.
์ง๊ธ๊น์ง์ ๋ด์ฉ์ ์์ฃผ ์์ฃผ !! ๊ธฐ์ด์ ์ธ ๋ผ๋๋ง ๊ตฌ์ฑํด๋์ ๊ฒ์ด๊ณ ,
์ ๋๋ก๋ ๋ฐ์ดํฐ์
์ผ๋ก ํ๋ฉด ๋์ฑ ๋ณต์กํด์ง ๊ฒ์ด๋ค.
๋ค์๊ธ์๋ ํ๊ฐ ์งํ๋ค์ ๊ณต๋ถํด์ ์ ๋ฆฌํด๋ณด์์ผ๊ฒ ๋ค.
๐ชฝ ๋๋์
๋จธ์ ๋ฌ๋์ ์๊ฒฉ์ฆ ์ค๋น, ๊ฐ์ธ ๋ฐ์ด์ฝ ํ๋ฉด์ ์ฌ๋ฌ๋ฒ ํด๋ดค๋๋ฐ, ์์ง๋ ๊ฐ ๊ธธ์ด ๋จผ๊ฑฐ ๊ฐ๋ค.
์ฐ์ ๋ฐฐ์์ผํ ๊ฒ ๋๋ฌด ๋ง๊ณ , ๊ฐ๋
์์ฒด๋ ์ ์ดํด๋์ง ์๋ ๋ถ๋ถ๋ ๋ง๋ค.
๊ทธ๋ฆฌ๊ณ ๋ณธ์ง์ ์ผ๋ก ์ํ๊ณผ ๊ด๋ จ๋ ๊ฐ๋
์ดํด๊ฐ ํ์ํ๊ธฐ ๋๋ฌธ์, ๋จธ๋ฆฌ ์ํ๋ค ใ
ใ
ใ
๊ทธ์น๋ง ๋ ๋ค์ํ ๋ฐ์ดํฐ์
์ ๊ฒฝํํ๋ฉด์ ๋๋ง์ ํ๋ก์ ํธ๋ ๊ผญ ํด๋ณด๊ณ ์ถ๋ค.
๋ด๊ฐ ์ข์ํ๋ ๋๋คํฌ๋ ์คํธ๋ ์ผ๋ฅธ ๋ฐฐ์ฐ๊ณ ์ถ๋ค !
์ถ์ฒ: ๋ฉ์์ด์ฌ์์ฒ๋ผ, ์ํํธ์บ ํผ์ค