시험공부빅데이터분석

시험 전 1장

시험 정보

2026-10-26(월) · 정확한 시각은 공지 확인 (월요일 수업은 12:30 시작)
클로즈드북 · 시험지와 답안지(마킹)로 보는 객관식 약 20문항 · 60~70분 안팎(교수님도 시간 미정) · 개념 설명 / 코드 빈칸 채우기 / 결과 예측
범위 — 2~5주차 자료 — Tensor·GPU, 클래스·nn.Module, Autograd·Loss·Optimizer·학습 5단계, Dataset·DataLoader(Week05는 앞 절반만 준비했다며 '여기까지가 범위'라고 함)

교수님 힌트

공식 · 숫자

항목값
nn.Linear(in, out) 파라미터 수weight = out×in, bias = out → 합계 in×out + out. 예 Linear(3,2) = 8 · Linear(5,3) = 18 · Linear(64,16) = 1,040
nn.Linear 모양weight (out, in), bias (out,). 입력 (N, in) → 출력 (N, out). 계산은 x @ W.T + b
여러 층 모델의 파라미터 수각 층의 in×out + out을 더한다. TinyMLP(4,8,2) = (32+8) + (16+2) = 58. 수업 PPT의 6×5+3×6+1×3 = 51은 bias 제외
인덱스와 슬라이싱번호는 0부터. a[1:4]는 1~3번(끝 번호 제외). x[:,1] → 차원이 사라져 (3,), x[:,1:2] → 차원 유지 (3,1)
브로드캐스팅 규칙오른쪽 끝부터 비교해 같거나, 하나가 1이거나, 한쪽에 없으면 가능. (2,3)+(3,) → (2,3) / (4,1)+(1,5) → (4,5) / (2,3)+(2,) → 불가
이미지 batch 모양(N, C, H, W) = (장 수, 채널, 높이, 너비). (8,1,28,28)은 28×28 흑백 8장
cat과 stackcat은 기존 차원에 이어 붙임(차원 수 그대로), stack은 새 차원을 만들어 쌓음(차원 수 +1). (2,3) 둘 → cat(dim=0) (4,3) / stack (2,2,3)
NumPy 변환from_numpy · .numpy()는 메모리 공유(한쪽을 바꾸면 같이 바뀜), torch.tensor(arr)는 복사(독립)
학습 5단계zero_grad → forward(prediction) → loss → backward → step. batch마다 한 번씩
SGD 업데이트w ← w − lr × grad. 예 w=0.7, grad=−2, lr=1 → 2.7 / w=1, grad=−5, lr=0.1 → 1.5. 학습률은 보통 0.001 수준처럼 아주 작게
외울 gradient 값w=3, L=w² → 6 / w=2, L=3w²+1 → 12 / (wx−t)², w=2, x=3, t=10 → −24 / 누적 w=2: 4 → 16 → 32 / W=[1,2,3], X=[2,1,4], L=(W@X)² → [64,32,128]
batch 개수와 step 수len(loader) = ⌈샘플 수 ÷ batch_size⌉ (drop_last=True면 내림). 10개, batch 4 → 3 ([4,4,2]) 또는 2 ([4,4]). 전체 step = epoch 수 × batch 개수 (90개, batch 20, 30 epoch → 5×30 = 150)
epoch 평균 lossΣ(batch loss × batch 샘플 수) ÷ 전체 샘플 수. 예 (3×4 + 3×4 + 6×2) ÷ 10 = 3.6
MSE 계산mean((ŷ−y)²). [3,4] vs [1,5] → 2.5. prediction (3,1)과 target (3,)을 그대로 빼면 3×3으로 브로드캐스팅되어 틀린 값(예 6.0, 맞는 값 2.0)
모양 흐름 예Linear(3,2): (4,3) → (4,2) / flatten(start_dim=1) 후 Linear(16,10): (8,1,4,4) → (8,16) → (8,10) / ReLU는 shape 불변

용어 · 이름

이름뜻
tensorTensor (텐서)
shape모양 (torch.Size)
dtypedata type (자료형)
device장치
ndim / numel()number of dimensions / elements
CPU / GPUCentral / Graphics Processing Unit
CUDACompute Unified Device Architecture
ColabGoogle Colaboratory
self자기 자신
__init__initializer (생성자)
__call__call (호출 가능 객체)
super()super (부모 접근)
nn.ModuleNeural Network Module
nn.LinearLinear (Fully Connected) layer
FCFully Connected
ReLURectified Linear Unit
nn.ParameterParameter
nn.SequentialSequential
forward순전파 (forward propagation)
backward역전파 (backpropagation)
gradgradient (기울기)
requires_gradgradient 필요 여부
zero_gradgradient 초기화
loss손실
MSEMean Squared Error
optimizer최적화기
SGDStochastic Gradient Descent
lrlearning rate (학습률)
Dataset데이터셋
DataLoader데이터 로더
batch_size배치 크기
epoch에폭
shuffle섞기
drop_last마지막 버리기
시험장에서

쉬운 문제부터 빠르게 → 계산·코드 문제는 손으로 한 줄씩 따라가기 → 서술형은 모르면 정의 한 줄이라도 써서 빈칸 없이.