No Limitation
[Pytorch] 다중 선형 회귀 분석 본문
유원준 님의 Pytorch로 시작하는 딥러닝 입문
https://yscho.tistory.com/33?category=1040585
이전 포스팅 참고!
Pytorch는 내부적으로 자동으로 Gradient Descent를 수행해주는 Autograd 기능이 있다.
예를 들어보자
w=2에서 2w^2 + 5라는 수식에서 gradient를 구해보자
y = w^2
z = 2y+5라고 하고
z를 w에 대한 gradient 값은 다음과 같이
8이 나오게 된다.
앞선 포스팅에서는 변수가 1개인 회귀식으로 y를 예측하는 모델을 짜보았다.
다음은 변수가 3개인 다중 선형 회귀를 Pytorch로 간단하게 구현해보았다.
우선 단순한 1차원 벡터로 X값과 Y값들을 나타내겠습니다.
앞선 포스팅과 마찬가지의 논리로 모델을 구축할 수 있다.
하지만 다음과 같이 변수가 3개라고 하면 그 때에 맞는 1차원 벡터를 형성하는 것은 연산에 비효율적이다.
저럴 때는 행렬 곱 연산을 통해 표현할 수 있으므로 마찬가지로 pytorch에서도 행렬 연산을 수행해준다.
다음과 같이 기초적인 행렬 연산을 수행해줄 수 있다.
이를 Pytorch를 통해 표기해주면 다음과 같다.
이를 활용해서 Gradient Descent를 수행하면 다음과 같다.
'ML & DL & RL' 카테고리의 다른 글
[Pytorch] Custom Dataset (0) | 2022.02.03 |
---|---|
[Pytorch] Mini Batch Size와 Data Loader (0) | 2022.02.03 |
[Pytorch] Class를 이용한 Model 구현 (0) | 2022.02.03 |
[Pytorch] nn.Module (0) | 2022.02.03 |
[Pytorch] 선형 회귀 Intro (0) | 2022.01.31 |