일일 학습 노트 - 붓꽃 분류 모델

날짜: 2025-01-27
주제: 첫 번째 머신러닝 모델 만들기 - 붓꽃(Iris) 품종 예측
학습 시간: 2시간
진행 상황: 이론 학습 완료, 실습 준비 중

오늘의 학습 목표

  • 붓꽃 데이터셋의 특성과 구조 이해
  • 머신러닝 모델링 전체 워크플로우 파악
  • 사이킷런 기본 API 사용법 익히기
  • 여러 분류 알고리즘 비교 분석
  • 모델 성능 평가 방법 학습

핵심 학습 내용

1. 붓꽃 데이터셋 특징

  • 데이터 크기: 150개 샘플 (각 종별 50개)
  • 특성: 꽃받침/꽃잎의 길이와 너비 4개
  • 클래스: Setosa, Versicolor, Virginica 3개
  • 특이점:
    • Setosa는 다른 종과 선형 분리 가능
    • Versicolor와 Virginica는 겹치는 부분 존재
    • 결측치 없는 완전한 데이터

2. 머신러닝 워크플로우 이해

데이터 로드 → 탐색적 분석 → 전처리 → 모델 선택 → 학습 → 평가 → 튜닝 → 배포

각 단계별 중요 포인트:

  • 데이터 탐색: 시각화를 통한 패턴 발견
  • 전처리: 스케일링, 분할의 중요성
  • 모델 선택: 문제 유형에 맞는 알고리즘 선택
  • 평가: 정확도 외 다양한 지표 고려

3. 추천 알고리즘 비교

알고리즘장점단점붓꽃 데이터 적합성
KNN직관적, 해석 쉬움계산 비용 높음⭐⭐⭐⭐⭐
Decision Tree규칙 기반, 시각화 가능과적합 위험⭐⭐⭐⭐
Logistic Regression확률 제공, 빠름선형 가정⭐⭐⭐
SVM고차원 데이터 강력매개변수 민감⭐⭐⭐⭐

실습 계획

오늘 진행할 실습

  1. 환경 설정: 필요한 라이브러리 설치 및 임포트
  2. 데이터 탐색: 기본 정보 확인 및 시각화
  3. 기본 모델: KNN으로 첫 번째 모델 구현
  4. 성능 평가: 정확도 및 혼동 행렬 분석

내일 진행할 실습

  1. 모델 비교: 4가지 알고리즘 성능 비교
  2. 하이퍼파라미터 튜닝: GridSearchCV 활용
  3. 교차 검증: 모델 일반화 성능 평가
  4. 결과 해석: 특성 중요도 및 오분류 분석

새로 알게 된 내용

1. 붓꽃 데이터셋의 역사적 의미

  • 1936년 Ronald Fisher가 소개한 고전적 데이터셋
  • 통계학과 머신러닝의 교육용 표준 데이터
  • 실제 생물학적 측정값으로 현실성 높음

2. 분류 문제의 복잡성

  • 단순해 보이는 3-클래스 분류도 각 클래스별 특성 다름
  • 선형 분리 가능/불가능의 개념 실제 확인
  • 시각화의 중요성 (고차원 데이터의 저차원 투영)

3. 모델 평가의 다양성

  • 정확도만으로는 부족한 경우 존재
  • 정밀도, 재현율, F1-score의 각각의 의미
  • 혼동 행렬을 통한 직관적 이해

어려웠던 점

1. 특성 스케일링의 필요성

  • 언제 스케일링이 필요한지 판단 기준 애매
  • StandardScaler vs MinMaxScaler 선택 기준
  • 학습 데이터로만 fit하고 테스트에 transform 적용하는 이유

2. 모델별 특성 이해

  • 각 알고리즘의 수학적 원리 완전 이해 부족
  • 하이퍼파라미터의 의미와 영향도 파악 어려움
  • 언제 어떤 모델을 선택해야 하는지 기준 모호

3. 평가 지표 해석

  • 정밀도와 재현율의 트레이드오프 관계
  • 다중 클래스에서 매크로/마이크로 평균의 차이
  • 실무에서 어떤 지표를 우선시해야 하는지

해결 방안

1. 스케일링 이해도 높이기

  • 각 알고리즘이 거리 기반인지 확인
  • 특성별 스케일 차이가 미치는 영향 실험
  • 스케일링 전후 성능 비교 실습

2. 알고리즘 심화 학습

  • 각 알고리즘의 수학적 원리 단계별 학습
  • 간단한 예제로 손계산 연습
  • 시각화를 통한 결정 경계 확인

3. 실무 사례 연구

  • 다양한 도메인별 평가 지표 우선순위
  • 불균형 데이터에서의 평가 방법
  • 비즈니스 목표와 연결된 평가 전략

다음 학습 방향

단기 계획 (1주일)

  1. 실습 완료: 붓꽃 분류 모델 전체 워크플로우
  2. 개념 정리: 각 알고리즘의 원리와 특성
  3. 확장 실습: 하이퍼파라미터 튜닝 및 교차 검증
  4. 문서화: 실습 결과 및 발견사항 정리

중기 계획 (1개월)

  1. 다른 데이터셋 적용: 와인, 유방암 데이터 등
  2. 앙상블 방법: Random Forest, Voting 등
  3. 특성 공학: 특성 선택 및 생성 기법
  4. 모델 해석: SHAP, LIME 등 활용

장기 계획 (3개월)

  1. 실무 프로젝트: 실제 비즈니스 문제 해결
  2. 딥러닝 연계: 신경망 기반 분류 모델
  3. MLOps 도입: 모델 배포 및 모니터링
  4. 도메인 전문화: 특정 분야 전문성 개발

참고 자료

오늘 활용한 자료

추가 학습 자료

개인적 성찰

학습 스타일 분석

  • 시각 학습자: 그래프와 차트로 이해 빠름
  • 실습 중심: 이론보다 코드로 체험할 때 기억 잘됨
  • 체계적 접근: 전체 워크플로우 파악 후 세부 학습 선호

동기 부여 요소

  • 실제 데이터로 즉각적인 결과 확인 가능
  • 다양한 알고리즘 비교를 통한 성능 차이 체감
  • 시각화를 통한 직관적 이해

개선 필요 사항

  • 수학적 원리 이해 부족으로 깊이 있는 학습 제한
  • 실무 적용 관점에서의 사고 부족
  • 체계적인 실험 설계 및 결과 정리 능력 향상 필요

내일의 다짐

  1. 실습 완주: 계획한 모든 실습 단계 완료
  2. 깊이 있는 학습: 단순 코드 실행을 넘어 원리 이해
  3. 문제 해결: 오늘 파악한 어려운 점들 해결
  4. 기록 습관: 실습 과정과 결과 상세 기록

“첫 번째 머신러닝 모델을 만드는 것은 단순히 코드를 실행하는 것이 아니라, 데이터에서 패턴을 발견하고 이를 통해 미래를 예측하는 경험을 하는 것이다. 붓꽃 데이터셋이라는 작은 시작점에서 머신러닝의 전체 여정을 엿볼 수 있었다.”

오늘의 한 줄 요약: 붓꽃 분류를 통해 머신러닝의 전체 워크플로우를 이해하고, 실제 모델 구현을 위한 기반 지식을 쌓았다.