32일차
ML
- 타이타닉 데이터 전처리
- test, train 데이터 불러오기
- pd.concat() 해서 전처리할수도, 근데 이때는 reset_index(drop)
- 파생변수 만들기
- 모델링할 때는 결측치 x, 범주형 x
- 따라서 One-Hot Encoding이 필요함
- series.map()
- series.str
- display() 를 이용하면 연달아서 주피터 노트북에서 출력 가능
- pd.get_dummies()
- 알아서 원핫인코딩
- 근데 그만큼 컬럼이 늘어난다.
- 이때, train과 test의 컬럼 개수 주의 (다르면 안된다.)
- np.nan == np.nan 하면 False 나옴 (?)
- pd.isnan(np.nan) 해야지 True 나옴
- 따라서 np.nan 인지 확인할 떄는 pd.isnan을 사용할 것
- X_train, X_test, y_train
- sklearn.model_selection
- cross_val_score
- cross_val_predict
- cross_validate
- RandomClassifier
- 랜덤서치, 그리드서치
- 캐글에 예측 데이터 제출해보기
- plot_tree()
- 피처의 중요도 그려보기
- 엔트로피 (불확실성)
- 엔트로피가 크다는 것은 아직 뭔가가 결정되지 않았다는 것
- 지니 계수 (불순도)
33일차
RandomForest
https://ko.wikipedia.org/wiki/%EB%9E%9C%EB%8D%A4_%ED%8F%AC%EB%A0%88%EC%8A%A4%ED%8A%B8
랜덤 포레스트 - 위키백과, 우리 모두의 백과사전
ko.wikipedia.org
- 분류, 회귀에 둘 다 사용됨 -> CART 알고리즘
- 앙상블 학습 방법의 일종
- from sklearn.ensemble import RandomForest~
- 앙상블 학습이란 여러 학습 알고리즘을 사용하는 것
- 약간 부트스트래핑해서 다수의 결정 트리를 만들고 이를 평균치를 내는 방법 (?) 인 것 같다.
- 부트스트랩이란?
- bootstrap aggregating (bagging)
- 과적합을 줄이는 데 좋다.
- 안정성 및 정확도 향상을 위해
- 앙상블 학습 방법의 메타 알고리즘
- 보통 결정트리나 랜덤포레스트에 적용이 되는 것이 일반적이라고 한다.
- 중복을 허용
- MSE, MAE, RMSE, RMSLE
- from sklearn.model_selection import RandomizedSearchCV
- param_distributions
- clf
- clf.best_estimator_
- clf.best_score_
- clf.cv_results_ : pd.DataFrame() 으로 보면 편하다.
- cross_validate 도 마찬가지
회고
어렵네요 하지만 재미있습니다 🔥
728x90
'⛺ 𝗕𝗼𝗼𝘁 𝗖𝗮𝗺𝗽 > 멋쟁이사자처럼 AI 스쿨 6기' 카테고리의 다른 글
[TIL] Day 35, 36, 37 - Tableau, ML (0) | 2022.06.27 |
---|---|
[TIL] Day 34 - ML, Loss Fuction, log (0) | 2022.06.22 |
[TIL] Day 31 - Tableau (0) | 2022.06.17 |
[TIL] Day 30 - 테스트 자동화/주도개발 (0) | 2022.06.16 |
[TIL] Day 29 - ML 교차검증, GridSearch, RandomSearch (0) | 2022.06.15 |