intro
- 지난 수업(1024) 복습
- cf. nvidia, 그래픽카드
- 분류와 회귀가 머신러닝의 핵심, 군집화와 차원축소는 분석 및 시각화
- 분류(classification)의 예시, 회귀(regression)의 예시
머신러닝 모델학습과 예측과정
데이터 검색 => 데이터 전처리 => Feature Engineering => 모델링 => fit/predict => 평가
- Data Preprocessing : normalization(정규화), outlier(이상치) 처리, 결측치(모델에 있으면 에러) imputation or 제거, one-hot-encoding 등
=> 이번주 과제로 예습! - 지도학습: 기존의 데이터(기출문제와 정답)으로 공부(fit)를 하고, 실전문제를 풀어서(predict) 채점함(evaluate)
- 비지도학습
=> 오늘은 지도학습
결정 트리 학습법(Decision Tree Learning)
어떤 항목에 대한 관측값과 목표값을 연결시켜주는 예측모델로, 결정트리를 사용함
- 결정 트리: 스무고개, 회귀 분류 모두 가능
- 분류 및 회귀 트리(Classification And Regression Tree, CART)
하이퍼 파라미터
feature의 중요도를 보았을 때, domain 지식을 결합하여 분석할 것을 찾음
ex. 인슐린의 중요도가 낮게 나왔는가?
criterion: 가지의 분할의 품질을 측정하는 기능 ex. 지니불순도, 앤트로피
max_depth: 트리의 최대 깊이
min_samples_split:내부 노드를 분할하는 데 필요한 최소 샘플 수입니다.
min_samples_leaf: 리프 노드에 있어야 하는 최소 샘플 수입니다.
max_leaf_nodes: 리프 노드 숫자의 제한치입니다.
max_features: int(개수), float(비율) ... 으로 features 개수 조절
int, float or {"auto", "sqrt", "log2"}, default=None
(The number of features to consider when looking for the best split)random_state: 추정기의 무작위성을 제어합니다. 실행했을 때 같은 결과가 나오도록 합니다.
실습
from sklearn.tree import DecisionTreeClassifier model = DecisionTreeClassifier(max_depth=5, random_state=42, min_samples_leaf=4) model.fit(X_train, y_train) model.score(X_test, y_test) >>> 0.7792207792207793
지니불순도와 엔트로피
지니불순도: 얼마나 섞여 있는가(1-확률^2),
- 값이 낮을 수록 좋음 => 0이 되면 트리를 그만 그림
- 최악은 0.5
엔트로피 : 새넌 엔트로피...네? 짜장짬뽕 맛있다
overfitting vs. underfitting
=> 일반화(generalization)이 필요..!
Overfitting(과대적합)
- 학습 데이터에 과도하게 학습되어, 일반적인 경우가 아닌 값들까지 학습하게 된 상황
- Underfitting(과소적합)*
- 학습 데이터에 너무 적게 학습되어 점수가 낮게 나오는 상황(공부를 너무 안함)
실습 0402
=> 위에서 예시 들었던 인슐린 중요도에 대해 살펴보기
인슐린 EDA
Q. 수치형 변수를 범주형 변수로 바꾸는 이유
A. 머신러닝 알고리즘에 힌트를 줄 수도 있고, 오버피팅을 방지할 수 있어서.
=> 이런 기법을 사용할 수도 있다~, 성능향상을 담보하지는 않음
결측치 다루기
=> 평균이나 중앙값으로 채워주기!
'멋쟁이사자처럼 AIS7 > 오늘코드' 카테고리의 다른 글
[1031] 분류와 회귀의 평가 지표와 하이퍼 파라미터 튜닝 (0) | 2022.10.31 |
---|---|
[1026] Feature Engineering & K-fold Cross Validation (0) | 2022.10.26 |
[1024] ML Tools (0) | 2022.10.24 |
[1013] EDA, Data Sampling, 파생변수를 이용한 Data 가공, 시각화(3-7 미작성) (0) | 2022.10.13 |
[1012] EDA, Tidy Data, KOSIS, 정규표현식 (0) | 2022.10.12 |
댓글