머신러닝이란 무엇인가 — 회귀·분류 2가지 예측 모델의 기초

머신러닝은 데이터 속에 숨어 있는 규칙을 찾아내는 일이다. 잔뜩 쌓인 숫자들 사이에서 “이 값이 오르면 저 값도 오른다” 같은 추세나 패턴을 골라내, 그것을 하나의 수식으로 적어 둔다. 그 수식만 손에 쥐면 아직 보지 못한 입력값이 들어와도 결과가 대략 얼마일지 예측할 수 있다. 회귀도, 분류도, 요즘 흔히 듣는 AI 모델도 뿌리는 이 한 문장에서 갈라져 나온다.

이 글은 머신러닝의 큰 그림을 네 걸음으로 짚는다. 데이터에서 패턴을 수식으로 만든다는 것이 무슨 뜻인지, 이 방식이 학교에서 배운 공학 공식과 왜 방향이 반대인지, 입력과 출력을 부르는 여러 이름을 어떻게 정리할지, 마지막으로 예측 문제가 회귀와 분류로 갈리는 기준이 무엇인지까지다.

머신러닝은 무엇을 하나 — 데이터에서 패턴을 수식으로

F1 팀은 한 시즌 동안 수천 바퀴의 주행 기록을 쌓는다. 이 방대한 로그를 들여다보면 어렴풋한 경향이 보인다. 연습량이 쌓일수록 랩타임이 줄어든다든지, 노면 온도가 낮을수록 타이어가 늦게 달궈진다든지. 머신러닝은 이 어렴풋한 경향을 또렷한 수식으로 못 박는 작업이다.

수식의 모양은 하나가 아니다. 점들 사이로 직선을 하나 긋는 함수일 수도 있고, “노면 온도가 20도 미만이면 랩타임은 평균 100초, 그 이상이면 평균 98초” 같은 조건 규칙일 수도 있다. 형태가 무엇이든 목적은 같다. 데이터에 담긴 관계를 붙잡아, 새 입력이 들어왔을 때 결과를 예측하는 것이다.

공학의 공식과 머신러닝은 방향이 반대다

학교에서 배운 공식들은 이론에서 출발한다. 아인슈타인의 E = mc²을 떠올려 보자. 질량과 빛의 속도라는 입력으로 에너지라는 출력이 결정되는데, 이 관계는 데이터를 모으기 전에 이론적으로 먼저 유도됐다. 즉 y = f(x)라는 관계식 f를 사람이 증명해서 손에 쥔 뒤, 거기에 값을 넣는 순서다.

머신러닝은 이 순서를 거꾸로 뒤집는다. 관계식 f를 미리 알지 못한 채, 손에는 x와 y의 데이터만 있다. 그 데이터로부터 f가 어떻게 생겼을지를 역으로 더듬어 찾아낸다. 현실의 복잡한 현상은 깔끔한 공식으로 증명하기 어려울 때가 훨씬 많기 때문에, 데이터에서 관계를 뽑아내는 이 방식이 강력한 무기가 된다.

입력과 출력, 그리고 부르는 이름들

머신러닝에는 변수 두 종류가 등장한다. 예측에 쓰는 재료가 입력 변수 x, 우리가 알아맞히려는 대상이 출력 변수 y다. 문제는 분야마다 이 둘을 다른 이름으로 부른다는 점이다. 처음 배울 때 같은 것을 두고 여러 용어가 튀어나와 헷갈리기 쉬우니 한 번에 정리해 둔다.

역할통계학에서머신러닝에서쉬운 정의
입력 변수 x독립변수예측변수·특성(feature)y를 맞히는 데 쓰는 재료
출력 변수 y종속변수반응변수(response)우리가 예측하려는 대상

이름은 달라도 가리키는 것은 똑같다. 어느 책에서 독립변수·종속변수라고 쓰든, 특성·반응변수라고 쓰든 당황할 필요 없이 “x와 y”로 바꿔 읽으면 된다.

진짜 관계는 아무도 모른다 — 학습 데이터와 hat

여기서 통계학과 똑같은 벽을 만난다. x와 y의 진짜 관계 f는 세상 전체(모집단)를 다 봐야 정확히 알 수 있는데, 아무도 전체를 볼 수 없다. 우리 손에 있는 건 실제로 관측한 일부 데이터뿐이다. 머신러닝에서는 이 표본을 특별히 학습 데이터라고 부른다. 바로 이 데이터로 f를 학습, 즉 추정하기 때문이다.

