머신러닝은 예시 데이터에서 입력과 정답 사이의 규칙을 찾아, 처음 보는 입력에 답하게 하는 방법입니다. 실제 콘크리트 배합 1,030개와 압축강도로 데이터 나누기, 회귀, 분류, 과적합, 평가를 직접 해 봅니다.
한 행이 콘크리트 배합 하나입니다. 재료 일곱 가지(1 m³당 kg), 시험한 재령(일), 그리고 잰 압축강도(MPa)입니다. 재료와 재령이 입력(특징), 강도가 정답(목표)입니다. 모델은 처음 보는 배합에서 맞아야 쓸모가 있으므로, 무엇을 배우기 전에 행을 먼저 나눕니다. 맞추는 데 쓰는 학습 묶음, 설정을 고르는 검증 묶음, 맨 끝에 한 번만 여는 시험 묶음입니다.
참 정확도가 p인 모델을 시험 묶음 n개로 재면, 잰 값은 n과 p로 정해지는 만큼 흔들립니다. 같은 모델을 서로 다른 시험 묶음 400개로 잰 결과를 그렸습니다. 시험 묶음을 네 배로 늘려야 흔들림이 절반이 됩니다.
| 기호 | 뜻 | 단위 |
|---|---|---|
| x | 배합 하나의 특징 벡터 | — |
| y | 압축강도(목표) | MPa |
| w/b | 물 ÷ 결합재(시멘트 + 슬래그 + 플라이애시) | — |
선형 회귀는 목표를 특징들의 가중합으로 예측합니다. 배운다는 것은 학습 묶음에서 평균제곱오차(MSE)가 가장 작아지는 가중치를 찾는 일입니다. 경사하강법은 오차를 가장 많이 줄이는 방향으로 가중치를 조금씩 옮기기를 되풀이해 그 값에 다가갑니다. 먼저 특징 하나, 물-결합재 비(w/b)로 시작합니다. 재령 28일에 시험한 425개 배합이고, 전통적인 Abrams 법칙은 이 비가 클수록 강도가 낮다고 말합니다.
1번 탭의 나누기를 씁니다(학습 행으로 맞추고 시험 행으로 채점). 가중치는 표준화한 특징에 최소제곱으로 바로 풉니다.
빈 곳을 누르면 점이 생기고, 점을 끌면 옮겨지고, 점을 누르면 지워집니다. 최소제곱은 빨간 사각형 넓이의 합이 가장 작은 직선입니다. 먼 점 하나가 사각형을 크게 만들어 직선을 끌어당깁니다. 절댓값 오차로 바꾸면 같은 점의 영향이 훨씬 작습니다(회색 점선이 최소제곱).
정답이 범주일 때 모델은 확률을 내고, 문턱이 그것을 결정으로 바꿉니다. 여기서는 배합이 목표 강도에 이르는지를 두 특징, 물-결합재 비와 log(재령)으로 맞힙니다. 로지스틱 회귀는 가중합을 sigmoid 함수에 넣어 0과 1 사이의 수로 만들고, 그 값이 0.5인 선이 결정 경계입니다.
고른 색으로 점을 찍으면 로지스틱 회귀를 다시 맞춥니다(뉴턴법). 배경 색이 주황일 확률, 검은 선이 확률 0.5인 경계입니다. 테두리가 검은 점은 틀린 점입니다. 고리 배치는 직선으로 나뉘지 않지만 x², y², xy를 특징으로 더하면 원 모양 경계가 됩니다. 두 무리가 완전히 나뉘면 벌점이 없을 때 가중치가 끝없이 커지려 합니다.
유연한 모델은 잡음까지 포함해 학습 점마다 휘어 지나가고, 그 대신 새 데이터에서 틀립니다. 이것이 과적합입니다. 여기서는 28일 배합 중 적은 수를 무작위로 뽑아 물-결합재 비의 다항식을 맞춥니다. 차수를 올리면 학습 오차는 계속 줄지만 검증 오차는 다시 올라갑니다. L2 벌점(ridge)이 곡선을 매끈한 쪽으로 끌어당깁니다.
40번 되풀이합니다. 28일 배합에서 학습 표본과 서로 겹치지 않는 검증·시험·새 묶음을 뽑고, 그중 하나에서 오차가 가장 작은 차수(1–12)를 골라 보고합니다. 시험 오차로 고르면 보고한 오차가 새 배합에서의 오차보다 좋게 나옵니다.
참 함수 sin 2πx에 잡음을 얹은 점 n개를 200번 새로 뽑아, 매번 같은 차수의 다항식을 맞췄습니다(그중 30개가 파란 가는 선). 평균 곡선이 참 함수에서 벗어난 정도가 편향, 곡선들이 서로 흩어진 정도가 분산입니다. 차수가 낮으면 편향이, 높으면 분산이 시험 오차를 차지합니다.
숫자 하나로는 다 알 수 없습니다. 회귀에서 RMSE와 MAE는 MPa 단위의 오차이고, R²는 설명한 분산의 몫이며, 모두 평균으로 찍기와 견줘야 합니다. 분류에서 정확도는 한 범주가 흔하기만 해도 높아 보일 수 있습니다. 정밀도, 재현율, ROC 곡선이 문턱이 무엇을 맞바꾸는지 보여 줍니다.
1·2번 탭의 모델과 나누기를 씁니다.
3번 탭의 모델·목표 강도·문턱을 쓰고, 1번 탭의 시험 행으로 채점합니다.
1,000명 중 양성 비율(유병률)을 바꿔 보세요. 민감도(양성을 양성이라 하는 비율)와 특이도(음성을 음성이라 하는 비율)가 같아도, 양성이 드물면 양성 판정의 대부분이 거짓 경보가 됩니다. 이때 정확도는 높아 보여도, 무조건 음성이라고 하는 모델과 별 차이가 없습니다.
교육용 페이지입니다. 여기서 맞춘 모델은 배합 설계나 강도 판정에 쓸 수 없습니다. 점수는 이 자료에 대한 값이고 확률이 아닙니다.