머신러닝 모델 성능 평가 - 개념 및 연습문제
·
자격증/AICE
머신러닝 모델 평가의 기본 개념모델 평가는 “예측이 얼마나 실제값과 비슷한가?” 를 측정하는 과정즉, 학습(Training) → 검증(Validation) → 테스트(Test) 순서로 모델을 평가 문제 유형별 평가 방식 (1) 회귀 문제 (Regression)(예: 집값 예측, 온도 예측 등 연속형 숫자를 예측할 때)지표의미값이 작을수록 좋음MAE (Mean Absolute Error)예측값과 실제값의 차이의 절댓값 평균✅MSE (Mean Squared Error)오차를 제곱해서 평균✅RMSE (Root MSE)MSE의 제곱근, 실제 단위와 동일✅R² (결정계수)예측이 실제를 얼마나 잘 설명하는가 (0~1)값이 클수록 좋음from sklearn.metrics import mean_absolute_e..
머신러닝 의사결정나무 & 랜덤포레스트로 모델 학습 - 개념 및 연습문제
·
자격증/AICE
기초 개념 의사결정나무 (Decision Tree)데이터를 여러 질문(조건)으로 나눠가면서 예측하는 모델마치 스무고개처럼, 조건을 따라가면 답이 나오는 구조1. 공부시간 > 3시간? ├─ 예 → 숙면 여부 > 7시간? │ ├─ 예 → 합격 🎉 │ └─ 아니오 → 불합격 😥 └─ 아니오 → 불합격 😥이렇게 조건을 따라 내려가면 결과가 나온다.즉, 트리(Tree) 모양의 구조로 결정(Decision)을 내린다. 랜덤포레스트 (Random Forest)여러 개의 의사결정나무를 만들어서, 그들의 투표 결과 를 종합하는 모델이름처럼 랜덤한 숲을 만드는 방식각 나무는 데이터를 조금씩 다르게 학습하고, 최종 예측은 다수결(분류) 혹은 평균(회귀)으로 결정한다. 비유의사결정..
머신러닝 데이터셋 분리 및 스케일링 - 개념 및 연습문제
·
자격증/AICE
데이터셋을 분리하는 이유?일반화 성능 확인: 모델이 학습 데이터에만 잘 맞는지(과적합) 아니면 새로운 데이터에도 잘 동작하는지 확인하려면, 학습에 쓰지 않은 데이터(검증 또는 테스트)가 필요하다.과적합 판단: 학습 성능이 좋고 검증 성능이 나쁘면 과적합 의심.하이퍼파라미터 튜닝: 모델 구조나 하이퍼파라미터(예: 정규화 계수, 트리 깊이)를 조정할 때 검증 데이터 성능을 보고 결정한다.데이터 누수(data leakage) 방지: 검증(또는 테스트) 데이터는 모델이 절대 보지 않게 유지해야 실제 성능을 정확히 평가할 수 있다.보통 흐름: train (학습) → validation (튜닝/조정) → 최종평가는 별도의 test 데이터로. 사전 학습 - 머신러닝 기초 개념Feature : 특징, 입력..
머신러닝 원-핫 인코딩(One-Hot Encoding) - 개념 및 연습문제
·
자격증/AICE
원-핫 인코딩(One-Hot Encoding)이란?범주형 데이터를 수치형 데이터로 바꾸는 방법머신러닝 모델은 숫자만 이해할 수 있기 때문에, 문자나 범주를 숫자로 변환 필요 사용 예시 예를 들어, 색상을 나타내는 color 컬럼이 있다고 할 때 color redbludgreenred… 머신러닝 모델은 "red" 같은 문자열을 직접 처리할 수 없다.그런데 단순히 red=1, blue=2, green=3 이렇게 숫자로 바꾸면 모델이 1할 수 있다.원-핫 인코딩은 순서 정보를 주지 않으면서 각 범주를 표현할 수 있는 방법이다. 각 범주를 0과 1로 된 새로운 컬럼으로 바꾼다. color red bluegreenred100blue010green001red100각 행은 자신이 속한 범주만 1,..
AI 모델링 기초
·
자격증/AICE
출처 : 더에이아이랩 AICE Associate특강, Chat GPT scikit-learn을 이용한 학습 데이터 분할 train_test_split 함수사용자가 전체 데이터를 직접 나누면 번거롭고, 학습에 적합하도록 분배하기도 어려움scikit-learn의 train_test_split 함수를 활용하면 쉽게 데이터 분할 가능 from sklearn.model_selection import train_test_splitx_train, x_valid, y_train, y_valid = train_test_split(data, target, test_size=None,train_size=None, random_state=None, shuffle=True, stratify=None)test_size : 전..
데이터 전처리 기초
·
자격증/AICE
출처 : 더에이아이랩 AICE Associate특강, Chat GPT pandas에서 axis 의미axis 값방향설명axis=0세로 방향행 기준으로 연산, 즉 열(column) 단위 합계axis=1가로 방향열 기준으로 연산, 즉 행(row) 단위 합계 결측치 처리 결측치데이터가 빠져 있는 값파이썬에서는 결측치를 ‘NaN’으로 표기 결측치 확인info() 메서드로 인덱스 범위(RangeIndex), 컬럼별 non-null 수 확인RangeIndex 정보의 entries 수와 컬럼 정보의 컬럼별 non-null 수를 비교해보면 결측치 존재 여부 확인 가능 결측치 수 확인isnull() : 값이 null이면 True, null이 아니면 False 반환isnull().sum(axis=0) : 데이터프..
데이터 수집 및 분석 기초
·
자격증/AICE
출처 : 더에이아이랩 AICE Associate특강 import문import pandas as pdimport sklearn as skPandas를 별칭 pd로 불러오기scikit-learn을 별칭 sk로 임포트하기 데이터 불러오기 데이터 불러오기df = pd.read_csv('데이터 경로', encoding, ...) 데이터 저장하기df.to_csv('저장할 경로') 교차표(Crosstab) 확인pd.crosstab(index=인덱스, columns=컬럼) arrival_timeAfternoonNight…Bangalore699214338 Delhi800712007 데이터 살펴보기 데이터 살펴보기df = pd.read_csv('../data/hotel_bookings.csv', encodi..