머신러닝 2

원-핫 인코딩과 레이블 인코딩: 범주형 데이터 변환 기준과 실습

1. 범주형 데이터를 숫자로 바꿔야 하는 이유머신러닝 모델의 연산은 행렬 곱, 거리 계산, 미분으로 구성된다. 세 연산 모두 실수 입력을 전제하므로 "사과", "서울", "A형" 같은 문자열은 모델에 직접 투입할 수 없다. 따라서 범주형 데이터(categorical data)는 학습 전에 반드시 수치 벡터로 변환된다.변환 방식은 크게 두 가지다.레이블 인코딩(Label Encoding): 각 범주에 고유한 정수를 부여한다. 열 수는 그대로다.원-핫 인코딩(One-Hot Encoding): 범주마다 열을 만들고, 해당하는 하나의 열만 1, 나머지는 0으로 채운다.선택 기준은 취향이 아니라 두 가지 질문으로 결정된다.해당 변수에 순서(서열) 가 존재하는가?사용하는 모델이 숫자 값을 어떻게 소비하는가? (거리..

머신러닝의 동작 구조 - 결정함수란? (feat. 악성코드 탐지 예시)

1. 결정함수란 무엇인가1️⃣ 정의결정함수는 입력값을 출력값에 대응시키는 규칙이다. 형식적으로는 입력 공간 X에서 출력 공간 Y로 가는 사상으로 표기한다.f : X → YX : n차원 특징 공간, 입력은 특징 벡터 x = (x1, x2, ..., xn)Y : 출력 공간. 분류 문제라면 {정상, 악성}, 회귀 문제라면 실수 집합 선형 분류기의 경우 결정함수는 다음 형태를 갖는다.f(x) = sign(w1*x1 + w2*x2 + ... + wn*xn + b) 여기서 w는 가중치, b는 편향이다. 학습이 결정하는 대상은 이 w와 b이며, 이를 모델 파라미터라고 한다.입력과 출력의 관계를 연결한다는 의미에서 매핑 함수(Mapping Function) 라는 용어도 동일한 대상을 가리킨다.2️⃣ 일반 프로그램의 함..