추정한 값에는 진짜 값과 구분하려고 hat(모자) 기호를 씌운다. 진짜 관계는 f, 학습 데이터로 추정한 관계는 f̂, 그 식으로 내놓은 예측값은 ŷ이다. 이 hat 기호는 단순선형회귀에서 회귀선을 추정할 때 쓰던 그 표기와 완전히 같다. 결국 머신러닝은 통계학이 쌓아 온 모집단·표본·추정의 논리를 그대로 이어받는다.

출력 변수의 형태에 따라 회귀와 분류로 나뉘는 머신러닝 예측 모델 개념도

회귀냐 분류냐 — 출력 변수의 형태가 가른다

예측 모델은 크게 둘로 나뉜다. 갈림길은 딱 하나, 출력 변수 y가 어떤 형태냐다.

y가 연속형, 즉 실수로 이어지는 숫자면 회귀 모델이다. 랩타임 몇 초, 기온 몇 도처럼 눈금 위 어디든 올 수 있는 값이 여기 해당한다. 반면 y가 범주형, 즉 정해진 몇 개의 부류(클래스) 중 하나면 분류 모델이다. 완주냐 리타이어냐, 1등급이냐 2등급이냐처럼 칸으로 나뉘는 값이다.

구분회귀 모델분류 모델
출력 y의 형태연속형(실수)범주형(클래스)
예측 대상 예시다음 랩의 랩타임(초)완주 여부(완주/리타이어)
대표 모델선형회귀로지스틱 회귀

같은 입력이라도 무엇을 맞히려 하느냐에 따라 문제의 종류가 바뀐다. 이번 시리즈에서는 회귀 모델의 대표로 선형회귀를, 분류 모델의 대표로 로지스틱 회귀를 차례로 다룬다. 세상에는 이 둘 말고도 예측 모델이 무수히 많지만, 이 두 가지를 확실히 잡아 두면 나머지로 넘어가는 길이 훨씬 수월해진다. 두 모델의 표준 구현과 더 넓은 지도는 scikit-learn 지도학습 문서에서 확인할 수 있다.

핵심 요약

  • 머신러닝은 데이터 속 패턴을 찾아 수식(함수·규칙 등)으로 표현하고, 그 식으로 새 값을 예측하는 방법이다.
  • 공학 공식은 이론으로 f를 먼저 유도하지만, 머신러닝은 데이터에서 f를 거꾸로 추정한다.
  • 입력 x는 독립변수·특성, 출력 y는 종속변수·반응변수로도 불린다 — 이름만 다르고 가리키는 것은 같다.
  • 진짜 관계 f는 모르므로 학습 데이터(표본)로 추정하고, 추정값에는 hat(f̂, ŷ)을 씌운다.
  • 출력 y가 연속형이면 회귀, 범주형이면 분류다. 이 시리즈는 선형회귀와 로지스틱 회귀를 다룬다.

함께 읽으면 좋은 글

FAQ

목적과 뿌리는 상당 부분 겹칩니다. 둘 다 모집단을 모른 채 표본으로 관계를 추정하고, 추정값에 hat을 씌우는 논리를 공유합니다. 다만 통계학은 관계의 해석과 검정에 무게를 두고, 머신러닝은 새 입력에 대한 예측 성능에 무게를 두는 경향이 있습니다. 실제로 선형회귀·로지스틱 회귀처럼 두 분야가 함께 쓰는 모델이 많습니다.

출력 변수 y의 형태만 보면 됩니다. y가 랩타임처럼 연속된 실수면 회귀, 완주·리타이어처럼 정해진 몇 개의 범주 중 하나면 분류입니다. 입력 변수 x는 판별 기준이 아닙니다. 무엇을 맞히려 하는지, 그 답의 형태가 숫자인지 칸인지가 갈림길입니다.

머신러닝은 학습 데이터에서 관계 f를 추정하기 때문에, 데이터의 양과 질이 예측 정확도를 좌우합니다. 학습 데이터가 많고 고를수록 추정한 f̂이 진짜 f에 가까워집니다. 반대로 데이터가 적거나 한쪽으로 치우치면, 겉보기 성능이 좋아도 새 입력에서 빗나가기 쉽습니다.

관련 글 보기