머신러닝의 기본 구조: 특성, 레이블, 학습, 예측
17강. 머신러닝의 기본 구조: 특성, 레이블, 학습, 예측
1. 이번 강의에서 해결할 문제
모델을 함수 호출로만 외우면 어떤 정보로 무엇을 예측하는지, 성능이 의미 있는지 판단하기 어렵습니다. 문제 정의와 기준선부터 세워야 합니다.
2. 학습 목표
3. 핵심 개념
지도학습에서 행은 샘플, 예측에 사용할 열은 특성 X, 맞힐 결과는 레이블 y입니다. fit은 학습 데이터에서 모델 파라미터를 정하고 predict는 새 X에 결과를 냅니다. 복잡한 모델 전에 DummyClassifier로 단순 기준선을 측정해야 개선 여부를 말할 수 있습니다.
4. 단계별 실습
1. 예제 파일 작성
실행 환경: 코드 편집기
실행 위치: C:\dev\game-data-lab
실행 전 확인: 기존 파일이 있으면 내용을 덮어쓰지 말고 Git diff로 이번 강의 변경 범위를 확인합니다. 실제 개인정보·API Key·토큰은 사용하지 않습니다.
대상 파일: src/ml_baseline.py
import pandas as pd
from sklearn.dummy import DummyClassifier
df = pd.read_csv("data/processed/analysis_sessions.csv")
X = df[["play_minutes", "score"]]
y = df["win"].astype(int)
model = DummyClassifier(strategy="most_frequent")
model.fit(X, y)
predictions = model.predict(X)
print("X shape:", X.shape)
print("y counts:", y.value_counts(), sep="\n")
print("baseline predictions:", predictions.tolist())
print("주의: 같은 데이터 평가 결과는 일반화 성능이 아닙니다.")
2. 실행과 결과 확인
실행 환경: Windows PowerShell
실행 위치: C:\dev\game-data-lab
실행 전 확인: Python 코드는 프로젝트의 .venv 인터프리터를 사용하고 입력 파일 경로가 존재하는지 확인합니다.
대상: src/ml_baseline.py과 이 강의가 만드는 출력
Set-Location C:\dev\game-data-lab
.\.venv\Scripts\python.exe .\src\ml_baseline.py
예상 결과: 특성 행렬 크기, 레이블 분포와 가장 흔한 클래스만 예측하는 기준 결과가 출력됩니다.
5. 분석 또는 모델이 동작하는 이유
DummyClassifier는 특성 패턴을 학습하지 않고 지정 전략으로 예측합니다. 따라서 실제 모델이 이 기준보다 나은지 비교할 출발점을 제공하지만 같은 데이터로 평가해서는 안 됩니다.
6. 자주 하는 실수와 해결법
7. 직접 실습
8. 이해 점검 질문 3개
9. 핵심 요약
머신러닝의 기본 구조: 특성, 레이블, 학습, 예측 미니 퀴즈
선택 즉시 정답과 해설을 확인할 수 있습니다. 결과는 이 브라우저에만 저장됩니다.
학습을 마쳤나요?
직접 실습과 점검 질문까지 확인한 뒤 완료로 표시하세요.