Skip to content
Glossary · 신경망 추론의 메모리 트래픽 — 학습서
B
- bottleneck 블록 / inverted residual
- MobileNet-v2의 기본 블록. 좁은 채널을 넓혔다가 다시 좁히는 expand·depthwise·project 세 단계.
- byte / 자료형(dtype)
- 숫자 하나가 메모리에서 차지하는 바이트. FP32는 4 byte, FP16은 2 byte, INT8은 1 byte.
C
- compute-bound(연산 한계)
- 연산강도가 ridge보다 높아 연산이 병목인 영역.
D
- depthwise(채널별 합성곱)
- 채널마다 독립 커널 하나를 적용하는 합성곱. 채널을 못 줄이고 재사용이 없어 연산강도가 바닥. , 05.2
E
- expand(확장)
- 1×1 합성곱으로 채널을 t배 부풀리는 단계. 트래픽 증가의 원인. , 03.1
I
- INT8 양자화
- 숫자를 8비트로 저장해 트래픽을 4분의 1로 줄이는 방법. 연산강도가 4배가 된다.
M
- MAC(multiply-accumulate)
- 곱셈 하나와 덧셈 하나를 묶은 단위. 신경망 연산량을 세는 기본 단위.
- memory-bound(대역폭 한계)
- 연산강도가 ridge보다 낮아 대역폭이 병목인 영역. MobileNet-v2가 여기 속한다.
O
- operator fusion(연산 융합)
- 여러 단계를 한 커널로 묶어 중간 텐서를 외부 메모리에 안 내리는 최적화.
P
- project / linear bottleneck
- 채널을 다시 좁히는 1×1 합성곱. 활성함수를 붙이지 않는다. 트래픽 회계에는 영향 없다. , 03.2
R
- roofline(대역폭-연산 한계선)
- P = min(π, β·I)로 달성 성능을 보는 모델. 연산 천장 π와 대역폭 천장 β가 있다.
S
- skip add(지름길 덧셈)
- stride 1이고 입출력 채널이 같을 때 입력을 출력에 더하는 연결.
가
- 가중치(weight)
- 학습으로 정해진 파라미터. 크기는 채널 수와 커널 크기가 정하고, 입력·batch와 무관하다.
메
- 메모리 트래픽(memory traffic)
- 추론 한 번에 메모리와 연산기 사이를 오가는 바이트 총합. 한 레이어 기준으로 가중치 읽기 + 입력 활성값 읽기 + 출력 활성값 쓰기.
변
- 변곡점(ridge)
- 두 천장이 만나는 점의 연산강도 I = π/β. compute-bound와 memory-bound를 가르는 경계.
연
- 연산강도(arithmetic intensity)
- 일 W를 트래픽 Q로 나눈 값 I = W/Q [MAC/byte]. 바이트당 연산 횟수.
재
- 재사용(reuse)
- 메모리에서 한 번 읽은 숫자로 연산을 몇 번 하나. 표준 합성곱은 높고, depthwise는 낮다.
확
- 확장계수(expansion factor) t
- expand가 채널을 몇 배로 키우나. MobileNet-v2 주 실험은 t=6.
활
- 활성값(activation, feature map)
- 레이어 사이를 흐르는 중간 텐서. 크기는 모델 구조에 더해 입력 해상도와 batch가 정한다.