TIL(Today I Learned)
1️⃣실무에 바로 쓰는 머신러닝 기초 6
앙상블 기법

- 배깅과 부스팅을 통해 모델 조합으로 성능 향상
과적합 vs 과소적합
- 과적합: 복잡도 높음 -> 정규화, 드롭아웃, 조기종료, 데이터 증강 등으로 대응

- 과소적합: 복잡도 낮음 -> 모델 파라미터 수 늘리기, 학습 시간(에폭) 늘리기

하이퍼 파라미터 튜닝
- GridSearchCV, RandomizedSearchCV 등을 통해 모델 성능 최적화
Fearture Importance
- 시각화를 통해 트리 기반의 모델의 경우 어느정도 해석도 가능

Q1: 배깅(Bagging)과 부스팅(Boosting)의 가장 큰 차이점
A1: 배깅은 여러 모델을 ‘병렬적으로’ 독립 학습시킨 뒤 결과를 결합(평균/투표)하는 방식이고, 부스팅은 모델을 ‘순차적으로’ 학습하면서 이전 모델의 오류를 단계적으로 보정해 나가는 방식
Q2: 앙상블 모델(랜덤 포레스트, XGBoost 등)은 언제 쓰면 좋은지?
A2: 높은 예측 성능이 필요하고, 데이터 패턴이 복잡하거나 단일 모델로는 성능이 충분하지 않을 때 사용
Q3: 과적합을 빠르게 판단할 수 있는 방법은 무엇인지?
A3: 만약 학습 정확도(또는 점수)는 높지만, 검증이나 테스트 정확도가 낮다면 과적합을 의심할 수 있다.
Q4: 하이퍼파라미터를 튜닝할 때 GridSearchCV와 RandomizedSearchCV 중 어떤 것을 사용하면 좋은지?
A4: 탐색해야 할 파라미터 범위가 좁고, 후보가 적을 때는 GridSearchCV가 효율적이며, 후보 범위가 매우 넓고 많은 경우에는 RandomizedSearchCV로 무작위 샘플링을 활용하여 탐색 시간을 줄이는 것이 좋다.
Q5: 부스팅 기법(XGBoost, LightGBM 등)에서 자주 보는 ‘학습률(learning_rate)’은 무엇이고 어떻게 설정해야 하는지?
A5: 학습률은 각 단계별 모델이 학습된 결과를 어느 정도 비율로 반영할지를 결정하는 하이퍼파라미터입니다. 일반적으로 학습률을 너무 크게 설정하면 학습 과정이 불안정해지고, 너무 작게 설정하면 학습 속도가 매우 느려집니다. 보통 0.1~0.01 사이를 시작점으로 잡고 실험하면서 조정
2️⃣CSTS 자격증 준비
자격증 시험 범위 정리
제1장 테스트 개요
- 1.1 테스트 목적 / 1.2 오류·결함·장애 (개념·결함유형·개발단계별결함·테스팅/디버깅/재테스팅)
- 1.3 테스트의 현실 (비현실성·진화과정·테스트 원칙 ★) / 1.4 테스트와 품질(평가·보증)
- 1.5 기본 용어 (대상/레벨·피처/유형·설계기법·케이스·절차·환경)
제2장 테스트 분류와 테스팅 방법
- 2.2 분류 (레벨별·유형별·설계기법별) / 2.3 방법 (리그레션·생명주기·위험기반·모델기반)
제3장 개발 단계와 테스트
- 3.2 컴포넌트(모의객체·FIRST원칙) / 3.3 통합(점진적통합) / 3.4 시스템·인수 / 3.5 리그레션
제4장 품질 특성과 비기능 테스트
- 기능적합성·성능효율성·호환성·사용성·신뢰성·보안성·유지보수성·이식성
제6장 생명 주기 모델과 테스트
- 순차적 / 진화적 / 애자일
제8장 정적 테스트 ★
- 8.2 리뷰 프로세스 / 8.3 관리리뷰 / 8.4 기술리뷰 / 8.5 인스펙션(역할·과정) / 8.6 워크쓰루 / 8.7 감사 / 8.8 정적분석(코딩표준·복잡도)
제9장 구조 기반 테스트 ★★
- 9.2 제어흐름 그래프 / 9.3 이해 / 9.4 문장 / 9.5 결정 / 9.6 조건 / 9.7 결정·조건 / 9.8 변형 조건/결정(MC/DC)
제10장 명세 기반 테스트 ★★
- 10.2 동등분할 / 10.3 결정 테이블 / 10.4 경곗값 분석 / 10.5 조합 테스트 / 10.6 입력 / 10.7 상태 전이
제11장 테스트 프로세스 개요
- 11.3 테스트 관리 프로세스(활동·산출물) / 11.4 동적 테스트 프로세스(활동·산출물) / 11.5 테스트 산출물·관계
제12장 테스트 계획
- 12.2 컨텍스트 명세(대상·범위·제약·이해관계자) / 12.3 위험 분석(프로젝트·제품) / 12.4 전략 수립(설계기법·환경·메트릭·완료기준 ★) / 12.6 산출물
제13장 테스트 설계/구현 및 환경 구축·관리
- 13.2 설계·케이스개발·절차개발·환경/데이터 요건 / 13.3 환경 구축·관리 / 13.4 산출물
제14장 테스트 실행 및 결함 보고 ★
- 14.2 실행(절차실행·결과비교·기록) / 14.3 결함보고(분석·기록·추적·결함 생명주기 ★) / 14.4 산출물
제15장 모니터링/제어 및 종료
- 15.2 모니터링·제어(현황보고) / 15.3 종료(환경정리·종료보고) / 15.4 산출물
커리큘럼
https://docs.google.com/document/d/1bjM_R3eZ8-NV7KDvdf9KxhDpTlxYVJEF8EtywyhILkE/edit?usp=sharing
CSTS_일반등급_26일_커리큘럼.md
CSTS 일반등급 26일 커리큘럼 (6/22 ~ 7/18 시험) 시험 정보 · 90분 / 70문제 / 75점 이상 합격 4지선다 50문제(75점) · O/X 10문제(10점) · 단답형 10문제(15점) 문제당 평균 77초 — 9·10장 계산문제에서 시간
docs.google.com
💡 느낀점
앙상블을 공부하면서 가장 와닿은 건, 결국 "여러 개의 약한 모델을 어떻게 묶느냐"라는 점이었다. 배깅은 데이터를 여러 번 복원추출해서 독립적으로 학습한 모델들을 평균 내는 방식이라 분산(variance)을 줄이는 데 강하고, 부스팅은 앞 모델이 틀린 부분에 가중치를 더 줘가며 순차적으로 보완하는 방식이라 편향(bias)을 줄이는 데 강하다는 걸 구분하게 됐다. 랜덤포레스트가 "독립 + 평균"이라면, XGBoost·CatBoost 같은 부스팅은 "직렬 + 보정"이라는 정반대 구조라는 게 머릿속에 정리됐다.
'머신러닝 활용 품질관리' 카테고리의 다른 글
| Chapter.8 머신러닝 활용 품질관리(6) (0) | 2026.06.23 |
|---|---|
| Chapter.8 머신러닝 활용 품질관리(4) (0) | 2026.06.19 |
| Chapter.8 머신러닝 활용 품질관리(3) (0) | 2026.06.17 |
| Chapter.8 머신러닝 활용 품질관리(2) (0) | 2026.06.16 |
| Chapter.8 머신러닝 활용 품질관리(1) (0) | 2026.06.15 |