def get_prediction(x, w, b):
# 선형 회귀의 핵심 식: y = wx + b
return * x b
# 1시간 공부(x) 시 2점 상승(w), 기본 점수 10점(b)일 때
my_score = get_prediction(x=5, w=2, b=10)
print(f"예측 점수: {my_score}")
가중치 변수명과 절편을 더해주는 산술 연산자를 입력하세요.
예측 점수: 20
📈 선형 회귀의 예측 메커니즘
이 퀴즈는 인공지능이 내부적으로 수행하는 가장 기본적인 연산을 다룹니다.
1. 핵심 공식
$$y = wx + b$$| 기호 | 이름 | 의미 | 비유 |
|---|---|---|---|
| $x$ | 입력값 (Feature) | 모델에 주어지는 데이터 | 시험 공부 시간 |
| $w$ | 가중치 (Weight) | 입력이 결과에 미치는 영향력 | 공부 1시간당 오르는 점수 |
| $b$ | 편향 (Bias) | 입력과 무관한 기본값 | 공부 안 해도 받는 기본 점수 |
| $y$ | 출력값 (Prediction) | 모델의 예측 결과 | 예상 시험 점수 |
2. 구체적 예시로 이해하기
상황: 아이스크림 가게에서 기온($x$)으로 판매량($y$)을 예측하고 싶습니다.
지난 데이터를 분석한 결과:
- 기온이 1도 오를 때마다 아이스크림이 3개 더 팔림 → $w = 3$
- 기온과 상관없이 기본적으로 10개는 팔림 → $b = 10$
def get_prediction(x, w, b):
return w * x + b
print(get_prediction(25, 3, 10)) # 85
print(get_prediction(30, 3, 10)) # 100
3. 가중치($w$)의 역할 - "얼마나 중요한가"
가중치는 입력 데이터의 중요도를 결정합니다.
$w$ 값 의미 예시
$w = 5$ (큰 양수) 입력이 결과에 큰 영향 기온이 1도 오르면 판매량 5개 증가
$w = 0.1$ (작은 양수) 입력이 결과에 약한 영향 기온이 1도 올라도 판매량 0.1개만 증가
$w = 0$ 입력이 결과에 무관 기온이 변해도 판매량 변화 없음
$w = -2$ (음수) 입력이 반대 방향으로 영향 기온이 1도 오르면 핫초코 판매량 2개 감소
다중 입력일 때:
판매량 = w1 × 기온 + w2 × 습도 + b
def predict(temp, humidity, w1, w2, b):
return w1 temp + w2 humidity + b
기온의 영향(w1=3)이 습도의 영향(w2=0.5)보다 크다
print(predict(30, 80, 3, 0.5, 10)) # 140
4. 편향($b$)의 역할 - "기본 성향"
편향은 모든 입력이 0일 때의 출력값입니다.
$y = wx + b$ 에서 $x = 0$이면 $y = b$
편향이 없으면?
$b = 0$: 직선이 원점(0, 0)을 반드시 지남
$b = 10$: 직선이 위로 10만큼 이동
$b = -5$: 직선이 아래로 5만큼 이동
편향 덕분에 모델이 더 유연하게 데이터에 맞출 수 있습니다.
5. "학습"이란 무엇인가
학습이란 최적의 $w$와 $b$를 찾는 과정입니다.
시작: $w=0$, $b=0$ → 모든 예측이 0 (엉터리)
반복: 데이터를 보며 $w$와 $b$를 오차가 줄어드는 방향으로 조금씩 조정
완료: 최적의 $w$, $b$를 찾아 정확한 예측 가능
[간단한 학습 과정 예시]
w, b = 0, 0
learning_rate = 0.01
x = 25 # 실제 기온
y_real = 85 # 실제 판매량
y_pred = w * x + b # 0 (완전히 틀림!)
error = y_real - y_pred # 85
w = w + learning_rate * error * x # 21.25
b = b + learning_rate * error # 0.85
이 과정을 수천 번 반복하면 최적값을 찾음
6. 핵심 정리
선형 회귀는 직선 하나를 긋는 것. 데이터에 가장 잘 맞는 기울기($w$)와 절편($b$)을 찾습니다.
$w$가 크면 입력 변화에 민감, $w$가 작으면 둔감합니다.
학습 = 최적의 $w$와 $b$ 찾기. 오차를 줄이는 방향으로 조금씩 값을 조정합니다(경사하강법).
모든 머신러닝의 기초. 딥러닝의 신경망도 이 $y = wx + b$ 연산을 수천, 수만 번 조합한 것입니다.