from sklearn.preprocessing import StandardScaler | StandardScaler 가져오기 |
scaler = StandardScaler() | 스케일러 생성 (mean=0, std=1) |
X_scaled = scaler.fit_transform(X) | 학습 및 변환 |
MinMaxScaler() | [0, 1]로 스케일 |
RobustScaler() | 이상치에 강건 |
Normalizer() | 행 L2 정규화 |
LabelEncoder() | 레이블을 정수로 인코딩 |
le.fit_transform(y) | 학습 및 인코딩 |
OneHotEncoder() | 원핫 인코딩 |
OrdinalEncoder() | 순서형 인코딩 |
LabelBinarizer() | 이진 레이블 |
from sklearn.impute import SimpleImputer | 임퓨터 가져오기 |
SimpleImputer(strategy="mean") | 평균 대체 |
SimpleImputer(strategy="median") | 중앙값 대체 |
SimpleImputer(strategy="most_frequent") | 최빈값 대체 |
KNNImputer(n_neighbors=5) | KNN 대체 |
SelectKBest(k=10) | K개 최고 특성 선택 |
from sklearn.model_selection import train_test_split | 분할 함수 가져오기 |
X_train, X_test, y_train, y_test = train_test_split(X, y, test_size=0.2) | 80/20 분할 |
train_test_split(X, y, stratify=y) | 층화 분할 |
train_test_split(X, y, random_state=42) | 재현 가능한 분할 |
from sklearn.model_selection import cross_val_score | CV 점수 가져오기 |
cross_val_score(model, X, y, cv=5) | 5-폴드 CV |
cross_val_predict(model, X, y, cv=5) | CV 예측 |
KFold(n_splits=5, shuffle=True) | K-폴드 분할기 |
StratifiedKFold(n_splits=5) | 층화 K-폴드 |
LeaveOneOut() | Leave-one-out CV |
from sklearn.model_selection import GridSearchCV | 그리드 검색 |
GridSearchCV(model, param_grid, cv=5, scoring='accuracy') | 그리드 검색 생성 |
grid.fit(X_train, y_train) | 그리드 검색 학습 |
grid.best_params_ | 최적 매개변수 |
grid.best_score_ | 최고 점수 |
RandomizedSearchCV(model, param_dist, n_iter=100) | 랜덤 검색 |
from sklearn.linear_model import LogisticRegression | 로지스틱 회귀 |
from sklearn.tree import DecisionTreeClassifier | 결정 트리 |
from sklearn.ensemble import RandomForestClassifier | 랜덤 포레스트 |
from sklearn.svm import SVC | 서포트 벡터 머신 |
from sklearn.neighbors import KNeighborsClassifier | K-최근접 이웃 |
from sklearn.naive_bayes import GaussianNB | 나이브 베이즈 |
from sklearn.ensemble import GradientBoostingClassifier | 그래디언트 부스팅 |
model = RandomForestClassifier(n_estimators=100) | 모델 생성 |
model.fit(X_train, y_train) | 모델 훈련 |
y_pred = model.predict(X_test) | 클래스 예측 |
y_proba = model.predict_proba(X_test) | 확률 예측 |
model.score(X_test, y_test) | 정확도 점수 |
from sklearn.linear_model import LinearRegression | 선형 회귀 |
from sklearn.linear_model import Ridge | 릿지 회귀 (L2) |
from sklearn.linear_model import Lasso | 라쏘 회귀 (L1) |
from sklearn.linear_model import ElasticNet | 엘라스틱넷 |
from sklearn.tree import DecisionTreeRegressor | 결정 트리 |
from sklearn.ensemble import RandomForestRegressor | 랜덤 포레스트 |
from sklearn.svm import SVR | 서포트 벡터 회귀 |
from sklearn.cluster import KMeans | K-평균 |
KMeans(n_clusters=3) | KMeans 생성 |
labels = kmeans.fit_predict(X) | 학습 및 레이블 얻기 |
kmeans.cluster_centers_ | 클러스터 중심 |
DBSCAN(eps=0.5, min_samples=5) | DBSCAN |
AgglomerativeClustering(n_clusters=3) | 계층적 |
from sklearn.metrics import accuracy_score | 정확도 |
from sklearn.metrics import precision_score, recall_score, f1_score | 정밀도, 재현율, F1 |
from sklearn.metrics import classification_report | 분류 리포트 |
from sklearn.metrics import confusion_matrix | 혼동 행렬 |
from sklearn.metrics import roc_auc_score | ROC AUC |
from sklearn.metrics import roc_curve | ROC 곡선 |
from sklearn.metrics import mean_squared_error | MSE |
from sklearn.metrics import mean_absolute_error | MAE |
from sklearn.metrics import r2_score | R² 점수 |
mean_squared_error(y_true, y_pred, squared=False) | RMSE |
from sklearn.pipeline import Pipeline | Pipeline 가져오기 |
Pipeline([('scaler', StandardScaler()), ('clf', SVC())]) | 파이프라인 생성 |
from sklearn.pipeline import make_pipeline | 파이프라인 헬퍼 |
make_pipeline(StandardScaler(), SVC()) | 자동 이름 파이프라인 |
pipe.fit(X_train, y_train) | 파이프라인 학습 |
pipe.predict(X_test) | 파이프라인으로 예측 |