topic★★★★★난이도 · 약 30분
텐서 — AI의 레고 블록
PyTorch 텐서 = NumPy 배열 + GPU 가속 + 자동 미분(Autograd).
#텐서#PyTorch#GPU#자동 미분#Autograd
왜 배우는가
GPT, Claude, Llama, Gemini — 거의 모든 주요 LLM이 PyTorch로 개발된다. NumPy만으로도 되는데 왜 PyTorch가 필요할까? PyTorch 텐서 — NumPy 배열에 GPU 연산과 자동 미분(Autograd)이 추가된 강력한 도구이다.
거의 같지만 더 강력합니다
| NumPy | → PyTorch |
|---|---|
| import numpy as np | → import torch |
| np.array([1,2,3]) | → torch.tensor([1,2,3]) |
| a @ b | → a @ b (동일!) |
| (CPU만) | → a.to('cuda') (GPU 연산!) |
| 수동 기울기 계산 | → loss.backward() (오토그래드!) |
텐서(Tensor), GPU 가속, 자동 미분(Autograd)
텐서를 만들고 행렬 연산해봅시다
텐서 생성, 행렬 곱셈, 자동 미분(requires_grad + backward) 기초.
실행 결과
순수 파이썬으로 텐서 연산과 자동 미분을 구현해봅시다
순수 파이썬으로 미니 텐서 클래스를 구현. 값 + 기울기 추적 + 역전파를 체험한다.
| NumPy → PyTorch 전환 | 설명 |
|---|---|
| 배열 생성 | np.array → torch.tensor (거의 동일한 문법) |
| 행렬 곱 | @ 연산자 동일하게 사용 가능 |
| GPU 가속 | .to('cuda') 한 줄로 GPU 연산 전환 |
| 자동 미분 | requires_grad=True + backward()로 기울기 자동 계산 |
| PyTorch만의 강점 | 설명 |
|---|---|
| 오토그래드 | 순전파 시 모든 연산을 자동 기록 → backward()로 역전파 |
| GPU 병렬 처리 | 대규모 행렬 연산을 수십 배 빠르게 실행 |
| 딥러닝 생태계 | GPT, Claude, Llama 등 거의 모든 LLM이 PyTorch 기반 |
NumPy를 알면 PyTorch도 안다 — 문법은 거의 동일하고, GPU + 자동 미분이 추가된 것뿐
실기 드릴 5문항
edit실기 드릴 · 단답형
PyTorch에서 기울기를 자동으로 계산하려면 텐서 생성 시 어떤 옵션이 필요한가?
check_circle실기 드릴 · OX
PyTorch의 행렬 곱셈 연산자(@)는 NumPy와 동일하다.
edit실기 드릴 · 단답형
PyTorch 텐서를 GPU에서 연산하려면 어떤 메서드를 사용하는가?
edit실기 드릴 · 단답형
torch.___([1.0, 2.0, 3.0]) — 리스트에서 텐서를 생성하는 함수는?
check_circle실기 드릴 · OX
PyTorch 텐서와 NumPy 배열은 메모리를 공유할 수 있다.