안녕하세요! 오늘은 딥러닝 모델의 큰 뼈대를 이루는 두 가지 구조(FFNN, RNN)와, 그 뼈대를 구성하는 가장 작은 단위인 Linear Layer에 대해 알아보겠습니다.
우리가 다루는 의료 데이터는 크게 두 가지로 나뉩니다.
- 정형 데이터: 환자의 나이, 성별, 혈액검사 수치 등 (시점과 상관없는 데이터)
- 시계열 데이터: 심전도(ECG), 호흡수 변화, 입원 기간 동안의 활력 징후 기록 등 (시간 순서가 중요한 데이터)
이 데이터 특성에 따라 사용하는 신경망의 종류가 달라집니다.
1. 인공 신경망의 두 가지 타입 (FFNN vs RNN)

① 피드 포워드 신경망 (Feed-Forward Neural Network, FFNN)
- 특징: 위 그림의 첫 번째 모델입니다. 데이터가 입력층(Input)에서 출력층(Output) 방향으로만 흐릅니다. 되돌아가는 길이 없죠.
- 의료 예시:
- 입력: 환자 A의 나이, 키, 몸무게, 혈당 수치 (4개 특징)
- 출력: 당뇨병 여부 (Yes/No)
- 단순히 현재 상태를 보고 결과를 예측할 때 주로 쓰이는 가장 기본적인 구조입니다.
② 순환 신경망 (Recurrent Neural Network, RNN)
- 특징: 위 그림의 두 번째 모델입니다. 빨간색 화살표처럼 은닉층의 결과가 다시 자기 자신의 입력으로 돌아오는(Loop) 구조를 가집니다.
- 왜 필요한가요? "이전의 상태"를 기억하기 위해서입니다.
- 의료 예시: 심전도(ECG) 데이터 분석.
- 지금 순간의 심박수뿐만 아니라, 1초 전, 2초 전의 심박 패턴이 현재의 진단에 영향을 미칩니다. 시간의 흐름이 있는 데이터를 다룰 때 필수적입니다.
2. 딥러닝의 레고 블록: Linear Layer (선형 계층)
딥러닝 모델을 뜯어보면 수많은 층(Layer)으로 이루어져 있는데, 그중 가장 기본이 되는 것이 바로 Linear Layer입니다.
다른 이름들 (다 같은 말입니다!)
논문이나 코드에서 다음 용어들은 모두 Linear Layer를 가리킵니다.
- Fully-Connected Layer (전결합층, FC Layer)
- Dense Layer (밀집층)
구조와 역할
위 그림의 세 번째 모델을 보세요. 모든 입력 노드가 모든 출력 노드와 거미줄처럼 연결되어 있죠?
이게 바로 'Fully Connected'의 의미입니다.
1. 수학적 정의: $y = xW + b$
- 우리가 배웠던 일차함수(선형 회귀) 식과 똑같습니다. 입력($x$)에 가중치 행렬($W$)을 곱하고 편향($b$)을 더합니다.
2. 핵심 역할: 차원 변환 (Dimension Transformation)
- 이게 제일 중요합니다! Linear Layer는 데이터를 다른 차원의 공간으로 이동시킵니다.
- 예시: $\mathbb{R}^4 \rightarrow \mathbb{R}^3$
- 입력: 환자 데이터 4개 (나이, 체온, 혈압, 맥박) -> 4차원
- Linear Layer 통과: ($4 \times 3$ 행렬 곱셈)
- 출력: 환자의 잠재적 특징 3개 (건강 상태 1, 2, 3) -> 3차원
우리가 torch.nn.Linear(10, 5)라고 코드를 짠다면, 이건 "10개의 검사 항목(Feature)을 입력받아서, 5개의 핵심 요약 정보로 압축하라"는 명령을 내리는 것과 같습니다. 결국 딥러닝은 이 Linear Layer들을 벽돌처럼 쌓아서, 복잡한 의료 데이터 속에서 우리가 원하는 정답(진단)을 찾아가는 과정입니다.
'Study Note > Deep Learning' 카테고리의 다른 글
| 비선형 문제를 푸는 열쇠(Activation Function)와 학습의 핵심(Back Propagation) (0) | 2026.01.06 |
|---|---|
| [딥러닝 이론 1] 뇌를 흉내 낸 기계, 퍼셉트론에서 DNN까지 (0) | 2026.01.06 |
| 딥러닝 실전! 텐서 곱셈(Matmul) 완벽 정리 (0) | 2026.01.05 |
| 딥러닝을 위한 '텐서'와 '행렬'의 정체 (1) | 2026.01.02 |
| 딥러닝을 위한 필수 라이브러리, 의료 데이터로 정복하기 (0) | 2026.01.02 |