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()                # 그래디언트 계산 끄기