Notice
Recent Posts
Recent Comments
Link
일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
1 | 2 | 3 | 4 | |||
5 | 6 | 7 | 8 | 9 | 10 | 11 |
12 | 13 | 14 | 15 | 16 | 17 | 18 |
19 | 20 | 21 | 22 | 23 | 24 | 25 |
26 | 27 | 28 | 29 | 30 | 31 |
Tags
- 머신러닝
- attention
- LLM
- 일기
- rnn
- 알고리즘
- Deeplearning
- gradient descent
- 파이썬
- prompt engineering
- transformer
- 기계학습
- 부스트캠프
- Django
- machinelearning
- LeetCode
- ChatGPT
- 코딩테스트
- Python
- 프로그래머스
- GPT
- BFS
- 프롬프트
- Linear Model
- 코테
- Programmers
- NLP
- Linear Regression
- dl
- deque
Archives
- Today
- Total
크크루쿠쿠
Pytorch Basics 본문
Pytorch Operations
Numpy + AutoGrad(자동 미분)
-> pytorch 뿐만이 아니더라도 tf에서도 마찬가지임.
- Tensor
다차원 Arrays를 표현하는 Pytorch class
사실상 numpy의 ndarray와 동일 (tensorflow의 tensor와 동일.)
tensor 생성은 list나 ndarray를 사용 가능
data to tensor
data = [[3, 5],[10, 5]]
x_data = torch.tensor(data)
x_data
이 방법은 쓸일 없을것
ndArray to tensor
nd_array_ex = np.array(data)
tensor_array = torch.from_numpy(nd_array_ex)
tensor_array
대부분의 사용법이 numpy를 그대로 적용 가능
ex) ones_like,shape,dtype
-> 가장 큰 차이는 GPU에 올릴수 있는것.
if torch.cuda.is_available():
x_data_cuda = x_data.to('cuda')
x_data_cuda.device
view, squeeze, unsqueeze 등으로 tensor 조정 가능
reshape 대신 view 쓰는걸 추천함.
그 차이는 contiguity 보장 차이.
view -> b 도 1로 가득 채워진다.
reshape -> b 는 0으로 채워져있음.
squeeze & unsqueeze
차원을 줄이(squeeze)고 늘리고(unsqueeze) 해준다
unsqueeze 안에 dim 변수 지정으로 axis 처럼 사용 가능.
기본적인 연산은 동일하다 +,-,/,*
하지만 dot product는 torch 에서는 dot이 아닌 mm을 사용
mm과 matmul 차이는 broadcasting 지원 차이임.
mm은 지원x matmul은 지원해줌.
- Tensor operations for ML/DL formula
nn.functional 모듈을 통해 다양한 연산 가능. -> 외우지 말고 찾아보자
- AutoGrad
Pytorch의 핵심임
backward 함수를 사용
'DeepLearning > 부스트캠프 AI Tech' 카테고리의 다른 글
Pytorch AutoGrad & Optimizer (0) | 2021.08.18 |
---|---|
Pytorch Project Architecture (0) | 2021.08.17 |
Generative Models (0) | 2021.08.13 |
Transformer: Attention is all you need (0) | 2021.08.12 |
RNN(Recurrent Neural Network) (0) | 2021.08.12 |
Comments