1. 텐서 기본
torch.tensor() # 텐서 생성
torch.zeros(), torch.ones() # 0/1로 채운 텐서
torch.randn() # 정규분포 랜덤
tensor.shape, tensor.size() # 크기 확인
tensor.to(device) # GPU/CPU 이동
2. 텐서 조작
tensor.view() # 모양 바꾸기 (가장 많이 씀)
torch.cat() # 텐서 합치기
tensor.squeeze(), tensor.unsqueeze() # 차원 제거/추가
3. 모델 정의
nn.Module # 모든 모델의 베이스
nn.Linear() # 완전연결층
nn.Conv2d() # 2D 컨볼루션
nn.ReLU(), nn.Softmax() # 활성화 함수
nn.Dropout() # 드롭아웃
4. Loss Function & Optimizer
nn.CrossEntropyLoss() # 분류용
nn.MSELoss() # 회귀용
torch.optim.SGD() # SGD 옵티마이저
torch.optim.Adam() # Adam (가장 많이 씀)
5. 학습 루프
model.train(), model.eval() # 학습/평가 모드
optimizer.zero_grad() # 그래디언트 초기화
loss.backward() # 역전파
optimizer.step() # 파라미터 업데이트
torch.no_grad() # 그래디언트 계산 끄기