1. 교차검증
사이킷런 model selection 모듈
1. kfold = KFold(n_splits= n) -> kfold.split(X) : 데이터셋을 n개의 폴드로 나누고 학습/검증셋을 돌려가며 교차검증
2. skf = StratifiedKFold(n_splits=n) -> skf.split(X,y) : kfold와 같지만, 레이블을 학습/검증셋에 균일하게 배분
-> for문 사용해서 학습/데이터세트 분리하고 estimator를 fit하고 predict하여 accuracy구하기
3. cross_val_score(estimator, X, y, scoring=None, cv=None) : 폴드세트나누기, 학습/예측/평가까지 한꺼번에!
4. GridSearchCV(dtree, param_grid, scoring=None, refit=True, cv=None)
parameters = {'max_depth': [a, b, c...], 'min_samples_split': [x, y, ...]
train_test_split으로 데이터분리하고 GridSearchCV해준 dtree에 학습데이터로 fit해서 해당 데이터에 대해 각각의 하이퍼파라미터들을 교차검증하고 최적화.
: 분류/회귀 알고리즘(dtree)을 내가 정한 param_grid 하이퍼파라미터들 중에서 최적화하고 교차검증까지 해줌
-> 결과는 .cv_results_에 dic형태로 저장됨
2. 데이터전처리
-
결손값(null/NaN) 처리
-
데이터인코딩 : 문자형 카테고리형 속성을 숫자값으로 변환
사이킷런 preprocessing 모듈
1) 레이블인코딩 : 각 피처에 고유인덱스 부여
* LabelEncoder() , 1d array를 넣음2) 원핫인코딩 : 각 피처에 해당하는 컬럼을 만들고 해당피처컬럼에만 1, 나머지는 0으로 표시 (인덱스간의 대소비교를 막음)
* LabelEncoder()로 피처에 인덱스 부여후 OneHotEncoder()
* 2d array를 넣음3) 판다스 get_dummies(데이터프레임) : 원핫인코딩을 df에서 해줌
-
피처스케일링 :
사이킷런
1) StandardScaler : 평균 0 분산 1인 정규분포로 변환
2) MinMaxScaler : 데이터값을 모두 0~1 값 사이로 변환 (또는 -1~1)
'코딩 독학 > 코딩 에러' 카테고리의 다른 글
모두의딥러닝 4장. 경사하강법 에러 (0) | 2020.09.29 |
---|---|
모두의딥러닝 3장 선형회귀 에러 (0) | 2020.09.29 |
인프런_파이썬 머신러닌 완전정복_2장 복습 삽질 (0) | 2020.09.21 |
댓글