출처: [데싸노트의 실전에서 통하는 머신러닝] 책https://goldenrabbit.co.kr/2022/07/14/%ED%99%95%EC%8B%A4%ED%9E%88-%EC%95%8C%EC%95%84%EB%91%90%EB%A9%B4-%EB%A7%8C%EC%82%AC%EA%B0%80-%ED%8E%B8%ED%95%B4%EC%A7%80%EB%8A%94-%EB%A8%B8%EC%8B%A0%EB%9F%AC%EB%8B%9D-10%EA%B0%80%EC%A7%80-%EC%95%8C/
확실히 알아두면 만사가 편해지는 머신러닝 10가지 알고리즘 - 골든래빗
코로나보드의 프론트엔드와 백엔드의 전체적인 아키텍처를 파악하고, 이러한 아키텍처로 설계된 이유를 알아봅니다.
goldenrabbit.co.kr
위의 링크를 통해 많이 사용하는 알고리즘 10가지 핵심 정리를 확인해볼 수 있다.
💡 XGBoost 부스팅 모델을 활용하여 커플 성사를 예측하고, 그리드 서치로 하이퍼파라미터 튜닝하여 나은 모델 만들어보자
- 사용 데이터: 스피드 데이팅 이벤트 데이터, 타겟변수: 매칭 성사 여부
- 사용 모델: XGBClassifier
- 평가 지표: 정확도, 혼동행렬, 분류 리포트
트리 베이스 모델이기 때문에 결측치는 임의 숫자로 채워넣는다. 단, 중요도와 관련된 변수들은 결측치를 제거한다. 왜냐하면 피처 엔지니어링에서 중요도 * 점수로 계산하기 떄문이다.
평가에 용이하도록 나이 차이와, 인종 차이 파생변수를 생성해주었다.
same_race에 동일인종인 경우 1을, 아닌경우 -1로 지정한 이유는 만약 1, 0 으로 지정한 경우 (동일인종 여부의 중요성, 인종 차이) = 10, 0 으로 나온 0 값과, (동일 인종 여부의 중요성, 인종차이) = 0, 0 으로 나온 값이 구별이 안되기 때문에 변별력을 높이기 위함이다.
약 86%의 정확도로 비교적 낮다. confusion_matrix를 살펴보면, 1종 오류(실제값은 0인데 1로 예측한) 건수가 58건, 2종 오류(실제값은 1인데 0으로 예측한) 건수가 140으로 많다. 2종오류와 관련이 있는 Recall은 43%로 낮은 것을 혼동행렬에서 확인할 수 있다.
그리드 서치 활용하여 학습 후에 아주 미세하게 올랐고, f1-score모 미세하게 올랐다.
책에는 하이퍼파라미터 튜닝으로 엄청난 개선을 얻기에는 쉽지 않다고 써있다.
📍 트리 모델 정리
가장 기본적인 트리 모델: DecisionTree -> 시각적으로 설명이 가능하다는 장점이 있으나, 이 모델만으로 성능이 나오지 못함
배깅 기법으로 발전된 알고리즘: 랜덤 포레스트
부스팅 기법으로 발전된 대표적인 알고리즘 : XGBoost, LightGBM
XGBoost : 예측 속도 빠름, 예측력 좋음, 데이터 클수록 상대적으로 뛰어난 성능 보임 / 복잡한 모델인만큼 해석 어려움이 있음, 하이퍼파라미터 튜닝이 까다로움
[혼공머] 9장. 순환신경망- 텍스트 분석 (1) | 2025.01.29 |
---|---|
[혼공머] 6장 비지도학습 (1) | 2024.09.24 |
[코칭스터디 Let's AI 2024 스터디] 3주차 미션: 경사하강법, Cross Validation, Bais-Variance 조절을 통한 학습 정확도 높이는 방법 (2) | 2024.06.11 |
[코칭스터디 Let's AI 2024 스터디] 2주차 미션: Norm의 개념 및 L1, L2 Norm (0) | 2024.06.03 |
[코칭스터디 Let's AI 2024 스터디] 1주차 미션: 차원의 저주, Numpy (0) | 2024.05.26 |