-
파이썬 로지스틱 분류<Python>/[Model] 2021. 12. 24. 17:57728x90
로지스틱 분류
from sklearn.linear_model import LogisticClassifier model = LogisticClassifier(solver="lbfgs", random_state=42)
로지스틱 분류 파라미터
penalty = {‘l1’, ‘l2’, ‘elasticnet’, ‘none’}, default=’l2’
dual = bool, 기본값 = 'False'
# 1. liblinear 솔버를 사용하는 l2 패널티에 대해서만 구현
# 2. n_samples > n_features인 경우 dual=False를 선호solver = {'newton-cg', 'lbfgs', 'liblinear', 'sag', 'saga'}, 기본값='lbfgs'
# LIBLINEAR is a linear classifier for data with millions of instances and features.
# sag는 확률적경사하강법을 이용한 것, saga는 sag의 개선판
# 1. 작은 데이터 세트의 경우 'liblinear', 큰 데이터 세트의 경우 'sag' 및 'saga'가 더 빠릅니다.
# 2. 다중 클래스 문제의 경우 'newton-cg', 'sag', 'saga', 'lbfgs'만 다항 손실을 처리합니다.
# 3. 'liblinear'는 일대일 방식으로 제한됩니다.max_iter = int, 기본값=100
# 솔버가 수렴하는 데 사용되는 최대 반복 횟수입니다.verbose = int, 기본값=0
# liblinear, lbfgs 경우 자세한 정보 표시를 위해 verbose=양수
multi_class = {‘auto’, ‘ovr’, ‘multinomial’}, 기본값=’auto’
# 이진문제 : over, 다항 : multinomialclass_weight = {dict, 'balanced'}, 기본값=없음
# "균형" 모드는 y 값을 사용하여 입력 데이터의 클래스 빈도에 반비례하는 가중치를 자동으로 조정합니다 .n_samples / (n_classes * np.bincount(y))
tol = float, 기본값 = 1e-4
# 정지 기준에 대한 허용 오차.C = float, 기본값 = 1.0
# 값이 작을수록 더 강한 정규화fit_intercept = bool, 기본값 = True
# 상수항 포함여부intercept_scaling = float, 기본값=1
# 'liblinear'가 사용되고 self.fit_intercept가 True로 설정된 경우에만 유용
warm_start = bool, 기본값=False
# 이전 솔루션 유지 여부n_jobs = int, 기본값=None
# CPU 코어수l1_ratio = float, 기본값=None
# 엘라스틱넷일때 사용random_state = {int, RandomState 인스턴스}, 기본값 = 없음
# 'sag', 'saga', 'liblinear'일 때 사용model.fit(X_train, y_train['gender']) print(model.score(new_X_train, new_y_train)) predict = model.predict_proba(X_val) pred = predict[:, 1] from sklearn.metrics import roc_auc_score print(roc_auc_score(y_val, pred))
728x90'<Python> > [Model]' 카테고리의 다른 글
파이썬 LinearSVC (0) 2021.12.24 파이썬 SVM (0) 2021.12.24 파이썬 랜덤포레스트 (0) 2021.12.24 파이썬 KNN (0) 2021.12.24 파이썬 결정나무 (0) 2021.12.24