20221102 = 머신러닝 데이터 전처리 및 Decisiontree
* 데이터전처리를 할 때는 train를 기준으로 한다.
* 현실 세계에서 test는 아직 모르는 데이터이기 때문에 train을 기준으로 한다.
* train 에만 등장하는 호칭을 피처로 만들어 주게 되면 피처의 개수가 늘어나는데 불필요한 피처가 생기기도 하고 데이터의 크기도 커지기 때문에 학습에도 시간이 더 걸립니다.
* train과 test의 피처 개수가 다르면 오류가 발생합니다.
* 원핫인코딩을 할 때 train, test 피처의 개수와 종류 같은지 확인이 필요합니다.
* train과 test의 컬럼이 같아야 한다.
* 너무 적게 등장하는 값을 피처로 만들었을 때 해당 값에 대한 오버피팅 문제도 있을 수 있습니다.
* 원핫인코딩 = 모델이 학습할 때 문자는 인식을 하지 못해서 학습할 때 에러가 뜹니다. 따라서 문자에서 숫자로 바꿔주는 인코딩이 필요한데 그 인코딩 방식 중 하나
* 캐글에서 좋은 솔루션 찾는 법
1) Top 키워드로 검색
2) 솔루션에 대한 투표수가 많은 것
3) 프로필 메달의 색상
* 결측치 대체 method : { "backfill", "bfill", "pad", "ffill", None }
* n_estimators : 트리의 수
* criterion: 가지의 분할의 품질을 측정하는 기능입니다.
* max_depth: 트리의 최대 깊이입니다.
* min_samples_split:내부 노드를 분할하는 데 필요한 최소 샘플 수입니다.
* min_samples_leaf: 리프 노드에 있어야 하는 최소 샘플 수입니다.
* max_leaf_nodes: 리프 노드 숫자의 제한치입니다.
* random_state: 추정기의 무작위성을 제어합니다. 실행했을 때 같은 결과가 나오도록 합니다.