지노랩 /JinoLab

2. 단일 입력·단일 출력 신경망 구조 본문

프로그래밍/C언어를 이용한 Deep Learning

2. 단일 입력·단일 출력 신경망 구조

지노랩/JinoLab 2025. 7. 28. 12:36

 

단일 입력·단일 출력 신경망 구조

flowchart LR
    Input[입력값 x] --> Mult[× 가중치 w]
    Mult --> Pred[예측값 y_pred]
  • 입력(Input, x): 예측에 사용할 관측치(예: 그날의 온도)
  • 가중치(Weight, w): 입력값의 중요도를 나타내는 파라미터
  • 예측값(Predicted Value, y_pred): 입력×가중치 연산 결과로 도출되는 값

감정 분류 예시: 온도 → 행복/슬픔

  1. 문제 정의
    • 주어진 온도 x로부터 “행복” 또는 “슬픔” 상태를 예측
  2. 숫자 스케일링
    • y_pred > 10이면 행복(happy)
    • y_pred ≤ 10이면 슬픔(sad)
  3. 추후 학습할 내용
    • 단어(감정 상태) → 숫자 값으로 인코딩하는 방법은 뒤쪽 강의에서 다룹니다.

순전파 의사코드(Pseudocode)

# 입력 x, 가중치 w가 주어졌을 때
function predict(x, w):
    y_pred = x * w
    return y_pred
  • predict 함수는 단순히 x와 w의 곱을 계산하여 y_pred를 반환
  • 예: x = 8°C, w = 1.5 라면 y_pred = 8 × 1.5 = 12 → “행복”으로 분류

왜 이렇게 간단할까?

  • 이 구조는 퍼셉트론(perceptron) 이라는 신경망의 기초 형태
  • 내부 활성화 함수(activation)는 아직 적용하지 않았으므로, 선형 모델(linear model)과 동일
  • 가중치 w는 학습(training) 과정을 통해 데이터에 맞게 자동으로 조정

다음 글 예고

  • 경사하강법(Gradient Descent) 을 이용한 가중치 학습
  • 활성화 함수(Activation Function) 추가로 비선형 모델 확장
  • 다수 입력·다수 출력 신경망(Multi‑Layer Perceptron) 구조

간단한 예제부터 차근차근 구현해 보면서, 신경망이 어떻게 ‘학습’하고 ‘예측’하는지 직접 체험해 보시기 바랍니다!